Take the 2-minute tour ×

Would you consider Delphi 2010 / XE for a the development of a new windows desktop project or do you consider it dead with the current state of .Net & Microsoft products (WPF)?

If you would / wouldn't use it please explain why.


I agree the initial question is a little argumentative. However, this is a serious question. I am based in Australia and I haven't seen many developer CVs that contain recent delphi experience so when I say "dead" I am only questioning whether it is a bad choice because there is a shrinking pool of people working with it.

share|improve this question
subjective and argumentive, this depends on what you want develop and many other things. –  Svisstack Nov 18 '10 at 1:40
Australia has a quite active Delphi User Group: adug.org.au that is a good place to search for resources. –  Jeroen Wiert Pluimers Nov 18 '10 at 8:47
Why do people continue to think Delphi is dead? It's far from dead. It's basically as dead as desktop applications, especially WIN32 desktop applications. –  Wim ten Brink Nov 18 '10 at 11:27
Delphi developers are harder to find, but it is relative easy to school them. If someone already know VB, then learning Delphi can be done in just 1-2 weeks –  dns Sep 19 '13 at 8:55
This question appears to be off-topic because it is about programming in general and is better suited for programmers.stackexchange.com –  Lukas Knuth Sep 19 '13 at 9:22
add comment

closed as primarily opinion-based by Lukas Knuth, Bill the Lizard Sep 19 '13 at 11:10


6 Answers

up vote 10 down vote accepted

I would choose the tool your team is used to, if you can choose both however I would choose Delphi for a Win client...

