Outsourcing Java SE
Pages: 1, 2
Sun seems to understand the Enterprise market but they don't seem to have a clue about the desktop market. They don't seem to understand that the landscape has changed in the past ten years. You can assume access to Java now in a way that you couldn't before. Given that the Java runtime is widely available, the question becomes, "Now what?"
With Enterprise, Sun's target customer is not you or me accessing a web application through our browsers. Their client is the company coding up the application that we will interact with. This is Sun's sweet spot. They know how to work with developers.
They don't know how to talk to the end user. Look at Project Looking Glass. When the Sun engineer showed up at our local Java User Group to demonstrate it, Sun had sent him out with a Linux box that couldn't support it. He had to describe to us what we would have seen if it had been running on a box capable enough. For developers, we were OK. We nodded our heads and understood what the software should have done. But if there were a chain of Java stores, no customer would have sat still for that non-demo.
It is not within Sun's ability set to change. The company culture is built around geeks talking to geeks. When they try to create something cute for end users, they end up missing the boat and creating a cute graphic of a bulldozer cleaning up the heap, or an animation of Duke turning somersaults.
My visitor winced. He still hadn't lived that one down.
Sun needs to outsource Java SE to someone equipped to make it great. Someone who understands code well enough to create their own implementation of Java. Someone who understands the desktop. Someone who values innovative technology and loves to incorporate open source projects as well. Someone who knows how to talk to end users. Sun needs to outsource Java SE to Apple.
Sun has let great projects die before they have ceded control to others, so it's not very likely. After acquiring the Watson project (think widgets before Dashboard was a twinkle in Apple's eye), Sun decided they couldn't commit resources to it. Rather than open source it and let others develop it, Sun buried it and let it die.
If Sun were a child, I would have put it in time out for a good long time. This was one of those applications that could have highlighted Java. It was Ajax before Ajax. It could have meant much more to Sun and Java than just an application for viewing the weather or checking sports scores. It could have been a platform that brought widget developers to Java.
Sun should have dumped real money into the Watson project. They should have built up the core platform. They should have created screencasts on how to build widgets. They should have created a NetBeans plugin for widget development. They should have run a contest with high-profile awards for the best widgets.
"Don't blow your top," my visitor said. "We didn't see the possibilities of the Watson project."
But that's exactly the point. How many things have Sun missed because they didn't see the possibilities? If Apple were running Java, the media frameworks would not be in disrepair. With podcasting as popular as it is, Sun could have funded work on the media frameworks by building an app for creating podcasts or for aggregating and viewing them in some different and compelling way.
My blood pressure had risen much too high. But I wasn't finished. When Sun creates desktop APIs, why are the first two platforms targeted and released Solaris and Linux? If you are creating desktop technology, shouldn't you be targeting Windows and Mac first?
The mascot in front of me slowly shook his head back and forth and I realized he was right. It will never happen. At a time when Java desktop needs more resources, Sun will give it less. At a time when Sun could build products on top of the desktop, they will ignore it. I sighed and tossed the file folder into the drawer.
Daniel H. Steinberg is the editor for the new series of Mac Developer titles for the Pragmatic Programmers. He writes feature articles for Apple's ADC web site and is a regular contributor to Mac Devcenter. He has presented at Apple's Worldwide Developer Conference, MacWorld, MacHack and other Mac developer conferences.
Return to ONJava.com.