Time to Jump into the Delphi Pond?

If you’re a new developer and you’re wondering what development tool to adopt you have to decide what pond you want to play in. Don’t be suckered by the vendor offering free conferences, and trial development tools. Don’t “go with the flow” and choose the most popular tool because no one ever got fired for choosing it. If you do, it doesn’t say much for your critical thinking capabilities. You will be competeing with every Tom, Dick and Harry out there who is doing the exact same thing. There may be plenty of jobs, but the pay rates are driven down by the market. If you have mobility and travelling around the world appeals to you, then consider a small technology pond. One like Delphi, that is a pleasure to work with, and has a devoted following. Employers are finding it more difficult to acquire qualified staff, and are willing to offer more to good candidates and do more to retain them. You can work throughout the world for good rates, when going with a more mainstream technology, employers will choose local resources. It’s also becoming more common place to telecommute, if that is your goal.

Now don’t get me wrong, I am not saying bet your livelihood on a niche technology. I am saying position yourself with technologies (note the pluralization) so you can maximize the revenue generated from their use. That generally happens on the bleeding edge, and the twilight years. Talk to any Cobol developer about the kind of money you can make on a technology in it’s twilight years. Talk to any SAP consultant about the kind of money they make in a niche technology, and then ask your average .NET developer about the rates they get. Talk to any Objective C developer who made a fortune on the iPhone boom. Get the picture?

As a developer you should know at least two languages you can make a living with. This mitigates the risk of one of them being a niche technology, and protects you from shorter term market fluctuations. The exposure to different techniques also makes you a better developer. Today, choosing a mobile platform is likely as important as choosing a web platform was 10 years ago. As technologies converge, it’s important to have exposure to both web and desktop. Picking a platform that supports both reduces the number of languages and technologies you have to be fluent with.

Delphi offers a long history of backwards compatibility, and significant popularity (read lots of code to maintain). It’s community members are often as zealous as Apple fans and are very helpful to newies. Delphi offers many of the same features as newer languages, and has support for web, mobile and desktop to varying degrees. If FireMonkey and Embarcadero’s mobile efforts succeed, developers could experience “bleeding edge” type results in what would otherwise be a product’s twilight years.

As a niche product, or if you are an aspiring ISV, I think Delphi is worth serious consideration.

