Sun Java Creator Gosling Gooses Google Android
While some Google geeks may dream of Android applications along with the promise of new smartphones, not everybody is thrilled with the path Google has allowed the open-source operating system to travel. Android leverages the open-source Java programming language, of which its creators at Sun Microsystems are understandably protective. Shortly after Google unveiled the Android OS for mobile devices and corresponding development tools in November 2007, Sun executives lashed out at Google's Android team, accusing it of contributing to the fragmentation of Java. The argument is that letting programmers write Java apps for Android phones willy-nilly, or without the compatibility tests Java programmers typically partake in, will lead to serious compatibility issues. For example, Android uses the Java language but not all the same APIs as Java Micro Edition and does not run on a JVM (Java virtual machine). Sun argues this will lead to broken applications on Java-based smartphones. This is an accusation Sun has made toward Microsoft, IBM and others in the past to protect the crown jewel on which the company's software portfolio was based (when Java was not open-sourced). In a recent interview with Java creator James Gosling, eWEEK Senior Editor Darryl Taft asked Gosling: "What do you think of Google's use of Java or the subset of Java they use?" Gosling responded:
"The petulant kid who doesn't want to play with others" might have been Microsoft, IBM and others in the past. But the allusion to Google having its head in the clouds ... I don't think Gosling really believes Google's Android team is operating under such naiveté. Is this Gosling's polite way of goosing Google, telling the Android team, hello, there are other Java smartphones out there, so start acting like it? Play nice? Or, perhaps Gosling really thinks Google is in fact acting like Microsoft and the other companies that used to get under Sun's skin: that it doesn't matter what others are doing regarding Java programming -- it's Google's way or the highway. Enderle Group's Rob Enderle pointed out that Google's open-source mind-set already puts the company on better footing with Sun than Microsoft ever was as a proprietary player. Enderle told me Google is:
What do you think? Is this much ado about nothing? I'm interested in additional discourse, so fire away. |

Comments (7)
What does it mean for Google/Android to "play nice"? Whether the Android spec conforms to J2ME standards is irrelevant. All that matters is whether apps written to the Android sdk will run on all Android phones. If not, then Android has fragmented and will fail. If yes, then Android will be wildly successful. No one cares that a Java app written for a desktop computer won't run on an Android phone.
Posted by RueTheDay | June 22, 2009 3:50 PM
You can't ship a mobile device based on Sun's JVM and Java class libraries without paying Sun royalties. Sure, they "open sourced" it, but they did so with licensing restrictions that ultimately require royalties when shipping on a mobile platform. This is why Google had to use the Dalvik VM (instead of Sun's JVM) and Apache's Harmony (instead of Sun's Java class libraries). I wish IBM had bought Sun instead of Oracle. If that had happened, there'd be a much higher chance of Sun's Java being truly open and royalty free on all platforms.
Posted by Android Developer | June 22, 2009 4:17 PM
Sour grapes I guess. Sun has had ample opportunity to take Java where Google did. Developers like the more powerful combination of j2se & j2me android provides. j2me is already incredibly fragmented - write one test/tweak everywhere - try running j2me apps on Nokia and then Sony or even different Nokia phones. Something about a pot and a kettle... IBM was a better bet for (Sun) Java survival.
Posted by gary | June 22, 2009 6:54 PM
"play nice" should be read "pay nice"
Posted by HT | June 23, 2009 2:08 AM
Ideally, there should be decent compatibility with Android phones on the market at the same time (although I doubt Telcos are smart enough to realize this is important), but is backwards compatibility that important with consumer phones? Or do consumers consider cheap apps to be more disposable, and not expect them to migrate when they get a new phone?
My iPhone is full of apps that I paid $0.99 for, used for a while, and have now discarded. Eventually, they won't work on newer phones. Will I really care? Probably not.
Posted by Samy | June 23, 2009 12:32 PM
Android developer: you're a moron.
Linux distros are shipping a JVM based on Sun's OpenJDK project and it's free. No royalties involved.
The only royalties are if you want to use the Java logo and branding.
Posted by Fernando | July 14, 2009 3:44 PM
Perhaps if Sun actually got up and released something good and stable in a timely fashion, other companies wouldn't need to create there own "version" of Java. (Hint hint... when is JavaFX going have a decent SDK for development.... or a handset for that matter?)
And the fragmentation argument is a load of garbage... Java ME is so minimal and crap that other flavours/extensions are out there in order to make up for it's deficiencies. What's that I hear?! Java ME is fragmented?!!! Surely not!
And I don't know what is so fragmented about Android's Java. I'm using the the standard Sun Java compiler to compile and build my Android Apps! Which just so happens to be the compiler which Android recommends!. All that's different is that some libraries have been left out from Java SE (hmm sounds a bit like what Java ME did) - and the compiling mechanism is different in the dalvik vm.
The fact of the matter is, the full Java SE is too huge to run on something as small as a smartphone - so it has to be pruned... which is pretty much what Dalvik has done (from a developer point of view). This is no different to what Windows has done with it's .Net compact framework, or what Sun has done with Java ME. The differences in the way the code is compiled and run on the device is largely irrelevant to the programmer in this situation.
Posted by Phil | August 5, 2009 10:01 PM