A part the fact there are more .Net developers than Delphi ones worldwide still (as for official numbers there should be 1.5M ++ Delphi ones however - which is quite a high number), there are other facts why Delphi might be preferred on client side (Desktop apps etc...)...

  • Native code / more speed - NO JIT (very slow startup time for complex or very external assemblies dependant programs)...
  • More power with semi-manual memory management (which in MANY cases IS a plus, where on .Net side GC does not allow you enough freedom or flexibility, apart being non-deterministic in lot of situations...)
  • NO (or LESS) external dependencies (single .EXE etc...)
  • Easier DEPLOY (REAL xcopy) - for .Net you really depend on 50/70MB++ RTlibraries and security related issues could bind you easily... - -
  • Delphi binds its RTLibraries (very light ones) directly to WinAPI (which essentially does .Net as well but on one more/additional-managed layer)
  • Faster programs/apps execution with deterministic objects/memory management...
  • On specifically language (not library) side (apart lynx and some minor differencies) all you can do with C# you can do with Delphi with easier to read and better organized code (standard OOP language functionalities + generics, anonymous functions, reach RTTI/Reflection, great IDE, rich libraries, with forecoming support for 64-bit, multiplatform and other sugars)...
  • Delphi is much like C++ on 'proteins' (meaning you can do everything you can with C++, with the same resulting code-speed, but with apps done in less time due to a solid vcl/rtl framework very similar to .Net one (the fact is they have the same father practically with very similar language/object-framework design), ...
  • Long and strong compatibility background...

Said that, and working with C# as well, I like both, on different sides though,... Is should be said also that they are tools made for different reasons and targets.

Delphi was born by programmers and made for programmers (in 1995/6) and .Net/C# was born by MS 'marketing' on one side and Delphi father and great MS team on other side in order to replace VB6, kill Java, replace COM, etc... and at the end give some fresh air to stagnant (at that time) MS developer portfolio at that time (around year 2000++) ...

Result is that Delphi slowly but steadily goes on, and .Net being very 'histerycal' meaning that it got updates very often (and some very cool ones), some portions get obsolete very often, some directions change as well, providing very unstable feeling to lot of people etc...

Today you have .Net/C# which gives you things you were able to do with Delphi more then 10 years ago, but with slower (code) and still worse deployment (dll hell again, right?)...

Cheers, B.

share|improve this answer
Does delpi have multicore support built in? In my experience the two best things about .Net right now is LINQ, PLINQ and Parallel.Net with Reactive Extensions coming strong. I agree though that Delphi has a solid foundation and it's great that it produces binary code directly. Then again, I've yet to have any real problems with the GC or JIT performance (and you can pre-JIT if that's an issue). Also it's pretty hard nowadays to avoid having the .Net runtime installed with Windows so the dependency often isnt an issue –  konrad Nov 18 '10 at 11:14
Delphi is multi-thread since first version. For dedicated frameworks, you've for example the very strong OmniThreadLibrary available at otl.17slon.com –  Arnaud Bouchez Nov 18 '10 at 12:14
About the DotNet runtime, you've the 2.0 mostly installed. But WPF will need the latest available (3.5 or even newer)... which are not so widely deployed, and are an huge download and time to install. –  Arnaud Bouchez Nov 18 '10 at 12:15
add comment

Delphi's definitely not dead, and in fact it's been making quite a resurgence in the last few years, ever since it got picked up by a company that actually cares about making it a good product. And with WPF's future so uncertain and up in the air lately, I wouldn't try to build anything in it for fear of having it discontinued by Microsoft the way classic VB was.

So I'd say it's worth considering Delphi very seriously for a new project. It's not as popular as C#, but it's a better development system with a mature set of libraries and a strong, supportive community, and if other people aren't using it, that just means that you'll have a competitive advantage.

share|improve this answer
WPF's future is far from 'uncertain'. Microsoft is pushing no other alternative (consider that SL is just a WPF derivative) and 'features' in WinForms have been frozen for several years now. Classic VB was "discontinued" in favor of the .NET version (which can use WPF...) -- granted there are a number of things the .NET version can't replace VB6 in, esp. with COM+, but I digress... –  user166390 Nov 18 '10 at 1:25
WPF's future isn't uncertain, if nothing else because of it's tight coupling to Silverlight which now is very important for WP7 developement. I must say though that the amount of professional WPF applications reaching mainstream has been pretty underwhelming –  konrad Nov 18 '10 at 3:24
@MattiasK: Yeah, that's actually a big part of the reason why I say it's uncertain. It's sure looking like WP7 is shaping up to be a major flop, and if it dies, Silverlight and WP7 are basically dead along with it. –  Mason Wheeler Nov 18 '10 at 3:28
If Silverlight, WPF and WP7 dies then you needn't worry because then there wouldn't be much of a Microsoft left to develop for :) Seriously though, Microsoft needs WPF to stay competitive, it's the only development framework that competes with modern os'es like OSX with hardware accelerated graphics and animation. The future is in multicore and rich graphic applications so much is for certain. –  konrad Nov 18 '10 at 4:03
Silverlight, WPF and WP7 aren't determining factors for Microsoft, OSes, Office and Server software are still their bread and butter. SL+WPF+WP7 could disappear at the same time, and apart from developers and techies, few would notice, much less even know what actually disappeared. –  Eric Grange Nov 18 '10 at 9:30
show 1 more comment

I produce commercial applications with Delphi. It does everything that I need and more.

share|improve this answer
Do you have issues recruiting to work on your applications? –  Leigh S Nov 18 '10 at 4:07
True, that is one downside. There seems to be less Delphi developers out there, but then again I'd take one experienced Delphi guy over 3 .Net noobs so that brings them a bit closer in this regard. –  Darian Miller Nov 18 '10 at 5:46
I have experience with two devs. who came from java. The learning time was very fast and the base of dev is very similar in both languages. They are now working in a complex app. with datasnap and thread pooling (three months later) Don't look for good delphi developers. Look simply for good developers. –  Francis Lee Nov 18 '10 at 11:31
+1 for Francis: look for good developers. I know good developers with DotNet or Java, bad developers using Delphi... Some Delphi applications around are very badly designed: it's not Delphi's fault, but poor spaghetti/RAD developer result monster. –  Arnaud Bouchez Nov 18 '10 at 12:18
add comment

Depends on what kind of application you're going to build and other factors such as experience of you and your team in the various technologies. For traditional applications with lots of ordinary dialogs, listboxes etc where customization, presentation and animation isn't that important I still think that Windows Forms has an edge against WPF as its a more mature technology with more experienced programmers and more code examples. WPF doesn't have that many advantages for those kind of applications yet since it's strength IMO is graphic acceleration and presentation.

Delphi is great, i was once a delphi programmer and found it to be way ahead of Visual Studio/Visual Basic at it's time. Nowadays though it feels like it's kinda on it's last legs and .Net has way more developers than than Delphi. Also access to the whole .Net framework with all it's classes and methods is invaluable

share|improve this answer
From what I see from .NET using friends, for apps Winforms is actually used, not WPF. –  Marco van de Voort Nov 18 '10 at 9:59
Yeah, WPF is still pretty uncommon in my experience although I sometimes see developers that managed to convince their boss to build an admin tool in WPF, probably mostly because they wanted to learn something new :) –  konrad Nov 18 '10 at 11:11
WPF is heavy. Real WPF applications don't scale so well, and burn your CPU and memory. I found out XAML to be verbose for rich applications (no just demo forms). You can get 3D User Interface, fast and using much less PC resources, with Delphi using ksdev.com/dxscene –  Arnaud Bouchez Nov 18 '10 at 12:22
add comment

I would rethink the WPF choice because it is "dead"?

Silverlight dead too?
http://www.zdnet.com/blog/microsoft/microsoft-our-strategy-with-silverlight-has-shifted/7834 http://blog.marcocantu.com/blog/microsoft_silverlight.html

