The Canadian who led the team that created Java says many developers don’t understand how to write applications for running on networks.
“Most college programming courses say ‘Write a program to solve this and run it on the machine in front of you,’” James Gosling told reporters Tuesday during a Sun Microsystems developer conference in Toronto.
“There isn’t a lot of emphasis on what it means if there’s a communications link in there, and there are a lot implications that are pretty profound around reliability and performance. People often get really balled up in not thinking deeply about the networking.”
Gosling, a former Calgarian who is now a vice-president and Sun Fellow, was in the city to deliver a keynote at the four-day Sun Tech Days conference, where several hundred North American developers have come to talk about Sun’s products, including Solaris, NetBeans and Java.
In those remarks he said the recent move by CPU manufacturers to create multi-core processors means developers need to pay more attention in their applications to taking advantage of threading and parallelism.
As he made that comment Sun was announcing in New York a new family of servers using what it said is the industry’s first eight core, 32-thread processor that puts the performance of a rack of servers onto a single chip.
Based on the 9.6 GHz UltraSPARCT1 processor, the Sun Fire T1000 and T2000 servers are more than three times faster than IBM Xeon systems at nearly half the power and cooling costs and with 4.2 times better performance per watt, the company claimed in a press release.
No prices were announced for the new lines.
Sun also said it intends to open source the company’s massively-threaded processor technology so Linux and FreeBDS applications can run on the system.
In a wide-ranging question and answer session with reporters after his speech, Gosling the biggest challenge to developers is the complexity of the systems they build.
“There’s this tension between dealing with the complex high-end systems and the systems people want to quickly knock together,” he said.
Java Enterprise Edition was originally designed to deal with applications such as “giant stock-trading systems,” he said. “But if you’re just doing something simpler a lot of the stuff in J2EE around building the giant stuff kind of gets in your way. And yet, one of the things about lower-end systems is they always tend to grow.”
Sun tries to help by honing the basic J2EE application programming interfaces and Java language in ways most developers use them, he said, as well as improve Sun’s programming tools so developers can take advantage of software’s drag-and-drop capabilities to more easily create fault-tolerance, clustering and other demands of sophisticated applications.
One problem with last year’s Java Standard Edition 5.0 was that it was a “huge” release with a tremendous number of features, he said. Sun is trying to make the upcoming 6.0 release, code-named Mustang, “more contained,” although it too will have a “fairly gigantic feature list.”
That will include a look similar to the upcoming Windows “Longhorn” operating system, more desktop integration, a Web services stack and scripting language support. All of these have been previously announced.
Most of Gosling’s work these days is on such tools, which include Java Studio Creator, Java Studio Enterprise, Sun Studio and Netbeans.
However, he admitted, there are those who like easy programming who also want to “open up the can and look at the real details.”
“The thing that’s hard is that often you’re in the easy-to-use world and then you jump into the high-tech engineering world, and often that’s a huge leap. One of the hardest bits is engineering our tools so that you exist in both worlds.”