Except that J2ME is already fragmented beyond belief
There's an old joke about J2ME. "Write once, debug anywhere."
Google has responded to Oracle's lawsuit over the use of Java in Android, claiming that the mobile OS does not violate Oracle's patents – while accusing Ellison and company of a certain Java open source hypocrisy. In August, Oracle filed a complaint in federal court alleging that Google deliberately infringed various Java- …
There's an old joke about J2ME. "Write once, debug anywhere."
So long as it isn't a mobile device...
Sure, there's a valid argument about openness. But isn't it a red herring here? I'd've thought the case (if not settled out of court) stands or falls on the Court's determination of Oracle's claims, which concern patents and copyrights, not openness.
I'm pretty sure "we're nicer to the community" isn't a legal defence to patent infringement. But I guess Google are going belt and braces, i.e. (i) you should find in our favour; and (ii) even if you don't find in our favour, damages should be nominal.
Do they even have the concept of nominal damages in US courts?
Google is on thin ice here.
The point that they are trying to make is that worst case they shouldn't be hit with triple the damages.
And yes, those damages will be very expensive when you consider the number of licensed Google phones are out there... HTC, Moto, etc ...
Shouldn't it be trippple damages?
yeah, don't know about that point. It's not like you write Dalvik code and try to run in on a JVM. However, I guess that's the complaint, that Java should run on a JVM and not a DVM? Seems a bit of a stretch to try to prevent a post-compilation process(?).
... is an 800Mhz, 256MB, 480x320 desktop computer. What's all the fuss about?
That comes with its own, built in, UPS rechargeable battery back up system.
Since when has write once run anywhere actually worked anyway?
I work at a UNI and we are in Java hell here, each service that requires java needs a specific version so to get one working, we have to break another. If they can't even get that sort of compatibility, then mobility has no chance. On top of which, Davlik far outpaces JVM speed wise and that is important when competing with idevices etc.
A) Where's google's list of patents that Oracle infringes, as seems to be standard in these patent spats.
B) Is this perhaps the real reason Google wrote their own VM, because they knew the Java licencing terms, and saw a lawsuit coming?
If Java had been true open source, there would have been no need for Google to come up with Dalvik. So blaming Google for the fragmentation is taking it a bit too far.
Oracle, look at yourself.
Google could have bought a licence. See those TWO choices ?
Write once run anywhere doesn't really give you a great user experience though does it? Anyone ever seen a JavaME app that looked native to the device? Try writing all your phone apps that way and getting it on sale through a network operator.
"Additionally, it modified the technology so it is not compliant with Java's central design principle to 'write once and run anywhere.'"
Write once, run anywhere is somewhat of a fallacy. In practice most Java implementations are platform specific.
I agree with Google’s legal position in this matter. I came to this conclusion using Oracle’s own arguments. It would be nice to be able to write Android apps using Java SE, but you can’t, because the abomination that Google created is NOT Java. The code needed for Android is Java-like, or as I like to call it, pseudo-Java.
This is just a attempt by Oracle to extract revenue from the mobile industry. They have no market presence in that sector what so ever. One has to wonder they acquired Sun for the sole purpose of leveraging the Java patents against Google. After the complete mess they made of the Java Store, nothing those buffoons do would really surprise me.
Most of the not-so-dumbphones, Symbian and WinMo handsets can do java in the form of Java ME. And the #3 worldwide, #2 US smartphone vendor happens to use Java ME as well, with an augmented platform: Blackberry. Of course, current tendencies seem to point to Android taking over everyone, and it is using a rip-off version of Java. Of course Oracle wants to pimp out the $$$!
Google didn't act in all good openness faith; if they had wanted to be open, they would've used OpenJDK and *not* Harmony; especially when OpenJDK has actually been able to pass the TCKs. However, Oracle would probably still sue, because Google isn't using Java ME. Oh well....
Yes, I agree, why not simply fork OpenJDK or HotSpot -- both are GPL. That would've avoided this whole mess.
'Write once run anywhere' doesn't even apply here since noone is pretending that Dalvik is Java.
Evil Larry icon ?
Software Patents suck icon ?
>Evil Larry icon
This already. Or Reg risks slipping into anachronicity.
..cos this is just what benefits they bring !!!! (to lawyers only it seems)
Should have stuck to C/C++ ...
Have you seen the state of the talent in the developer 'community' these days ? Don't get me wrong, there are some excellent ones, but the majority in the mobile arena are poorly trained hacks. No thanks, keep these code monkeys away from anything even resembling a pointer, let alone multiple inheritance.
...wtf are Google doing saying "well were open source, so should they be".
What on earth has that to do with patent infringment?
Thats like saying.
I've made exact clone of the Dyson cleaner, but here are my blueprints and I'm publishing them on the web. So therefore Dyson shoud as well, so everyone can copy them.
Also coming from Google it's a tad rich, maybe Oracle should turn around and say, "Good idea, we'll release Java to Open source, right after you release your algorythms for search". Then let's see how "Open" Google really are.
> What on earth has that to do with patent infringment?
It's called the "unclean hands" defence. It's a back-stop position in case the court finds any merit in Oracle's claims - if they are found to have a point, they might still be unable to extract any penalty if they have been found to be acting in bad faith.
I doubt it will be important if this should ever come to trial, but it's good lawyering to get all your defences in place while you still have the option to do so...
"Android code is open sourced under an Apache license and that Oracle has kept portions of Java closed"
So, Oracle (Sun) are free to license their software under any license they want to and so is Google. The only caveat is that you stick to the license of 3rd Party code you add to your own code.
Anyone is free to use whatever license they like, don't like the terms of a license use something else, or write it yourself.
Over the years Ellison has always picked on some target, in a manner that akin to O'Leary of Ryanair, not only to feed his ego but also to keep the company name in the press.
The REAL problem lies in the US Patent Office's enabling legislation.
The energy expended on reaching near agreement on the international agreement with respect to copyright - to protect Hollywood moguls - would have been better spent on equalising patent legislation worldwide.
Of course it never happened as more money is involved in Hollywood than patenting mice and software.
You're having a laugh aren't you?
That should be 'Write once, debug EVERYWHERE' ... sigh :s
And the patents are lower level than the Java language itself. Oracle think Google have infringed some patents on technology used in implementing Java (but that could be used elsewhere) - they have not said that Google have infringed a Java patent (AFAICT).
All this talk of Java is a red herring.
In addition, since Android is it own platform, code written to run on Android will (usually) run on Android, not a JVM, and is ONLY REQUIRED to run on Android. Nobody has said that Android code should run on any old JVM. So all this talk of openness and WORA is, well, bollocks. WORA is alive and well - you write an Android app once, and it runs on Android phones - that multiple platform straight away. In fact, given the large number of different Android platforms you could argue its more WORA than Java itself.
The outcome is less important than the process. Frustrate your competitors by bogging them down in tedious and expensive lawsuits. Whether or not you win, the purpose is to waste time and money that they could be using for something else. I think commercial disputes like this should be dealt with by having a fixed trial length and cost, say a week for either side to put its case followed by another week for the judge to come to a verdict, no right of appeal unless breach of procedure can be proven, and token damages of US$5 maximum. Obviously you do need some way of preventing big companies pushing their luck by ripping off smaller ones and only having to pay a small amount. However this approach would have put paid to nonsense like the SCO case or the interminable Apple vs Microsoft one about user interface elements which were ultimately invented at the Xerox Parc labs.
can someone clarify something;
Obviously, Java runs on the JVM and Android stuff on the DVM, both using JIT compilation, so;
When you write for Android, are you writing in Java or a close approximation of?
If you are writing your code in Java and the DVM parses it differently to the JVM, Oracle _may_ have a point.
If you are writing into a language similar to Java - i.e. a Derivative - then IMO Oracle are in the wrong. That's how the evolution of computing works FFS - You're language is good, but it'd be great if it supported X. You're not willing to do it, so I'll do it myself!
Remember Sun vs. M$ a few years back? Visual Studio had Visual J++, complete with a VB-ish interface builder. Slick tool, but it produced code that was tightly bound to win32 and their own proprietary extensions to the JDK. Meaning, you can run it on any server you like, so long as it's Microsoft. Microsoft lost the suit, and cried to anyone that'd listen about how "Sun won't allow us to innovate, therefore we have no alternative but to drop Java support from IE."
What Google's doing seems a lot less sinister. Even if J2ME were supported, useful, and stable, it could never be considered cross-platform. Too many differences between mobile OS's for that to "just work." (Ever tried to make java work within multiple browsers VM's?) There are already frameworks to abstract Dalvik vs. Blackberry vs. others so you CAN create true cross-platform mobile apps. So what Google is doing can't be construed as "embrace/extend/destroy". It's actually forced some life back into the much-neglected J2ME.
> When you write for Android, are you writing in Java or a close approximation of?
There are several source languages that can be used to code for Android. Java is one of them.
However - and this is the important bit, IMO - *no* Java goes onto the Android platform, nor does any Java bytecode. There is no Java in Android.
If you want to understand what's going on with this filing, you need to go to Groklaw.
The "open" argument evidently pertains in the main to another argument Google makes, essentially that Oracle's suit is fatally flawed due to lack of specificity as to what Google has done wrong. Google's point is that all of their code is open-sourced, so Oracle does not need to wait for discovery to point out the where and how Google violated patents and/or copyright, yet there is nothing in the Oracle filing that spells out what Google did wrong.
Without that, Google cannot defend itself. They allege the Oracle suit is so flawed that it needs to be tossed, and that Oracle had all it needed to file a proper suit, due to the "open" nature of the code in question.
Some of you may be thinking "SCO" at this point, and with good reason.
Write once, grind to a halt whilst consuming all resources anywhere.
This is just a replay of the SCO Linux extortion bid. SCO gave Linux away free as Caldera then sued everyone who used it. Oracle wants compensation for a product they wanted open-sourced & mostly is. I hope they end up as big as SCO...
When Microsux developed their own Java there were 2 specific caveats made by Sun Micro in the legal building of your own Java that were not included in M$'s version
1/ The software must run in a sandboc environment therefore (supposedly) protecting the computer from unwanted attacks
2/ The Java Virtual Manager had to be able to be run on other Operating Systems, including Sun's own boxes, Apple, Linux & also M$.
Microsoft did neither of these things to attempt to make Java a minorly influential language. Basically M$ tried to destroy Java to keep Sun Micro out of the real playing fielf & unfortunately they pretty much succeeded in halting real IT progress, one of M$s major aims in the Embrace Extend Exterminate... behaviour they do so well...A-holes