top | item 32508668

Delphi still exists and is actively developed

165 points| psim1 | 3 years ago |embarcadero.com | reply

243 comments

order
[+] magicalhippo|3 years ago|reply
We use Delphi at work. We've gotten a lot of pressure from customers to move to the web.

However the lack of ways to design non-trivial UIs quickly does not make it seen feasible at the moment.

Then there's the fact that Win32 is like bedrock in terms of stability. We've got forms that's been designed and coded over 15 years ago which still works just as fine as they did back then.

We've got input-heavy UIs, the one I'm working on right now is a single window with >150 input fields including multiple child tables up to levels 3 deep with their own grids. Getting the UI layout done and components connected to the DB will take me a day tops, it'll look great and based on history should work for the next 10+ years. The web seems like such a step back whenever I try it.

[+] shrubble|3 years ago|reply
What no one in the responses is talking about ...is speed of using the UI during day to day operations.

Web interfaces are extremely clunky to use when trying to do things via only-keyboard (which is the only way to have muscle-memory help you zip through forms) methods.

They are slow to update and in some cases, the Web browser's UI is fighting with you, such as offering to replace your input with the previous data you put in a form field of the same name, etc. In certain cases the tab method of navigation between fields gets broken or something else that interrupts the person's flow happens.

Having worked in a case where the ticketing system and related interfaces were half-Web and half-Java-application-on-Windows - even the Java application was better to use via the keyboard.

If you are paying people on a regular basis, whether hourly or per-shift, and the UI slows people down by 5% , what is the cost over the (perhaps) 3 years of that application's life?

Even 4 users at $50k/year each in the USA (with healthcare and other business expenses etc. that means a $20/hour full time job) means $10K/year (5% * 200K salaries) in extra expense.

[+] Joeri|3 years ago|reply
We've got input-heavy UIs, the one I'm working on right now is a single window with >150 input fields including multiple child tables up to levels 3 deep with their own grids.

I went through this transition in the late 2000’s, moving grid and form heavy delphi windows screens to webpages, using ExtJS, the only framework at the time which kind of sort of could do this.

The process made me realise two things:

1. if you try to map information-dense UI’s like that to the web, it will cost more to develop and the UX will be worse. (we saw double the dev cost and a slower and more cumbersome ui)

2. in most cases information-dense UI like that is bad design and should be avoided. I couldn’t see it back then how things could be done differently to make screens less dense, but looking back there were plenty of ways.

[+] yrgulation|3 years ago|reply
“ >150 input fields including multiple child tables up to levels 3 deep with their own grids”

Yeah i’ve built single page apps with more input fields than this and grid tables all in a single view. Are you sure this cant be easily done?

Coincidentally that was first 15 years ago with extjs, second time with react 3 years ago - the latter being a slower process but still pretty much doable.

[+] dimgl|3 years ago|reply
> However the lack of ways to design non-trivial UIs quickly does not make it seen feasible at the moment.

I'm... not sure this is true. There are plenty of ways of designing non-trivial UIs on the web.

[+] rossmohax|3 years ago|reply
Did you need to do anything to support HiDPI displays in those 10+ years old forms?
[+] mhd|3 years ago|reply
...for the enterprise. Which is okay, there's plenty of mixed quality software for that sector. It's just that Delphi used to be a lot more oriented towards beginner to small-business developers.

And note that this happened before the web pillow-smothered decent desktop UIs. If it was all about a reduced audience for desktop-based applications and then supporting that, I would understand it more.

I haven't been following Delphi itself, but the parent company also manages ExtJS, which is aimed/priced similarly, yet with support/quality that doesn't justify this.

Weird that outside of the BCPL or ML families, it's Ada that seems to be the one with the most momentum these days.

[+] alyandon|3 years ago|reply

  the web pillow-smothered decent desktop UIs
