Several years ago, I wrote in this column about the long, painful death throes of Borland. I suggested the company try to right itself by spinning off or shutting down non-core assets, including Delphi, the object-oriented, Pascal-based language and development environment. Whether Borland’s (or CodeGear, as Borland’s IDE group came to be known) not heeding this advice was a good decision will never be known, as CodeGear—including Delphi—was sold to Embarcadero Technologies for a song. To my surprise, Embarcadero has just released an impressive update to Delphi.
The new product, called Embarcadero RAD Studio XE, is technically an update to RAD Studio rather than to Delphi, but it comprises all the new features promised in Delphi 2011 (codenamed Fulcrum). RAD Studio XE, (I’ll just call it XE from here on) is a collection of four different developer environments: C++ Builder, Delphi, Delphi Prism (which I’ll discuss shortly), and a new development environment for PHP called RadPHP.
During the last few years, the term “Studio” in a product’s name has come to imply a collection of tools rather than a single product. Even Microsoft Visual Studio, which is as close to a single product as you can get, provides dev environments for multiple languages.
In the case of Embarcadero, the products in XE are not tightly integrated. For example, the principal environment is a C++ and Delphi affair. Delphi Prism is a plug-in for Visual Studio, and RadPHP is a partially integrated product. To say the least, this is an odd product strategy. How many developers need to combine, say, PHP and C++ in the same project? Despite this odd selection, it’s clear the individual products are well designed and thoughtfully crafted.
Let’s start with Delphi. Delphi is the anchor product in XE in that it defines the suite. For the moment, Delphi generates pure Windows binaries. However, binaries for Mac OS X and Linux have been announced and will be released shortly. The current version contains a redesigned UI, new testing tools, a static code analyzer, a metrics dashboard, and a visual build tool. The famous Delphi component palettes have been expanded with widgets for REST transactions and other technologies. Cloud platforms are also integrated, with app deployment available to Amazon EC2 and Microsoft Azure directly from the IDE.
The tools, which work with Delphi and, in many cases, on C++, include “lite” versions of AQtime, the well-regarded performance profiler from AutomatedQA (which is now a division of SmartBear).
Delphi, as such, does not generate binaries for .NET. To do that, you must use Delphi Prism, which uses an Object Pascal look-alike language in a plug-in for Visual Studio. This solution works only for Object Pascal. That is, there is no equivalent for C++ or PHP. In this regard, C++ Builder looks like an orphan, available only for native Windows binaries and nothing else.
This neglect of C++ has long roots, going back 10 years when Visual Studio’s feature set began to surpass Borland’s C/C++ offerings. Rather than competing, Borland folded up its C++ tent and went home, as if Microsoft’s apparent superiority were insuperable. However, Embarcadero is migrating some of the Delphi features to C++ Builder, including the present support for cloud deployment and the planned support for Mac and Linux.
During the past five years, Intel has demonstrated that it is possible to compete with Microsoft in the C/C++ compiler market. It ships the most optimizing C++ compiler available, as well as a host of unique tools that analyze code for parallelization issues. The compiler itself is plug compatible with Microsoft C/C++ and Visual Studio, and the Linux version is completely compatible with gcc. Borland could have done this had it had the vision and the ability to execute. And, like Intel, it could have charged a premium for this collection of tools. But it didn’t, and so it will be interesting to see whether new features added to C++ Builder will begin a renaissance for that product.
In counterpoint, RadPHP is new. It enters a market in which several good IDEs have appeared during the last few years. It’s not clear to me in what way RadPHP is superior to competing products. Moreover, it’s also unclear that the PHP market is disposed towards paid tools when it enjoys good open-source options and an inexpensive, commercial alternative in Zend Studio.
The key point of this release, however, is that Embarcadero is extending its commitment to the tool set for the language whose syntax it directly controls: Delphi. It’s clear from conversations with Embarcadero representatives that Delphi is the premier language and platform Embarcadero is committed to. C++ is along for the ride and PHP has yet to prove itself.
As I was reminded when my column on Borland’s travails came out, the audience for Delphi tools—one that consists in large part of consultants and developers in small organizations, who depend on the product’s RAD capabilities—is passionate and vocal. This will surely serve Embarcadero well.
(This article contains corrections and updates absent in the original.)
Andrew Binstock is the principal analyst at Pacific Data Works. Read his blog at binstock.blogspot.com.