Archive for April, 2009

X Platform Development in Delphi

Thursday, April 9th, 2009

In order for Delphi to maintain and grow it’s market share it, IOW, continue to be successful, it needs retain current developers and attract new ones.  To do so, it must become the only development platform capable of X platform development in either native code, or .NET CIL.  To support this goal, the IDE itself must be X platform, demonstrating the capabilities of the compiler, VCL and supporting tools. This premise is supported by the efforts of Borland in the Kylix days.  Although much of the Kylix effort was the result of market hype and a non-validated developer survey, the underlying reason for X platform support is even stronger today.  

Developers want to make money, wherever and whenever they can.  The question is how?  Developers would rather spend less time learning new languages and technologies and more time writing applications that may make them money.  Unfortunately, learning new technologies is often required to produce unique and better applications, especially when it comes to the Web.  Also, Microsoft seems to love changing the development technologies platform substantially every 5 or so years, and maybe that is how they have maintained dominance.  While everyone else is trying to figure out how the new APIs work, and when to use them, Microsoft continues to write software and make money at it.  It’s not as if their software is necessarily better, they just know how to market it.  Interestingly enough, they continue to develop native code solutions for more than low level solutions such as the OS.

How can Delphi continue to grow their market share when .NET is the predominant platform?  The answer is leverage.  Now, to maximize leverage you have to be able to produce X platform applications.  Why?  Well for one, there are competitors who have been doing so for quite some time using Widget libraries like Qt. Now there is also .NET which may actually deliver on Java’s promise to Write Once Run Anywhere/Everywhere (WORA) or (WORE).  .NET is not only a major threat  to Embarcadero’s Developer Tools specifically, but also the Object Pascal language as well.  .NET supports multiple languages, and the premier language, C# is cleaner in many respects than OP.  Add to that, the ease of integration with third party .NET libraries, the plethora of open source projects most of which are in C#, and the number of jobs requiring .NET expertise and you have a very compelling argument to go with C# .NET.  Somehow CodeGear has to ensure the survival of OP to ensure the survival of the VCL and it’s RAD Studio IDE.  One major way to ensure the survival of OP is to facilitate X platform support.  Another would be to open the language and the VCL.  Today Firebird is a very successful open source project with a large community.

The mere existence of Lazarus and the Free Pascal Compiler’s Delphi compatibility directive is a testament to the fact there are many developers who want to use Delphi for X platform development.  As of January 2009, you can even use the Free Pascal compiler to target the iPhone!   

Embarcadero may want to pay some attention to Apple.  Apple knows how to commercialize open source projects and contribute back to the community.  If Embarcadero followed Apple’s lead, we would not only have a much better Windows product, but we would also likely have Delphi for the Mac, Linux and the iPhone as well.  

Time to quit following Microsoft and carve your own niche…that’s just my 2 cents.