• United States
Executive Editor

Designing for networks

Feb 16, 20042 mins
Enterprise ApplicationsWeb Development

Rob Gingell, a Sun executive, shares his thoughts on the evolution of application development.

Adopting a new application architecture model will require more work than companies are used to, says Rob Gingell, vice president and chief engineer at Sun.

A lot of what companies have done to their applications since 1995, when the Internet started to be a significant business factor, can be characterized as “a real effort at trying to do as much as they can by doing as little as they can get away with,” Gingell says.

Most applications that worked through the end of the 1990s were actually traditional applications wrapped in networking, he says. “I don’t think people have written very many real network applications yet, in terms of really rethinking what an application has to be for it to work in a network operating environment vs. the environment provided by a traditional operating system,” he says.

But that has to change if companies want to enjoy the benefits of technologies such as Web services. “There’s a limit to how much you can corrupt an existing application to make it live in an environment that it wasn’t designed for,” Gingell says. “We’ve basically been resisting networking for 18, going on 20 years. We’re finally getting to the point where people are starting to rethink some of these old applications.”

Rethinking applications means no longer screening network complexity from software developers, Gingell says.

“We’ve let operating systems people do too much of the networking, and application writers have become dependent on the mothering provided by the operating system people,” he says. Such mothering resulted in things such as remote procedure calls – a feature designed to mask the network by making a remote resource look like a local resource. That idea doesn’t hold up in a network of tens of thousands of devices, he says.

Application writers need to become more of a partner to the operating system people in structuring what applications are going to be like in today’s networked environment, he says. They need to design applications that take into account that a network connection might fail, topologies might change, latency might occur, and bandwidth might be restricted.

– Ann Bednarz