I recently
wrote about a conversation I had with Zend’s Jim Jagielski about his company’s
approach to blending the needs of a for-profit company and open
source in a creative and particularly enlightened way. What I
couldn’t say in that article was that when I spoke with Jim I’d
already had a strikingly similar conversation with another company.
I was precluded from talking openly about that company and their
product plans until the official launch. Since that’s happening at
LinuxWorld Expo as this is being posted, I’m free to spill the
beans.
The company is Borland, a company that became one of the
original big names in the desktop PC business, and earned their
“barbarians at the gate” tag, long before Linux was so much as a
twinkle in Mr. T’s eye. (Everyone reading this who bought a copy of
Turbo Pascal from Borland via their ad in Byte, as I did,
please raise your hand.) It’s been public knowledge for some time
that Borland was porting their Delphi and C++ products to Linux,
under the collective name of Kylix. What hasn’t been known was how
Borland planned to deal with the for-profit/open source dichotomy.
After speaking with Michael Swindell of Borland about this at some
length, I can summarize it by saying: the good news is that it’s
all good news, and the barbarians are about to prove all over again
why they’ve long been one of the smartest and most aggressive
competitors in the industry. (Honestly–do you think a small
company could possibly endure 15 years of butting heads with
Microsoft and not become battle hardened?)
The first available version of Kylix will be Delphi, which is
basically Borland’s (considerably) evolved, object-oriented version
of Pascal, while the C++ version of Kylix is being actively worked
on and will be released at a later date. But the real news is the
versions of Kylix that will be available. As is typical of
commercial development tools, Kylix will come in three flavors,
traditionally called “enterprise”, “professional”, and “entry
level”. Borland is calling the first two “server” and “desktop”,
which are somewhat better names since they more clearly indicate
the focus of the product. These versions will include Borland’s CLX
(“clicks”) framework, which has the sub-components “VisualCLX”,
“DataCLX”, and “BaseCLX” for GUI, database, and, well, basic
aspects of programming. The server version will also include
facilities to help professional and corporate Apache software
developers. The DataCLX components will also include Oracle, DB2,
and MySQL connectivity support.
What about that third variant? That’s where things get the most
interesting. The “open” version will be identical to the
professional version, including the full GUI RAD environment,
except it will be free (beer). You’ll be able to download from
Borland’s web site or buy it in a shrink-wrapped box, likely with a
printed manual, for approximately $99. (Upon hearing this I advised
Borland to begin upgrading their server capacity
immediately.) Like the other two versions the open flavor
will include the complete source for the CLX framework, but covered
by the GPL only, so you’ll only be able to create free (speech)
software with it. The server and professional versions will have
dual-licensed copies of CLX, allowing you to create open or closed
software.
When I spoke with Michael Swindell about this, he was very frank
about their rationale for creating the open vesion. In particular,
he said that Borland “doesn’t expect to put a Porsche Boxster in
every employee’s driveway” by selling Kylix to the hard-core Linux
developers. I thought this was a very diplomatic way of stating
something everyone in the Linux area knows but seldom says
publicly: You can’t make a living selling software to a group of
people who think it’s their right to get your products for free.
Borland chose to take a more enlightened approach; instead of
giving up on the whole idea of porting their tools to Linux, they
saw an opportunity to leverage the hard core developers. Their goal
is to build the biggest, most active user community for Kylix as
possible, and use that to help sell the commercial copies to
professional developers who want to use Kylix to create closed
software.
I’m sure this approach still won’t please some factions, and a
few of the more rabid people hereabouts will howl like wounded
animals that some Big Evil Company is exploiting their pure and
pristine Linux to make profits, yadda, yadda, yadda. I think such
reactions don’t matter one iota. Every major technical change in
the PC programming world, whether it was the move from DOS to
Windows, the move from Windows to Linux, or this move from the more
traditional Unix-style tools to a true RAD development environment
has always split the developer base. There are those who resist the
change only to be left behind, effectively selecting themselves for
obsolescence, while others embrace the change and look for ways to
exploit the new tools to serve their own ends, whether that’s
writing closed-source programs they intend to sell or creating free
software they can give away simply because they want to help
others. That’s the beauty of giving users, including programmers,
truly free choice–each person can take the most comfortable path
without being forced into anything. Which brings up another one of
those nasty details people like to avoid, the fact that until now
there’s been precious little real choice for Linux programmers. The
IDE’s available for Linux have, as a group, been less than
spectacular. Kylix changes that by bringing not just a solid IDE,
but a RAD environment to Linux that delivers the usability of
Visual Basic, build speed you have to see to believe, and a real
programming language intended for large-scale, professional work.
Frankly, the traditional Linux developers won’t know what hit
them.
Lest I forget, there are two other items that deserve
mentioning: cross-platform capability and third-party add-ons. One
of the truly impressive features of Kylix is the level of
portability it provides for moving applications between Windows and
Linux. This is a very big deal to Linux, thanks to the large and
dedicated group of Delphi programmers, many of whom are anxious to
port their programs from Windows to Linux. Applications that don’t
directly call the Windows API (something that there’s very little,
if any, real need for in Delphi) or use Windows-specific features
can be ported to Linux in literally minutes. A few “uses” clauses
(the equivalent of “#include” in C) are changed, and the project is
recompiled. Instant Linux app.
Portability is yet another area where Borland showed an uncommon
amount of common sense. When they spoke with corporate developers
and decision makers, they heard loud and clear that those potential
customers were concerned about Linux’s long-term prospects, and the
dangers of having large-scale projects marooned on a dead platform.
Sure, you and I know Linux has a bright future and is here to stay,
but these people aren’t nearly as confident, if only because many
of them are still healing career wounds after betting on OS/2.
Borland realized that not only was it vital to provide the lowest
possible barrier to entry for people moving into Linux development,
they also saw the importance of guaranteeing their corporate
customers a painless exit route, too. This might not sound
important to the average open source developer who would give up
computing before writing so much as a “hello, world” program for
Windows, but for the corporate set it’s critical. And it’s good
news for everyone that Borland was smart enough to shape their
product accordingly, just as they did to accommodate the open
sourcers by including the “open” version of Kylix.
A critical part of that community building/infrastructure thing
for commercial development tools has always been getting
third-party support for add-on libraries and packages. Borland’s
tools have long had strong support in this area, and several of
these companies will be in Borland’s LWE booth, demonstrating
copies of their tools ported to Linux. Like the portability issue,
this is more immediately interesting to the corporate coders than
it is to open sourcers, but it’s also indirectly important to us in
the same way: It makes it easier for Borland to succeed with Kylix
financially, which in turn makes it easier for them to “embrace the
open source community”, to use everyone’s favorite cliché of
late. If I were a marketing guy, I’d call it a “win-win-win
proposition”, but I’m not so I won’t.
The bottom line is that the barbarians are coming to town, and
they’re bringing the whole load. Not only are they armed with vast
technical and marketing experience, but, like Zend, they’re also
showing impressive levels of flexibility and creativity. I
certainly hope this is the beginning of a trend among both the
companies and the individuals involved with Linux.