Application development has gone backwards so much compared to the RAD tooling from the 90s. I really can't even properly describe it to the younger generation. :(
[+] kwanbix|3 years ago|reply
I think they really screwed up after Delphi 7, when they did the horrible Delphi.NET.

Also, they should have had some better pricing, something like: Personal use: Free. Commercial use: Free until you are making $x a year, like Unity I think, and then different prices.

Note: I might remember wrong, as this was so long ago. I started with Delphi 1.0!

[+] panki27|3 years ago|reply
One of the best aspects of Delphi is how quickly you can whip together simple GUI applications. The main issue nowadays is finding helpful resources on the internet, as hardly anybody writes Delphi anymore.

For the interested, a free Delphi IDE exists (comes with FreePascal compiler): https://www.lazarus-ide.org/

[+] hengheng|3 years ago|reply
Asking as someone who last saw Delphi in computer class at school, what would be the modern equivalent?

Something that lets me draw a window with two number fields and a button that says "return sum", but it's two minutes of work and self-explanatory.

[+] kwanbix|3 years ago|reply
Nowadays they have a free option. Community edition or the like.
[+] kerblang|3 years ago|reply
I used Delphi years and years ago and it was great for building GUI applications quickly and easily. Much nicer than Visual Basic. I probably wouldn't recognize it now, other than I suppose it's still Object Pascal, which is a very good programming language, all things considered; straightforward, not too fancy, not too dumbed down.

Free edition: https://www.embarcadero.com/products/delphi/starter

[+] KindOne|3 years ago|reply
Be warned: You need to enter a valid phone number. They will call you asking on what you plan on building with the software. I've had that happen to me within a few days of downloading the software.

Another person had the same experience. https://news.ycombinator.com/item?id=24582890

[+] secondcoming|3 years ago|reply
> Much nicer than Visual Basic.

How dare you.

[+] cosmotic|3 years ago|reply
I remember one of the great things about delphi was that it statically linked everything into the single .exe making it totally self contained. A Windows GUI program could be a couple hundred KB, no other DLLs required. C/C++ could do the same but you were stuck with nasty raw win32 calls and a lower level language.
[+] badsectoracula|3 years ago|reply
FWIW C++ Builder could do the same and had access to VCL too. AFAIK (never tried it) you could mix Delphi and C++ in the same project if you wanted.
[+] chinabot|3 years ago|reply
Delphi Win32 executables I compiled last century still work fine. I hope the programs I am writing today will still work on whatever version of Windows is around in 25 years. Microsoft for all its many faults has not yet screwed up the Win32 sub-system.
[+] jamier1978|3 years ago|reply
Also the compiler was lightening fast.
[+] marcodiego|3 years ago|reply
I have to repost https://news.ycombinator.com/item?id=28491963 :

My main problem with delphi: it is "too proprietary". It was a very productive ide in the 90's or early 2000's but lost their path and never recovered.

Some new versions broke compatibility with previous version's components. There was the case where you paid a good amount of money on some proprietary components and they simply wouldn't work in the next version: you were imprisoned in an obsolete ide. By not being multi-platform (I hear it improved it lately) you could only use it with/for win32 so it lost servers, embedded and mobile. By not being open-source nobody could improve it.

Then it had to compete with "native tools". Whoever develops for windows wouldn't quit ms' tools to use it, whoever develops for mac wouldn't quit apple's tools to use it, whoever develops for android wouldn't quit google's tools to use it, whoever develops for linux was mostly ignored after kylix.

Note that I didn't even mentioned price and license.

They improved it later, I heard. But seems more like the old case of too little too late. Most successful programming languages today are open source and multi-platform. Delphi was dependent on win32 for too long and it still is "too proprietary". You do the world a favor by porting your project to lazarus.

[+] api|3 years ago|reply
They should break off and commercialize just the cross-platform GUI and rapid development IDE for that and put a language like Go under it. Go with a good RAD IDE would be so amazing, like yank out my wallet and throw money at you while shaking amazing.

