Developers dogged by complex systems

He says people are often surprised to learn he’s Canadian. A former Calgarian, James Gosling is regarded as the father of Java, a programming language designed to be platform-independent that is used today on devices from desktops to cell phones and other mobile devices.

A vice-president and fellow with Sun Microsystems in Santa Clara, Calif., Gosling was in Toronto Dec. 6 to deliver a keynote address at the only North American stop on Sun’s TechDays developer tour.

In an interview, Gosling said he’s currently at work on version 6.0 of Sun’s Java Development Kit (JDK), which Sun hopes to release in about a year. JDK 5.0 was released about a year ago, and after delaying its release to pack in more features, Gosling said Sun is now adopting a strategy of making a larger number of smaller releases.

Still, Gosling said they’re packing a lot into JDK 6.0 that Java developers will like, including enhancements around the Web services application program interfaces (APIs), high-performance XML, a compiler that lets developers generate and interact with code “on the fly”, improved networking APIs and an improved GUI to allow for better integration with Windows and Linux.

“The feature list has gotten longer than some people had wanted, and that’s a mixed blessing,” said Gosling. “On the one hand it’s more cool stuff to play with, but on the other it stretches out the (development) process.”

Sun announced plans last month to make a “fully integrated” stack of products, including its middleware, management and Java development tools, available free for development and deployment.

Analysts aren’t predicting how Sun’s open-source strategy will fare but some believe it could make it easier for users to adopt Sun’s products. Software with high costs and closed source code is more difficult to distribute, said James Governor, an analyst at RedMonk in Denver. Products with low barriers to entry, such as open source, “have fewer obstacles between them and developers.”

With proprietary software providers at one end of the software continuum selling tested software stacks and tools, and open source developers with untested software at the other end, Sun Canada president Andy Canham said he thinks Sun’s approach offers the best of both. He added Sun Canada clients in the financial services and government sectors have warmed to the model.

“I think Sun is coming in at a great time to make available a fully tested and secure stack in an open-source way,” said Canham.

Sun makes its money from service and support, and Gosling said the strategy is to get developers onto the Sun bandwagon by letting them play with the tools for free. Then, when the CIO has to make a buying decision and asks his developers for input, they may influence the CIO toward Sun.

When he speaks to those developers, Gosling said the biggest challenge they say they’re facing is the complexity of systems. A developer may build a simple system, but systems tend to become more complex over time. The challenge for Sun, Gosling said, is to give developers the right tools for each stage of a system’s evolution.

“You start to slap together a small system…and then over the years the complexity mushrooms,” said Gosling. “How do you manage the ramp?”

Gosling said Sun is addressing that challenge in two ways. The company is designing more basic platform APIs to capture standard usage patterns, and on the tool side they’re designing a range of toolkits, beginning with Java Studio Creator, that give the developer more complexity as their project evolves.

“One of the hardest bits of the engineering [is to] go into the detailed world for just the sliver you actually care about, and exist in both the easy development world and the sophisticated world, gradually scaling up from the easy application to the sophisticated application,” said Gosling. “That has been one of the central challenges for us.”

QuickLink 052487