Java is Gosling's baby. How is he supposed to feel about this? Google threw his work out the window and shipped stuff called "Dalvik" and "Harmony" that did the same thing, never crediting him or using the term "Java". And their stuff was wildly successful.
That's gotta hurt. The harder question is whether or not the "blame" for that lies with Google or Sun, or whether or not it's really useful (in contexts other than Gosling's private emotional space) to assign blame at all.
Edit: lots of responses are diving into the stuff I allude to in my second paragraph. I don't see how that's relevant to Gosling's reaction. My point was that the guy got stung, and that he's lashing out in an entirely understandable way. It's not about the law suit, it's about him.
If Google used "Java" to describe Android, Sun would sue them, like they sued Microsoft. "Java" is a trademark and the only way to use it is to pay Sun (well, Oracle now) a lot of money for the compatibility suite.
I don't see how either Harmony or Dalvik should affect Gosling's feelings one way or another. He had no hand in either so deserve no credit. To the extent that Harmony re-implements Java, no-one is trying to deny Gosling credit for creating Java in that context.
The decisions that Google made were either technical (Dalvik is designed with mobile usage in mind while a standard jvm isn't) or contractual (Sun wants control over Java, Google wants control over Android, neither wanted to fold and things are just fine that way: Android is successful in its domain and Java is successful in its domain).
Note that IBM dumped Harmony in favor of OpenJDK last year after realizing Harmony will never get a TCK license from Sun/Oracle. The Apache Foundation resigned from the JCP Executive Committee in protest shortly after that and last year an open vote was taken within the Project Management Committee, which resulted in a 20-2 majority to discontinue development."
Here's what the Apache Foundation had to say:
when the Apache Foundation resigned from the JCP Executive Committee in protest, it actually stated on the organization's official blog that the "Java specifications are proprietary technology that must be licensed directly from the spec lead under whatever terms the spec lead chooses."
I'm fairly certain that Apache was referring to the TCK license when they were talking about Java specifications. They don't use the word API - probably because the idea of copyrighting an API wasn't considered possible (and hopefully still isn't).
Apache wanted to be able to call Harmony "Java", everyone already knew that it was API compatible.
Yep, it's pretty interesting in light of Goslings previous comments on software patents and Sun's inability to make money or make good on its open source promises.
I feel for the guy, but if he didn't want to be slimed, they should have made the TCK available under an actual open source compatible license. If Google slimed Sun, what did Sun do to Harmony?
If the primary goal was compatibility, they should have worked with Apache on that. The license fees wouldn't have been a problem. If, on the other hand, the primary goal was controlling the single open source version of Java, you're going to have to expect non-"Java" open source forks.
I'm not sure what Google "sliming" Sun has to do with the copyright or the patent case, though. Is he suggesting that he agrees that APIs are copyrightable? (you wouldn't even need a TCK in that world)
You forgot to mention the years that Sun strung Harmony along (since JCP decisions at the start of OpenJDK development in 2006!), a behavior that Oracle came out vocally and publicly against until they acquired Sun.
> yes, licensed under GPL not ASL.
I feel like you don't really read the posts you respond to. That kind of thinking was exactly the impetus for the non-"Java" forking I was referring to. Hypothetical: someone forks OpenJDK and makes incompatible changes to the APIs. They have no interest in passing the TCK or following the restrictions in the OpenJDK Community TCK License Agreement. Are they able to release this as long as they don't call it Java? More concretely, should GNU Classpath be shut down?
Precedent up to this point says that that both are fine and have to be tolerated. Jonathan Schwartz said both bothered them but had to be tolerated, but you've made clear that his opinion couldn't possibly be relevant. We'll just have to see how this case turns out.
>Jonathan Schwartz said both bothered them but had to be tolerated, but you've made clear that his opinion couldn't possibly be relevant. We'll just have to see how this case turns out.
His "endorsement" is not a license or a permission to break copyright/license agreements.
He said many things that were pro-Android. Endorsements, explanation, etc. it doesn't matter. What he said was not a license.
What questions? anyone can fork OpenJDK and release it under a different license due to the classpath exceptions, and if they pass the TCK they can call their software Java. If not they cant't. but PhoneME doesn't have the classpath exception and that's why Google didn't like that.
Here's Andy Rubin's email:
"We are building a platform where the entire purpose is to let people differentiate on top of it," said Android chief Andy Rubin in an August 11, 2007, e-mail that Oracle is touting in its case against Google (PDF). "Sun chose GPL for this exact reason so that companies would need to come back to them and take a direct license and pay royalties."
Quotes out of context might work on juries where anyone with technical experience has been excused, but he's clearly talking about their GPL code (which they went to great lengths to not use) because no-one in the industry thinks API's are copyrightable or should be. If they did they'd have worked around it like they did the GPL code.
Even with the TCK license, I think the major problem was licensing of the JVM.
Google wanted to make Android open source, but the JVM license requires the GPL, which Google and a lot of companies using it now won’t touch with a pole.
So they had to use more liberal license, like the one they use in most of their other projects and the only way to do that was to write their own new VM (this probably also allowed them to more easily tailor it for mobile use).
I don't think a GPL'd JVM would be a deal-breaker. It's at about the same level as Linux, probably less likely to be tweaked by device builders. Not having the classpath exception on the libraries would be a no go though.
"Just because Sun didn't have patent suits in our genetic code doesn't mean we didn't feel wronged. While I have differences with Oracle, in this case they are in the right. Google totally slimed Sun. We were all really disturbed, even Jonathan: he just decided to put on a happy face and tried to turn lemons into lemonade. which annoyed a lot of folks at Sun."
In a March 8, 2007 e-mail to Schwartz about working with Google on licensing or partnering with Sun on Java, Sun's co-founder and chairman, Scott McNealy, characterized the relationship with Google at the time: "The Google thing is really a pain. They are immune to copyright laws, good citizenship, they dont share. They dont even call back."
If Sun didn't want to risk ever feeling this way, they shouldn't have made Java open in the way they did. They purposely made Java so that this kind of thing could happen, and then felt wronged when it actually did.
I think he was talking about forks. As you see, when Sun opened it's language, people said at Sun said some interesting stuff:
"But I think there’ll be lots of forks, and I approve. I suspect that basement hackers and university CompSci departments and other unexpected parties will take the Java source, hack groovy improvements into it, compile it, and want to give it to the world. They’ll discover that getting their creation blessed as “Java” requires running the TCK/trademark gauntlet, which isn’t groovy at all. So they’ll think of a clever name for it and publish anyhow."
From what I understand, whatever license Java is released under allows for the possibility of another party creating a clean room implementation of the language and releasing it on their own, outside of any control, influence, or fees due to Sun.
From the developer documentation at Google's android.com:
> The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
> All applications are written using the Java programming language.
> Android applications are written in the Java programming language
Based on a sampling of random pages there, they talk about your Java classes for you application, your Java source files, and so on. It's mentioned dozens if not hundreds of times.
You can reference it anywhere but you can't ship your product calling it Java. In this case Google references Java's classes, SDK etc but they call the version they ship as Android.
That's kinda the crux of the lawsuit... can you copyright a language? Google's argument is that the specifications of the language and core APIs should be considered separate from the implementation. One is "Java" the language, the other is "Java" the platform. Google uses the Java language on the Dalvik/Android platform.
That's gotta hurt. The harder question is whether or not the "blame" for that lies with Google or Sun, or whether or not it's really useful (in contexts other than Gosling's private emotional space) to assign blame at all.
Edit: lots of responses are diving into the stuff I allude to in my second paragraph. I don't see how that's relevant to Gosling's reaction. My point was that the guy got stung, and that he's lashing out in an entirely understandable way. It's not about the law suit, it's about him.