Give me a good cross platform GUI. Give me a good IDE for it. Don't make me learn yet another fucking programming language that exists nowhere else to use it.

The last part counts against this and also against Flutter, which forces you to learn Dart which is used nowhere but Flutter. What would have been wrong with Go or TypeScript? People already know those.

Most successful languages are open source for very clear reasons, but a cross platform IDE is something that could very well justify being commercial. It's an absolute ton of work and a constant moving target to support. So far no pure open source effort has managed to succeed unless you count the various HTML-based GUI systems that are indirectly subsidized by Google and Apple.

[+] bluedino|3 years ago|reply
Same could be said for Access
[+] therealmarv|3 years ago|reply
I still have the feeling it's the most productive way to create beautiful native Windows desktop programs.

Rapid application development is not an empty promise here.

All my other endeavours with UI programming (Java/Swing, HTML/JS frontends, QT) felt way less productive. Maybe MS C# is the closest to Delphi nowadays.

[+] p_l|3 years ago|reply
AFAIK one of the main driving forces behind C# and .NET was the designer of Delphi that Microsoft managed to hire away.
[+] yakubin|3 years ago|reply
I wonder if anyone here has experience with both Delphi and SwiftUI. I'd be curious to know which one is more comfortable.
[+] pjmlp|3 years ago|reply
It is, minus AOT experience.
[+] RcouF1uZ4gsC|3 years ago|reply
For me when Borland became Embarcadero, it seemed like it lost it’s scrappy hacker ethos.

Turbo Pascal, Turbo C, Delphi, C++ Builder were all very innovative products that catered to the individual developer. The Embarcadero rebrand seems like a turn towards Enterprise.

For me now, JetBrains is the new Borland, a scrappy company with a strong focus on what individual developers need and consistently turning out excellent software.

[+] wenc|3 years ago|reply
Borland pivoted to enterprise long before this thing called Embarcadero. Recall it renamed itself Inprise before renaming itself back to Borland.

Also Embarcadero isn’t Borland. They acquired Borland’s product lines but not Borland itself.

[+] chinabot|3 years ago|reply
Even though I own the latest Delphi Compiler it still seems 2 steps forward and 2 steps back each release, yes it gets better but they always seem to screw some little thing up which you need to work around (high DPI Issues, tcategorypanelgroup and IDE not repainting properly etc since my update from 10.3 to 11.1) 90% of their market is Win32 so I really dont understand why they concentrate 90% their development outside of this.
[+] behnamoh|3 years ago|reply
I still remember Borland’s logo and icons. Something about the 90s and 00s was special and maybe we didn’t appreciate it enough.
[+] bluedino|3 years ago|reply
I'm sure they made a great amount of money doing Turbo C/Pascal via mail order but that market is only so big.

You need the $1,200 compiler suites to make the real cash.

[+] nottorp|3 years ago|reply
JetBrains is subscription pricing now.
[+] minsight|3 years ago|reply
Embarcadero was acquired by the same jackasses that bought out a company where I used to work. The new owners had a bunch of attitude and kept crowing on about "their playbook". It turned out that the primary technology that they were buying us for was the one part of our product that we actually licensed from another vendor. I believe they spent millions and didn't get what they were looking for.

They had an offshore team that theoretically could work with the codebase, but I don't remember seeing anything of consequence added to the product in the past 7-8 years. If I ever found that they bought out a company that used technology that I depended upon, I'd migrate to a new solution.

[+] mikewarot|3 years ago|reply
I miss Delphi.... even though I've got it installed.

I can't bring myself to use it.

The "free" version has a hook in it that just doesn't sit well with me... they want a cut of any money I make with it, on their terms. It's easier for me to ignore it, and just put up with the limited documentation of Lazarus. I miss the days when I could afford Delphi.

[+] proxysna|3 years ago|reply
Use Lazarus. Free and Opensource clone of Delphi
[+] jamier1978|3 years ago|reply
A significant amount of Delphi code I wrote 20+ years ago is still in the wild and still making a ton of money for a company I used to work for.

