At the beginning of my interview with Michael Swindell, VP of Products at CodeGear (formerly the Developer Tools Division of Borland), I was expecting to talk about the .NET or native application tools; I got a lot more than I bargained for. We ended up primarily discussing CodeGear's two latest products: 3rdRail and Delphi for PHP.
3rdRail is a Ruby on Rails development tool with deep integration into the Ruby language and the Rails framework. It was released at the end of 2007 on a subscription model, which provides approximately one major update per quarter. This is a novel approach in the development tools arena.Unlike most current Ruby tools, 3rdRail is not just a text editor with some code formatting or basic knowledge of the Ruby syntax -- it has a fully integrated debugger. Most importantly, 3rdRail is designed specifically to do things the "Rails" way, and it is completely Rails oriented. It even pre-installs a full Rails environment on the developer's machine to alleviate a common pain point.
Don't think that CodeGear is pulling the "embrace and extend" card though; other than the standard Ruby/Rails runtimes, 3rdRail imposed zero requirements on the target server. The deployment is as simple as FTP'ing the appropriate files and chmod'ing them correctly; this means it is possible to perform professional Rails development and target inexpensive hosts. An added bonus is that (unlike many other packages on the market) 3rdRail is compatible with MySQL, as well as the major enterprise databases out there.
I confess that I tried Rails development a while ago, and I could not get it working right. I didn't get into Ruby due to the tools scenario, and I know a lot of other programmers who have been holding back for the same reason. Another stumbling block is the fact that a lot of us must use Microsoft SQL Server or Oracle on the backend -- IT won't install and support MySQL just for the Contact Us page. And so on and so on.
It is an uphill battle to get Ruby on Rails in a typical enterprise environment (heck, look at how long it took PHP to break into that space). Many of the best developers I talk to are fascinated by Ruby, but issues such as tools, major vendor support, and database connectivity get in the way. We simply cannot sell Ruby to the CIO without these things. From what Michael and I discussed, 3rdRail doesn't just knock down these barriers -- it sticks 10 tons of TNT under them and lights the fuse. I hear nothing but rave reviews of Ruby from folks who use it or run shops around it. They all say things like "we did in a few months with Ruby what we knew would take 18 months in Java, despite having to train developers in Ruby." While that is impressive, most developers can't get that past the CIO's office. I think that 3rdRail is potentially game changing here.
Delphi for PHP
Don't let the name fool you -- Delphi for PHP is not an attempt to merge native applications with the PHP language (I think that would be a bad idea). The name comes from the fact that it uses a Delphi-like IDE to provide an environment for developing Web applications in PHP (don't worry, no Pascal is involved). Version 1 was released at the beginning of 2007, and Version 2 was released a few weeks ago.
The tool works in the "spirit" of PHP, but it provides a full implementation of the CodeGear VCL in PHP with deep integration to a variety of common open source packages. The beauty of this approach is that PHP developers now get a full-blown framework on par with the .NET Framework or the J2EE library but in a fully integrated and cohesive manner. The goal is to enable PHP development at the same level of tool support and integration with the libraries as ASP.NET, which is not a short order. For example, Delphi for PHP offers a profiler and a proper debugger -- two things that are invaluable for any programmer. Like 3rdRail, the code produced deploys directly to any PHP-enabled Web server with no special runtimes or libraries needing to be installed. Also like 3rdRail, Delphi for PHP is designed to work with all major enterprise databases and not just MySQL (which PHP usually favors).
I am actually excited by Delphi for PHP; this probably surprises longtime readers of this blog. I don't hate PHP -- I just think that, by and large, it lacks the things what Delphi for PHP provides, such as tools and equal footing for Microsoft SQL Server and Oracle. I see Delphi for PHP being a lever for developers who are using Java or .NET "by default" to get PHP into their environments.
Coming soon: Product reviewsI was so excited by my discussion with Michael that he asked if I would like evaluation copies of any of CodeGear's products to put through the paces. As you can imagine, I asked to look at 3rdRail and Delphi for PHP. I am really looking forward to trying 3rdRail and Delphi for PHP, and you can be sure that I will be write "Introduction to..." style reviews (and possibly something much more substantial) about both products. I also plan to take a look at the company's next generation of Delphi and C++ Builder when the products are available.
CodeGear is proving that the Borland legacy is not dead, and it is swinging for the fences.
J.JaDisclosure of Justin's industry affiliations: Justin James has a working arrangement with Microsoft to write an article for MSDN Magazine. He also has a contract with Spiceworks to write product buying guides.
---------------------------------------------------------------------------------------Get weekly development tips in your inbox Keep your developer skills sharp by signing up for TechRepublic's free Web Developer newsletter, delivered each Tuesday. Automatically subscribe today!
Justin James is the Lead Architect for Conigent.