Live data from Hacker News

Why I Choose Delphi

csvelocity.wordpress.com

271–280 of 307 posts

Re: Why I Choose Delphi

#271
As an old Delphi developer myself I probably agree that if you are writing desktop apps Delphi is hard to beat. But less and less people are writing desktop apps now, and most apps can be written as web apps which users prefer.

Re: Why I Choose Delphi

#272
I can't believe there are so many people starting to use Pascal/Delphi around 14.

I started at that age too. It was around 2002. I was told that a good way to start on computers was to attend in local IOI competitions, and that's what I did.

During the competitions, our team chose Pascal for its clarity. The official IDE they gave us was Turbo Pascal, which was really a decent environment (though I hardly realized this until I tried out other dev tools later). The friendliness in Pascal/Delphi towards developers can really date back to those days, and is laying deep in the language's genes.

Unfortunately, the previous "graphical" programs I wrote, before I got a hold on Pascal, was some simple Logo drawing dots and lines. And I had a terribly wrong impression that building GUIs are boring. So I skipped the chance of digging into the Delphi world, until I was in college. But then the Pascal/Delphi ecosystem was already decaying. I still feel bad for missing the golden era.

Re: Why I Choose Delphi

#273
post #250

Earlier quoted context omitted.

Correct. It compiles to binaries without any runtime environment, so you have to manage memory. Apple did something with objective-c (forgot what it was called) that automatically frees your memory based on your code, but it actually inserts the free memory calls. That's the only language that does that AFAIK. Very clever though, memory management can be a pain if you aren't used to it. The good thing about managing…

I know the disadvantages of GC; what I am asking about is "smart pointer", like C++'s std::shared_ptr, or Rust's Rc. It is used like this: In the class definition: std::shared_ptr big_struct; In the constructor (or anywhere else in the program): big_struct = std:::make_shared (arg1, arg2) and that's it. When there are no more users of the pointer (for example, when the container object disappears), it will get destro…

I don't believe it does. Last time I was using it, we had to free memory manually. This was probably 2008 or so. They may have added it since.

Re: Why I Choose Delphi

#274
post #63
post #3

I liked Delphi a lot, as I liked Clipper a lot, but technology moved on.

dBase-derived languages in general were a lot of fun. And incredibly productive, basically taylor-made for cranking out CRUD apps. I do ponder sometimes why we don't have something quite like that these days. Oh, people do try, but it's never that simple, and there are always a lot of moving bits with plenty of friction between them. The ease with which I could collect a bunch of data from a form and shove it into a…

I have the same sensation, I moved to systems and mobile development but I would feel a bit lost if I went back. I catch myself reimplementing xBase-style utility functions like date and string manipulation in other languages, since they felt so sane in comparison. But I wonder that part of this nostalgic sensation was the result of an era that was simpler - no Internet, Web sites were a luxury, security was a distant concern, etc.

Re: Why I Choose Delphi

#275
post #257
post #159

Earlier quoted context omitted.

The majority of tools for native apps desktops and mobile OSes (minus deployment) still comes close to Delphi. Now for the web, nevermind.

I don't do desktop app dev, but what tools are there? I'm aware of .NET under Visual Studio and NetBeans UI designer.

.NET has Windows Forms and XAML Visual Studio designer, and Blend for XAML.

Java has Netbeans Matisse for Swing, Eclipse WindowsBuilder for Swing and SWT, Scene Builder for JavaFX, Android Studio designer. Not sure what InteliJ offers.

Objective-C and Swift have the XCode GUI design tools, based on the NeXTStep development environment.

C++ has UI designers for Qt/QML, C++ Builder, UWP/XAML.

Object Pascal has Delphi and Lazarus.

Xojo as Visual Basic dialect also has its own designer.

Commercial Common Lisp environments like Alegro CL and LispWorks also have their designers in the tradition of Lisp Machines.

Smalltalk environments also have GUI designers.

These are just some examples that come to my mind.

Re: Why I Choose Delphi

#276
post #10

Earlier quoted context omitted.

> Does Delphi justify its cost? As far as I can tell, there are no free compilers - seems like a pretty high hurdle when most languages can be used for free. The bigger problem is that you are stuck with whatever features Embarcadero thinks are important. For example, Delphi didn't have a 64-bit version for an excruciatingly long time. How many companies using Delphi got run over by a competitor during that window? A…

Not to take anything away from the general gist of your argument, but why would a company get run over by a competitor simply for not offering a 64-bit build? This seems extremely far-fetched to me.

Not if your product is something like a CAD tool (see: Altium).

How many customers did Altium lose because a design was bigger than they could handle?

Re: Why I Choose Delphi

#277

Earlier quoted context omitted.

Do you really know how complex Win32 GUI is on low level? Yet Delphi manages it nicely and wraps it up into handy abstractions.

I don't really know anything on low level. But I've never seen any layout render engine with the same feature set as modern HTML/CSS engines.

I imagine you never used Qt, Gtk, Motif, NeXTStep, XAML, iOS or Android layout managers, for citing a few possible examples.

Re: Why I Choose Delphi

#278
post #242

I still compile a old project in Delphi 7 once every 3 months just to add 5 lines of code, and they pay me monthly for it. It's cheaper than porting the whole system to any other language. It is a project that I've built 8 years ago. Delphi was already a "strange think" on that time, it was declining fast. I think Java killed Delphi - "One codebase for all platforms, even your freezer will have Java!" - this was the…

Delphi and VB4-6 used to be the RAD tools. (RAD = rapid application developed) One could drag and drop controls and create an GUI application in WYSIWYG-style. Then in 1999 when Microsoft abdomen VB for their new dotNet vision, MSFT was about to be split up, etc Web took over and Dreamweaver (and Frontpage) offered a similar IDE experience for HTML4 with a tables and PHP (or ASP, etc). To this day VB6 has the easiest…

UWP might not get traction among HN crowd, but it is surely getting traction at heavy Windows shops.

Re: Why I Choose Delphi

#279
post #254

Earlier quoted context omitted.

Yes, to prove, get any crack exe and run pexplore on it. Very likely you will see some Delphi dfm or list of units compiled into the constant area.

I think I misunderstood - I thought you meant there was a way to ship slim c# exe files.

Yes there is, with .NET Core you just ship everything together, it no longer depends on the installed runtime.

You can also AOT compile to a pure binary .exe with Mono or the ongoing CoreRT being developed.

UWP apps are compiled to a static executable via .NET Native compiler (uses VC++ backend).

Re: Why I Choose Delphi

#280

Earlier quoted context omitted.

Do you really know how complex Win32 GUI is on low level? Yet Delphi manages it nicely and wraps it up into handy abstractions.

I don't really know anything on low level. But I've never seen any layout render engine with the same feature set as modern HTML/CSS engines.

XAML is comparable.

HTML has more features about layout. Also styling is more flexible in HTML.

XAML has better rendering (esp. in WPF), better alpha blending (esp. in UWP), much better animations, better vector graphics, and better editor (you can create acceptable layouts using WYSIWYG, not touching raw markup). Also it has templating, data binding, and other features not found in HTML.

Post reply on HN