Google Developer Testifies That Java Memo Was Misinterpreted
benfrog writes with a piece that appeared in yesterday's Wall Street Journal about the in-progress legal battle between Oracle and Google over Java: "Ex-Sun and current Google employee Tim Lindholm testified that it was "not what he meant" when asked about the smoking gun email (included here (PDF)) that essentially said that Google needed to get a license for Java because all the alternatives 'suck[ed].' He went on in 'brief but tense testimony' to claim that his day-to-day involvement with Android was limited."
Pants on fire.
But we're on Google's side so we'll let it go.
Where he said he didn't mean a Sun license. Just a license.
"lol i trol u"
If he didn't mean they should negotiate a Java license with Sun, why did he say:
How you could possibly interpret that statement as meaning anything other than "we need to negotiate a license" is beyond me. I may not like Oracle's aggressiveness in pursuing the issue, but I can't read this email as being anything other than an acknowledgement that Google needs a license.
Now don't get me wrong. Google could have later used the GPL version of Java safely, but they didn't have that option back then. Plus there's the question of whether you're allowed to use pieces of a GPL piece of software, such as the Dalvik compiler and core runtime with a Dalvik-compiled copy of the Java code for it's libraries and packages.
I would contend that they're well within the GPL, provided that the Dalvik code was also released under the GPL. However, if the Dalvik core isn't under GPL, then they've got the issue of mixing GPL and non-GPL code to muddy the waters, and maybe that's the angle Oracle is playing.
I do not fail; I succeed at finding out what does not work.
If there is any lesson to be learnt from this trial it gonna be this - Hire the right person
This Mr. Lindholm is definitely NOT the type of person I would hire
I've been in the software/hardware development for decades, and never have I write any email or any message in any forum, or in any conversation in any formal setting that I will say things like what Mr. Lindholm has said
The tech world as we are now is not only filled with geeks, but with lawyers
Those lawyers will use WHATEVER we wrote or said to get their point across - even to the point of mis-interpret what we wrote / say
How can an ex-Sun employee, currently employed by Google, write an email saying things like "Google need a license for Java" ?
I mean, what qualification that Mr. Lindholm has on legal stuffs ?
If I am working for the human resource department of Google, I will fire that Mr. Lindholm long ago - and I ain't gonna tolerate any of my employee doing things similar to what Mr. Lindholm has done
Muchas Gracias, Señor Edward Snowden !
Reading the email linked by the FP, I would call his claim fairly plausible - I wouldn't take him to have meant "gee, we've infringed the hell out of it, we need to get legal ASAP", but rather "Can you please just buy the best option for us so we can move on and stop the games?"
Honestly, something like that exact discussion comes up on a monthly basis where I work, and some shyster could probably find examples of me saying substantially the same thing in my emails. And I don't give two shakes of a rat's ass about whether or not my employer wants to stay legal on the licensing side - If they don't mind me using a copy of Windows registered to Razor1911, no skin off my back (and hell, good ammo for me if things get ugly).
p29 of the exhibit
Under that last point, they would definitely need a license from Sun, as "Java" was a registered trademark from Sun. MS and Sun had already been through that battle. If you want to call it Java, you needed permission from Sun. That's very different from claiming you need a license to make a Java compatible language. No smoking gun here.
make imaginary.friends COUNT=100 VISIBLE=false
From the article:
"This week Larry Page could not recall who Lindholm was"
Hey Larry, let me google that for you:
http://lmgtfy.com/?q=tim+lindholm
That "copied" code is a joke.
If you have the function prototype per the java doc and you test the limit cases to see what exceptions are thrown, how else can you implement that array range check in a non-trivial way?
That's just lawyer bullshit.
No matter what he meant, it shouldn't matter. Oracle is trying to use the e-mail to prove "Google knew ahead of time they were in the wrong!" when in fact this e-mail was written AFTER Oracle bought Sun and was murmuring about lawsuits. It's also an unsent draft of an e-mail written by a Google employee who wasn't working on Android! Wow!
I guess if I want to screw over my company in the future, I know how to do it now... Incriminating e-mail drafts!
Maxim: People cannot follow directions.
Increases in truth directly with the length of time spent explaining them
You know, go down to the DMV and get a driver's license so android could drive one of those google cars. In the country Java (note the capitalization), not for the JAVA SDK.
Do you even lift?
These aren't the 'roids you're looking for.
I read it as: Whatever kind of license we need to run Android, we should get one. As somebody who was not, himself, actually involved in any kind of licensing negotiations, laws, etc., he didn't have the least flipping clue WHAT that might entail.
Imagine my boss seeing emacs for the first time and saying "Holy $hit! this emacs is awesome! SirWired, go buy whatever we need to run it." That isn't any kind of admission that running emacs requires paying somebody; just a statement that he wants it.
Google's position is that no license from Sun was in fact needed, and that Eric Lindstrom was not the person that had anything to do with that determination
Even if the engineer (not lawyer, not executive) thought Google should buy a license, so what?
There were employees at IBM who thought Scox was in the right.
Actually they are trying to use the email to show that Google were knowingly breaching the license, not that google knew ahead of time that they were in the wrong. Oracle are dicks, but that is only a mild improvement on the twats that are google.
NOTHING is free. Everything takes time and money to create. Now, for various reasons, people give software away...but this is a massive corporation producing software worth billions of dollars, and a key part of it depends on software that was developed at a cost of millions of dollars.
So a reasonable few million bucks to Oracle for their trouble seems fair.
Not long into reading your self-important rant, the abundance of spelling, punctuation, and grammar errors brought me to the conclusion that you are not one to hire.
I don't think I understand the subtle difference in what I said and what you said... So let me try to be clear by pretending to know what I'm talking about for a second: Oracle is trying to use the e-mail to show evidence of WILLFUL INFRINGEMENT.
And it could be evidence of that, except: 1) it was written after Oracle started threatening, 2) it was written AFTER Sun's CEO publicly congratulated Google on releasing Android and promised Sun would support the Android platform 3) it was written by someone in Google not working on Android 4) it was saved as a draft but not sent.
Are you trying to say Oracle is less evil than Google? Are you at all familiar with Oracle?
Honestly even if Google is in the wrong here (which I strongly disagree with), I think it's vitally important Oracle lose this case, as the legal theory they are trying to push (that public APIs are subject to copyright and licensing) is absolute INSANITY and would be the death knell to a large percentage of the software industry.
Though it would make developing on proprietary systems significantly more painful than Free/Open systems like Linux, so that would make some people around here very happy...
Maxim: People cannot follow directions.
Increases in truth directly with the length of time spent explaining them
Oracle is trying to use the e-mail to prove
There are literally shittons of emails talking about Google needing a license, trying to get a license, not doing clean-room because they were confident they would get a license, etc. To show it wasn't clean-room Oracle doesn't even have to show anything was copied, Google up and said it. 'Should we do this clean-room?' 'No, it'll be fine'.
Google now needs to prove to a jury not just that they didn't actually need a license, but also that all their top execs and engineers were wrong. If say in a police interrogation you admit to doing the crime a jury will still convict you even if there is absolute proof that you didn't do it. Human nature says if you admitted to it then you did it, so Google has a huge uphill battle to climb here with these emails. At this point they may be already planning the appeal, where the actual law matters.
Internal emails in evidence has shown that Google knew what they were getting into. In 2005 Google's head of Android wrote:
>"If Sun doesn't want to work with us, we have two options: 1) Abandon our work and adopt MSFT CLR VM and C# language - or - 2) Do Java anyway and defend our decision, perhaps making enemies along the way"
Then there are emails like the one in this story where they admit they needed a license. Then there is the engineer who literally copypasted code...
Yet, there are people who act like poor Google is as innocent as a newborn baby and is the victim of some great injustice. It's silly. Google tried to get away with everything they could and now those "enemies" they made have come back to bite them.
The NBA hall of famer and TV basketball analyst once responded to criticism by explaining he had been misquoted in his own autobiography
Except there are emails from 2005 saying the same thing. Even for this very same engineer. Sorry, but that excuse fails.
I keep reading each side's position in terms of movie quotes:
Oracle's case is that Google is making a profit off of Java, which is, in many aspects, owned by Java. The thing is, Java has been released by Oracle under the GPL, meaning that they can freely distribute their work so long as they're giving it away. Being that Google does not sell Java, Oracle claims that Google is making a profit off of the advertising revenue and that this therefore infringes on the GPL.
I don't believe Oracle has a case, but I really don't know. Anyone want to fill us in?
What I don't get is why didn't they just buy or build their own? its not like Google doesn't have assloads of money. the only thing that I can come up with is just like MSFT tried to do in the 90s they tried to take advantage of all the experience that developers have with Java without bothering to actually get the rights to do so.
But you are right that I don't see how even the fanboys can be for Google when there are literally piles of emails saying "We aren't doing clean room" We should get a license" "We are on shaky ground here" etc. Either the employees at Google knew what they were doing was seriously iffy or all those writers of emails didn't have a clue what they were talking about....ya know, the logic just doesn't really hold up. If it walks like a duck and quacks like a duck...its probably not a moose, no matter how much you want it to be one.
ACs don't waste your time replying, your posts are never seen by me.
From Eric Schmidt!
If it said "this is not clean room", Oracle would flourish those excerpts, not ambiguous out of context snippets about getting licenses which in context could be taken as "because that way's easier than doing it on our own"
Nah, this all went to hell in the lawyer zone.
Many quality employees send recommendations to management all the time. It's up to Legal to *REPLY* and say "nice suggestion, we don't need to".
In Verbal Culture companies you get hosed because you are *missing* documentation because no one tells the right people stuff.
Then when $%#$ hits Fans you get questions like "he declined our contract and we never made a new one? WTF?"
My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
the only thing that I can come up with is just like MSFT tried to do in the 90s they tried to take advantage of all the experience that developers have with Java without bothering to actually get the rights to do so
It's nothing like that, please do not insult our intellgence. Microsoft's purpose was to pollute the Java brand by popularizing its incompatible version, calling it Java, whereas it was possible and even the default that Java programs developed with Microsoft's version would not operate correctly with Sun's version. As you know.
When all you have is a hammer, every problem starts to look like a thumb.
Haven't seen those e-mails... Got a link?
Maxim: People cannot follow directions.
Increases in truth directly with the length of time spent explaining them
"... email (included here (PDF)) ..."
That is excavate what this is about. ;-)
Don't fight for your country, if your country does not fight for you.
Please please please let this kill the Java/Dalvik in Android and replace it with C/Go/anything-non-JVM-based.
There's at least some chance it might become less hideous if that happens. If it isn't going to happen, please let Android die so it can be replaced by something cleaner.
If management didn't believe they needed to license Java in order to use it on their mobile platform (remember, Java ME has never been free), why would they spend resources on evaluating the alternatives? I think that's the real issue this mail points to, some _lawyers_ had looked at this and thought they were in a difficult situation and then asked engineering to evaluate the alternatives.
Unlike the Google version, where they popularise an incompatible version, calling it Java and where it's possible that programs developed with Google's version would not operate correctly with Oracle (or anyone else's compliant) version?
I am TheRaven on Soylent News
Unlike Microsoft, Google doesn't claim that their platform is compatible with the JVM. Just as C can be compiled for x86 or ARM, Java can now be compiled for JVM and Dalvik and nobody claims they are bytecode-compatible.
(+1, Disagree)
Are you talking about places like Russia & Zimbabwe, or did you just get your JD from DeVry?
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
If say in a police interrogation you admit to doing the crime a jury will still convict you even if there is absolute proof that you didn't do it.
Of course they won't, assuming your defence is half competent. The law isn't about who said what, it is about the facts of the case. If Google don't need a license then even if they thought they did it doesn't matter, the simple fact is that one is not required and they owe Oracle nothing.
const int one = 65536; (Silvermoon, Texture.cs)
SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
Are you trying to say Oracle is less evil than Google? Are you at all familiar with Oracle?
Very few companies are more evil than Oracle — especially when it comes to licensing charges — with the exceptions of those that actually kill and maim people (Union Carbide and the Bhopal disaster is one of the worst examples I know of there).
"Little does he know, but there is no 'I' in 'Idiot'!"
If say in a police interrogation you admit to doing the crime a jury will still convict you even if there is absolute proof that you didn't do it. Human nature says if you admitted to it then you did it
The actual evidence, on the other hand, indicates that it is remarkably easy for the police to get people to confess to things they didn't do. Much of what we think of as "common sense" or "human nature" is complete BS.
It's also an unsent draft of an e-mail written by a Google employee who wasn't working on Android!
Oracle are using the final sent email now, the reason they had to use drafts earlier was because Google tried to claim attorney-client privilege on the final email (because it was sent to a few lawyers). Also Lindholm has said that he worked on Android, just that he didn't work on it very much.
And now I can understand why Oracle's shorts are in a knot.
A key point of Java technology is the cross-platform nature of the JVM. Without the JVM, you lose the portability that was a primary goal, and which Sun fought Microsoft to protect. Microsoft, despite having licensed Java, was beaten down in court for their "variant" on Java.
Regardless of the legalities of the case, I now have to take Oracle's side on the issue. Google is breaking the Java "contract" with developers: portability. Java is not just the syntax and libraries; it's the whole ecosystem, including the concept of portable jars. So regardless of the finer points of law that have been brought up, I hope Oracle wins.
If Microsoft can be bitch-slapped, so can Google.
I do not fail; I succeed at finding out what does not work.
You'll probably get furious then if you'd see this or this. Those bastards are even worse than Google - they compile our pretty and portable .jars to completely non-crossplatform machine code! How dare they.
Java programming language != Java platform. There's no "contract" that any jar will run on any platform using Java programming language - go try running Java EE application on a Java-enabled phone or Bluray's BD-J applet on your PC.
And yes, MS was bitchslapped because they claimed to implement standard, compatible Java SE implementation while introducing incompatiblities. Google claims to implement NOT any of Snoracle's Java platforms, but a new runtime using Java programming language.
You can now proceed to remove your foot from your mouth.
Are you trying to say Oracle is less evil than Google?
Are you saying that Google isn't a greedy soulless corporation?
Are you saying there are generous humane corporations?
"Greedy soulless" is the only kind, we can just compare the vileness level - "stomps flowers", "kicks kittens", "indulges in genocide as a hobby", ...
What happened at /. are all of the geeks gone? Android is NOT Java.
1) Google used Apache HARMONY (Free for any use) not Java for its implementation base.
2) Look at the patent claims - all but 2 tossed out.
3) The copyright case is ignorant also - 9 lines of code pulled out of millions.
Try Groklaw.org for a little insight. Geez. Look at the facts and not the Oracle sleaze, your article in the Register is based on the blog of an Oracle employee.
-Archillies
I think the issue fundamentally is this: Google wants to allow as many people to use the Android name as possible, but sticking to the Java spec for Android would have complicated matters with licensing (look no further than how GNU and Apache both have different names and considerations for their own Java/Java-like implementations). So, it made more sense to base the technology on Java yet make it legally different and not sign any contracts with Sun/Oracle to use the Java trademark. Meanwhile, MS went the other way, going out of their way to sign a contract to use the Java trademark and then intentionally made it Windows specific, knowing full well that it went against the idea of the Java ecosystem. To me, it seems clearly a different situation.
Eurohacker European paranoia, gun rights, and h
the case falls into a murky area where simple, clear sensible law should exist. When that happens, the lawyers are the biggest winners.
Remember that if you are one of those people who feel it is 100% certain that Google will win (or lose).
"First they came for the slanderers and i said nothing."
So regardless of the finer points of law that have been brought up, I hope Oracle wins.
That's the strange thing. I too hope Oracle wins, but only because that means the destruction of Oracle.
I can't for the life of me figure out why Oracle would want to win, when that only means they would owe hundreds of billions of dollars for the rights to use Java that they purchased illegally.
If Oracle wins, Java is owned by the Dennis Ritchie estate, since Oracle is arguing they have willfully infringed on his rights to Java for the past 4-5 years, plus they are responsible and on the hook for Suns retroactive infringement from the moment they "invented" it from C without paying the creator for those rights.
Not a single program Oracle created or sells today, is legally licensed to them under their argument.
They would have to either stop shipping ALL product, or pay trillions of dollars to other people for the software they wrote, or as Oracle claims, the software Oracle infringed on.
The TL;DR for the copyright trolls is, Oracle is claiming in court they "stole" every program they have created, and have not paid for any licensing rights that Oracle claims they must pay.
So yes, by Oracle winning their lawsuit, they will be out of business shortly since they don't have enough money in the bank to cover their infringement.
I just don't understand why Oracle would try so hard and spend so much money in court to prove they do not own rights to any of their products...
look, they went their own way simply to avoid the JSR-shittape-perpetual forever negotiations for adding methods no vendor then goes on implementing properly. everyone knew that going with such "official" java deal was going to be too much of a hellhole to bother with, certainly their engineers knew this, after all if it was a good route then java me would have evolved faster into what android essentially is, because that shitprocess is how SUN paid their "engineers"(sit-on-their-ass-negotiators) assigned to the thing, just getting things laid down just wasn't their thing(and before someone starts, no, they did not do a good thing on maintaining compatibility between vendors, in fact they did a pretty damn bad job at that). the fact that sun had it's fingers in several os's which they were unable to execute into devices just tells how well it would have gone if they had gone with them(savaje & etc).
it's not a money thing even, just red tape. now it's just a money thing though.
they knew they wanted to go with java like system, they didn't want to have their hands tied to a specific cpu(fat binaries are no good if you don't know the architechtures you want them for.. and you want your stuff to run in the future too) and they wanted some advantages from the vm.
(that the "java vm" which is on some random device x, does pre-compiling, or compiles the .classfiles to something else just on installation, was already a done thing before android too)
world was created 5 seconds before this post as it is.
Google is breaking the Java "contract" with developers: portability.
I'd be much more (read: nonzero) sympathetic to that position if Google didn't explicitly state that their binaries run on Dalvik, and not the JVM:
But seeing as how cross-platform compatibility isn't a stated goal or feature of Java The Language on Android, that's all totally irrelevant to the situation at hand. Suppose someone implemented Python on a non-CPython VM. Your logic would imply that the Python Software Foundation should be able to sue them for breaking cross-platform .pyc compatibility. That's ludicrous.
Dewey, what part of this looks like authorities should be involved?
And now I can understand why Oracle's shorts are in a knot.
Sure you can, just like the rest of us. Larry's shorts are in a knot because he wants to do a particularly evil thing by fencing in what is supposed to belong the the commons, that is to say, the languages we use. And the rest of us (except for you perhaps) know it is a bad idea, don't want him to, and are taking steps to prevent it. As everybody knows, that is why Larry's shorts are in a knot.
When all you have is a hammer, every problem starts to look like a thumb.
But there were no way Google could ever be compatible with java on the phone. Because they would either have to be compaitble with the entire java jdk 1.6 stack including awt/swing and would end up with something which would be really really slow, ugly, huge and not something you would ever want on a phone.
Or they could be compatible with Java Me, but then Android would really really suck, because Java Me is a really bad platform to base an entire system on It is missing far to many things and Java Me are not designde to be the base for a modern smartphone.
So to sum up:
Java the language is really good on smart phones, which is why google is using it in all but name.
Java the virtual machine(With its bytecode system and security model) is ok on mobile devices which is why google made Dalvik which is very close to the official java vm.
Java the library/framework/platform sucks for mobile devices and there is no way in hell Google could make something successfull while beeing 100% compability with anything available under the java name.
Which is why they wanted to license the language and vm, and then implement their own mobilephone platform using that(Which is what this memo most likely is about).
But sun fucked up. They should have said: Ok we accept that the current java libraries/frameworks are not usefull for a full mobile platform, so pay us some money for a license to java, and the java vm implementation, and then make a new platform. Let us call it "java me 7.0" and then that platform would have been what is now android.
It is the same problem Microsoft had with java. They originally wanted to make java the program language used for windows gui programming, but they correctly identified a range of problems with java which made it very cumbersome to develop gui applications in java. So they updated the language. And then sun should have said "Hey your are right, your changes to the language will make it much more usefull, lets include them in java 1.2. Insted they said no and launched a lawsuite which ended with Microsoft developing .net.
And as a guy who do gui development in java, I can only say that I wish Sun would have included most of Microsofts changes to the java language with jdk 1.2, because the current system of using interfaces to simulate callbacks really really suck. But at least they will fix it in java 1.8 so better late then newer.
Google claims to implement NOT any of Snoracle's Java platforms
How dare you misspell Whoracle's name.
When all you have is a hammer, every problem starts to look like a thumb.
Sticking stubbornly to Java as the native platform for Android was stupid, but then Google does lots of stupid things. However, if it defeats Troll Oracle's attempts to extend intellectual property rights in directions that harm society, then it may all turn out well. But it is just insanely stupid for Google not to have already moved the core Android libraries away from Java, so that the java interface just becomes a wrapper. It's because Googler's aren't really as smart as they like to tell each other they are, and that filters down from the top.
When all you have is a hammer, every problem starts to look like a thumb.
You should watch The Confessions if you are actually so ignorant. Probably you know better and are just blinded by Google fanboyism (another human trait, can ignore any evidence that doesn't support "our team"). but if you really have so much faith in humanity brace yourself before watching.
Except that's precisely what Oracle is suing over. AFAIK, Dalvik does support JVM-based binaries; and Android uses a subset of Apache's implementation of the Java SE standard, not any code from Sun/Oracle. So, as long as they support backwards compatible with wrappers of a Java-like library, assumedly Oracle would still be interested in continuing the lawsuit. Meanwhile, trying to clone or mimic another language/platform would potentially risk another lawsuit.
And remember, Android started before Oracle owned Java, so presumably Google went with their Java-like platform precisely because they thought Sun would see them in the clear; but then things changed. So, even if Python or C# or a Python-like language were in the clear today, they may face a lawsuit tomorrow. And to remain backwards compatibility, they'd again be in the same boat of yet another wrapper and still facing a lawsuit.
So, their only real choice is what? To produce a wholly unique language (again, remember all the talk about how Oracle could face the wrath from C's developers if their logic on copyrighting the Java language holds, so it might not even be enough to just develop a new library) and give up all backwards compatibility on Android apps to greatly reduce the risk of lawsuits? That doesn't seem exactly a great compromise, especially given how baseless the lawsuit likely is. I mean, I understand the point of Oracle defending it's trademark, and it's possible Google or others have went to far in talking about Java when it comes to Android--although given it's speaking about the Java language, it's a bit dicey no matter how you look at it given how vague the line is on where the language and its components begin and end when they're source compatible to various degrees--, but since it seems Oracle isn't merely trying to squash the seeming polluting of their trademark like Sun's lawsuit against MS, I don't exactly see there to be any clear way in which Oracle is fighting for anything specific that they can lay claim to and I don't see what Google could reasonably have done to avoid the confusion that naturally arises in trying to differentiate the ecosystem as a whole from some of its core components when they share the same name. I do know that except for tech sites, I never really even hear any mention of Java when it comes to Android and even then, it's almost always with the provision that what Android offers is a Java-like language and not Java as we know it itself.
Eurohacker European paranoia, gun rights, and h
I don't know about that... You're assuming Linux would exist after something like this.
Consider the fact Linux along with more or less every project ever written under the GNU flag would ALL be in similar violation. It is at the very core of what most all FOSS projects are all about: Free reimplementations of preparatory APIs.
Sure, there is lots of innovation in the FOSS world, but the other 99.9% is reinventing other people's wheels be it reimplementation of compilers, library APIs, tool APIs, UIs, etc. Take that away and there is effectively no FOSS left on the planet. The entire FOSS movement would need to start over from byte 0.
My
"So let me try to be clear by pretending to know what I'm talking about for a second"
"2) it was written AFTER Sun's CEO publicly congratulated Google on releasing Android and promised Sun would support the Android platform"
Whoops, you contradicted yourself. The judge presiding in the case has already made it crystal clear that the SUN CEO's public statements don't count for donkey snot in this case. OK, pretend time is over. Next time, please start your post with "IANAL but...". It's quicker and clearer.
The issue with MSFT's J++ was that MSFT dumped their changes to Java-the-core-libraries into the java.* namespace. Sun would have been 100% okay with them creating a com.microsoft namespace, dumping their changes there, and then engaging in discussion about promoting those changes to the core libraries, but MSFT's plan was to cause J++ programmers to inadvertently create "Java" programs which were incompatible with the Java distributed by Sun and others.
Sun stopped MSFT before they could get to the third E in their traditional business plan.
As Oracle experts have stated in the ongoing trial, Java is WORA, unless you're using a different Java platform (SE vs EE vs ME) or different profile within a platform. ;) You can't run a JAR against a version of Java that doesn't implement the functions that you need!
Anyway, as others in this thread have said, *noone* makes the claim that an Android phone is a Java Phone. Every competent Android programmer understands that an Android phone is an... Android Phone. The VM on the phone is the Dalvik VM, not the Java VM. One can write Android programs using Java-the-language and most of Java-the-core-libraries (or C or C++ or...), but it is never, ever, claimed that one can load one's JAR files directly onto the phone and run them. Anyone who expects otherwise has never read any of the Android developer documentation and is operating with dangerous prejudices.
However, one *can* run most JAR files through the DEX compiler to rewrite the Java bytecode into Dalvik bytecode, and then package the result in your app's APK file. If the code that that re-written JAR file is implemented somewhere (ooh, there's that sticking point again!), it's likely to work.
because the current system of using interfaces to simulate callbacks really really suck. But at least they will fix it in java 1.8 so better late then newer.
You lost me there. Interfaces seem to me like the right way to do callbacks. Passing function pointers around is very 1980s, and I get that some programmers have never left the 80s, but it's a very poor abstraction. "Give me an object that I can make this callback on" seems like a clean abstraction, and one that should still optimize to some function pointer under the covers.
Is there some Java-specific reason this is a bad answer? Or are you saying "the specific way in which some Java libraries use interfaces to simulate callbacks really really sucks, and it needs this obviously better way to use interfaces to simulate callbacks"?
Socialism: a lie told by totalitarians and believed by fools.
Except that's precisely what Oracle is suing over.
Except that you didn't get my point. I will state it more simply: Google needs a quick exit path from Oracle's Java trap. They had plenty time to dig an exit tunnel and they didn't. So now it is just, stand and fight or else. Sure, I expect Google to win, but taking that kind of risk unnecessarily is just plain stupid.
More clear now?
When all you have is a hammer, every problem starts to look like a thumb.
Hmm... Reconsidering, I think you're right. If Google had deprecated Dalvik with a replacement two years ago and considering the rapid cycle of smart phone replacement, then the issue of backwards compatibility with probably be virtually a non-issue at this point. Of course, that presumes that Google could have whipped up another VM and library that was both Java-like enough to support a transition yet different enough that Oracle's suit would be a non-issue, and I can't imagine that that wouldn't have taken at least a year or two in itself*. Still, yes, it would have been a wiser move if the point is to avoid the stupid lawsuit(s).
*And I think a year or two is incredibly optimistic. Version 1 of Java, .NET, and just about every other comprehensive platform is almost always enough of a failure that it's not until at least version 2 before wide scale adoption takes place--it's after all, very difficult to know exactly what to include the version and how to do everything right; even cloning another, successful platform often isn't enough. So, people would likely still develop for Dalvik for quite a while and Google would still be under Oracle's thumb. Meanwhile, trying to force a switch can backfire, just resulting in people abandoning the platform altogether. But, even if it took three or four years, lawsuits like the one between Oracle and Google drag on for years, so yes, a plan to switch near the start would have been smart and I agree you're right it was dumb of Google not to act.
Eurohacker European paranoia, gun rights, and h
Digging through that PDF, all I see are discussions about trying to cooperate with Sun to use Java, and it not working out. Which backs up Google's explanation of WHY they didn't go with J2ME.
So, again, got a link to e-mails where someone at Google says "What we're about to do is illegal."?
Maxim: People cannot follow directions.
Increases in truth directly with the length of time spent explaining them
Not the same thing. That's, if you like, a vertical difference. Everybody knows that EE is SE with a bag on the side, and ME is a subset version of SE (or at least, is intended to be).
The problem here is a horizontal one; when something that runs on one runtime doesn't run on an [apparently] equivalent one from a different vendor.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
Not really. Java EE is indeed a superset of Java SE, Java ME CDC is a subset of SE, but Java ME CLDC is "a horizontal one" - it has a small (and not entirely compatible) subset of core libraries common with SE plus application specific API profiles like MIDP.
Your quip about "[apparently] equivalent" is especially funny, considering that Android isn't and is not meant to be [apparently] equivalent to Java SE, but [apparently] equivalent Java ME MIDP implementations are a huge mess of incompatibility and vendor-specific quirks.
One counterexample is all that's needed to disprove your original assertion, and here it is: http://news.bbc.co.uk/2/hi/programmes/newsnight/8245312.stm
Of course, this wasn't in a country where lawyers get to choose the jurors based on their stupidity, gullibility or corruptibility...
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
So, it made more sense to base the technology on Java yet make it legally different and not sign any contracts with Sun/Oracle to use the Java trademark.
If you read the PDF email archive, initially Google wanted to license Java from Sun and have the result be called Java. The problem is that Google and Sun could never come to terms, so Google ended up doing an end-around.
Did you miss where I wrote "intended to be"? http://www.developer.com/java/java-8-delayed-until-2013.html
Time will tell how far it goes in practice.
Never said that it was, but I'm glad it amused you. What I'm referring to are inconsistencies between different "regular" JREs. If you believe in "write once run everywhere" I have a bridge you might like to buy.
My point was this: come the day that they all start doing it intentionally, rather than by neglect or accident, do you think that'll be an improvement?
Comprehension fail.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."