But true, Delphi developers are harder to find, but it is relative easy to school them (we have a VB+C# developer here "upgraded" to Delphi ;-) )

share|improve this answer
Thanks for the articles, the WPF one was quite interesting. –  Leigh S Nov 18 '10 at 7:12
add comment

I am a programmer from the Turbo Pascal/C days so I've been a Borland fan since way before RAD came of age. I purchased Delphi 1.0 (16 bit!) as soon as it came out (back when Windows 95 was launched) and I remember making sweet love to it. Delphi kept improving over the years and I kept buying each new version. I loved the language, I loved the environment and I was a staunch supporter and kept milking the Delphi contracts over the years as I flew from job to job all over the U.S. Then Anders Heijlsberg defected to Microsoft and .NET and C# was released; it was clear that the writing was on the wall. I made the switch and as the years went by I remember Delphi fondly as I would an old teddy bear but I would never go back. I can't say I'm surprised by the attitude adopted by Delphi diehards since I can understand loving such an awesome product, but sometimes love can blind you to reality and that is clearly the case here. Of course you can still develop applications in Delphi, but its environment and toolset have long been surpassed (primarily by Microsoft's superior Visual Studio/.NET) and is very much a museum piece in this day and age that is desperately trying to stay relavent by tacking on bandaid after bandaid with each new release. Make the switch guys... realize that what you're experiencing is the "fanboy" phenomenon and that it's preventing you from moving forward. Learn something new, try Visual Studio/.NET/C# and get a short-term job in it. If after 6 months you decide it's the best thing since peanut butter and jelly then you've just improved your coding environment and career marketability and salary potential in one fell swoop. If not then go back to Delphi and good luck to you; no harm done right?

In short, Delphi is indeed a dead language in the same vein that Basic and Modula-2 are dead languages; there are still people developing in them but they are no longer relavent in the grand scheme of things. It just so happens that Delphi is more modern than most other dead languages and therefore still enjoys a bit more support, but that support is eroding with each passing day (and has been for many years) while more modern languages (ie. Java, C#) are growing and evolving.

share|improve this answer
You make .NET sound so sweet, if it only were true! 11 years since it's first launch and I can still spot a Managed application by it's slow start time and it's slow runtime performance. 11 years of hardware and software upgrades are apparently not enough. Microsoft Office is still not a managed application: if they don't switch, why should I? I absolutely love the concept of WPF and XAML but guess what, the Webs are full of talk about WPF being dead! Visual Studio 2012, on my computer, feels slow. And trust me, it's a fast computer. –  Cosmin Prund Jan 23 '13 at 20:35
Just yesterday I was visiting guys from my old job. They are reselling this new shiny very big program written in .NET. This program is so damn slow that opening an invoice on reasonalby fast computer takes 15 seconds...**one** invoice. The company which made this application was a Microsoft's technology partner. To make things funnier this application is installed with InstallAware (written in Delphi). I am in touch with Visual Studio for few years now and I am not impressed at all. The main question is now 2+ years old, how was WPF developed during that time? –  Wodzu Jan 24 '13 at 7:00
The "cold start" of a .NET application is a very real issue, I'm not gifted at all. I can see the .net advantage, it's a grate concept. I like the c# language. I really like WPF. But the "edge" they have over Delphi is minor, and the speed difference is real. And what's that talk about "this is just one flavor, use whatever comes next"? That's CRAZY! Are you asking me to re-write my entire application every few years for the fun of it? As far as I'm concerned the only advantage of the .net platform is the abundance of available developers, but they're mostly trendy, not good programmers. –  Cosmin Prund Jan 29 '13 at 18:05
It makes sense for clients not to care; But us geeks we care, and we specifically look for apps that might be using a certain technology. I am not alone in looking for those WPF apps. There are two question right here on SO, google finds some blog posts. We find those things, but we don't find the WPF applications, and that's weird. I wouldn't want to invest into a new VB6, and the only guarantee this is not going that way is the presence of WPF applications on the market. Microsoft might do something that annoys programmers, but will not do something that brakes compatibility for consumers. –  Cosmin Prund Jan 29 '13 at 19:09
I have been given a bit of work to modify a delphi product I wrote and which has been in production for 10 years. I have not coded in Delphi for about 7 years and have been a hard-core c# coder. This morning I installed the trial version of Delphi XE4, build and ran the application. What a revelation. After waiting minutes to build .net apps, and slow startups, working in Delphi was an absolute dream. I shall be building my own applications for windows, Mac, IOS and hopefull android on this platfrom in my own company. My clients may choose .net and pay me for that, but I'll use Delphi. –  Kell May 22 '13 at 10:34
show 7 more comments
