Why I Keep Choosing Delphi

Posted by on in Blogs

Turbo PascalEarly on I learned Turbo Pascal, which was a huge step up from the Basic and Batch File programming I cut my teeth on. When Delphi came along I thought it was brilliant and fell in love immediately. I had no interest in learning other programming languages or tools. Delphi did it all, and that was great. I found myself plenty of work and enough to keep my interest.

C++BuilderI was naturally curious about other programming languages, but mostly from an academic point of view. I took a night school class in Assembly. I had a smattering of C & C++. Looked at some Ruby (back before it was hip), Java, JavaScript, etc. Eventually I found myself troubleshoot laser printers, which ran a combination of C/C++/COM all on a Linux platform for a few years.

C#From there I went back to full time Delphi programming, but the new company I was working for bought into the “there aren’t enough Delphi developers” myth and decided to move to C# & WinForms.We immediately were able to hire some more C# developers, but as we got to know them we found out they had a background in Delphi development, but they bought into the “there are no Delphi jobs” myth and rebranded themselves as C# developers. In the end the project took 4 times longer than it should have, despite having more developers. We really should have stuck with Delphi.

Ruby

I moved to a new job doing Delphi development full time, and then that company bought into the C# & Silverlight are the future. Since I had C# experience I started working on the new Silverlight front end. The backend and the desktop app remained in Delphi (with a little C++).

JavaScript

From there I ended up really branching out. I did a lot more work with C#, Xamarin, Java, JavaScript, Objective-C, and Oxygene (known as Delphi Prism at the time). There was still some Delphi mixed in too. I taught a few class and workshops on Android development. I learned to appreciate some of the benefits, strengths and qualities of each. I found things about all of them I liked (less so about Objective-C).

It was at this point I could see that most developer skills work across languages, tools and platform. There is value in knowing and using multiple languages. The basic tenants of each language influences the way you do things in other languages in a positive way helping you to look at problems in a different way. There are some projects, platforms and problems that are best suited to certain programming languages. For example, if you are working with the web, you need to know at least some JavaScript, HTML & CSS (the latter two not being programming languages), even if you are using some sort of abstraction layer.

Delphi HelmetThroughout all of this, I still found myself choosing to Delphi for personal projects. Occasionally I’d try personal projects in other tools and languages as a way to get to know them, but I still found Delphi to be a better solution for most general purpose projects. One of the defining characteristics of Delphi for why I keep coming back to it, is that it makes the common tasks really, really easy, while keeping the rest simple and possible.

So many “rapid prototyping” tools that make the common tasks as easy as Delphi does, makes anything beyond the “ideal” scenario hard or impossible. While other general purpose tools don’t do anything to optimize common scenarios, often times making these simple tasks more complicated than they need to be.

Now with multi-platform development Delphi is more important than ever. The approach Delphi and FireMonkey provides makes it quick and easy to do the most common tasks, while also keeping all the platform APIs and features within reach.

Delphi really invented the 3rd party component market as far as I am concerned. When it shipped all the source code for the VCL and included a robust OpenTools API and component model it made it even easier for others to build, share and reuse code. All the technology partners are a huge part of why I choose Delphi.

Delphi also has a huge commitment to the code we as developers develop. I attend a lot of general software developer groups, and it is common to hear developers complaining about how they just finished porting their code to one release only to have it all break again because a new release of their non-Delphi programming language or framework just came out. Sure, it isn’t perfect, and sometimes there are incompatibilities or breaking changes from version to version, but on comparison Delphi is so much better at this than any other language or platform out there that I have seen.

I started out choose Delphi because it was what I knew. Now I choose Delphi because it gets the job done. The fact it is faster for development is nice, but only part of the equation. I used to have a hat that said “Delphi does it all, especially Windows” and that is more true than ever today.

So why do you Choose Delphi? Share your reasons in the comments or on your blog #WhyIChooseDelphi



