3 ms·
Delphi is nowadays mostly dead and used to maintain legacy software. It's a terrible shame. To understand why, we need to remember what Delphi was at the time
by metadata 5y ago
Delphi is nowadays mostly dead and used to maintain legacy software. It's a terrible shame.
To understand why, we need to remember what Delphi was at the time it was made. It directly competed with VB6, an interpreted crap that needed dozens of files in a time when disks were slow. Delphi, on the other hand, compiled large products (we had dozens of modules) in 2 seconds, producing optimized native single file executable. On large forms you could see VB6 controls being painted one by one. Huge Delphi forms were shown instantly.
The development experience was stellar (I guess it still is). I worked for a guy who made DOS software and wanted to move into Windows space (20 years ago). Two of us made a full-blown ERP with over 800 forms and 600 database tables in a year and a half. It was at a time when companies didn't have full-time Internet connections, so we synced the database between customers' branches over ISDN connections using our custom algorithm. This software is still in wide use today and my code is still in there.
My side project was made in Delphi and quickly surpassed my full-time salary, so I formed my own company. The only reason I moved away from Delphi years later was that the database drivers were far less available than in .NET ecosystem (and I make database migration software and need many drivers)
Moving to .NET was a pain, but it was obvious that without Anders Hejlsberg Delphi is going to wither down, and .NET is going to thrive and evolve.
Delphi today is a cash cow for enterprise software. Looking at this release, first thing mention is HiDPI support. In 2021.
But I do miss the incredible productivity I had while working in Delphi. A friend once passed by and saw me working. He said "screens are changing so quickly I can't even track what you are doing". We need that development experience again.
Edit: formatting.
- ako 5y agoDid you try any of the low-code tools?
- metadata 5y agoLow-code is all the rage these days, and such tools are nice, for a while. But let's look at my use cases: 1) There is no way you can build a very large and complex ERP in low-code tools. First, you would hit a performance wall quickly, or need something these tools absolutely can't support as not many companies need it. Delphi is alive for 20+ years. How many products do you know that are successful and keeping up with the times for 20 years, and are built with low-code tools? And finally, betting your company's fate on a specific tool made by some other company is asking for trouble down the road. 2) I make database migration tools so I need the best performance and a ton of native database drivers. This means going low-level, querying database metadata, working with primitives of the specific drivers. Which tools can even begin to support these requirements exactly?
- noir_lord 5y agoAgreed on all points, Delphi is still by far (for it's time) the best development experience I've had. Intellij gets close in some areas (and for more languages - which is why I pay for it every month) but Delphi felt integrated (which of course it was).
- jasode 5y ago>It directly competed with VB6, an interpreted crap that needed dozens of files in a time when disks were slow. Delphi, on the other hand, compiled large products Setting aside your particular use of Delphi in your product, I don't think VB6 directly competed with Delphi in general. The cultural aspects and motivations were very different for VB vs Delphi. VB was more "internal corporate apps" and Delphi had more commercial vendor software adoption. - Visual Basic in the 1990s was more attractive to ex-DOS programmers previously using xBase/FoxPro/Clipper to write internal corporate applications. The 2000s successor to VB with C#/.NET/ASP continued this trajectory. Both VB and later C# never really got adopted by commercial software shops. VB/C# has remained popular for enterprise LOB/CRUD. - Delphi was more attractive to programmers who didn't want to use low-level C/C++ to mess around with raw Microsoft Win32 APIs for native executables. E.g. using C Language to code raw "CreateWinddow()" function calls was more tedious than using C++ MFC class wrappers but C++ was still more more tedious than Delphi. There are more examples of commercial software like Winrar, Nero CD Burning, Scooter Software BeyondCompare being written in Delphi. VB never got adopted by programmers to sell/deploy software like that. Yes, there are a few counterexamples to the above but that was the general trend of the different communities.
- badsectoracula 5y agoVB wasn't really for xBase/FoxPro/Clipper etc users, Access and Visual FoxPro were for those - VB didn't even had database support until later versions and that was some grafted on minimal support. Delphi was actually meant for the corporate apps you mean, even the name was a hint to it ("to talk to Oracle you go to Delphi" or something like that). It also came with much better database functionality than VB ever had. Now because VB was wildly popular and easy to use and had Microsoft's name behind it (which was a big plus) it was used for internal corporate apps a lot, but that was a byproduct of VB being used a lot in general - during the turn of the century it was one of the most popular programming languages by far.
- jasode 5y ago>VB wasn't really for xBase/FoxPro/Clipper etc users, Access and Visual FoxPro were for those I understand that perspective especially since that's what Microsoft's "official" positioning of those products were. But the reality on the ground was 4GL programmers in DOS text gui that transitioned to the "new Windows platform" usually ignored MS Access and Foxpro and instead used Visual Basic. In 1992/1993, all the corporate programmers I knew used VB3. My memory is hazy but I think one of the big drivers for VB instead of Access was the 3rd party VBX controls. I don't think you could use VBX in the crippled "Visual Basic" language in MS Access. Visual Basic had early database access with DAO (Jet engine?), then RDO. Delphi with syntax for pointers to memory (like C/C++) is a more "powerful" language than VB but I never saw Delphi adopted for corporate LOB/CRUD like VB. Most internal business apps didn't need a language with pointers. Delphi really attracted the programmers that wanted similar C/C++ power but with a rapid-iteration IDE and GUI toolkit. >Microsoft's name behind it (which was a big plus) it was used for internal corporate apps a lot, but that was a byproduct of VB being used a lot in general - during the turn of the century it was one of the most popular programming languages by far. But even with all of Microsoft's marketing weight, Visual Basic never got adopted with commercial software developers like this list for Delphi: https://jonlennartaasenden.wordpress.com/2014/11/06/famous-software-made-with-delphi/ https://jonlennartaasenden.wordpress.com/2014/11/06/famous-s... VB didn't compile to native exes. Delphi did -- and that attracts the C/C++ type of programmers who want to release commercial software. From the very beginning, VB vs Delphi attracted very different profiles of developers -- regardless of the marketing that tried to position Delphi for internal corporate LOB/CRUD apps.
- GordonS 5y ago> My side project was made in Delphi and quickly surpassed my full-time salary, so I formed my own company. The only reason I moved away from Delphi years later was that the database drivers were far less available than in .NET ecosystem (and I make database migration software and need many drivers) Moving to .NET was a pain, but it was obvious that without Anders Hejlsberg Delphi is going to wither down, and .NET is going to thrive and evolve. Woah, this is exactly what happened with me too! Back in 2001 I wrote a security app with Delphi and launched it as a side product. Borland got sold and Delphi became expensive, dotnet became a thing, and the rest was history. Several years later, I'm on the 3rd generation of that security product, cross platform with dotnet core, and I've finally quit my day job to work on it full time! I enjoy working with dotnet and Rider, but I have fond memories of working with Delphi. Compile times were insane, the RAD tools were great, and the IDE just flew - might be rose-tinted glasses, but I don't recall it ever crashing or being slow in any way.
- zerr 5y agoWhat cross-platform GUI do you use for dotnet core?
- GordonS 5y agoNone, the product grew from being controlled by a single-user desktop app to a multi-user web-based GUI (built with ASP.NET Core).
- metadata 5y agoPerhaps we have the same glasses :) Delphi did use to crash, but not that much. It had its quirks and we knew which ones they were and it didn't impede us. We now use .NET5 and in some products. WPF for GUI, but new stuff is all made in Blazor. Being on the bleeding edge means that lot of things in .NET was constantly crashing and not working exactly right, that tooling was broken. You would think Microsoft would have more resources for something like Blazor. I have learned since that new tech is made by very small teams and accepted that as a fact of life. Borland really could have saved Delphi, but I guess corporate types started treating their own company as a product, selling it around a few times, and vision was lost.
- Phylter 5y agoI was a Borland C++ Builder user back in version 3 through 5 (which correspond kind of closely to Delphi) and it was as lightweight and fast as a C++ IDE could be. I've used what it has become in version 10 and it's a disaster in comparison. It's massive, bloated, and nothing like the earlier IDEs that I remember. I've read that they have laid off/fired most of their in house staff and outsourced most of the work.