|
Contrarian Minds: James GoslingJava is "a fundamental break in the history of technology," according to one observer. By Al Riske 24.Jun.04--Roll the clock back a decade. Sun is making the same pitch as every other high-tech company: Write for our platform and, oh, by the way, when you're done, your application won't run on anything else. On one hand, independent software vendors love Sun hardware. Absolutely love it. But, they say, we have to do Windows NT because that's the volume platform. And, gee, we can only afford to do one platform. Sorry. Roll the clock back some more. Back to 1969. A boy of 14 with long blond hair and heavy black-rimmed glasses is touring the computer science department at the University of Calgary in Canada. He's fascinated by the equipment he sees all around him: nine-track tape drives, a flatbed plotter, a paper-tape reader, and a big computer with 8K of RAM. Very cool.
Most of the locks in the building are those punch-key things. You don't need a physical key to get in, just a sharp eye. So the boy (already tall enough that he doesn't look out of place) returns often, lets himself in, and teaches himself to write software. The boy was -- you guessed it -- James Gosling, and his love of computers and software would play a critical role not only for Sun but for the whole computer industry. As the principal creator of the Java programming language, Gosling set in motion one of the industry's most powerful contrarian currents. Economist George Gilder once called Java "a fundamental break in the history of technology." The author of Telecosm and the weekly Gilder Technology Report went on to say, "Almost overnight, the CPU and its software have become peripheral; the network, central." In fact, this new, secure, distributed, robust, interpreted, multithreaded, garbage-collected, architecture-neutral, high-performance, dynamic programming language was almost too contrarian. It took an act of piracy to keep the project alive.
The travails of Java, including several near-death experiences, have been written about before. Less well known is that the first release of the technology, in January 1995, appeared not on sun.com but on wicked.neato.org. And people found it! "Java was very much in doubt," Gosling recalls. "A major internal selling job had to be done. In fact, there was an act of piracy involved, where we actually put stuff out on the Web in a way that didn't follow any of the corporate product-release guidelines. I don't know if it was contrarian so much as an act of desperation."
But wicked.neato.org? "Friends had friends who had a Web site," Gosling explains. There, they made available the Java virtual machine, a compiler, and the Hot Java browser. "We stepped on a few toes to get the first release out. Then the world really liked it, and at some level the folks inside Sun kind of got dragged along," Gosling says. "We kind of convinced Sun from the outside rather than from the inside." Of course, the world never would have found Java if Gosling and others hadn't promoted it in every way they could think of. "I went around to conferences and talked about it," Gosling says. "I mailed around to folks. Grabbed every reporter I could get. John Gage did a lot to drum up interest. John and I did a major presentation at this conference called TED, Technology Entertainment Design, that was a spectacularly bizarre experience."
Gosling tells the story this way. He's in his office working away, while Gage is wandering up and down the hall, scrounging cables and disk drives and things. Gage has a little cart, right, and he comes into Gosling's office and asks if he has a particular component he can spare. "Yeah, maybe. What do you want it for, John?"
And Gage replies, "Well, I'm giving a keynote talk at this conference tomorrow and I was going to show a bunch of your stuff." "What!? It's not released, it's not releasable, it's not nothin'." "I know but I copied it off onto a tape and I was just going to stand up in front of this audience..." "John, do you know how to run it?" "Well, no, I thought I'd figure it out tonight." Gosling sees that this has disaster painted all over it. But he knows Gage is a force of nature. He has a trajectory. He's going. So Gosling decides to just hop in the car with Gage and take a ride to nearby Monterey, California, where the annual conference is held. "I spent that night configuring hardware, getting all the software together so it would make a credible demo," Gosling recalls. "It actually worked just fine. The demo got lots of gasp reactions. It was good. "The network crashed just before the end of our talk, but there was enough stuff in the caches that nobody in the audience actually noticed." The inspiration for Java was the changing context of computing. "It was really about stepping back and thinking about all this network stuff that was just exploding, and how does that impact the way we build systems?" Gosling says. "We were making a transition from this very centralized, disconnected, data center kind of world to something completely different. It wasn't just IT departments with machines in air-conditioned rooms anymore. Everything was being connected.
"When you're in that kind of world, a lot of the design decisions are just different. In some sense Java wasn't designed. It was more fitted into a context." Gosling compares the process to a tailor making a suit. The suit has to fit over a body. But now Gosling and his team were cutting cloth for a much different beast. "A lot of people felt very bound by the way things had always been," Gosling notes. "One of the fortunate accidents of the project was that we decided that backward compatibility with anything was not something we would care about at all." That's contrary to Sun's long-standing practices -- and not a healthy attitude most of the time, Gosling says. Roll the clock forward all the way to the present. The gamble has paid off. Big time. Java technology can be found in 1.5 billion devices worldwide. That includes 250 million mobile phones, 650 million desktops, 500 million SIM and smart cards, and 100 million other locations. In short, it's virtually everywhere. Looking back, Gosling says, "We had just terrifically good timing. There were all kinds of issues, and we just showed up with the perfect answer to a whole list of problems."
Programmers were feeling a lot of pain because they didn't have a language suited for the rapidly emerging world of the Internet. "They didn't have a pervasive acknowledgment of the network, of security, reliability, heterogeneity, pervasive communication -- the whole networking thing," Gosling says. "The big thing Java does is it breaks the lock between software and hardware. We could say to ISVs, look, you can develop in such a way that your application works on our hardware, but it doesn't cut you off from the Windows platform." Today there are only two developer platforms of consequence, and Java is one of them. The platform-independent, "write once, run anywhere" promise of the technology has become a reality. "The whole Java strategy basically let us live," Gosling says. Gosling, now 48, has a lot less hair on his head (and a lot more on his chin) than the boy who broke into the computer science department at the University of Calgary, but he still loves writing software. When he has the time. Gosling recently made the transition from Sun Labs to Sun's Developer Products Group, where he is CTO. "In some sense, this whole thing has been a disaster for me because now I've got a real job again," he says, only half joking. "My attempts to get engineering done are just completely overwhelmed. But the tools group here is doing a lot of really, really cool stuff." The cool stuff revolves around the open-source NetBeans developer environment, Java Studio Creator (formerly Project Rave), and bits and pieces of Jackpot, a project Gosling had been working on in the labs. The goal: Make life easier for developers so we can attract more of them -- about 7 million more. "There are an awful lot of professional Java developers out there today. But to get to 10 million, we have to do some serious displacement of Microsoft Visual Basic," Gosling says. "One way to think of the contrast between Sun and Microsoft with respect to our developer platforms is that, historically, Sun has always come at things from the high end. You can build some of the most amazingly sophisticated stuff in the Sun world. The cost of that is that a lot of APIs and tools are pretty complicated. "So in the Sun world, the hard stuff is possible, but the easy stuff is hard. In the Microsoft world, the easy stuff is easy, but the hard stuff is impossible. "What we'd like to be able to present is a world where the easy stuff is easy and the hard stuff is at least possible and as easy as possible." |
|
||||||||||||