I’d like to talk about something that I’m really excited about! It’s a new release of a software development platform that has virtually been forgotten called Delphi.
In a nutshell, a new version of Delphi is about to be released that lets you build applications that run natively in Windows, OS X, and iOS. Support for other ARM-based platforms, like Android, is also in the pipeline.
But before I go into detail, I’d like to offer a brief history of the software world that I’ve observed first-hand over the past few decades.
Back when I was a kid…
Yeah, yeah, I’m getting old. Don’t remind me. I’ve been doing software development now for 30+ years. I learned Unix and C in 1985, about the time that C++ was coming on the scene. Mostly out of curiosity, I learned about Object Oriented Programming, and C++ soon became my primary programming language. I mainly did embedded systems software — the stuff that makes your microwave oven work, what powers your TV and VCR/DVR, and what controls vehicle engines these days. There’s not much to see because it’s mostly running “under the hood”.
The stuff you actually see is the part called “GUI” software, which stands for the Graphical User Interface. Xerox pioneered GUI applications with a computer they called the “Star”, which is probably most famous for the fact that they let this character named Steve Jobs bring his software team in and have a look at it. A year or so later, Apple released their own version of the Star called “Lisa”. It bombed. But then in 1984 they introduced the Macintosh, and the rest was history.
Microsoft introduced Windows not long after that, copying many of the features in the Star. For whatever reason, Windows-based computers ended up outselling Macs and dominating the small computer world. (Well, it was mostly because IBM chose to use Intel’s CPU, the 8088, and they got into bed with Microsoft to supply them with software, rather than develop it themselves. After all, their market research showed the entire market for “PCs” as they became known was only supposed to be about 10,000 units, which wasn’t large enough to justify them undertaking a project to build their own operating system as they typically would have done.
Much to Apple’s chagrin, Windows was becoming a growing force in the software market. However, once Windows 3.0 was released, I saw a LOT of software developers and companies spend a TON of money jumping on the Microsoft Windows bandwagon, only to be thrown off and lose their shirts. So I actively avoided developing any sort of Windows software.
That is, until Valentine’s Day, 1996, when a little software company near Santa Cruz called Borland came out with a revolutionary new development platform called … Delphi.
Delphi is born!
Delphi was based on Pascal — in fact, it was internally called “Turbo Pascal 8″ (if I recall correctly). Although I was focused mainly on C++, I started playing around with Delphi and quickly fell in love with it. Visual Basic was released about the same time, and comparing the two was like comparing a BMW to a VW — where Delphi was the BMW. Interestingly, while there was initially “Visual Basic” (which was for DOS), and then “Visual Basic for Windows”, there was only “Delphi”. It only ran on Windows.
Delphi picked up a lot of steam and companies started adopting it like crazy, mainly because it was so much faster to develop Windows applications in Delphi than any other language that it just didn’t make any sense to use something else.
I ended up shifting all of my development work over to Delphi around 2000, when Delphi 4 became the latest version. A couple years later, Delphi 6 was released and that version was “da bomb!”. Unfortunately, when Delphi 7 was released around 2003, Borland changed a few things that made it relatively difficult to adopt newer versions of Delphi; as a result, a lot of companies stuck with Delphi 6.
What happened to Delphi?
Sales of Delphi started to slow down as most projects were looking for people with either D4 or D6 experience, even as newer versions of Delphi were released. Even today, in 2011, I’d say that 90% of the job ads I see are for people who can maintain “legacy” apps written in Delphi 5, 6, and 7. But I believe that’s about to change, as we’ll see shortly.
Another part of the problem was that Borland had a change in management and started to go on a buying spree, using profits from Delphi sales to acquire a bunch of other software development tools and products in an attempt to become a one-stop shop for tools used across the entire software development lifecycle. It never caught on, and they were using profits from Delphi sales to feed this big ugly money pit instead of improving on Delphi.
Perhaps their worst mistake was deciding to grab onto Microsoft’s coattails and redirect Delphi as an alternative for building .NET apps. In fact, Delphi 8 was ONLY good for writing .NET apps — and it failed miserably. The silliest part of this is that Microsoft practically gives away their .NET development tools, and Delphi was always two years behind and a thousands of dollars more expensive. So Delphi developers did the predictable thing: they shifted their efforts over to C# and .NET using Microsoft’s Visual Studio tools. Why would a company pay thousands of dollars per seat for a development platform that was two years behind the current .NET technology when they could get the latest stuff almost for free from Microsoft? It made no sense at all.
Sales of Delphi were falling fast as more and more companies migrated their mission-critical apps over to .NET using Microsoft’s tools. In fact, today people in the industry will often ask me, “Delphi? Boy, is THAT still around?”
At one point, Borland spun out all of their Delphi products into a separate division named CodeGear and was trying to sell it for some ridiculously high amount for several years, all in vain. Eventually, as revenues fell to unsustainable levels, they sold off CodeGear to Embarcadero Technologies for a song. Sadly, Borland itself ended up being bought up by MicroFocus, and now there’s nothing left of it but it’s name.
(And now for an amusing walk down memory lane… The first product Borland ever sold was Turbo Pascal, which evolved directly into Delphi. Why Borland spun out all of their language technologies, including Delphi, into a new subsidiary (CodeGear) and kept the “Borland” name to describe a bunch of totally unrelated products is surely one of the worst marketing gaffes in history. I remember once hearing Borland executives talking about benchmarks that were developed by companies like … uh … MicroFocus … where their (COBOL) compilers were “so smart” that they could figure out what benchmark was being run and generate highly optimized code, thus ensuring they’d win benchmark competitions! These executives promised that they didn’t “rig” their compilers to win any competitions; they were built from the ground-up to generate tight, fast, and efficient executables. I think it’s highly ironic that while MicroFocus ended up eventually acquiring all of Borland’s assets at fire-sale prices, they didn’t acquire any of the amazing language technologies that Borland created over the years.)
And the GOOD NEWS IS….
To my industry comrades who ask about Delphi, I gleefully say, “Yes, Delphi *IS* still around!”
Much to their credit, Embarcadero kept most of the Delphi development team intact and actually began to listen to what people were saying in terms of product direction.
They’ve been working long and hard on bringing Delphi back to life, and get it back into the ring as a “real contender”.
I won’t go into all of the cool stuff they’ve added over the past few versions, but they’ve been laying the groundwork for what’s about to be released this fall … drum roll please … Delphi XE2.
What’s the BIG DEAL about Delphi XE2?
There are some facets of Delphi that have not changed since they were first introduced in the first few versions. Back then, they were incredibly cool, but today they’re about as exciting as grandpa’s old sweater.
Delphi XE2 is about to introduce an entirely new GUI framework that they’ve named FireMonkey. If you’re familiar with Delphi, I’ll just say it’s not replacing the VCL; in fact, the two reportedly don’t even coexist well. The VCL is still alive and well and it will still be useful for building Windows-only apps.
But the BIG DEAL is … FireMonkey is based on an Open-Source GUI library that is supported on a wide variety of hardware platforms. Which means that Delphi XE2 will let you build apps using FireMonkey that can run on non-Windows platforms! Woo hoo!
For this version of Delphi, with the initial release of FireMonkey, they are going to include support for Windows as well as Apple’s OS X and iOS platforms. Meaning, you’ll be able to use Delphi XE2 to build one application — and re-target it to run natively in Windows (both 32- and 64-bit) as well as OS X (32-bit) and iOS. One button click is all it’ll take to build … five (and eventually more) target executables. Amazing, eh?
Embarcadero has also announced that future releases will support other platforms, like Android.
The Delphi IDE itself will only run in Windows, mind you. But it will let you create an application using FireMonkey as the GUI and generate executables that run natively — not interpreted, or using some kind of intermediate code (like .NET and Java) — on other platforms, like OS X and iOS.
What this means is …
For the first time in many years, we might actually begin to see not only growth in the use of Delphi, but new applications being developed with it! Applications that run natively on multiple platforms!
Rumor has it that, because FireMonkey is incompatible with the VCL, nobody is going to be “porting” their legacy VCL apps over to FireMonkey in order to make them cross-platform. Which is GOOD NEWS in my mind.
Also, the many amazing new visual features that FireMonkey seems to be bringing to the table mean it would be pretty silly to simply “port” a legacy VCL/Windows app over to FireMonkey. That would be like building a “new” VW Bug by “porting” over one built back in the day without taking advantage of new technologies and “creature features” that people have come to expect today.
What about Apple’s App Store?
Yes, you’ll be able to build apps with Delphi that run in OS X and iOS — which begs the question, can they pass Apple’s criteria to allow them to be sold in Apple’s App Store? According to Embarcadero, the answer is a resounding, “Yes!” You simply need an Apple Developer License and you should have no trouble getting your Delphi XE2 apps made available in the App Store.
Got any ideas?
If you’re interested in discussing the possibility of having an application developed that can be run in multiple platforms, including Windows, OS X, and/or iOS, drop me a line through the Contact Us page and I’d be happy to discuss using Delphi XE2 to build a cross-platform app for you.
Related Articles
No user responded in this post
Leave A Reply