12 Responses to “Time to Jump into the Delphi Pond?”

  1. Joseph Says:

    I have to profoundly disagree with you here. I’ve found myself advising startups as opposed to individual developers but I’m giving far different advice today.

    >One like Delphi, that is a pleasure to work with, and has a devoted following. Employers
    >are finding it more difficult to acquire qualified staff, and are willing to offer more to
    >good candidates and do more to retain them.

    Delphi, in most parts of the world outside a handful of developing nations, is not being used in the enterprise. Employers are not desperately looking for Delphi developers; such Delphi jobs don’t exist. The last time I searched, I arrived at precisely one full-time, permanent position within 40 miles of New York City. Of course, there were two or three more with titles like “C# Developer” who would like someone who also knows Delphi to help migrate Delphi code to C#, but that’s not quite the same thing. I found zero with 40 miles of Baltimore MD and zero within 40 miles of Denver.

    Data analysts’ demand will outstrip supply for the next several years at least. Linux developers and admins? Same thing, and they’re also showing much higher raises (companies are fighting to keep them). Big Data - hadoop, noSQL - another high demand area.

    Delphi? No. That’s no demand, no evidence of a demand, and advising someone to consider a shrinking pie rather than new, growing markets is bad advice.

    >Now don’t get me wrong, I am not saying bet your livelihood on a niche technology. I am
    >saying position yourself with technologies (note the pluralization) so you can maximize
    >the revenue generated from their use. That generally happens on the bleeding edge,
    >and the twilight years.

    I’d be advising people about mainstream and emerging technologies, not mainstream and dying ones. Someone, somewhere is making money off of OS/2 I’m sure. They’re lucky, not smart.

    >Delphi offers a long history of backwards compatibility, and significant popularity (read
    >lots of code to maintain).

    It’s also DYING. It has no relevance today, and a whole generation of programmers now have never seen a line of Pascal code. It’s also proprietary in the new world of “open” and shepherded by a tone-deaf company. That’s a lot of burdens to put up with.
    Most code is also micro-ISV code, not enterprise code.

    >It’s community members are often as zealous as Apple fans

    That’s not a plus. :-( They’re fanbois, not simply enthusiastic. Say the wrong thing and you’ll be “banned from TeamB” or some other silliness. Again, that’s another burden to put up with.

    > and are very helpful to newies.

    Delphi doesn’t really have newbies anymore. Speaking of which, the learning material for many other languages dwarfs what’s available for Delphi today. In America, a commercially published book hasn’t been released since 2005, it’s out of colleges, there aren’t any free online courses or web tutorials, you can’t even get a free copy for personal use to use at your own pace. Yet again - more and more burdens, without any gain to make them worth it.

    >Delphi offers many of the same features as newer languages,

    No. Of everything you wrote, that’s the one I disagree with most. Type inference? Functional programming? Design by contract? Optional dynamic typing? Open source? Array slicing syntax? Automatic memory management? The EMB Delphi version can’t target the JVM or .Net, can’t be embedded as a scripting language, has an antique code layout to support a single pass compiler, is locked into one IDE and its own GUI frameworks, the IDE doesn’t run on OS X or Linux and it doesn’t target Linux… there are lot more I could list. Delphi is behind the times in many areas.

    >and has support for web, mobile and desktop to varying degrees.

    You’re not counting Intraweb as web support, are you? Other languages have Rails, Asp.Net, Django… one can’t compare. Delphi has no real web support, targets one mobile OS (and it’s arguably easier just to use XCode if you already have a Mac), and FireMonkey still has a lot of bugs and performance issues on Windows and OS X. It’s hardly the one development environment to bind them all at this point in time.

    > If FireMonkey and Embarcadero’s mobile efforts succeed, developers could experience
    >“bleeding edge” type results in what would otherwise be a product’s twilight years.

    Problem: FireMonkey is not “bleeding edge”. Qt does everything it does plus some and has more than ten times the number of developers working on it. It’s one thing to succeed, it’s another to suggest that tiny Embarcadero can produce a bleeding-edge product, especially given all of the growing pains FireMonkey is having right now. One is a big “if” but the other flies in the face of all experience.

    >As a niche product, or if you are an aspiring ISV, I think Delphi is worth serious
    >consideration.

    And I foundf, despite having chosen it myself as the sole development language at a startup from 1995-2003, I couldn’t recommend it to anyone else starting up ten years later. You neglect to address the most important factor: ecosystem. Libraries, books, tools, other developers, courses, etc. Delphi just doesn’t have those things anymore. That would put an aspiring ISV at a HUGE competitive disadvantage. One would have to write from scratch libraries and components that those choosing more popular languages would not. The more Delphi shrinks the harder it will become. A Delphi user is at the mercy of a small private tools vendor and paying higher prices for it too. They lack modern programming paradigms and are saddled with legacy coding conventions. Their skills have no demand there’s precious few resources for anyone to learn them. Writing new code today with a product like that would be a huge mistake. Strong and stable or new and growing would both be far better choices for an ISV. Going with Delphi is like moving to a mist-shrouded island cut off from the mainland with its own TV, cell phone and radio standards unlike anywhere else in the world. It’s quite easy to become isolated and insulated in such an environment and not a good idea.

    The reality is that the product has seen its heyday come and go, like Lotus 1-2-3 or DBase. Now if you mention it you’ll hear “That still exists?” or “What’s Delphi?” depending on the age of the person you’re talking to. It also simply looks and feels too antiquated to young developers today. The ecosystem has dwindled… my local bookstore even stocks a bock on Coffeescript, but nothing on Delphi. During its time it was the best at what it did, but times have moved on and it didn’t (sadly, that’s how many users wanted it). It still functions, but it’s no longer cool, it’ll never be cutting edge, and people just aren’t going to use it. No tech tool that’s ever faded into obscurity has ever come back. I’d steer new developers towards where the future lies, not towards the past.

  2. Doug Johnson Says:

    “Joseph Says” is just wrong. The points made in the main article are what I’ve experienced and am experiencing now.
    The main article says it is a waning language, so the jobs that are available are high paying. True. There may not be tons of them, but there aren’t tons of people going after them either.
    The main article says it’s potentially a cutting edge language. Also true. If the Firemonkey gamble pays off, then you’ll be in a great position to capitalize.
    The points that “Joseph Says” makes are that the language is waning and there aren’t a lot of local jobs. Fine. Learn Java or .NET and go compete with everybody who says they can program and has taken a class or two. Go compete with every third world consulting outsourcing firm. Go jump into the pool with the sharks. Good luck with that.
    Or get proficient with Delphi and be one of the few people applying for a high paying contract or position, assuming you’re willing to either travel or telecommute.
    Which is what the article says.

  3. Roger Says:

    @joseph

    which tech would you steer (new) developers to? Where did you move to from Delphi after 2003 (was it Qt)? - Thanks.

  4. Dennis Says:

    @Joseph: Please forward your comment to EMB - it is the ecosystem (mainly *free* resources like books,pdfs,starter editions, etc.) Delphi lacks most today. You’re damn right.

  5. stef Says:

    I agree with Joseph, Delphi is a dead end.

    XE4 is a bug nest. Should I wait XE5, 6, 12, 100 ?
    FireMonkey base code is too “young” (and no, it’s not a “bleedind edge” !)
    EMB policy is not very clear (price, no “free” release, bad marketing decisions, and so on…)
    Late 64bit compiler (at least is works)
    No web tools.

    I used to run Delphi 7, it was pretty cool… 10 years ago. Now it has to many competitors.

    I read “..2013 will be the Delphi year…”, yes may be, but I don’t buy anymore.

    Six months ago, I wrote an app. for a customer in Qt (And yes C++ is less scalable than Delphi I must admit it) but after, I can/could run it under Linux and OS-X without changing ANYTHING ! (only recompiling).
    I was stunned.
    When the project started up, I wanted to make it in Delphi, but hold on… No Linux support !?
    A joke ? No but people at EMB certainly thought that they probably won’t do money with “that” platform.

    Got the feeling that EMB bought Borland because their own db suite (Dbartisan, …) are written in Delphi and it would take to much time/money rewriting them.

  6. Mowat Says:

    I think Embarcadero must concentrate on IT managers to convince them of Delphi’s viability and capabilities.
    Programmers will only buy a copy for themselves if the market dictates them to do so, in order to learn or become proficient using the language in addition to writing their own software whether commercial or not.
    I remember in the late 1980s when working in an all-IBM-AS400 company, Oracle was sending messages and messengers to my boss luring him to investigate their database on pc systems.
    He could not replace these systems then due to the large investment our company had put in the IBM products. This situation does not apply in today’s main-stream “commodity”, multi-platform hardware/software adopted by most establishments.

  7. Michael Says:

    I think the RAD approach is not dead, yet. RAD appears in different flavors on different platforms.

  8. John Jacobson Says:

    “Got the feeling that EMB bought Borland because…”

    They did not buy Borland, Microfocus did. EMB bought CodeGear, the spin-off that carried the old Borland decv tools.

  9. FRanz Says:

    I do prof. software development
    I do it with Delphi
    I get high value payment
    I do no mainstream software deveopment

  10. Bruce McGee Says:

    Yes, Delphi is absolutely worth serious consideration. It is almost always my first choice for any new software project.

    Unfortunately, I don’t think this conversation always happens in the correct order for new developers. The question of the right tool comes up before there is a complete understanding of what it is that they are trying to accomplish. Or even what’s possible.

    I wish more new developers were attending technical user groups and conferences (even the free one day vendor sponsored seminars).

  11. Franz Says:

    I#m doing software development with Delphi, no mainstream software, custom specified projects.
    Paymant from the customer is fine and RAD enables me to serve my customer needs in time. No problem at all with Delphi.

  12. Nasser Says:

    Delphi is dead, i cant find one job in my city, then i moved to Java.

Leave a Reply