I actually miss the days of Windows desktop development. Good Times.

[+] chinabot|3 years ago|reply
All my future developments will be in Lazarus but I have one mega-client with a big Delphi production program I have to keep happy for the foreseeable future or until their large team of developers and advisors can decide which language/platform/infrastructure etc they want to redevelop it in.

3+ years of consultants and meetings but not one line of code so far :-)

[+] LorenPechtel|3 years ago|reply
So what if it does?

In the old days I loved them. Then I found myself using older versions despite having newer ones because of important bugs.

Then came 64 bit code. They were years late in releasing a compiler that could produce 64 bit code and the reaction from the company seemed to be that it's a tiny portion of the users that need it.

Never mind that for that not-so-tiny portion (you might have no direct need of 64 bit address space but if you have to play nice with 64 bit code you have to be 64 bit--plugins) it was a total showstopper, companies relying on it were dead in the water, had to to a total rewrite or die.

I got the strong feeling that they were looking at us customers as a resource to be milked, not supported. My employer at the time died in the housing collapse, while I still have a couple of little Delphi apps around that I wrote I haven't touched it since then. C# was almost as good (and at this point all that's missing are arrays with an enum index and arrays that don't start at zero) and has much better support.

[+] hankman86|3 years ago|reply
I still have a warm spot in my heart for Delphi. When I bought a license for Delphi 1.0 running on Windows 3.1, it was like a revelation to me. Having previously used Borland Pascal on DOS, I found it unbelievable how easy developing Windows UIs can be. I developed a 16-bit business app (accounting, inventory management, customer records) on Delphi 1.0 which is still running today (you need a 32 bit version of Windows 7 though). The bundled Borland Database Engine (Paradox desktop) was decent enough for structured data management in a single-user application. The best feature was the compiler that sprinted through my source code, turning it into a statically linked executable in mere seconds (on a Pentium 60).

While I have long moved on from Pascal, many great ideas of Delphi live on in C# and Typescript.

[+] RachelF|3 years ago|reply
Except the small statically linked executable.

C# needs .NET which has its very own circle of dll hell with compatibility and confusion version numbers for your users.

[+] 29athrowaway|3 years ago|reply
If you want Delphi to succeed you have to win the developers.

The Embarcadero website experience for a developer is nonsense. The first thing you see in the page is "BUY NOW", "FREE TRIAL". It's so aggressive that my instant reaction is to close the product page before I even get to see what the product is about.

And no, I don't want a "product demo". I don't want to contact sales. I am a developer I don't care about that. "Contact sales"/"Request a product demo" sounds intimidating. It sounds like you want me to spend $5000, which I am not willing to spend.

My primary objective as a developer is to develop applications. The website has to focus on assisting that process.

[+] scrapcode|3 years ago|reply
I have fond memories of using Borland's Delphi when I was a much younger boy. GUI building tools such as Delphi, VS, JavaFX and the old Dreamweaver really helped certain concepts click for me at that age.
[+] archielc|3 years ago|reply
I used Borland Delphi (as well as C++ Builder for some period) throughout my university times for all kinds of home works and hobby apps. It was extremely easy to build simple but still good-looking UIs. At some point I even had a small reusable library for graph problems (add/edit nodes/edges with nice arrows/labels etc.) What I really liked was how fast you could get to real coding part with minimum boilerplate. Happy to see Lazarus IDE still having a strong community.
[+] lord-squirrel|3 years ago|reply
Denmark's farming industry's ERP system run on a system called Ø90 which is written delphi, java and cobol. Still being actively maintained by IBM today.
[+] cowmix|3 years ago|reply
I remember going to a convention in 2005 for retail store software and I was amazed that Delphi dominated as the platform for POS systems.
[+] aaa_aaa|3 years ago|reply
AFAIK they signed a deal with education ministry of Turkey so that Delphi will be taught as the programming language in technical high schools.