Yesterday (Wednesday, December 4th, 2013), I went to see a seminar put on by Embarcadero, which, if I understand correctly (edit: Apparently, I did not understand correctly; see David I’s comment below), is the name that the old Borland corporation is going by this week. Once upon a time, I was a Borland Fanboi. Back in the early 80’s, I saw an ad in one of the computer magazines (a print magazine — the World Wide Web wasn’t available then) for a Pascal compiler that would run on a Z-80 machine that cost only $19. Heck of a deal, I thought, and since I already knew Pascal, I sent off a check to Borland, a completely new company that I had never heard of before (and neither had any of my friends). A few weeks later, I got a product called Turbo Pascal on a floppy disk, which I loaded onto my Z-80 machine. What I saw pretty much blew me away.
Not only did Turbo Pascal make what most folks considered to be just a toy language suitable only for teaching college students how to write structured code into something that would actually build usable programs on a microcomputer, it had the most amazing feature that I had ever seen. If you had a syntax error in your code, instead of spitting out an error report with a line number, it popped you into a source-code editor that resembled WordStar (which almost everyone knew back in those days), with the cursor on the line with the error. Nobody had ever done anything like that before! Borland had invented the Integrated Development Environment (IDE).
Needless to say, it was a big hit. I told all of my colleagues about it, and in the current vernacular, it went viral. There wasn’t much in the way of support, but good grief (!), it was less than $20 in an age where compilers of any sort cost thousands of dollars, and it worked really well on my computer. I managed to write a significant amount of working commercial software with Turbo Pascal.
As time went on, Borland products got more expensive, but the support never really got any better. I didn’t mind, since they were still cheap, and worked pretty well. Mostly, anyway. They had some real winners, like Delphi (which unfortunately had some of the worst documentation I have ever seen in a commercial software product), and some really awful losers, like BC++ for OS/2, and Kylix. If you search the web now, you are not likely to find any evidence that Borland ever produced either of those products.
About 15 years after the initial release of Turbo Pascal, Borland got bought out by a bunch of suits who decided that the developers weren’t really their target market anymore, changed the name of the company to InPrise, and started pushing high-dollar “enterprise” development suites. After that didn’t work out very well, they decided to do a “turnaround,” and even changed the name back to Borland. Unfortunately, they had pretty much lost interest in putting out useful tools that real software developers might want to buy and use, they just did one turnaround after another, until anyone watching that show either got dizzy or lost interest. I pretty much lost interest, although I did use Delphi on a couple of jobs, and also got to use their C++ Builder product up through version 5.
Delphi was actually a pretty innovative and useful development system, but it never did get much traction. The last time I used Delphi was at JPMC, about 5 years ago — and they were deliberately trying to eradicate its use. Even then, a search for “Delphi” in the job boards would return one or two hits in all of the US, whereas “C++” would lead to several pages of job listings just in Dallas.
Fast forward to yesterday. An outfit named Embarcadero had sent me an invitation to attend a seminar on their flagship product which would build mobile apps. It was to be held at a really high-dollar steak house in a northern DFW suburb. But what sold me on signing up to endure what I knew was going to be a pitch-fest was the part where they said that their development tools would create native apps for Windows, Android, and iOS, all from the same code base — and that code base was written in Delphi. Although I’m really more experienced with C++ than with Delphi, I really do like Delphi. So much so that I even did a commercial application using Lazarus, an open-source Delphi “clone” — but Delphi itself was priced well out of my reach. I figured I’d sit through the pitch-fest in return for an upscale meal. When I got there, I asked about the relationship between Borland and Embarcadero, and found that Embarcadero owned Borland. Or maybe it was the other way around. Since I haven’t really been paying attention to that arena, I don’t really know (or care) which way that one went.
Turned out Delphi XE5 was an impressive product, and most of the presentation was done by none other than the (in)famous David Intersimone, who was a very interesting speaker. Amazingly, when I asked about BC++ for OS/2, he actually admitted having worked on it.
But it had one really big drawback, namely a price tag that had too many significant digits in it, even after the 45% or more discount they were offering the seminar attendees. So, after getting a door prize that consisted of a dual USB car/home charger, and a pretty good meal, I went home prepared to pursue other things that had a better potential of either landing me a job, or enabling me to make some money freelancing. There is no point in giving a second thought to such an expensive product from a company whose largest accomplishment in the last decade has been its own marginalization.
When I got home, there was an email in my inbox from a colleague in the NTPCUG announcing an all-day class on building HTML5 apps for mobile devices. For free. The company name was Apigee. I had never heard of them before that email.
I thought about it for a while, but then decided that I needed to learn more about HTML5 anyway, and if it turned out to be an unbearable pitch-fest, I could simply leave. I went early so that I could get free parking (turned out I could have gotten a parking voucher for covered parking, but I didn’t find that out until after the event started). They also surprised me by providing lunch, although boxed sandwiches weren’t nearly as impressive as the steakhouse meal provided by Borland/Inprise/CodeGear/Embarcadero/Whatever. Especially since I don’t eat bread or potato chips. But the biggest surprise of all was that the presentation was all intensive hands-on training, and not a pitch-fest. The presenter/instructor was one of those super-knowledgeable high-energy folks that can keep a large class well-engaged, and he had a good grasp of pacing — he ended the presentation within two minutes of the published schedule (“David I” was a really interesting speaker, but he rambled a lot, and went well over the allotted time).
However, I consider the performance of a user program to be a binary measurement. It’s either fast enough, or not fast enough. And often in the software development world, the most important time-measurement device is a calendar, not a stopwatch.
Apigee’s programs are definitely fast enough for almost anything for which you might want to use a smartphone, unless maybe you want to build a mobile version of Quake, in which case I don’t think there are any smartphones or tablets currently available with enough horsepower anyway. Apigee has one enormous plus in it’s column – a developer can get all of Apigee’s tools (with support), and even use them to build non-trivial commercial apps, at no cost other than spending some time reading documentation and installing the tools. Apigee makes its money off of very large corporations who want to do large-scale development in the mobile world — and their strategy to build that business is to go after developer mindshare. And they are doing a bang-up job of the latter.
They certainly won me over.