Microsoft Ordered to Carry Java
An anonymous reader was the 17,232th person to submit that "Microsoft has been ordered to include Sun's Java runtime in Windows. Coverage from AP (via Yahoo), Reuters (via news.com), and, let's say, the BBC."
← Back to Stories (view on slashdot.org)
I think it was an "all or nothing" solution. MS wants to include a broken Java, SUN says no, they have to carry a real Java VM.
I think what the decision means is that if MS is going to include Java in it's OS's they have to include the OFFICIAL Java from SUN and not the broken one they released.
I could have read it wrong tho
Those posters who suggest that the courts getting involved might not be good have missed the point: MS is operating an (illegal) monopoly. 98% of the world's computer users are using their software. If MS don't like you, you get screwed, so the courts' intervention can only be a good thing. In a future world where we using all sorts of different OSes and relying on standards to interact then maybe court intervention might be problematic. But we aren't there and we aren't geoing to there for many, many, years to come.
Of course, in some people's eyes, Microsoft can do anything it wants because it is above the law and are therefore the corporate heros of a 'free society'. Under those circumstances, the only one who is 'free' is Microsoft and them alone.
"Only in their dreams can men truly be free 'twas always thus, and always thus will be."
--Tom Schulman
The Judge's opinion is available as a PDF obtained via the C|Net article.
Here's a clue.
1) Microsoft is a monopoly. This is legal as long as they don't abuse their position of power.
2) Turn back to the mid-90s. Netscape owns the browser market. In their attempt to crush Netscape, MS needs a competitive browser, i.e., one that supports Java. They sign a deal with Sun.
3) By the late 90's Netscape is toast. MS says, man this platform-neutral stuff is bad news, Let's pull out the old "embrace and extend" technique and get the drone developers using our Java "enhancements."
4) Sun says, "Hey, we define Java, and that's not Java anymore. Meet us in court."
5) Judge determines MS is using the fact they own the desktop to attempt to kill Java (not to mention the fact that they never released a VM beyond 1.1). This is an abuse of monopoly power. This being the third time or so that MS has been convicted, the judge actually does something about it.
Microsoft has been ordered by the court to ship Java with their OS(s) as a remedy for their past performance.
Remember: Microsoft contracted with Sun to ship untainted and current versions of Java with their OS products. Microsoft then corrupted their version of Java in order to make it no longer cross-platform compliant. Then they quit updating their version. The result was that many, who think that Microsoft keeps them up to date with the latest and best, came to regard Java as buggy, incompatible with other platforms, and out of date.
Sun sued Microsoft for breach of contract for developing the corrupt version and then stopping updates. Microsoft retaliated by pulling Java completely.
Sun is suing Microsoft to live by the terms of the contract. The court has ordered Microsoft to do so as the legal process continues.
The part you're missing is that MSFT agreed to provide Java in Windows in a contract between it and Sun. They're in court now because Sun says that MSFT's Java VM did not properly follow the standard as the contract said they would, and therefore violated the contract.
What the court decided is that while they hold this trial, it's clear that if MSFT's Java is violating the deal, every day this would be allowed to continue would just make the situation worse. So, for the time being MSFT must distribute a Java VM that nobody disputes is true to the standard, Sun's own VM.
In the end, this could end up being the final solution... but it's not because the government is inflicting Java on MSFT. It's because MSFT agreed to put in a true version of Java and then tried to break the agreement, and the government is now trying to make MSFT take its medicine.
You might also note that the previous poster didn't claim that Microsoft was required to carry anything, and the 'agreement' (really a court order) was that Microsoft couldn't include the latest and greatest incompatible bastardization of Java. Read the actual settlement text, not the 'summary' at Microsoft.com.
A lot of people have missed why Sun was harmed in the first place. You mention the shipping of the defunct and broken MS JVM, but miss the real past harm: MS' illegal actions against Netscape.
Netscape, the then-dominant browser, also installed a Java VM with every installation. Its this inclusion that led to the MSJV in the first place. When MS illegally forced Netscape out of the market, they also harmed Java. Evidence that this is more than just a side effect is that Sun Microsystems is specifically mentioned in the DoJ findings.
Several points can be made here. Sun "lost Java" (not really, but close) in the open market because Microsoft violated the rules of that market. The idea that monopolies are legal, but using them to extend to other markets is a pretty basic tenet of free market economics. That Java still exists despite this 'foul play' from MS is a testimony to its strength.
Next, you say that suing about this "didn't do Netscape any good". There's two important things that Sun has that Netscape didn't. First, an injunction that remedies the problem during litigation, and more importantly: a new product, based on the harmed one, that is also a strong competitor.
J2EE is competing with
All in all, I think its pretty reasonable. This is a new market, and we as consumers deserve a product created by competition free of monopolistic influences.
-Zipwow
I don't know which is more depressing, that 2/3 didn't care enough to vote, or that 1/2 of those that did are crazy.
No, it was Microsoft's bastardization of their Java VM that caused them to stop shipping the Java VM.
Microsoft's platform dependent extensions to their Java VM were against their contract with Sun, and when Microsoft was barred from spreading their bastardization, they said they wouldn't include ANY version of the Java VM and tried to claim it was all Sun's fault for upholding their contract to keep Java platform neutral. Apparently a lot of people bought the claim hook, line and sinker.
Microsoft's press releases sounded like Sun was barring them from shipping Java, when it was only Microsoft's bastardized version that was being barred!
Java is active code and active code has historically been subject to lots of security risks - including Java.
Compared to what??? I haven't seen such a clueless statement in a long time. Please go get yourself a book on Java's security model.
Two interesting details, the first being that I think the payment to Sun from MS was $20M, and the second that at that time, MS offered to exactly what Sun just got the injunction for: shipping Sun's JVM.
Sun didn't take it then because it had lots of nasty strings (I think it would've allowed MS to break it 'for security' or some other odiously broad clause).
However, that offer is one thing that the judge cites to refute one of MS' defenses against this injuction: that the Sun JVM would introduce security problems. The judge basically said that if MS really believed that, they wouldn't have made the offer in the other case.
-Zipwow
I don't know which is more depressing, that 2/3 didn't care enough to vote, or that 1/2 of those that did are crazy.
Actually, the articles state that MS should use a Sun compliant JVM and not Microsoft's old JVM. Sun is fighting to get their JVM into Windows which is the best way to go. If Sun was able to get into Microsoft's OS then that nine-figure payment would be made in profit and many developers would rejoice.
3) MS adds extensions for Windows only development, which are optional to developers depending on their target market (HINT: Apple has Cocoa extensions in Java......samething......they are optional)
This is inaccurate and very misleading. The MS JVM added keywords that were not part of Sun's Java, and which Visual J++ would use automatically, meaning that a developer might be writing what he thought was standard Java, when in fact non-standard, MS-only java would be produced. MS was ordered by a court to turn these off, making them an opt in, rather than an opt out. However, these keywords were still not part of the Java language as defined in the language spec. This leads to non-portable Java, and a Java different than the one Sun built and licenses.
Perhaps more important were the J/Direct extensions, which used special comments and the MS compiler to generate annotations the the class files, which the MS runtime used to link in native code, such as windows DLL's. THe problem is not that you could link in native, non-portable code, since standard JNI (Java Native Interface) provides a way for you to do this. THe problem was that the MS approach only worked with MS compilers and MS runtimes. Class files compiled in this manner would not work with Sun or IBM runtimes on Windows environments. Within the Java Virtual Machine specification, it is stated that the class annotations (which MS used) must not change the semantics of the class. In MS' JVM, the annotations would cause a certain behavior, while in the other JVM's, they would be ignored. Clearly, MS' use of the annotations violates the JVM specification.
MS had the option of taking an approach that obeyed the specifications. THere is at least one product that can analyze a DLL and produce the mapping code to make calls on that DLL, using standard Java mechanisms. With their billions in cash, surely they could have easily produced a product that used the same approach. Perhaps a clue came from evidence in the DOJ trial, in which a Microsoft engineer spoke of "blunting the cross-platform java market" by distributing a "polluted" java.
I know this is Redundant, but everyone is missing the underlying point here. Sun and Microsoft had an agreement to put the Java platform on Windows. Sun did NOT sue to "force" their competing technology onto the Windows platform. Indeed, they actually sued to "force" Microsoft to keep up it's end of the agreement, nothing more. It would be like me contracting with someone to create a software product, being paid, then delivering something that only meets 10% of the specs. I can't really argue that the rest is "my own version" of the product, because that wasn't the agreement. Likewise, Microsoft has effectively created something that isn't even Java, so it's in violation of the contract they agreed to with Sun.
I would agree that if the court were stepping in and saying something like "you must include Open Office on Windows" that would be wrong. However, in this case, there was an agreement that Microsoft didn't live up to, and all the court has decided is that "yes, they must honor the agreement they made with Sun".
Sun is suing MS in a civil case, saying that Microsoft used their monopoly(1) on desktop operating systems to illegally compete with Sun's Java
.NET. Now it wants to use it's monopoly position to make .NET "ubiquitous."
.NET and then to allow the two platforms to compete on merit.....which for some reason, Bill Gates seems to be terrified of doing (see "Breaking Windows" by David Bank.)
The way I read it is that the judge's findings of fact says that Microsoft's intention from the very beginning was to take control of Java by subverting one of it's key "inventions" - that of being cross-platform (write once run anywhere.) They intended to create a "polluted" version, and deceive developers about it's Microsoft-only nature.
Because it has been shown to be a fact that Microsoft is a monopolist these actions are illegal.
Next...because of Microsoft's actions WRT "polluted Java", Sun was placed in a position where it HAD to restrict Java upgrades to Microsoft because Microsoft was distributing JRE that was not cross-platform - as required by their agreement. The judge ruled that Sun can not be punished for Microsoft putting them in that position.
Lastly, the judge ruled that in the seven years it took to come to this point today, Microsoft has destabilized Java on the PC, while at the same time, creating a competing product -
The "must-carry" ruling indicates that the court recognizes the criminal intent of this strategy and intends to remedy the situation by forcing Microsoft to make the Java platform as ubiquitous as
I want to be alone with the sandwich
No... and wherever the courts say it stops.
When you are a monopoly, you no longer have total authority.
For instance, because utilities are monopolies, many areas have regulations that individuals can pipe their excess power into the grid and get paid the wholesale price for power...
Local telcos are forced to allow other DSL provides (or telephone service providers) to use their lines at wholesale costs.
Think of any other monopoly, and there are similar circumstances. Monopolies are allowed to exist only if they serve the public good... They are not allowed to use their monopolies to challenge the competion as any other company could.
Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
After reading the judges decision from the PDF helpfully linked elsewhere, I found what I was looking for - the judge does not just generically demand that any .Net implmentation must also ship with Java, but also that in particular IE must ship with the Java Plug-In and Windows Update must notify MS users of Java to make it availiable for install.
.Net (sorry for the buzzword bingo there), but that VM must pass tests from the JCP to insure the distrubited VM is valid (de-facto standard) java!!! (my own wording there). Repeat after me - the JCP defines what Java is, and sun does not control the JCP. Sorry for repeating that, but I thought it would be helpful as few seem to believe it and perhaps having a federal judge pointing it out to them will help. Responses arguing against this point will have to study the workings of the JCP and then provide specific examples of how sun "controls" the JCP or they will be ingored.
That is huge. If the Java plug-in really is everywhere, it might well help stamp out crappy java programs everywhere that are forced to run in the shadowland between IE's VM and all others. It means that with a modern Java VM everywhere, you really might be able to develop and distriibute a nice Java application for web distribution much easier. Corperate developers do not have to weigh the choice between a good UI and features with a lengthy plugin download vs. just making do with a very limited interface, either AWT or pure HTML/DHTML.
Although this has nothing to do with my main point, I really liked this quote from the judge:
If, as Microsoft asserts, the granting of preliminary relief is extraordinary, the short answer is that extraordinary circumstances require extraordinary remedies.
Another very interesting point the judge makes is that (and this is the exact wording from the descision):
"Sun has no control over the JCP"
All of you out there who keep claiming Sun controls Java ponder that. The injunction would have Sun provide MS a VM to ship along with
This is also a judge that knows what he is talking about, just reading the document he issued supporting the injunction provided a number of points that no poster here has managed to make in the course of 500+ comments, and also addressed a number of the arguments against the injunction that posters here have raised. After reading the PDF about 499 of the 500+ posts could probably be removed without any overall loss of content.
"There is more worth loving than we have strength to love." - Brian Jay Stanley