Oracle has launched a major lawsuit against Google’s Android for infringing upon Sun’s Java IP. As someone who was formerly strong-armed into licensing Java by Sun, I know first hand how seriously Oracle (formerly Sun) took Java IP. They couldn’t figure out any other way to make money from Java, so some lawyers came up with the idea of suing anyone who appears to be infringing on Java’s licensing terms, bytecode compiling/packing, and bytecode interpreter.
Enter Android. A startup company started by the former founders of Danger. You may remember Danger from the Sidekick sold at T-Mobile. Or from Paris Hilton’s Sidekick being famously hacked (technically it was the T-Mobile instance of the Danger server that was hacked) and all of her contacts spilling out. It was an operating system built on Java, and had the equivalent of a Blackberry Enterprise Server years before Blackberry had thought of the idea.
Once Danger achieved some success, they got in a bit of hot water from Sun. Danger had not licensed Java for use in the Sidekick, despite the fact that Danger was using a new model for Java applications now called “Split VM” where only the necessary operations and bytecodes are evaluated on the device, with some pre-processing and pre-linking to minimize distributed code size and speed programs up. After a few years of back and forth, Danger finally passed the 10,000+ tests required for the Danger OS to be “Java powered”, and Danger paid their license fee to Sun.
The Sun-Danger debacle set the company back because they had to divert resources to achieve Java certification. So when the founders decided to start Android, they had a clever idea — let’s change the bytecode interpreter to NOT be the Java VM (using a register-based machine instead of a stack-based machine). We can then write our own compiler, and compile Java (and other language) code to our new “Android” bytecode interpreter. Brilliant! (or so they thought.) They have just beat Sun at their own game, and now Android is free of pesky Java licensing. Despite their brilliance, Android fell on tough times with lack of funding and no handsets using the software. And just a few days before the company was to close its doors for good, Google swept in and purchased the company, technology, and team.
In the mean time, Microsoft acquired Danger for use in their Zune business unit. And they threw out all of the Danger code, especially the parts that had Java.
You may remember 10 years prior, Microsoft had their own scuffle with Java. Visual-J, a very cool Java IDE, had built in some “Microsoft-isms” as extensions to the VM and the language. They allowed you to access Windows-specific primitives. This was a no-no to the Java czars, who vowed that Java was to be a platform-independent language. These modified bytecodes violated the Java licensing agreement, violated the Java certification and use of the Java mark, and a lawsuit ensued. Microsoft paid $1.6 billion in a settlement in 2004. Microsoft did not have a shipping product that used Java.
Which gets me to the point of this article: Why does Google have such hubris, arrogance, or stupidity that they think they’re immune from the legal issues that plagued Microsoft a decade earlier? Microsoft had a similar arrogance at the time of the Sun lawsuit. I worked there, and they hired 3 people for every 1 job just because they could — they didn’t want such talented people going to IBM (for example). Then Google came along and ate their lunch, became arrogant, hired people just to lock them up without any compelling work to do, and the cycle repeats itself (Facebook?).
The news and blog outlets talk about the fact that Google doesn’t have any IP to defend itself with in this lawsuit. And if the only defense is “You’re a meanie!”, “No, YOU’re a meanie!”, then there’s something seriously wrong with our patent system. The reality is that Google knows they’ve infringed on Java’s IP. They’ve even blatantly copied Java copyrighted code. And there’s legal precedent. I look forward to seeing how much this costs Google for their arrogance.
“Broken Android” image courtesy of Gizmodo.