Many years ago, I put virtually all of my assets into a trust with the intent of giving away at least 95% of my wealth to charitable causes. I have already given hundreds of millions of dollars to medical research and education, and I will give billions more over time. Until now, I have done this giving quietly – because I have long believed that charitable giving is a personal and private matter. So why am I going public now? Warren Buffett personally asked me to write this letter because he said I would be “setting an example” and “influencing others” to give. I hope he’s right.
Larry Ellison
On one hand, he is giving a lot, on the other, you can tell he couldn't care less about the pledge and the letter.
My take on the letter is that he really doesn't like Buffet trying to push him around. I can understand wanting to give quietly; that is how I would prefer to give.
"In 2004, when Google founders Larry Page and Sergey Brin wrote to prospective shareholders about their vision for the company, they outlined a commitment to contribute significant resources, including 1% of Google's equity and profits in some form, as well as employee time, to address some of the world's most urgent problems. That commitment became a range of giving initiatives including Google.org."
Why should he care about the pledge? Taking the letter at face value, he's already gone far further ("at least 95% of my wealth") than the pledgers, and he's done it in private. I can totally understand him not wanting to write such a letter and doing it only as a favour to Buffett, with a certain skepticism. Well-founded skepticism too.
(Or maybe he's just pissed that he had to blow his cover as a supervillain.)
If they were talking about Oracle's patents, it would make sense. It's the talk of it being copyright infringement that has me confused.
Android is basically, as far as I've read, a Linux kernel, with Google's own user space on top of that--their own equivalent of libc and their own windowing system. On top of that, they run their own JVM, which they wrote themselves and which is NOT even compatible with Oracle's at the byte-code level. Android apps are written in Java and compiled/JITed for Google's VM.
So, unless the Java compiler itself takes code from Oracle's compiler, it is hard to see what in their would contain copies of Oracle code.
> So, unless the Java compiler itself takes code from Oracle's compiler, it is hard to see what in their would contain copies of Oracle code.
This is about patent infringement, not copyright. Whether or not code was copied is irrelevant.
UPDATE: Sorry, maybe both are at stake. The author of this article seems sadly ignorant of the difference between patent and copyright, as he seems to use them interchangeable. So who knows....
If you read the complaint itself (http://www.scribd.com/doc/35811761/Oracle-s-complaint-agains...) it becomes clearer - see Count 8, copyright infringement: The Java platform contains a substantial amount of original material (including
without limitation code, specifications, documentation and other materials) that is copyrightable
subject matter under the Copyright Act, 17 U.S.C.
so because the Android platform APIs also include the Java APIs Oracle thinks there is a case. I'm not aware of any precedents that would indicate the likelyhood of this succeeding, but its possible there could be a problem here.
Note that http://developer.android.com/reference/packages.html contains the java.* API's, and in the past Sun was pretty strict about companies not hosting that Javadoc itself publicly (eg, they stopped one site that was building interlinked Javadoc references).
Excuse the really really obvious question, but how can you sue somebody for intellectual property infringement on open-source software? Didn't you already give anybody the license to do what they wanted with it? If they've violated the license terms in some way, isn't that different from IP infringement?
If this still does not make any sense, realize that patents and copyrights, while both forms of IP, are completely different, legally. Also recall how open source GIF implementations were still covered by the Unisys patent.
Of course you can. There'd be no such thing as an enforceable software patent if any company could just sponsor an open source project to implement each part of its product that infringed a patent. Presumably --- hopefully 'grellas will clear this up --- Oracle can measure damages incurred by Google supplanting Sun/Oracle Java with their own Java in terms of percentage points of global smartphone revenue.
I think you slightly misinterpreted Seldo's point. I think what he's getting at is that Java was made open source by Sun. At the very least I'd say that raises some kind of estoppel defense against any alleged infringement of Sun patents.
Patent owners can't just go around encouraging people to infringe, and then come back later and sue.
So if I, as a company, release something as open source (licensing the patents[1] with no royalty to anyone who's interested, as long as they follow the rules in the license), then I, as the same company, can turn around and sue anyone who uses it for infringing those same patents?
[1] I assume that when software covered by patents is released as open source, the patents are also implicitly granted as part of the license, because if they weren't no one would be able to use it for anything because they would be infringing on the patents.
The only situation this can possible make sense in is if Google has somehow violated the license, thereby revoking their permission to use the relevant patents and exposing them to litigation.
Sun licensed Java under the GPL which gives access to all of the patents on Java. But Google uses its own Java, not Sun's GPL licensed one, maybe they should have gone with the GPL instead...
It's important to understand that Android doesn't use Oracle's open-source OpenJDK. An argument could be made that Oracle licenses the necessary patents only for OpenJDK and not for alternate implementations such as Dalvik. An argument could be made that Oracle licenses patents only for JVMs that are TCK-compliant, which Dalvik isn't. An argument could be made that Oracle licenses patents for GPLed JVMs but not for ASL-licensed JVMs (because ASL is "too free" perhaps?)
Thanks, it naively hadn't occurred to me that Android would be using a non-Sun JVM, and given what you've said it seems that would be a viable route for an IP lawsuit (though it still seems in pretty bad faith).
Dalvik would be better if Google had just licensed Oracle's Sun JVM or used the open source version. As an occasional Android developer I am constantly banging against the limitations and performance of Dalvik.
It doesn't do memory management nearly as well as the JVM, and it handles dynamic dispatch and one-off closure hacks (local classes) slowly. It won't easily accept generated bytecodes. It has mysterious performance headaches (mostly memory management related I think).
I'd prefer that Oracle go to heck with these bogus patents for the health of the industry but Google should have just cooperated from the start.
On the flip side, how do you know you wouldn't run up against those limitations on a phone that used OpenJDK? I don't do much mobile dev, but I've had friends that did JavaME development, and they didn't seem to like it any more than Android. Dalvik was designed specifically because Sun's JVM performed poorly on memory-constrained devices.
In other words, your issues may be caused by mobile development, not by Android development.
Given that Eric Schmidt is the former head of Java at Sun, it seems unlikely they'd have written their own JVM if they didn't have a good reason to do so. Also, JavaME is awful.
The Sun JVM is a lot of things and got a lot better and a lot faster over time, but it is an astounding memory hog. Only thing I've ever seen that will (seriously) reserve 64 bits for a Boolean field on a 64-bit VM.
Dalvik is a register based VM, as opposed the the stack based JVM.
Also Sun removed the classpath exception when they put JavaME under the GPL. That means if you used the GPL'ed version of Java on a mobile device then it becomes viral - including to any application code. (That's why most GPL'ed Java programs use the classpath exception).
From Sun's point of view, this was a good idea because it allowed them to protect JavaME licence revenue. Google saw JavaME as outdated, though, so instead of licencing it they took the Apache licensed Harmony project (ie, a clean room, Apache licensed version of the Java class libraries) and build Android around it.
another technical reason for going with a new VM: every process (e.g every app) runs its own VM for security purposes. dalvik claims to have a much lower memory footprint.
There wasn't any cooperation available, unless Google wanted to pay megabucks for Java ME, and force their developer chain to do the same: Java ME was never open sourced.
Essentially, Sun said "We will give away Java, Open Source, as we planned to do. Oh, not mobile, because Nokia uses it and it makes us lots of money. Of course, we all understand reimplementing Java ME would be far too much work for any one company to do. Feel free to license."
Google said "Eh, we'll just write our own JVM that runs on phones, thanks. That's how we roll over here."
Now there are lawsuits, because Sun tried hard to make sure you had to pay if you wanted Java on mobile devices.
Thank you for this explanation. Until reading it this way my understanding of the whole affair was somewhat wrong.
Given that Oracle doesn't seem shy about going after a giant like Google makes me wonder what other software Sun owned the rights to that might be even remotely popular. If I were a company using a lot of old Sun IP in even moderately unique ways, I'd be a little concerned right now.
They could, but they haven't, and probably won't. Oracle had a big database-related portfolio long before they acquired Sun/MySQL, which had relatively few. They even bought Innobase, makers of the InnoDB engine a few years ago.
Other database vendors (Percona et al., not IBM) don't have assets for Oracle to take, don't directly threaten their core business, and going after them would get Oracle in trouble with regulators.
What if I take the open source OracleJVM and change every line, so that it become Dalvik? Wouldn't it still be derived from OracleJVM and hence covered? The approach would only be possible because Dalvik is open source, too, of course.
Sun/Oracle's Java implementation was released under the GPLv2, which doesn't include a patent license. I don't know if they included any patent license with the open source release. Even if they did, it doesn't help Google, because Android doesn't use the Sun/Oracle code, so it wouldn't benefit from any patent license that goes with it. Android is based on the Apache Harmony libraries on top of Google's own Dalvik VM. (Most of the Android code is Apache-licensed.) That code was all developed independent of Sun's Java and the implementation might infringe their patents, even though it doesn't use their code.
I don't think that would hold up. The judge would consider it a new work, not a derivative, and therefore not covered by Sun's release of patents for the official JVM.
Just because its open source doesn't mean that IP terms still can't be brought against you. Here's a simple example. Lets say that someone contributes someone else's patented algorithm into gcc. Now you ship gcc, not knowing about the patent infringement. All of a sudden you have a patent lawsuit on your hands.
This is probably the biggest reason why companies, like Microsoft, even when they do open source, don't accept contributions. Just because someone contributes specific code, doesn't mean they have the legal right to do so.
Sun showed that Java could be a timebomb. And in the hands of Larry Ellison, I think Google is just the first victim. Oracle will be going through uses of Java with a fine-tooth comb. Get your duck in order now.
Java isn't a timebomb. Sun has sold licenses to companies (ex. IBM) and the terms are well understood. Google didn't buy a license and is now going to deal with the outcome. If your running WebSphere or some licensed product this move will not affect you.
Plus, if you are an IT shop in the fortune 500, you company probably has closer ties with Oracle than Google.
// I am a little concerned with non-Java related VM's in case Oracle goes after them with these patents.
If the license doesn't mention patents, then it doesn't cover them. Copyright licenses and patent licenses are two different things. It's pathetic that the two are actually able to intersect in this manner.
The biggest issue I see with Oracle's lawsuit is not with Android itself, but the future of Java as an open platform.
The claims are pretty serious, and Oracle is going straight for the jugular. It'll be interesting to see how it shakes out, but I've got to hope that Google will come out of this in good shape for the sake of Java. It's unfortunate that Oracle is interpreting Google's implementation of Dalvik and a Java-based system as a direct infringement upon their patents.
Android aside, it raises some fairly serious questions around Java's future development as a platform vis a vis the uncertainty recently resolved between Microsoft and the Mono project. While Microsoft extended their "Community Promise" to Mono implementors and users, Oracle seems to be taking the opposite approach to companies developing alternate JVMs and Java-based devices. It'll be interesting to see Oracle's stance toward other alternate JVMs such as IBM's.
In a computer system, a method for increasing the execution speed of virtual machine instructions, the method comprising:
- inputting virtual machine instructions for a function;
- compiling a portion of the function into at least one native machine instruction so that the function includes both virtual and native machine instruction; and
- overwriting a selected virtual machine instruction of the function with a new virtual machine instruction, the new virtual machine instruction specifying execution of at least one native machine instruction.
You think that sounds like an idea worthy of a patent? Probably depends if you're a programmer or a patent lawyer.
I'll leave you to judge the merits of the other 46 claims, the next of which are:
Sun bought several of these, especially the developers of Strongtalk, a compiled, statically typed dialect of Smalltalk. So if there is any prior art on this, chances are that all the related patents are now in Oracle's portfolio.
A patent isn't an idea. It's the specific method for implementing an idea. If there is a way to get the same end result using a completely different method, the patent doesn't apply.
How does that relate to my comment that the patent in question sounds like it could have come out of Sun's work on optimizing Smalltalk instead of their later Java implementation? (Note that even if Sun could have worked around their own patents, they would have had no reason to bother.)
A "method" which is not being acted out physically, but instead is in someone's head or written down on paper is a type of idea. So some ideas are patentable, others aren't. The mantra that ideas aren't patentable presumes some other category of thought completely apart from ideas. Besides, what could be more purely and precisely methodical than machine-readable source code, in this case Smalltalk source code?
You can't write a good JIT overnight. You can't adapt an existing JIT for a JVM-like VM to Dalvik either. I don't think working around patents had much to do with it, especially since they got sued anyway.
There is prior art in Smaltalk and Self ... the Hotspot compiler itself is an old Smaltalk implementation that Sun bought, open-sourced recently by SUN btw ... http://www.strongtalk.org/
I'm pretty sure the prior art was just with Self. Smalltalk had polymorphic cache tables, but it was Self that was doing really aggressive in-lining of those caches (e.g. in-lining the method and all code the method called right into the cache). Strongtalk was a Smalltalk implementation of the result of the Self research (plus optional H&M type checking) but before they released anything they got bought by Sun to get the expertise for their up coming HotSpot VM.
So bottom line: Oracle may actually own all prior art via Sun (Self research was done at Sun).
Oracle may claim that Google infringes on all those patents, but they'll never sue. Patents are just a nuclear deterrent.
Edit: Wow, -7 and dropping. I guess I should have included a sarcasm symbol. Spoiler: My point was that patents do get used, and this argument about them just being for defense is nonsense.
To be fair to the journalist concerned, if you read to the bottom of the complaint you'll find that there are 7 claims of patent infringement and 1 of copyright infringement.
At the risk of being a pedantic jerk, the US did send troops to fight on the side of the Czar against the Bolsheviks. They were withdrawn when they found out how bad the Czarists were. http://en.wikipedia.org/wiki/Polar_Bear_Expedition
Sorry, missing reference. I probably overstated the cause and effect, but it does seem to me that it contributed to the morale problems of the American troops.
>> The American commanders in the field reported that the Czarist reign of terror was far more horrific and disturbing that the actions of the Reds. The American forces also discovered that the vast majority of Russians sympathized with the Bolsheviks and supported the revolution. In the end, the American troops were brought home without any fanfare, and the ordeal was considered one of the most ill-conceived interventions in American history up to that time.
A nuclear deterrent only works if both sides have nukes. Google is a pretty young company, with few patents. Oracle is a much older company, that bought many old companies along the way. Oracle's patent portfolio vastly outstrips that of Google.
We currently have enough nukes to destroy the world many times over. If you take the comparison between patents and nukes to its logical conclusion, the same probably holds. Google vs. Oracle == mutually assured destruction, regardless of how much bigger Oracle's portfolio is.
Another interesting tidbit from the article you linked:
The trick is that Google doesn’t claim that Android is a Java platform, although it can run some programs written with the Java language and against some derived version of the Java class library. Sun could prevent this if they had a patent on the standard class library, but they don’t and, even if they did, I strongly doubt it would be enforceable since Android doesn’t claim to be compatible (and in fact, could very well claim that their subset/superset is an innovation on the existing patent and challenge Sun’s position).
If by "interesting" you mean "totally misunderstands patent law". What Google claims is irrelevant; either they use Oracle's patented techniques or they don't.
"It'll be interesting to see Oracle's stance toward other alternate JVMs such as IBM's."
IBM could completely paralyze the entire computer industry with their portfolio. That they don't is a testament to how much money they earn in simply letting others do the "hard" PC stuff while they singularly engulf the big iron market.
IBM was the only company that I know of that actually outlasted the US government in antitrust litigation. The DoJ, after 15 YEARS of litigation, simply dropped the case due to lack of will and resources to continue. Oracle wouldn't dare try IBM in court.
I wasn't trying to make a joke. I figured Google would have a very high market valuation compared to IBM. But my point still stands, why can't Google buy a company that owns some patents that Oracle is currently infringing on?
It's quite possible that Google already owns some. We will find out when and if they find a counter-suit. Counterclaims of patent infringement are a standard tactic.
I assume Oracle is angling for a settlement here. I can't imagine they want to make Android apps not be written in Java, they just want a piece.
I think the V8 technology in Chrome is based on much older Smalltalk VM technology that Google bought. Given that everything in software violates software patents, I think it is reasonable to assume that Java does.
Also, as the article j-g-faustus linked pointed, Google did something special to avoid the GPL, so JVMs that followed the usual rules won't be affected.
This makes me think that cscotta's point on uncertainty is not so strong. It'll be certainly an unpopular measure among developers, but Oracle can say that the case against Google is similar to the one against Microsoft and use the usual "fragmentation" argument.
What Google is doing is exactly the same thing Microsoft tried with Java (TM:). And Google is not doing Java community any favors by fragmenting the platform. Google is a behemoth filled to gills with paper money.
All these facts make the (contrary) popular reaction quite interesting from a psychological point of view. Image is everything, after all.
> it raises some fairly serious questions around Java's future development as a platform vis a vis the uncertainty recently resolved between Microsoft and the Mono project
Microsoft's "Community Promise" does not cover the whole .NET stack - it covers only the ECMA standardized parts. It has "It's a trap" written all over it.
I would also think twice before relying on promises from a convicted monopoly abuser.
I think he stated that to indicate that we shouldn't just take Microsoft at its word that it won't attempt to litigate Mono et al. They'll find a loophole in the "Community Promise" (possibly the loophole described above) and try to hurt their enemies.
I shouldn't still be surprised by this shit, but the claims of patent 5,966,702 are basically "There was some data and we normalized it". Seriously. WTF?
Can we start putting questions like these on 1st year bachelors exams, so we can finally prove that someone "reasonably skilled in the arts" can figure it out?
Google should switch to C# and Mono. Besides giving them a better language and VM, it would cause the most amusing set of rants from the anti-Mono crowd. Win/win.
The JVM bytecode is shitty. It cannot support dynamic languages at the VM level (yet: http://jcp.org/en/jsr/detail?id=292), the support for the C# equivalent of structs has been pushed back, and that makes any kind of hardware acceleration painful. Then theres type erasure - a total hack to get generics.
I think Oracle is being beyond stupid here. If anyone has the power to come up with a language and toolchain to make Java utterly irrelevant, its Google.
History will repeat itself. Sun sued Microsoft over their implementation of Java. In response, MS drops Java and creates its own language (C#), framework (.NET), and VM (CLR) which now solidly competes with Java in the enterprise software space.
If MS was able to accomplish all of that, then imagine what Google could create if they decided to drop Java altogether ('Go' language might be the preview.) That would be a huge win for the software industry while a big (long term) loss for Oracle as Java further wans in popularity.
(Hmm....if Oracle can sue Google over the non-Java VM they created for Android couldn't they sue MS for their "JVM-like" CLR? This is another reason why their patent lawsuit is so ridiculous.)
No matter how you slice it, Google has the advantage in the long run while patent trolls like Oracle have the most to lose in the long term.
No... if anything they should buy out D... or use or create another high level-level low-level language like vala, ooc, etc(I don't like Google Go, though I have my own problems with vala and ooc), the reason D hasn't taken off is it's weird development process and license that miscarriages development on everything but the actual language.
Mono still has the sharecropper problem to it, that I thought Java got rid of...
Suspect parent was meant as a joke, but it does seem like this legal action might have interesting ramifications for Parrot. (Both positive and negative.)
Switch from a VM they implemented themselves (Dalvik) that is not the JVM to somebody else's VM (Mono) that is also not the JVM? What would google gain from this?
This lawsuit is not about google's use of the JVM since they are not, in fact, using the JVM. It is about the fact that the Dalvik VM allegedly infringes on some Oracle-owned patents. It's possible that the Mono VM infringes on the same patents too, so switching VM may not make the slightest difference.
It just goes to show that whatever company-de-jour promises about enforcing the patents that they are granted today, all bets are off when they fall on hard times and are acquired tomorrow.
Serious about openness? Skip the "patent and promise" dance and just release the damn thing BSD.
If you already have patents (as Sun did in this case) you can't just forget about them. Saying nothing about patents is equivalent to saying "some day we'll change our mind and start suing". If you want to make something really open you really need some kind of irrevocable license or promise not to sue.
The BSD license would be useless here. Preventing this kind of thing is the whole point of the third revision of the GPL; to my knowledge there are no other software licenses that do this.
They would be violating the GPLv3 license under which they distributed the source. Changing the license only affects the next person acquiring the source. The people who acquired it under the GPLv3 license cannot have this retroactively revoked or relicensed. If Orcale sued those parties, they would be violating the terms of the license. In the least instance they shouldn't have been distributing the source unde GPLv3 so their claim for infringement would be moot.
I think this is much bigger than just Java. The patents in question relate to the whole field of VM implementation, not simply Java VM implementation. On the surface this really appears to have very little to do with Java the language.
For a start, Dalvik is not a JVM implementation at all, in fact it's quite a different beast. See, e.g.: http://en.wikipedia.org/wiki/Comparison_of_application_virtu... which lists Dalvik as a register machine rather than a stack machine: definitely not a trivial difference.
Google's toolchain converts from JVM bytecode to Dalvik bytecode, which is probably what Oracle are going after with #5,966,702 but the rest of the patents are much more general. If anything Oracle are turning VM implementation in general into a patent minefield, not Java alone.
It looks like the patents that Oracle is claiming are being infringed upon focus on the actual JVM itself, not on the code run on it. Google making their own JVM is what's brought them into the crosshairs.
Which could be rather bad if you need a JVM tuned in a non-standard way.
Anyway you look at it, Oracle has enabled a lot of FUD to be thrown at Java, and if your observation is correct, andyone who's working on any sort of non-Oracle derived JVM (and there are a bunch) had just been handed a lot of legal uncertainty.
Side note: I don't need hearing this shortly after learning about the RightHaven atrocity factory.
Dalvik very much isn't a JVM. While both are bytecode interpreters you need to translate Java bytecodes into Dalvik ones to use the former. I'll need to read more (just woke up) to see just what Oracle is objecting to.
Bytecode based systems are an old old old concept due to the severe lack of memory available in the bad old days, e.g. I personally know that as of the mid-late '70s the Lisp Machine's compiler went to a bytecode that the microcode would then interpret. As I recall Smalltalk did this and I know it wasn't a new concept. Heck, what about UCSD's Pascal system?
Don't know the history of JIT compilation, let alone various tricks that have recently been developed; Java is the second wildly successful bytecode system, I think, after UCSD's, which was done back when memory was a lot more precious.
And Dalvik optimized for among other things low memory demand, e.g. it is register based and Java bytecode is stack based.
Good question. It's got to cast a bit of a shadow over anything based on the VM.
This seems like a catastrophically stupid and short-sighted move on Oracle's part. The reason Java is as big as it is today is that it's been an open playing field for all comers. Start tossing the odd hand grenade into the party and the room is going to clear out fast. The timing could hardly be worse too - Scala and Clojure seem to be building some real momentum lately.
Patent and licensing issues are so complex and the outcome of litigation so unpredictable that good faith and precedent are what count. This suit demonstrates that Oracle is perfectly willing to pursue offensive suits on Java IP and that's a very damaging precedent.
Clojure will be fine, at least. I think I remember Rich saying it was explicitly designed as a multi-VM language in an interview somewhere. Anyway, he already has an official, apparently actively maintained port of Clojure to the .NET CLR:
Now porting your Clojure applications between VMs may or may not be a reasonable proposition depending on what kind of non-Clojure pure Java libraries you depend upon, but the fate of the Clojure language is thankfully not tied to the fate of the Java runtime.
I think Scala has a .NET port too, but I don't know if it's active.
I bet the mono people are laughing their asses off now...
I think Sun suing Microsoft was a mistake too for the Java platform... the write once, run everywhere ideology made Java the native platform of the server... write once, run everywhere should be the default, but it should be easier and encouraged to escape...
Microsoft were destroying Java with their own implementation, which was not compatible with normal Java. They were changing the language, just as they tried to do with HTML in internet explorer and active-x, so we still see people having to use ie6.
Sun had to sue Microsoft, before they changed Java so much it was no longer platform agnostic (or it was way less agnostic).
I wonder what would have happened, though. Would the market decide that being platform-agnostic is more important than using MS dev tools? Would developers just have to work (around) with an incompatible platform, as they do with IE.
I wonder if the MS rift caused more harm to Java than letting Microsoft change its implementation.
I'm pretty sure the Mono people are worried. These patents are things that are fairly fundamental and important to any sort of mobile device that has competent security.
I know. I also hope they are using process level security, not class level security, which will completely bypass patent #1. Google people aren't stupid.
You've not looked at them have you (the VMs)? The JVM is entirely a class-focused JVM. The CLR is a general purpose VM. I can access arbitrary memory in the CLR, but cannot on the JVM. I write as someone who has attempted to build a byte-code assembly file that would allow direct manipulation of binary arrays for the purpose of efficiently loading OpenGL vertex buffers that mix floats and ints. Cant be done in Java or in Dalvik (at least in 2.1). Easily done in CLR. Also, the handling of security and exceptions is different. I've also read all the JSRs with respect to this problem, related problems, generics, stack-based variables etc, and I'm also aware of the optimizations for stack-based elimination in 1.6 and 1.7.
Also, I admit I only read the first patent, but I believe it doesn't apply to Android simply because the Dalvik VM does not apply its security at the object level but the process level, thereby nuking the patent. As for mono, I doubt they would worry since they would simply point out that "class" and "object" have been used for determining security access since at least Windows NT. Or mono can simply turn off object level security and rely on the OS to do it. The whole list is replete with holes and workarounds.
I've looked at them, along with about half a dozen others.
> The JVM is entirely a class-focused JVM. The CLR is a general purpose VM. ... blah-blah-non-sequitur-blah ...
They are both VMs with similar overall strategies, similar technologies, and some distinct similarities. They're about as different as any two VMs are.
> Also, I admit I only read the first patent, but I believe it doesn't apply to Android simply because the Dalvik VM does not apply its security at the object level but the process level, thereby nuking the patent.
Unless they point out that the system handles processes as objects.
> As for mono, I doubt they would worry since they would simply point out that "class" and "object" have been used for determining security access since at least Windows NT. Or mono can simply turn off object level security and rely on the OS to do it. The whole list is replete with holes and workarounds.
You don't understand how patent trolling works, do you? The point is to make it so expensive and painful for the innovator to continue without giving the patent troll a big slice of the pie that the innovator capitulates and pays off the troll.
I suggest that these differences are what makes them different as applies to patents. Patents are usually either so broad as to have prior art, or so narrow as to not apply to even "similar" implementations.
6,192,476: Too broad. Applies to any OS since the 70's.
6,125,447: as above.
5,966,702: Too specific (.NET doesnt need to optimize data it creates properly in the first place) and too broad at the same time: it simply describes data normalization.
7,426,720: Unix forks. Either way, .NET does not do this.
RE38,104: Not applicable at all. .NET is always fully JITed.
6,910,205: See above.
6,061,520: Specific to JVM implementation detail.
> You don't understand how patent trolling works, do you? The point is to make it so expensive and painful for the innovator to continue without giving the patent troll a big slice of the pie that the innovator capitulates and pays off the troll.
I have been responsible for patents at a tech startup. My job was not only to find patents that we might infringe upon, but to find patents that a troll could use to extort money out of us, even though they did not apply, and then assign risk. I worked with an excellent patent lawyer.
It is impossible to do anything today without infringing on somebody's bullshit patent. However, one can identify patents that can be demonstrated to be bullshit for a reasonable cost.
There is also an element of poker. If someone has a bullshit patent, but they have successfully used it, or think they can, then they risk losing that revenue if it is struck down as invalid. They do have something to lose, in addition to legal fees.
Trolls live on fear. Don't be afraid.
So back to these particular patents: They are bullshit. They are obviously bullshit. I would represent myself if hit with them. I think Google might be able to find a few people better than me to prove it.
"On November 13, 2006, Sun released much of Java as open source software under the terms of the GNU General Public License (GPL). On May 8, 2007, Sun finished the process, making all of Java's core code available under free software/open-source distribution terms, aside from a small portion of code to which Sun did not hold the copyright."
If Sun willingly made the code GPL licensed, and Google isn't using anything outside the GPL code, even if some of the technologies were covered by patents I don't see Oracle having a case. Right now, this sounds very much like the SCO - Linux suit that dragged on forever and went nowhere.
And I would really wonder if they decide against Google. It looks almost like a trap of Sun/Oracle then, kind of "hey, here, use our code, it is open source now grin".
Or to put it different: Why did they use the GPL licence?
That's not true. See section 7 of the GPL. In part:
For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
However, it seems Sun can relicence the software under whatever they want, and the current versions of it wouldn't be under GPL anymore. I am not a lawyer, so I don't know exactly what this implies.
So you're saying that it grants users of the GPL code an exception from the patent owned by the original developers?
In that case, wouldn't the exception only be extended to Google if their implementation of Java was not independent from Sun's implementation? Because Devrak was derived from Apache Harmony, it might not share any code with Oracle Java.
Considering that Sun released Java before the GPL v3 was finished, I assume that it's under the GPL v2. v2 doesn't have the same patent guarantees that v3 does, and these guarantees were an important reason for creating v3. Specifically, the GPL v3 specifically prohibits this sort of "make it free software and then sue over the patents". The GPL FAQ claims that in some countries, releasing software under the GPL v2 constitutes a patent license, but I don't think that applies in the US.
There's no need to assume when authoritative information is but a few keystrokes away. And yes, it is under the GPL v2 + Classpath exception, except for Java ME which is under straight GPL v2.
Sun released the majority of Java under the GPL. How can you claim that someone you licensed the code to is infringing both its copyright and its patent? I'm looking forward to some more detail when Google publishes a response.
Note that Dalvik is essentially just an alternate stack-based virtual machine for bytecode that's been converted from the standard stack-based JVM bytecode. You still need a standard Java SDK to develop Android applications in order to compile the Java source code to JVM bytecode.
So far Google has been able to get the best of both worlds by leveraging the vast Java tools ecosystem but then in the final step they convert the standard JVM bytecode to run on their own Dalvik VM which means they don't have to pay license fees for the standard Java runtime. IMO this is what is really annoying Oracle. (To be fair there are also good technical reasons why they created Dalvik.)
I can understand where Oracle is coming from legally, but business-wise I think this lawsuit is bound to backfire. Google has the resources to defend themselves and move away from Java in the long term, but in the meantime Oracle has created serious uncertainty about the openness of the Java platform which will scare technically innovative players away from Java that don't have the financial and legal resources that Google does. So Oracle turns Java into the new COBOL, a technically moribund backwater that is only kept alive for legacy purposes.
I sincerely hope that this lawsuit results in dalvik being removed from android. They should never have used dalvik. It's an arm linux. They should have stuck to gcc toolchain like every other arm linux implementation out there. They are missing out on a wealth of development resources for no reason at all.
If I didn't detest software patent suits so much, I would say this is karma for Google's recent actions regarding network neutrality and wireless broadband.
Actually, you now get one page - this one. Isn't there some prize for doing a google search that nets only a single result?
Incidentally, these homoglyph attacks are pretty hard to catch. Even Vim (which normally chokes on 8+ bit characters in my setup) didn't seem to show anything different until I checked the hex codes.
It seems to be the o and the e at the end. Homoglyphs were a bad idea. Single letter or word homoglyphs in ohterwise latin text ought to be highlit somehow to warn against tricks like that.
i just set the default encoding of my browser to latin1 and disabled auto-detection. it doesn't work most of the time because the browser doesn't have to detect anything because of encoding tags in the page code, but it's handy if i have suspicions.
now i see gibberish for everything i don't care about, including utf8 homoglyphs.
Hm. A search for "other" using that o and e shows that there are a lot of websites out there using this trick, presumably to mask their spamminess / plagiarism from Google.
I'm sorry, but I just don't understand this decision. Is Oracle in need of cash or something? Why did they become patent trolls? I mean, they're not even in the smart phone business, and it's not like Google is going to put a DBMS into Android. How are they being threatened in any way by Google?
This may be true but it would be amazingly bone headed of them. Android is the best thing to happen to Java in the last 5 years, and the perception (at least) that people using Java have less to worry about as far as patents go is one of the few things really giving it a strong advantage over .NET. This is a remarkably effective way of destroying several of Java's strengths all in one go....
You're assuming they a) care about Java, and b) care about what's good for the smartphone market. If you flip those assumptions, it's not boneheaded at all. Just very, very slimy...
Sun went out of business making decisions that made Java popular, but not lucrative. Oracle has a reputation as a place where people would climb over their own mothers to get a sale; they won't make the same mistake. Moreover, Android is a threat to Oracle's Java revenue, not an asset. Mobile JVM licenses were one of the few things Sun made money on with Java. Android is destroying that business. I'm pretty sure that Oracle would prefer a slice of a smaller pie to no share in a larger pie.
"""""
"You said..."it is expected that GWT Designer will make an appearance via the GWT Blog in the coming months"
Actually, we are in the process of Googlizing all of our products; not just GWT Designer. They will all be made available again fairly soon and the announcement will be made on the GWT blog.
"""""
Maybe the only thing keeping Java relevant to consumers. It's also the de facto standard platform for just about all recent enterprise software projects.
I don't necessarily agree about relevance, but I do find it quite mind boggling that Oracle would strike out against what is clearly a massive growth opportunity for Java. If they want to destroy the Java brand the fastest way possible then definitely the right thing to do is start suing people who are using Java. The million dollar question is why would anybody in their right mind do this?
It might not hurt too much if Oracle just asks for money. I don't think it's the "free-as-in-beer" quality that is crucial to Android - it's the freedom for carriers to do what they want with it that matters.
They scariest possibility would be if Oracle actually tries to exert some other kind of influence - force their own software or restrictions or branding onto Android (ugh!) - that would really scupper the whole thing. I have no idea if that is possible or not (someone please tell me it is not).
The Android platform itself is free, but, as I understand it, important software written for the Android platform needs to be licensed by handset makers: the Google Maps app, access to the Android Market, etc.
While I enjoyed the humour in this statement, I think it's worth noting that Google's use of Java, particularly with GWT and GAE, is relevant. In fact, I think this form of web development is likely to supersede more traditional server based web frameworks.
Oracle CEO Larry Ellison are good friends, best man at your wedding kind of friends. Ellison was once on Apple's board of directors after Jobs returned to Apple. Oracle suing Google over Java patent infringements in Android sure plays well for Apple...
According to this thread on the Android mailing list, Oracle tried to settle privately with Google but Google refused. This may mean that Google has a strong case against those patents:
Looking over the front page, I wonder what the people thirty years ago would have made of some of the other headlines:
"Making GitHub More Open: Git-backed Wikis"
"Twitter Polling in the Cloud in 30s using PiCloud"
or, my favorite:
"Burning man defeats PayPal"
(I envision something like the Biblical story of Jesus driving money-changers out of a temple, but this time, Jesus lights himself on fire first. It's very intimidating.)
Intellectual property divides into 3 fields with 3 different sets of rules. Anything you learn about how copyrights, trademarks and patents work is more likely than not to be wrong about the other two.
You're thinking trademark law. This lawsuit is under patent law. It doesn't matter what Jonathan Schwartz publicly said.
It's not as strong as with trademark law, but patent law does have some notion of estoppel--- if you know someone is using a patent of yours, and publicly congratulate them for it, and then years later turn around and sue them, your job in pulling off the U-turn is at least a bit harder. Among other things, they can argue detrimental reliance on your public acquiescence to their usage.
344 comments
[ 2.8 ms ] story [ 299 ms ] thread... "and if you don't do everything I say, I'll blow up the moon! Ah-hahahahah!"
How do you not love this guy? Somebody get him a black cape.
Larry Ellison is a saint! ... and an asshole.
http://givingpledge.org/#larry_ellison
To whom it may concern,
Many years ago, I put virtually all of my assets into a trust with the intent of giving away at least 95% of my wealth to charitable causes. I have already given hundreds of millions of dollars to medical research and education, and I will give billions more over time. Until now, I have done this giving quietly – because I have long believed that charitable giving is a personal and private matter. So why am I going public now? Warren Buffett personally asked me to write this letter because he said I would be “setting an example” and “influencing others” to give. I hope he’s right.
Larry Ellison
On one hand, he is giving a lot, on the other, you can tell he couldn't care less about the pledge and the letter.
- http://www.google.org/about.html
(Or maybe he's just pissed that he had to blow his cover as a supervillain.)
Maybe he's irritated that Google has been getting all the 'evil' headlines lately and wanted to outdo them.
Android is basically, as far as I've read, a Linux kernel, with Google's own user space on top of that--their own equivalent of libc and their own windowing system. On top of that, they run their own JVM, which they wrote themselves and which is NOT even compatible with Oracle's at the byte-code level. Android apps are written in Java and compiled/JITed for Google's VM.
So, unless the Java compiler itself takes code from Oracle's compiler, it is hard to see what in their would contain copies of Oracle code.
This is about patent infringement, not copyright. Whether or not code was copied is irrelevant.
UPDATE: Sorry, maybe both are at stake. The author of this article seems sadly ignorant of the difference between patent and copyright, as he seems to use them interchangeable. So who knows....
so because the Android platform APIs also include the Java APIs Oracle thinks there is a case. I'm not aware of any precedents that would indicate the likelyhood of this succeeding, but its possible there could be a problem here.
Note that http://developer.android.com/reference/packages.html contains the java.* API's, and in the past Sun was pretty strict about companies not hosting that Javadoc itself publicly (eg, they stopped one site that was building interlinked Javadoc references).
This is why the W3C has a patent policy [1] to prevent contributed software and specifications from being covered by patents.
[1]: http://www.w3.org/Consortium/Patent-Policy-20040205/
If this still does not make any sense, realize that patents and copyrights, while both forms of IP, are completely different, legally. Also recall how open source GIF implementations were still covered by the Unisys patent.
Here's some more context:
http://blogs.gartner.com/brian_prentice/2009/08/06/google-op...
Patent owners can't just go around encouraging people to infringe, and then come back later and sue.
[1] I assume that when software covered by patents is released as open source, the patents are also implicitly granted as part of the license, because if they weren't no one would be able to use it for anything because they would be infringing on the patents.
The only situation this can possible make sense in is if Google has somehow violated the license, thereby revoking their permission to use the relevant patents and exposing them to litigation.
It doesn't do memory management nearly as well as the JVM, and it handles dynamic dispatch and one-off closure hacks (local classes) slowly. It won't easily accept generated bytecodes. It has mysterious performance headaches (mostly memory management related I think).
I'd prefer that Oracle go to heck with these bogus patents for the health of the industry but Google should have just cooperated from the start.
In other words, your issues may be caused by mobile development, not by Android development.
Also Sun removed the classpath exception when they put JavaME under the GPL. That means if you used the GPL'ed version of Java on a mobile device then it becomes viral - including to any application code. (That's why most GPL'ed Java programs use the classpath exception).
From Sun's point of view, this was a good idea because it allowed them to protect JavaME licence revenue. Google saw JavaME as outdated, though, so instead of licencing it they took the Apache licensed Harmony project (ie, a clean room, Apache licensed version of the Java class libraries) and build Android around it.
Dalvik limitations are very justified, and even if phones improve over time, Dalvik also evolves.
Also when going head to head with Apple and Microsoft on such a far-reaching platform, having full control over your platform is valuable.
http://www.youtube.com/watch?v=G-36noTCaiA
Essentially, Sun said "We will give away Java, Open Source, as we planned to do. Oh, not mobile, because Nokia uses it and it makes us lots of money. Of course, we all understand reimplementing Java ME would be far too much work for any one company to do. Feel free to license."
Google said "Eh, we'll just write our own JVM that runs on phones, thanks. That's how we roll over here."
Now there are lawsuits, because Sun tried hard to make sure you had to pay if you wanted Java on mobile devices.
Given that Oracle doesn't seem shy about going after a giant like Google makes me wonder what other software Sun owned the rights to that might be even remotely popular. If I were a company using a lot of old Sun IP in even moderately unique ways, I'd be a little concerned right now.
But my point still stands: makers of replacement engines for MySQL could be in violation of MySQL-related patents, which Oracle could then sue over.
Other database vendors (Percona et al., not IBM) don't have assets for Oracle to take, don't directly threaten their core business, and going after them would get Oracle in trouble with regulators.
Better to land a tuna than chase sardines around.
Sun/Oracle's Java implementation was released under the GPLv2, which doesn't include a patent license. I don't know if they included any patent license with the open source release. Even if they did, it doesn't help Google, because Android doesn't use the Sun/Oracle code, so it wouldn't benefit from any patent license that goes with it. Android is based on the Apache Harmony libraries on top of Google's own Dalvik VM. (Most of the Android code is Apache-licensed.) That code was all developed independent of Sun's Java and the implementation might infringe their patents, even though it doesn't use their code.
This is probably the biggest reason why companies, like Microsoft, even when they do open source, don't accept contributions. Just because someone contributes specific code, doesn't mean they have the legal right to do so.
Sun showed that Java could be a timebomb. And in the hands of Larry Ellison, I think Google is just the first victim. Oracle will be going through uses of Java with a fine-tooth comb. Get your duck in order now.
Plus, if you are an IT shop in the fortune 500, you company probably has closer ties with Oracle than Google.
// I am a little concerned with non-Java related VM's in case Oracle goes after them with these patents.
The claims are pretty serious, and Oracle is going straight for the jugular. It'll be interesting to see how it shakes out, but I've got to hope that Google will come out of this in good shape for the sake of Java. It's unfortunate that Oracle is interpreting Google's implementation of Dalvik and a Java-based system as a direct infringement upon their patents.
Android aside, it raises some fairly serious questions around Java's future development as a platform vis a vis the uncertainty recently resolved between Microsoft and the Mono project. While Microsoft extended their "Community Promise" to Mono implementors and users, Oracle seems to be taking the opposite approach to companies developing alternate JVMs and Java-based devices. It'll be interesting to see Oracle's stance toward other alternate JVMs such as IBM's.
If you're curious, the original complaint is here: http://www.scribd.com/doc/35811761/Oracle-s-complaint-agains...
The patents upon which Oracle claims infringement are:
- Protection domains to provide security in a computer system (6,125,447)
- Controlling Access to a Resource (6,192,476)
- Method and apparatus for pre-processing and packaging class files (5,966,702)
- System and method for dynamic preloading of classes through memory space cloning of a master runtime system process (7,426,720)
- Interpreting functions utilizing a hybrid of virtual and native machine instructions (6,910,205)
- Method and system for performing static initialization (6,061,520)
Are they serious? Unless I'm missing something this is a fantastic joke, JITs far predate Java.
In a computer system, a method for increasing the execution speed of virtual machine instructions, the method comprising:
- inputting virtual machine instructions for a function;
- compiling a portion of the function into at least one native machine instruction so that the function includes both virtual and native machine instruction; and
- overwriting a selected virtual machine instruction of the function with a new virtual machine instruction, the new virtual machine instruction specifying execution of at least one native machine instruction.
You think that sounds like an idea worthy of a patent? Probably depends if you're a programmer or a patent lawyer.
I'll leave you to judge the merits of the other 46 claims, the next of which are:
2. Claim 1 in a box
3. Claim 1 with a fox
A patent isn't an idea. It's the specific method for implementing an idea. If there is a way to get the same end result using a completely different method, the patent doesn't apply.
And the first few claims generally paint way over the lines. It's in the later claims that you talk about the unique stuff that you did.
So bottom line: Oracle may actually own all prior art via Sun (Self research was done at Sun).
Edit: Wow, -7 and dropping. I guess I should have included a sarcasm symbol. Spoiler: My point was that patents do get used, and this argument about them just being for defense is nonsense.
>> The American commanders in the field reported that the Czarist reign of terror was far more horrific and disturbing that the actions of the Reds. The American forces also discovered that the vast majority of Russians sympathized with the Bolsheviks and supported the revolution. In the end, the American troops were brought home without any fanfare, and the ordeal was considered one of the most ill-conceived interventions in American history up to that time.
From http://rationalrevolution.net/war/russian_revolution.htm
"How Google routed around Sun's IP-based licensing restrictions on Java ME": http://www.betaversion.org/~stefano/linotype/news/110/
It's apparently not a complete surprise, this guy in 2007 predicted that
The trick is that Google doesn’t claim that Android is a Java platform, although it can run some programs written with the Java language and against some derived version of the Java class library. Sun could prevent this if they had a patent on the standard class library, but they don’t and, even if they did, I strongly doubt it would be enforceable since Android doesn’t claim to be compatible (and in fact, could very well claim that their subset/superset is an innovation on the existing patent and challenge Sun’s position).
http://stadium.weblogsinc.com/engadget/files/oracle-google.p...
IBM could completely paralyze the entire computer industry with their portfolio. That they don't is a testament to how much money they earn in simply letting others do the "hard" PC stuff while they singularly engulf the big iron market.
IBM was the only company that I know of that actually outlasted the US government in antitrust litigation. The DoJ, after 15 YEARS of litigation, simply dropped the case due to lack of will and resources to continue. Oracle wouldn't dare try IBM in court.
http://www.google.com/finance?catid=66529330&sort=MARKET... Cap
I assume Oracle is angling for a settlement here. I can't imagine they want to make Android apps not be written in Java, they just want a piece.
This makes me think that cscotta's point on uncertainty is not so strong. It'll be certainly an unpopular measure among developers, but Oracle can say that the case against Google is similar to the one against Microsoft and use the usual "fragmentation" argument.
All these facts make the (contrary) popular reaction quite interesting from a psychological point of view. Image is everything, after all.
Microsoft's "Community Promise" does not cover the whole .NET stack - it covers only the ECMA standardized parts. It has "It's a trap" written all over it.
I would also think twice before relying on promises from a convicted monopoly abuser.
It has been already demonstrated they are willing to place profits above ethical and responsible (not to say lawful) behavior.
Can we start putting questions like these on 1st year bachelors exams, so we can finally prove that someone "reasonably skilled in the arts" can figure it out?
I'd love to see Google provide GWT support for Scala, but that's another issue :)
I think Oracle is being beyond stupid here. If anyone has the power to come up with a language and toolchain to make Java utterly irrelevant, its Google.
If MS was able to accomplish all of that, then imagine what Google could create if they decided to drop Java altogether ('Go' language might be the preview.) That would be a huge win for the software industry while a big (long term) loss for Oracle as Java further wans in popularity.
(Hmm....if Oracle can sue Google over the non-Java VM they created for Android couldn't they sue MS for their "JVM-like" CLR? This is another reason why their patent lawsuit is so ridiculous.)
No matter how you slice it, Google has the advantage in the long run while patent trolls like Oracle have the most to lose in the long term.
Mono still has the sharecropper problem to it, that I thought Java got rid of...
http://www.tbray.org/ongoing/When/200x/2003/07/12/WebsThePla...
http://twitter.com/timbray/status/21023407881
This lawsuit is not about google's use of the JVM since they are not, in fact, using the JVM. It is about the fact that the Dalvik VM allegedly infringes on some Oracle-owned patents. It's possible that the Mono VM infringes on the same patents too, so switching VM may not make the slightest difference.
Anyway, Google isn't using the JVM in Android - they use Dalvik.
"Ellison's best friend … Steve Jobs … did double duty as the wedding photographer [at Ellison's wedding]."
Also Ellison was on Apple's board for a few years after the second coming of Jobs.
Serious about openness? Skip the "patent and promise" dance and just release the damn thing BSD.
Oracle can sue for patents over any GPLv3 technology, and all GPLv3 says is that the company doing the suing can't distribute code under GPLv3.
But since they own the copyrights of Java, they can always change its license and leave the rest of the world in dust.
They would be violating the GPLv3 license under which they distributed the source. Changing the license only affects the next person acquiring the source. The people who acquired it under the GPLv3 license cannot have this retroactively revoked or relicensed. If Orcale sued those parties, they would be violating the terms of the license. In the least instance they shouldn't have been distributing the source unde GPLv3 so their claim for infringement would be moot.
For a start, Dalvik is not a JVM implementation at all, in fact it's quite a different beast. See, e.g.: http://en.wikipedia.org/wiki/Comparison_of_application_virtu... which lists Dalvik as a register machine rather than a stack machine: definitely not a trivial difference.
Google's toolchain converts from JVM bytecode to Dalvik bytecode, which is probably what Oracle are going after with #5,966,702 but the rest of the patents are much more general. If anything Oracle are turning VM implementation in general into a patent minefield, not Java alone.
Anyway you look at it, Oracle has enabled a lot of FUD to be thrown at Java, and if your observation is correct, andyone who's working on any sort of non-Oracle derived JVM (and there are a bunch) had just been handed a lot of legal uncertainty.
Side note: I don't need hearing this shortly after learning about the RightHaven atrocity factory.
Except Dalvik is not derived from the JVM.
Sure they use the language, but what, are you going to tell me that I can't make a compiler that translates JVM bytecode to something else?
Should projects like http://ikvm.net be illegal?
Oracle is destroying the biggest advantage Java has.
Dalvik very much isn't a JVM. While both are bytecode interpreters you need to translate Java bytecodes into Dalvik ones to use the former. I'll need to read more (just woke up) to see just what Oracle is objecting to.
Bytecode based systems are an old old old concept due to the severe lack of memory available in the bad old days, e.g. I personally know that as of the mid-late '70s the Lisp Machine's compiler went to a bytecode that the microcode would then interpret. As I recall Smalltalk did this and I know it wasn't a new concept. Heck, what about UCSD's Pascal system?
Don't know the history of JIT compilation, let alone various tricks that have recently been developed; Java is the second wildly successful bytecode system, I think, after UCSD's, which was done back when memory was a lot more precious.
And Dalvik optimized for among other things low memory demand, e.g. it is register based and Java bytecode is stack based.
Thanks for pointing this out.
This seems like a catastrophically stupid and short-sighted move on Oracle's part. The reason Java is as big as it is today is that it's been an open playing field for all comers. Start tossing the odd hand grenade into the party and the room is going to clear out fast. The timing could hardly be worse too - Scala and Clojure seem to be building some real momentum lately.
http://github.com/richhickey/clojure-clr/
Now porting your Clojure applications between VMs may or may not be a reasonable proposition depending on what kind of non-Clojure pure Java libraries you depend upon, but the fate of the Clojure language is thankfully not tied to the fate of the Java runtime.
I think Scala has a .NET port too, but I don't know if it's active.
http://flyingfrogblog.blogspot.com/2010/08/scala-is-foremost...
I think Sun suing Microsoft was a mistake too for the Java platform... the write once, run everywhere ideology made Java the native platform of the server... write once, run everywhere should be the default, but it should be easier and encouraged to escape...
Sun had to sue Microsoft, before they changed Java so much it was no longer platform agnostic (or it was way less agnostic).
I wonder if the MS rift caused more harm to Java than letting Microsoft change its implementation.
And no, the CLR is not totally different from the JVM.
Also, I admit I only read the first patent, but I believe it doesn't apply to Android simply because the Dalvik VM does not apply its security at the object level but the process level, thereby nuking the patent. As for mono, I doubt they would worry since they would simply point out that "class" and "object" have been used for determining security access since at least Windows NT. Or mono can simply turn off object level security and rely on the OS to do it. The whole list is replete with holes and workarounds.
I've looked at them, along with about half a dozen others.
> The JVM is entirely a class-focused JVM. The CLR is a general purpose VM. ... blah-blah-non-sequitur-blah ...
They are both VMs with similar overall strategies, similar technologies, and some distinct similarities. They're about as different as any two VMs are.
> Also, I admit I only read the first patent, but I believe it doesn't apply to Android simply because the Dalvik VM does not apply its security at the object level but the process level, thereby nuking the patent.
Unless they point out that the system handles processes as objects.
> As for mono, I doubt they would worry since they would simply point out that "class" and "object" have been used for determining security access since at least Windows NT. Or mono can simply turn off object level security and rely on the OS to do it. The whole list is replete with holes and workarounds.
You don't understand how patent trolling works, do you? The point is to make it so expensive and painful for the innovator to continue without giving the patent troll a big slice of the pie that the innovator capitulates and pays off the troll.
I suggest that these differences are what makes them different as applies to patents. Patents are usually either so broad as to have prior art, or so narrow as to not apply to even "similar" implementations.
6,192,476: Too broad. Applies to any OS since the 70's. 6,125,447: as above. 5,966,702: Too specific (.NET doesnt need to optimize data it creates properly in the first place) and too broad at the same time: it simply describes data normalization. 7,426,720: Unix forks. Either way, .NET does not do this. RE38,104: Not applicable at all. .NET is always fully JITed. 6,910,205: See above. 6,061,520: Specific to JVM implementation detail.
> You don't understand how patent trolling works, do you? The point is to make it so expensive and painful for the innovator to continue without giving the patent troll a big slice of the pie that the innovator capitulates and pays off the troll.
It is impossible to do anything today without infringing on somebody's bullshit patent. However, one can identify patents that can be demonstrated to be bullshit for a reasonable cost.
There is also an element of poker. If someone has a bullshit patent, but they have successfully used it, or think they can, then they risk losing that revenue if it is struck down as invalid. They do have something to lose, in addition to legal fees.
Trolls live on fear. Don't be afraid.
So back to these particular patents: They are bullshit. They are obviously bullshit. I would represent myself if hit with them. I think Google might be able to find a few people better than me to prove it.
http://tirania.org/blog/archive/2010/Aug-13.html
You are saying that Miguel de Icaza is not one of these Mono people, nor is he representative of them.
"On November 13, 2006, Sun released much of Java as open source software under the terms of the GNU General Public License (GPL). On May 8, 2007, Sun finished the process, making all of Java's core code available under free software/open-source distribution terms, aside from a small portion of code to which Sun did not hold the copyright."
If Sun willingly made the code GPL licensed, and Google isn't using anything outside the GPL code, even if some of the technologies were covered by patents I don't see Oracle having a case. Right now, this sounds very much like the SCO - Linux suit that dragged on forever and went nowhere.
I am really curious about how the law sees this.
And I would really wonder if they decide against Google. It looks almost like a trap of Sun/Oracle then, kind of "hey, here, use our code, it is open source now grin".
Or to put it different: Why did they use the GPL licence?
The Sun release has some weird field-of-use restrictions associated with it.
For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
However, it seems Sun can relicence the software under whatever they want, and the current versions of it wouldn't be under GPL anymore. I am not a lawyer, so I don't know exactly what this implies.
You mean Oracle, of course, and that seems to make a big difference.
In that case, wouldn't the exception only be extended to Google if their implementation of Java was not independent from Sun's implementation? Because Devrak was derived from Apache Harmony, it might not share any code with Oracle Java.
(I've heard about the Android Scripting Environment, but it sounds like that is not as fully supported as might be ideal).
So far Google has been able to get the best of both worlds by leveraging the vast Java tools ecosystem but then in the final step they convert the standard JVM bytecode to run on their own Dalvik VM which means they don't have to pay license fees for the standard Java runtime. IMO this is what is really annoying Oracle. (To be fair there are also good technical reasons why they created Dalvik.)
I can understand where Oracle is coming from legally, but business-wise I think this lawsuit is bound to backfire. Google has the resources to defend themselves and move away from Java in the long term, but in the meantime Oracle has created serious uncertainty about the openness of the Java platform which will scare technically innovative players away from Java that don't have the financial and legal resources that Google does. So Oracle turns Java into the new COBOL, a technically moribund backwater that is only kept alive for legacy purposes.
The JVM is GPL'd, you don't have to pay license fees to use.
There are other Apache licensed JVM's (http://harmony.apache.org/).
If this lawsuit drives people towards the Newspeak and V8 VM that would be a good thing.
http://www.google.com/search?q=οraclе
Your search - οraclе - did not match any documents.
Incidentally, these homoglyph attacks are pretty hard to catch. Even Vim (which normally chokes on 8+ bit characters in my setup) didn't seem to show anything different until I checked the hex codes.
http://en.wikipedia.org/wiki/Googlewhack
http://www.google.com/search?q=οrасlе </noindex>
now i see gibberish for everything i don't care about, including utf8 homoglyphs.
Off topic here though.
http://daringfireball.net/linked/2010/08/14/coincidence
http://www.infoq.com/news/2010/08/eclipse4-released
""""" "You said..."it is expected that GWT Designer will make an appearance via the GWT Blog in the coming months"
Actually, we are in the process of Googlizing all of our products; not just GWT Designer. They will all be made available again fairly soon and the announcement will be made on the GWT blog. """""
A slice of Android sales revenue... Perhaps as high as US$1 per handset would be nice.
They scariest possibility would be if Oracle actually tries to exert some other kind of influence - force their own software or restrictions or branding onto Android (ugh!) - that would really scupper the whole thing. I have no idea if that is possible or not (someone please tell me it is not).
Apple vs (Google vs (Facebook && Oracle))
http://groups.google.com/group/android-developers/browse_thr...
"Making GitHub More Open: Git-backed Wikis"
"Twitter Polling in the Cloud in 30s using PiCloud"
or, my favorite:
"Burning man defeats PayPal"
(I envision something like the Biblical story of Jesus driving money-changers out of a temple, but this time, Jesus lights himself on fire first. It's very intimidating.)
"Twitter Polling in the Cloud in 30s using PiCloud" wouldn't have made sense only 5 years ago.
People thirty years ago? Heck, I wonder what my in-laws would make of those headlines :)
http://beust.com/weblog/2010/08/12/oracle-is-suing-google-ov...
Good luck defending your trademark after the CEO declares it's not really interested in doing so.
You're thinking trademark law. This lawsuit is under patent law. It doesn't matter what Jonathan Schwartz publicly said.