Comments

  • SilverKnight
    SilverKnight Friday, 8 September 2017

    I've been using pascal since 1984, started my professional career (getting paid to program as a consultant) in 1989 with Turbo Pascal 5.5, so Delphi, when it came out in 1995 was pretty much a no brainer for me (I used Turbo Pascal for Windows, both versions prior to that on Windows 3.1). Later, around 1997, I got a job at a "Microsoft Shop". We used VB 4 at the time, and eventually migrated to VB 5, then 6. I'd been programming professionally for 6-7 years before that, so I picked up VB and learned to use it in about 3 months. The interesting thing is that I wasn't hired as a developer at that time, but a "software tester", because I didn't have experience writing VB code. Didn't take long (an additional 3 months) before I was developing code in VB professionally. I kept all of my personal projects in Delphi, even though I was doing VB work. Then, we had a partnership with another company that had some Delphi developers, and they convinced my manager to get a license for Delphi - so I started making plug-ins for our product using Delphi 3. Following that, around 2000, our next product was done almost entirely in Delphi - we still had a couple developers doing server side code in VB because they didn't have any experience with Delphi and thought it would take too long to learn. About a year into the development of the first release, we realized that the server performance was a big issue because it was based on DCOM and VB6, so I took 2-3 weeks and re-wrote the server code in Delphi and replaced the DCOM communications with direct TCP/IP - for a 3x improvement in performance. We released that at the end of 2002, built in Delphi 7. Then .Net started hitting the streets in a larger fashion in 2002. As a "Microsoft Shop" - the VB developers started kicking around Visual Studio 2003 the following year. The things I remember of that time are all the "oohs and awes" over all the "new" features they could do with C# that they couldn't do with VB6 - being able to write multi-threaded applications, using class inheritance, exception handling with try…catch blocks. You know…all the things I was doing with Delphi 2/3 - back in 1997/1998. I just shook my head and said - "You could have been doing this with Delphi for the past 5 years…" -- fast forward to 2011 - XE2 joins the market and now we can do iOS and Android development with Delphi - Another few years later I hear all the same things about the .NET Xarman platform (.NET core 1.0 released in 2016?) - Gee, if you had only chosen Delphi, you could have been doing this for the past 5 years too… That's why I keep choosing Delphi - because it gives me all of the features I need today - years ahead of the competition (well… with the exception of 64-bit development, but I got that in the end too).

  • Michael Cone
    Michael Cone Friday, 18 August 2017

    I began my career in the '80s by teaching myself BASIC, QuickBasic, then Visual Basic when it came out. After having looked over C and C++ code, my reaction was "you've got to be kidding me!" That style of coding took a page of code to do something very simple. I was not willing to drown in code just to do something simple. While C was popular, it was completely unworkable for me. As an Entrepreneur, I needed to spend more time on the big-picture - not the minutiae of C. So my choice was only BASIC at the time.

    If Visual Basic had performed well on large projects, then I would still be a VB programmer. However, VB was embarrassingly sluggish on projects larger than 64K (which was pretty much all of my projects). I asked technicians at Microsoft when they would come out with a Visual Basic that would compile executables (not run interpreted). The responses were dismal. I was practically scoffed at for using VB and was told that VB would never amount to much. "It will never have a compiled version - don't waste your time on it."

    So I switched to Delphi when it first came out. That was one of the best decisions I ever made. I loved Delphi - and continue to love Delphi. It's my opinion that we can develop and release quality projects faster than companies that use banks of programmers with C++.

    I was amused with C# when it came out because it seems a lot like the Delphi to me. Maybe the software houses are finally seeing the light for a need for another Delphi-like product. If I had to, I could accept that language because it has the built-in high-level features that I expect in Delphi. But why bother? Delphi just continues to get better.

    There may be a world of programmers that mock Delphi - but I no longer care what they think. We Delphi programmers can turn out great products much faster and with less stress than they can.

    Delphi was the right choice for me then. And it still is now.

  • Steffen Nyeland
    Steffen Nyeland Friday, 18 August 2017

    Well spoken - I especially like your second last paragraph - thumbs up

  • Please login first in order for you to submit comments
  • Page :
  • 1

Check out more tips and tricks in this development video: