Borland Developers Conference Reportby Andy Patrizio
One thing you can say about the Borland Developer Conference, if you're bored, you're probably not there. It has a tradition of being a little nuttier than the average developer conference.
After all, few companies have a user base as dedicated as Borland, and the company would probably be dead several times over by now if it wasn't for that loyalty. But after all the troubles, the company is solid, very solid. Sales and services in 2001 hit $221.7 million, up from the $191.0 million the previous year, and profits were up last year, something that wasn't happening very often in tech companies in 2001.
So how was that loyalty repaid? During the opening keynote, CEO Dale Fuller picked up an air-fired bazooka shot rolled-up Borland T-shirts at the audience. The CO2 propulsion system was so strong it shot shirts more than 50 feet, and there were some mad jumps for them as they came down.
While this went on, long-time vice president of developer relations David "David I" Intersimone calmly discussed the show's events, local logistics, and thanked the audience for their continued support, saying "I hope we'll continue to deserve your business, even after we bump a few more of you off." But the audience was having too much fun jumping for the flying t-shirts to mind.
Borland has a double-barreled attack. First there's Delphi, which took Pascal further than Niklaus Wirth could ever have imagined when he created the language. Then there's JBuilder, its Java IDE, which holds around 40 percent of the Java tools market, depending on which analyst you ask, and is consistently voted the top Java IDE by publications like Software Development and JavaPro.
So it's not surprising that one of Java's founding fathers, Sun Fellow James Gosling, would make the trek to Anaheim to speak to the faithful about the state of Java. But Borland, which sees itself as the Switzerland of developer tools, plays in all markets, and it plans to support Microsoft's .Net platform.
As a result, it also invited Anders Hejlsberg, who created the Turbo Pascal compiler Borland first released nearly 20 years ago and headed up the development of Delphi. In 1996, Hejlsberg defected to Microsoft, and he is now the primary developer of its new C# language, which a few attendees groused should have been the next-generation of Delphi. But by and large there were no hard feelings, except for Fuller pointing the bazooka at Hejlsberg in the audience once in jest.
Anders Hejlsberg on .Net
Hejlsberg said in his keynote that web services are the next step in computing, relying on the same technology and infrastructure as HTML and the Web. But whereas the latter require a human on the receiving end, XML and Web Services are entirely automatic.
But it could not be done with the existing technologies, he said. "We know that writing distributed applications with the tools of the day, such as COM, DCOM, CORBA, RMI, and so forth, were too complex to use," he said. "Over time, we had accrued too many technologies to manage. We realized we could not get them there in an evolutionary fashion, but just tweaking COM here and there. We had to throw everything out and create a whole new platform."
That meant creating a layer of abstraction away from the Windows APIs. In the early days of Win16 and Win32, you wrote code against the WinAPI.h and "it was like black magic to get anything working properly." Libraries like MFC, Visual Basic and Delphi's OWL helped, but had an unfortunate side effect.
"Your choice of a programming language became your choice of a programming model, and skills don't transfer between programming models," he said. A Visual Basic programmer was locked into the limits of the language and if he wanted to learn Visual C++, it meant relearning from scratch.
Microsoft set out to break this limitation through the Common Language Runtime, which supports all languages, sees data and code as objects. Regardless of what language you use, you still have access to all .Net's features.
The CLR gets rid of COM programming while turning everything, data and code, into an object, which can be used or inherited by other applications. It will eliminate the need for a Registry since ever object is self-describing and will allow for side-by-side execution of applications with multiple versions of DLLs. Multiple versions of the same DLL can exist on the computer and run side-by-side in two different applications because they are sandboxed.
The Windows API will be "retired over time," as he put it, as programmers migrate to the CLR for the application development.
Borland plans to support .Net, primarily through Delphi but also with C++Builder and even to some degree in JBuilder. The next version of Delphi, Delphi 7, will ship later this year and offer as much support as there is on the market, since .Net is coming out piece by piece and isn't fully available yet. The following version of Delphi, due in the first half of 2003, will have full .Net support.
James Gosling on Java
Gosling's speech was more retro. There wasn't much new in Java to discuss, so he took the time to talk about what led to the decisions to design Java the way Sun did. He and his team were assigned a project in 1990 to discuss where computing was going, and what they could do to get there.
The first thing he noticed was that more advanced technologies were winding up in more and more hands, as computing power went into everything from consumer electronics to heating controls, and computing companies weren't paying attention to this fact.
Networks had always been at universities and corporations, but "once you add consumers, it becomes a heterogeneous network on a massive scale and you need reliability and scalability to support it," he said.
Another problem was that code was distributed as binary code. "Binaries define a market boundary, which contradicts what a software market should be. They need to make the market for software as wide as possible. This really started off with me trying to solve that problem," he said.
So Java was designed to eliminate binary distribution, to make it more widely distributable. This also made the programmers who used it more useable. "The whole art of programming changed with Java," he said. "This was the sleeper hit of Java. Instead of write once, run anywhere, I like to say you learn once and work anywhere."
It was also designed to be more secure, something people really didn't think about in 1990. "Security was something I had a hard time getting people to face," said Gosling. "I don't worry about evil empires, I worry about people like me," he said, after relating a story to his days hacking the controls of an elevator so its gears made the sounds like a "Star Trek" phaser beam.
Java was designed to be a community effort, with outside companies involved in its creation from the beginning, which was also by design. "If Sun had a roadmap for Java it would be a disaster," Gosling said. "We're a big iron company, we sell hardware by the pound. We do Java to promote a healthy software market."
Andy Patrizio is a freelance journalist and a regular contributor to Wired News, Byte.com, Java Pro and Enterprise Systems Journal. He lives in Los Angeles.
Return to ONJava.com.