Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Java Programming

Java Thrown Back in Windows, For Now 446

darnellmc writes: "According to this News.com article, Microsoft has decided to include their JVM in the next Windows XP service pack. They are doing this in an attempt to avoid Sun's recent lawsuit against them for anti-trust violations. I wonder if the recent decision allowing the nine states' suit to continue had anything to do with this? Of course it did. MS plans not to have the JVM in future versions of Windows though."
This discussion has been archived. No new comments can be posted.

Java Thrown Back in Windows, For Now

Comments Filter:
  • Old java (Score:5, Informative)

    by discstickers ( 547062 ) <`moc.srekcitscsid' `ta' `sirhc'> on Tuesday June 18, 2002 @09:04PM (#3726109) Homepage
    Its a token gesture Java 1.1.3. Now they can say "See theres Java, yup its in Windows!" To bad that java is years old. Stale mb ;)
  • Plus, this is a perfect opportunity to break XP's compatibility with sun's JVM !! Anyone want to bet that sun will have to release an update to jdk 1.4 pretty soon after xp sp1?
  • by Wesley Felter ( 138342 ) <wesley@felter.org> on Tuesday June 18, 2002 @09:07PM (#3726127) Homepage
    This is an old 1.1 VM that won't run any modern Java code. Now people won't want to download Java VMs because they "already have Java", frustrating Java developers just as much.
  • Dept (Score:3, Funny)

    by KoopaTroopa ( 549540 ) on Tuesday June 18, 2002 @09:09PM (#3726139) Homepage
    ...from the refenestration dept.

    That cracks me up. Well done :)
  • by furiousgeorge ( 30912 ) on Tuesday June 18, 2002 @09:09PM (#3726141)
    I'm sure i'll get modded down, but whatever.

    If you've ever used XP things are pretty damn simple. Go to a site that uses java .... up pops a window saying "you need a java VM - wanna download one?" Say yes --- it's downloaded from MS and life goes on. Same thing with flash or a bazillion other plugins.

    Java was never 'blocked' or 'disabled'. They just didn't ship it on the CD's.

    Christ -- don't we have anything REALLY important to report on?
    • I didn't think you could download a current java VM from MS...isn't that what the courtcase settled? So 1.1.3 is the best MS can do...and your stuck unless that popup directs you to a sunsite (which it would, yes? why would it *ever* direct you to MS to get a java VM?)
      • You can't get a current JVM from Microsoft because Sun sued them and made them stop producing newer versions. Then Sun turned around and sued MS because MS wouldn't ship a JVM with XP.

        Either way, Sun wins - I hope I never have to do business with them. Write once, run anywhere sounds great, but I have yet to see a Java app that is worth my time.
      • by Chasuk ( 62477 )
        You can't download a current JVM from MS, but that is only important to Sun's PR lackey's, not in the real world.

        MS's own JVM works flawlessly on every web site I've ever visited which required Java. Joe Average Consumer doesn't care who wrote it or or even what it is, as long as it works.

        Joe Educated Consumer might care, but there aren't enough of that breed to ever make Sun an important player in the client-side language market.

        No flaming here, but I've never seen a client-side Java application that wasn't mediocre, anyway. I know that it has been relatively successful in the area of web services, but the public doesn't see that, so Sun's mindshare is particularly low, despite their recent move toward a more open Java. [infoworld.com]
        • MS's own JVM works flawlessly on every web site I've ever visited which required Java.

          Because:

          (A) Java developers, having signed the contract of "write once, run anywhere," do their development on Solaris, test their applets on a Mac, and then it magically works on Windows, because Windows has a properly working Java VM.

          (B) Everyone tests it on Windows and works around the bugs in MS's VM.

          I developed a couple of semi-nontrivial Java apps in my day, and getting them to work on MS's JVM was a colossal pain in the ass (Win98/IE5.5). Some classes (I think somewhere down in java.awt.color) were just missing. Taxing the garbage collector or the console would crash the OS. Parts of the AWT were broken as well; I remember a simple loop that would load 1000 10x10 transparent GIFs and then display them all in the applet's window at slightly different locations -- this would reliably hose the VM to the point that only about half the images would even get a chance to display. We got the thing done (and mostly working), but it was way late, and the experience was akin to walking on one broken leg. In the end, it "works flawlessly" at what it does -- because it has to work on Windows, and so we sucked it up and made it.
        • As mentioned in a post above this one, it works because programmers target the MS JVM.

          I'm personally working on an applet that CANNOT target that JVM for several reasons:

          1) MS' JVM has no support for PNG. The applet is using a multitude of images, and they're too large to be in GIF; it runs off a webserver with a total of 256 KB storage, and the images take up 258 KB as max compressed GIF.

          2) Making network-connections is a pain in the ass with MS' JVM, and due to time constraints, this was the main reason we dumped the MS JVM.

          3) Things that work in Suns JVM doesn't always work in MS' JVM - even when targeting the same version. Using selective applet loading, you can work around this, but not when you only have 256 KB to play around with.

          4) Tracking bugs in MS' JVM is also a pain, since it doesn't give you the line-number in stackTrace(). This is not a problem, when you're only working with small methods, but when you are working with complicated methods, it gets old really fast, to the point of litterally hurling a mouse through the office, and nearly incapacitating a PHB.

          5) It is possible to crash IE when using MS' JVM. I'm not entirely sure how or why, since the applet worked flawlessly when using Suns JVM and this was around the time we dumped MS' JVM. It wasn't a local problem - it happened on every single machine we tried it on.

          Yes, this is an applet that is to be sold to companies, and yes - we WILL be shipping it with the current JVMs for all platforms we can think of.
        • MS's own JVM works flawlessly on every web site I've ever visited which required Java. Joe Average Consumer doesn't care who wrote it or or even what it is, as long as it works.

          Which is exactly what the monopolist was seeking to achieve. By preventing a consistent, modern Java VM from being distributed to Joe Average Consumer, they've created a situation where we can only deploy obsolete Java apps to the client, thus preventing any real competition with the monopolists own rip-off clone of Java, 'C#' and '.net'.

          You think this is reasonable?

        • That's absolutely amazing that it works. Even relatively simple and common constructs from the Collections API would hose 1.1.1 - either the developers coding these sites are targeting the MS JVM, they're not particularly clueful developers, or the apps are exceedingly simple. Probably a little of each.
    • I don't know, I think it is kind of nice not having to download a JVM and being able to run [insert Pure Java(TM) application here] without any finangaling and just by inserting the (simple, easy) commands. Call it a service to the customers.

      But then, I'm a Mac user.
  • by SlashChick ( 544252 ) <erica@eriGINSBERGca.biz minus poet> on Tuesday June 18, 2002 @09:16PM (#3726172) Homepage Journal
    • Microsoft includes their crappy Java with IE.
    • Sun (rightfully) sues, saying it breaks compatibility with the real Java.
    • Microsoft removes Java from Windows. (Sun, what did you think was going to happen?)
    • Sun sues again, this time claiming that Microsoft is doing irreparable damage to their customers by forcing them to download a 5MB version of crappy Java. (Oh yes, and even though Sun isn't profitable, Sun insists on taking out full-page ads in major newspapers whining about how badly everyone has it now that they actually have to download Java.)
    • Microsoft, wanting to avoid more bad press, puts its crappy Java version back into Windows.

    Who is the winner here? It's certainly not developers. We're either going to have to code to an ancient, incompatible version of Java because it's the "default", or we're going to have to keep explaining to people the difference between the Sun JVM and the Microsoft JVM (and either including a JVM with our applications or forcing people to download yet another JVM, something our customers won't give a flying @%^$ about), or we're going to have to give up using Java completely.

    And consumers aren't the winners either, because the version of Java that ships won't run very many newer Java applications, so they are still going to have to download a JVM when they want to do the latest Java stuff.

    Sun certainly isn't the winner; they've spent far too much money on a battle that doesn't win them very much at all in terms of hard cash. (I mean, I don't see Macromedia complaining that Flash isn't built into Windows, and I don't see AOL wringing its arms about AIM and ICQ not being included with the OS -- why should Sun be any different?) Plus, Sun looks silly. They sued, they won, and they got what they wanted -- and then (as if they had never expected to win in the first place) they sued again to force Microsoft to do the opposite of what they had wanted Microsoft to do before.

    The only (marginal) winner that I can see is Microsoft. Microsoft has managed to completely destroy any hopes of Java being a great client-side language -- by including an incompatible version of Java, then not including it, and then including that same ancient crappy version again. Java has been relegated to web services, where it's just barely holding its own against ASP and PHP. (PHP is on 24% of web servers now, BTW... many more than Java servlets or ASP.)

    So, in the end, Sun spent a lot of money and lost; Microsoft spent a bit less money and lost; and we spent money on Windows and... well... we lost. Scott McNealy, I hope you're happy.
    • by bokmann ( 323771 ) on Tuesday June 18, 2002 @09:49PM (#3726338) Homepage
      I'm sure Mr. Gates is very happy that you are spreading his FUD for him, free of charge.

      Sun's FIRST lawsuit was NOT about Microsoft including Java... It was to force Microsoft to include Java without polluting it with windows-specific crap - Microsoft had signed an agreement saying they wouldn't do this then tried to get out of it.

      Sun won, and Microsoft said "Fine... we don't want to play with your toys anyway. We're going home". Basically saying to Sun, "You either let us pollute your language, or we don't want anything to do with it".

      To which Sun countered with "Look! Microsoft is using their market leverage to coerce us! Exactly what the anti-trust suit was about!".

      And Sun was right.

      Don't get me wrong... I have no great love for Sun either, but at least they aren't a convicted felon.

    • Hmm Java commoditizes the hardware and OS markets-- but SUN sells these things.... SUN is really not acting out of self interest here...

      Come to think of it, doesn't .NET do this too? Where is MS going to go when they succeed in commoditizing Windows?
    • Microsoft includes their crappy Java with IE.

      There is/was nothing crappy about MS's JVM. Yes, it violated Sun's licensing agreement, but it was both fast and functional.

      I am an addicted web surfer... I visit hundreds of sites weekly, and, of the sprinkling which require Java, MS's JVM always performs flawlessly.

      The average web surfer still doesn't understand that there is a difference between Java and Javascript, or that Sun, when it is capitalized and appearing in the same sentence as Java, is not referring to solar heated coffee. In other words, this decision is of zero importance to MS or Sun, because the great unwashed mass of their customers will never read past the headline, and won't understand what they are reading if they do.
      • Of course Microsoft's JVM performed flawlessly. Since Microsoft's JVM is the one that everyone has, it is the one that gets tested. Anyone writing Java applets is going to make sure that it runs on Microsoft's crufty JVM. Unfortunately for Java hackers Microsoft's JVM doesn't have any of the nifty new features that have been available in other JVMs for years.

        In other words, Microsoft is using their desktop monopoly (again) to control the rate of adoption of Java. If Microsoft didn't include their JVM then people might be convinced to get a real JVM, and people deploying JVMs could start using the new features.

        Not that I particularly care. I have no love for Java. It's just painful to see Sun make so many stupid political mistakes. Java is about to become irrelevant in the Windows world, so Windows developers aren't likely to use it, and the Free Software hackers already avoid Java like the plague. It's a shame.

    • by SteveX ( 5640 )
      The JVM that Microsoft included in Windows was only "incompatible" in that it extended the Java standard. It wasn't incompatible in the sense that some Java stuff wouldn't work on it - it was incompatible in that you could write code that would run on it that wouldn't run on any other VM.

      If Sun had let them keep shipping it, but stuck to its "Pure Java" type branding, then any "Pure Java" program would have run on Windows on the Microsoft VM.

      This would have been good for everyone, I think - sure you could write something for Microsoft's JVM that wouldn't run on Sun's JVM.. but I can still do that today if I really want to (tie my code to a particular VM or a particular set of native code).

      Instead we have the situation we have now, which is pretty bad for Java. Maybe Sun should supply Microsoft with a VM and give Microsoft a free license to ship it - that is if Sun really does want everyone to have access to Java on an "out of the box" Windows installation..

      (Making Microsoft pay for the right to ship Sun's JVM would be silly since Microsoft spent the time and money developing their own JVM to ship with Windows.. and it was a pretty decent one too).

      - Steve
      • Untrue. RMI, for one thing, was removed from the MS JVM. To add RMI back in required FTPing the classes from a Microsoft server that changed week to week.

        -jon


      • This would have been good for everyone, I think - sure you could write something for Microsoft's JVM that wouldn't run on Sun's JVM.. but I can still do that today if I really want to (tie my code to a particular VM or a particular set of native code).


        Have you forgotten how "good" it is for everyone that a non-standards-complient browser has a huge market share at the moment? (IE)

        Both developers and consumers are getting a raw deal because developers have to cater for quirks and some consumers are locked out of certain websites

        When people extend the standards with their own stuff which only they can use, its fine... so long as no one uses it - else people are tied to using the windows platform

        Its not a question of "wanting" to break suns JVM so you have to use microsofts, but if enough developers use the extensions, it becomes the norm and it excludes a lot of people and removes choice from others by forcing them to use microsofts JVM
    • I don't see Macromedia complaining that Flash isn't built into Windows

      Ahem, Flash does come with Windows [macromedia.com].
    • Java has been relegated to web services, where it's just barely holding its own against ASP and PHP.

      They are in very different territories though. PHP is still (mostly) a hack-a-thon language with little or no attention paid to long term maintainability, error handling or scaleability. Not that scaleability is a problem in a world with hardware load balancers, but I digress.

      Other than that I thoroughly agree with you. Client side Java sucked anyway.

      Dave

  • This is worse than when there was no JRE. They're supplying their old and broken 1.1 version. It'll quickly break modern Java apps, which will mean that end users will be put off using Java apps. Which may well be what Microsoft are after...

    Every Microsoft silver lining actually is a cloud.
  • We don't need some crappy out-dated version of Java on Windows. What would be great is for OEM's to start pre-installing Java 2 (including Java Web Start) before they ship the computers - like OSX!
    • I must ask, what is out there for Web Start?

      All I can find are the four "apps" that come with it.

      I would love to find more and if there is a repository I would love to add to it (I'm planning on taking a crappy course in Java and I would like doing Java GUI apps.)
  • Parrot, anyone? (Score:4, Interesting)

    by bcrowell ( 177657 ) on Tuesday June 18, 2002 @09:37PM (#3726277) Homepage
    What this whole mess says to me is that only an open-source VM is invulnerable to MS shenanigans. I'm really looking forward to Parrot as a way to bind Perl and Python together, and to do some of the things that Java was supposed to do.

    Java promised "write once, run anywhere," and gave us "write once, debug everywhere." It's also nice to see that the Parrot folks are concentrating on making Parrot small and fast.

    People are complaining a lot about how MS is only supporting a really old version of Java. Well, it's not just MS. For instance, Apple got way behind the curve with Java for a period of several years. The sheer size of Java made it difficult for people to implement, and then reimplement, and then re-reimplement, ... The nice thing about Parrot is that all the other bits besides the VM are nice and mature. (OK, Perl 6 is a prtty drastic rewrite, but Perl 6 is going to be able to run Perl 5 code, and there will also be an automatic translator.) Java has always been too much of a moving target for my taste.

    • "write once, run anywhere," and gave us "write once, debug everywhere."

      It's an old saying. Well-written java application like JEdit [jedit.org] and Netbeans have the degree of portability Java should have. You said Java is a moving target of your taste, while you want us to pardon the chaos from Perl 5 to Perl 6 just because you like Perl? :)

      Nowaday we can still hear the echo of screaming of my colleagues when they ran Perl 5 codes on Perl 6. :)
      • Nowaday we can still hear the echo of screaming of my colleagues when they ran Perl 5 codes on Perl 6. :)

        Since to my knowledge they haven't even released a development version of Perl 6 yet. It's really no wonder that it didn't work.

        Perl 4 on Perl 5 works rather well BTW.
  • If M$ hadn't been greedy and tried to "embrace and extend" Java in violation of its license from Sun, then it wouldn't have been sued by Sun and wouldn't have LOST that lawsuit. THAT is the reason why they are shipping an old version of the JVM.
  • MS plans not to have the JVM in future versions of Windows though

    This will make Sun more focusing on backend Java, an area where Microsoft has lost a lot of grounds.

    If they'd really want to hurt Sun, they could just make a version of JVM which is hardly up-to-date and sometime incompatible with Sun's, like they did before. Come to think of it, this plan is doing good to the industry!
  • Hmm.... (Score:4, Funny)

    by smoondog ( 85133 ) on Tuesday June 18, 2002 @09:55PM (#3726357)
    In this article [sfgate.com] on SFGate, the MS spokesman said today that they won't support Java after 2004, and here is what he had to say:

    "The decision to remove Microsoft's Java implementation was made because of Sun's strategy of using the legal system to compete with Microsoft," [Microsoft spokesman Jim Cullinan]

    I guess M$ really does like illegal competition....

    -Sean
  • by mgkimsal2 ( 200677 ) on Tuesday June 18, 2002 @09:59PM (#3726378) Homepage
    to have every AOL CD on the planet contain then-current JVMs which get installed with AOL. Sun could have AOL do incremental upgrades while people are chatting with AIM - they'd probably not notice a few K here and there being chewed up to bring new JVM upgrades. Everyone would have latest JVM. Java advocates would have *nothing* to complain about - if people didn't run Java apps it would be because they suck, not because of some evil ploy to keep Java out of the hands of people. MS manages to get people to upgrade whole operating systems - and they make it relatively painless. Sun can't seem to get a 20meg binary in people's hands, nor can they seem to make an installer system so I don't have to mess with command line crap to run a Java application. WebStart is half-assed, but it's a step in the right direction. Why don't they associate ".class" files with the java binary when it gets installed? This would make it so much easier to distribute apps - here, put this disc in and click 'myapp.class'. Nope - nothing's that simple with Sun, but they BITCH to high heaven about how bad MS is treating them. If they took half the money they spend on bitching and lawsuits and channeled it into getting Java into people's hands, making worthwhile *consumer* apps in Java, the Java mindshare would go through the roof.

    Let's see:

    Java was meant for TVs and coffee makers.
    Whoops, no, Java will replace the OS on clients.
    Whoops, no, sorry, "java applets suck" and all us Java advocates *really* meant that Java was really meant to run on the server all along.

    Which 'whoops!' is going to come next? When Sun manages to lose whatever foothold they have in the server arena, we'll be hearing "yeah, well, servers suck - Java will *really* kill everyone in PDAs".

    • You might want to reconsider that proposed alliance of yours since AOL has been hemorrhaging cash lately [washtimes.com]-- To the tune of $45,000,000,000 dollars. Just a thought.

      It's probably the most evil, legal thing Microsoft can do is turn 3rd party products into native support. It's their ace in the hole, making their clone product easier to get to than the competitions. Winamp is probably the most noteworthy exception I can think of at the moment cuz it beats the pants off WMP time and time again...
      • Why would cutting a deal with AOL cause Sun to lose money? If Sun paid AOL money to distribute Java with every AOL disk and update every AOL member's JVM, AOL could actually make a bit of money from that. I'm completely mystified as to why suggesting Sun should get off their ass and make a real effort to get Java into end user's hands should *not* be done because AOL/TW lose money.
        • "Why would cutting a deal with AOL cause Sun to lose money?"

          Actually, I was suggesting that Sun might want to do business with somebody more finacially stable than AOL. $45b is a damn big hole that a company can't simply overlook when looking for business partners.
        • If AOL ever switch to using their own Netscape instead of Microsoft's IE, the problem will be solved for their users. Netscape ships with Sun's JVM by default.

          Just one more reason why AOL should make the switch !

    • by j3110 ( 193209 )
      WebStart was designed so that shared libraries wouldn't need to be redownloaded, programs automatically install, and programs are up to date. If you want a program an your computer that will run when you double click it, take a look at the executable jar format. It's been around for years, and .jar's are associated with javaw -jar (I search down the registry entries to add -client to make my programs start almost instantly). Linux has had this functionality for a long time, and there are a bazillion how-to's.

      Correctly written programs in java are almost impossible to distinguish from their counterparts. Take a look at eclipse or open/star office.

      Java is prospering in cellphones, pda's, desktop apps, as well as the server. Cellphones and pda's because no two use the same hardware, but it costs more money to rewrite the apps than to just run them. No one knows about the desktop apps they have that were written with java (Limewire gnutella client for one). The main reason java hasn't taken off before is because it had that stigma of being slow. It is less slower than C than C is slower than assembler. That's little to pay for not having to port apps and not having to rewrite code over and over vs reuse of code that is given in the API and your own object oriented code.

      I think it's pretty obvious why SUN really wants this lawsuit. MS is going to bundle .Net with Windows and that will be another plus for companies debating which to use. It's the same case as Netscape vs Microsoft, and they'll win if MS doesn't include Java. They only included their own insecure and buggy v1.1.4. I wished they would remove it and force people to get a real jvm.

      Just don't go bitching about SUN when the real problem seems to be the programs written in java that you've got. If anyone wants, I'll email them a 10K jar file that will run when you double click it. If you want to create your own, create a text file with Main-Class: a.class(be sure you press enter after the line). type jar -cfm my.jar file_with_main_class_in_it a.class. That's all it takes. Hell, you can include all your libraries in that one file and all will be fine. In fact, I can give you one jar file that you can copy into the deploy directory of jboss, and it will deploy both the website and the ejbs. Then you can take that same file and double click it to run the client side app. Java supports it just fine, but all the apps you've seen are appearantly written by a crackpot that thinks he knows java after compiling his hello world program.

      BTW, it's only a 9.3 meg file that you can get from java.sun.com just click the j2se button on the right and get the jre 1.4.0_01 :) Compare that to 20M .Net upgrade.

      If you want a faster VM, try these free VM's :
      http://jrockit.com (email verification, but free)
      http://www-106.ibm.com/developerworks/java/ (but you have to register... click tools and products on the left side and go to IBM Developer Kit)

      There are already talks about java running multiple programs in one VM. There are a few programs out there that do it for you, but they aren't there yet. Once this is in place java programs will start instantly after the first one. The reason why java appears to be slow to people is that it takes longer to start than other programs because of the git and vm load. The -client setting skips jit on startup and there is a JSR proposal on it's way for keeping the VM live. Java has come a long way and has had years of testing. It's not going to leave the servers any time soon! Especially now that we have JBoss 3.0 stable with EJB 2.0 support.

      Want to see a java app done right? Try limewire.com :)
    • Java was meant for TVs and coffee makers.

      And, hey, what do you know. It's in TVs and coffee makers. And phones. And Lego [sourceforge.net], for God's sake. Your problem is?.

      Whoops, no, Java will replace the OS on clients.

      And hey, what do you know, it did [savaje.com]

      Whoops, no, sorry, "java applets suck" and all us Java advocates *really* meant that Java was really meant to run on the server all along.

      Yup, it works server side as well. It always did. Nothings changed. Your problem is?

  • by anthony_dipierro ( 543308 ) on Tuesday June 18, 2002 @10:15PM (#3726475) Journal
    don't buy it.
  • by spongman ( 182339 ) on Tuesday June 18, 2002 @10:28PM (#3726540)
    I imagine the main reason they're including the JVM is because they'll also be including the .NET runtime in SP1. They lawyers probably told them that it wouldn't look so bad if they were to also bundle a version of a competitor's runtime in with the upgrade. When people turn round and say 'hey you're bundling .NET, too' they can shrug it off because they're uncluding Java support as well.
  • One of the issues involved in the anti-trust finding of fact in the MSFT case was their consistent announcement of vaporware just before a competitor was going to release some piece of keen new kit.
    That's anti-competitive (unless it's not vaporware and you do have a product release immenent).
    In this case, MSFT is pre-warning corporate America that Windows may be Java inhospitable in future versions (blocking Java apps "for security reasons").
    Corporate America may be cowed, as they were by vaporware announcements, into believing MSFTs real or not so real version of the future.
    MSFT doesn't want to totally remove Java now because they know a lot of their customers would be pissed (IT departments installing VMs en masse).

    This way, MSFT preps the cow before it hits it over the head in 2004.

  • by rice_burners_suck ( 243660 ) on Tuesday June 18, 2002 @11:04PM (#3726718)

    Honestly, who cares?!?! Now that FreeBSD has Java, who needs Windows anymore? In my opinion, the operating systems of the future are the free UNIX ones. Linux is supported by a great many companies. The BSDs form a good group of friendly competition. There are a whole bunch of fringe operating systems out there. Sooner or later, already the laughing stock of the industry, Microsoft is just going to lose the market, regardless of whether the government does anything to screw them over. Microsoft has abused its customers time and again, promising change and delivering crap each time. Think a memo about reliability is going to change anything? It'll take Microsoft years to solve the problems in their software, because it contains so much code, and even more so because it's a moving target: Microsoft can't afford to simply stop development and concentrate on reliability. They have to implement new features and stay on top of the constantly changing market.

    Although Microsoft does have a shitload of money, I believe they made a fundamental mistake, and their high rate of success is only going to make them fall much harder when the time comes. That mistake was simply trying to accomplish too much. Regardless of their size and resources, they simply can't manufacture the rigorous quality that's becoming ever more important in our world. Their software is defective to the core, and it shows.

    What Microsoft tried to do was become the empire. Like Rome or something. Rome took over about a quarter of the world, probably in hopes of gaining complete control over everything. Furthermore, the rich people donated a lot of money to the empire for various things. Everyone who donated wanted their name to go down in history, so they donated money to build extravagant things like colosseums and whatnot. Nobody wanted to support the maintainence of roads or other boring stuff. As a result of this negligence and many "management" mistakes, the empire declined until it fell apart completely. Microsoft tried the same thing: They either bought out or put out of business just about every profitable software company out there, in hopes of gaining complete control over the software industry. Furthermore, instead of concentrating on reliability, they concentrated on extravagant things like features nobody uses and talking paperclips. This practice has resulted in millions upon millions of lines of code, and probably 3000% duplication of effort, of which probably a good one fourth is defective, and this is hidden by hasty workarounds and kludges in order to meet shipping schedules.

    I believe Microsoft would have been much better off if they didn't produce any software at all! Instead, they would be a software publisher, a packaging and marketing company of sorts. Microsoft would form alliances with companies in the markets they wished to enter. To begin with, they would offer a shitload of money to these companies, up-front, as an investment. The companies would produce the software, which must meet Microsoft's would-be rigorous software testing and auditing requirements. No known bugs would be released, and Microsoft would throw whatever was required into ironing out all but the most obscure and unknown bugs. For the release, Microsoft would print fancy documentation, put the software in fancy boxes, and spend a shitload on marketing. (The software would be sold as, for example, Microsoft C++, Presented by Borland International, or something like that, in much the same way as some science fiction books are sold as Isaac Asimov Presents whatever by whomever.) Then, Microsoft and the software producer would equally split the profits and share a few truckloads of Negra Modelo while they're at it. Everyone wins.

    As time passed, and the Microsoft name was found on more and more products, companies would run to Microsoft, desperately trying to get Microsoft's name on their products. Instead of Microsoft blackmailing companies to give in, "Sell out to us or we'll crush you," everyone would run to Microsoft, in an effort to make Microsoft ditch one product for another. (Of course, the vast superiority of a product would have to be demonstrated in order for Microsoft to make such a move.) To make a long story short, there would be no anti-trust trial and software would be extremely reliable.

    But then reality sets in, and all the free software out there has a giant advantage over Microsoft. That advantage is simply time. Linux, for example, had about 7 or 8 good years to simply develop without market pressure or competition. That allowed a good, solid foundation to be built and a lot of experience to be gained. Regardless of their resources, Microsoft did not have that kind of time to research and develop Windows, because the reality of the market forced them to continually make releases and add features. So I go back to what I said at the beginning of this unnecessarily long post, and that is that free software is going to replace commercial software, at least in the operating systems market.

    • Although Microsoft does have a shitload of money, I believe they made a fundamental mistake, and their high rate of success is only going to make them fall much harder when the time comes. That mistake was simply trying to accomplish too much. Regardless of their size and resources, they simply can't manufacture the rigorous quality that's becoming ever more important in our world. Their software is defective to the core, and it shows ... I believe Microsoft would have been much better off if they didn't produce any software at all! Instead, they would be a software publisher, a packaging and marketing company of sorts.

      i'm sorry, but this is ridiculous, and i'm an avid linux fan.
      we're talking about one of the most successful companies of all time. had they waited until their products were very reliable (something *not* demanded by the marketplace at the time) instead of building the empire, they wouldn't have $40b in the bank and $1b/mo in profits.
      and as for being a software publisher, well, if i were microsoft, you'd have to drag me kicking and screaming away from a model that generates $1b/mo. reliability is a factor for them now that they want to invade upmarket into the server/enterprise arenas, but they now appreciate this at a deep level (bill gates' memo). with $1b/mo, they can eventually buy reliability. hey, they can hire 100k more developers whose sole job is to audit their codebase for security problems, or they can rewrite windows from scratch (again), and buy a small country to boot.
      i love linux. my startup uses linux exclusively. i've put people through a little bit of hell getting them to use openoffice and mozilla, with the occasional incompatibilities that arise and the confusion of a novel interface, because i neither enjoy nor understand how to administer windows boxes. but i attribute most of the defects in windows to the lack of sophistication among consumers (much like i blame bad politicians on the electorate). for microsoft the company, i have only grudging respect, mixed with a little fear.
      • we're talking about one of the most successful companies of all time. had they waited until their products were very reliable (something *not* demanded by the marketplace at the time) instead of building the empire, they wouldn't have $40b in the bank and $1b/mo in profits.

        Well yeah, sort of. The market didn't really realise that computers could be reliable though. You know, I've met people who think that when a computer crashes it's their own fault! I was thinking about this the other day after reading that article about software reliability, and I think basically the poor quality of todays software in terms of crashiness etc is largely Microsofts doing (i said largely, not completely).

        So the IBM PC is released, and along comes Windows. Windows crashes 3 times a day, but they have a monopoly, it's all people ever know. How should they know that computers aren't inherantly unreliable? Nobody tells them that, apart from the occasional lone geek. Instead, people just roll their eyes and say "Computers! What can you do?".

        It wasn't like that in the 70s. If your mainframe app crashed, the owner would be on the phone giving you hell. These days, people just accept it as normal, and so developers don't bother with long testing cycles, cos they know that their customers expect unreliability.

        Take Apache and KDE. Apache was left to accumulate bugfixes for months, even years after v2 was virtually finished. I know it was running apache.org for a long time before it went gold. Dirk Mueller would have been crucified if he'd said "well we've got kde 3 here, but I want to leave it for a year to accumulate bug fixes so it doesn't crash".

    • Now that FreeBSD has Java

      Ummm, it doesn't. Tried sticking Java on a FreeBSD box recently?

      Dave
    • You're forgetting that the Roman empire, in one form or another, lasted about 1100 years.

    • Now that FreeBSD has Java, who needs Windows anymore?
      FreeBSD also has a .NET CLR! w00t! FreeBSD forevah!
  • Is this going to be one of those Installs from Hell, where everything you buy from Microsoft forcibly installs a new IE, thereby deleting a useful Java engine and replacing it with Microsoft's old 1.1 engine?
  • With the ever growing popularity of Yahoo Games [yahoo.com] I've seen a lot of non-technical people with pretty up to date JRE's, 1.3+. It seems people are willing to take the time to download JRE's if there is something worth the wait. I still like the idea mentioned here of a partnership with AOL. If AOL install CD's put the JRE on by default, Sun could bypass M$ all together.
  • So... wait... Microsoft gets in trouble for bundling IE, but they get yelled at for not bundling Java? WTF?
  • For Microsoft they can go down the road of a developed cross-platform VM. Apple seems to love it, linux loves it - so do you do what everyone else is doing or squash it.

    Of course you've got .net in your pocket - passport and so much more. What do you do? Microsoft putting a little backing behind Java could jump start their own cross platform answer because getting users excited about it in the first place.

    Hey, look how cool Windows ran Java! We can make you something even better - join the revolution with Windows<Longhorn>.


    But I like Java, it has come a long way since I first saw a clock on a web page! Fully developed applications, it has become part of the system on all good desktops.

    Right now, you can't be without Java. Maybe Microsoft doesn't have to bend for Sun but it sure would good if they acted like they were playing nice. Then they can try to come out with their "Java Killer", until then I'm happy.

    Of course more Java development would help keep it in place.
  • I just don't understand this entire JVM issue. The argument seems to go something like this:

    1 - Microsoft didn't include a JVM in Windows.

    2 - Getting a JVM is confusing and not ReallyEasy(tm) for grandma

    3 - Microsoft had damn well better put a JVM in Windows!

    OK now...let's see what happens when we abstractify this argument.

    1 - Company A won't include competing company B's part in its machine

    2 - Putting Company B's part in isn't easy!

    3 - Company A should help its competition by including said part.

    Seems kinda silly doesn't it? Now I am in no way saying MS is sparklin' clean, or that they haven't participated in intensely overbearing and monopolistic practices. They're no angel at all. But this SPECIFIC issue seems really silly to me. Do we honestly expect a company to willingly compete against itself? One might ask the philosophical question of: Seeing the necessary end-result of capitalism and being so displeased with it, how can we at the same time so enthusiastically support the system?
    • You don't get it.

      Sun's original lawsuit was not about the non-inclusion of the JRE in Windows. It was about Microsoft's "extension" of Java in their VM. Microsoft made their VM with Windows/Microsoft-specific "enhancements", and when programmers use these routines, they become broken on other platforms.

      Sun had every right to say "Hey, you're breaking our language. Stop that crap right now, and do it the way we tell you."

      When Microsoft first wanted to ship their VM, they told Sun "Sure sure, whatever you say." when Sun told them not to "extend" Java with their own bullshit. Remember Microsoft's track record with "Embrace and Extend"? Sun wanted to avoid that.

      So Microsoft went ahead and created their modifications anyway, and Sun said "Okay. Stop. No more. We TOLD you not to pull that shit, and you did it anyway." Hence, the original lawsuit. Sun wins, and Microsoft says "Fuck you then.", and totally removes the VM.

      THIS time, Sun is saying "Hey! Monopoly Abuse!", so Microsoft throws in this old, broken, shitty, outdated VM in a service pack so they can say "There, happy?"
  • I develop Java software in my spare time.
    When I started programming in Java a couple of years ago,
    I thought that maybe I could make applications and applets that people would actually use.

    Granted that my crappy applet isn't the best one around, but when you see that your site got 30000 hits, and only 5000 played your game, you start thinking that maybe this isn't all your fault.

    I don't know how many times I've explained to people how they go about to download the newest JRE.

    Today, I would say that there are extremely few shareware/freeware utility applications written in Java especially in light of it's wide use in the industry, and the main reason for this is that they basically require a Java programmer to install them.

    No JVM is better than a crappy old one, because then people will have to download the newest JRE the first time they come across an applet; this way, maybe we Java programmers can start utilizing the 1.2+ API instead of restricting ourselves to the 1.1 API for compatibility (which is really insane, because the 1.2 has been around since 1998 and is ten times better).

    Whatever the cause, the Java language has definitely suffered from the lack of standardized and widespread VM software.
  • Some corrections (Score:4, Informative)

    by Rogerborg ( 306625 ) on Wednesday June 19, 2002 @06:21AM (#3727822) Homepage

    Microsoft does not provide a "JVM". They provide the Microsoft Virtual Machine or Microsoft VM. This may or may not be compatible with any given version of valid Java object code: Microsoft doesn't make that claim any more.

    Further, Microsoft VM object code compiled with Microsoft J++ is definitely not guaranteed to work with any version of the Sun JVM. Further further, Microsoft VM object code compiled for any given version of the Microsoft VM is not guaranteed to - and sometimes does not - work with newer versions of the Microsoft VM.

    Let me give you an example of what this means in practice. My employer uses the web based Rational ClearQuest for bug tracking. It used java-like applets, and works with all versions of Microsoft IE on 9x/NT/2K/XP platforms using the Microsoft VM that we've tried it with, but with no versions of the Sun JVM in IE, or indeed with any browser other than IE.

    It gets worse. Our actual product uses java-like applets, built using Microsoft J++. They work with IE 5.5 under Windows 9x/NT/2K using the supplied VM. And nothing else, which exactly fulfills the specification given to the developers. Our tools don't work with any other browser, nor with the Sun JVM, nor (and this is where it gets silly) nor with XP and IE 6 using the latest downloaded Microsoft VM. Yes, our code is "write once, run once" in the worst sense. By tying ourselves to the Microsoft platform, Microsoft browsers and Microsoft VM, we've even managed to build in obsolescence and ensure non-forwards compatibility on our chosen platform.

    The scary part for me isn't that the java-like "experts" in my company don't care, but that so many of them don't even understand what I'm talking about. As far as they're concerned, IE running java-like applets using the Microsoft VM on Windows is Java. They don't even seem to know about other platforms or VM's or appletviewers or applications, or that they're creating java-like object code rather than correct Java.

    As a hobbyist Java programmer (using the Sun JVM on multiple platforms) this both pisses me off, and makes me very sad indeed. I greatly fear that Microsoft has succeeded in assimilating and killing Java. I worry that Java has already been dealt the fatal blow, but it's still staggering on under its own momentum, shedding limbs and slowly dissolving. When it finally expires, the beast that will erupt from its tattered corpse won't even be J++, but C#

    • Re:Some corrections (Score:4, Informative)

      by Glock27 ( 446276 ) on Wednesday June 19, 2002 @10:53AM (#3729117)
      As a hobbyist Java programmer (using the Sun JVM on multiple platforms) this both pisses me off, and makes me very sad indeed. I greatly fear that Microsoft has succeeded in assimilating and killing Java. I worry that Java has already been dealt the fatal blow, but it's still staggering on under its own momentum, shedding limbs and slowly dissolving. When it finally expires, the beast that will erupt from its tattered corpse won't even be J++, but C#

      Very alarmist scenario, but quite overblown.

      Java is doing very well indeed in several areas (particularly server-side and cell phone). Apple has a full-blown implementation that is quite good, and is pushing Java as one of it's primary development languages. The VMs just keep getting better and better, and I'm sure millions of copies of Windows and Linux have a modern JVM installed.

      I do think AOL/Netscape will push modern JVMs onto lots of desktop machines.

      Finally, it is up to software developers to help their customers use the best technology. Evaluate Java objectively, and you'll use it because it's the best thing out there for lots of projects. Yes, its that good. :-)

      C# won't really be a competitor until there are great C# environments for MacOS, Linux, Solaris etc. I'm certainly not holding my breath... ;-)

  • For the next year and a half, we are going to include (the JVM) in Windows XP. Then we'll make the changes to make sure that moving forward, we don't put Windows or our customers at risk

    What strikes me as interesting is that Cullinan implicitly refers to Java as a "risk," when the software projects he manages have placed far more computers at risk of data loss, hacking, virus threats, etc... than Java ever has. Does Jim Cullinan actually use Windows? How can he be so clueless as to imply that Java places customers at risk when his own software has cost companies billions of dollars in downtime?

    Oh, wait, I get it. Microsoft's Virtual Machine places customers at risk. No wonder he's going to stop shipping it in the future!

  • Monopolist Microsoft have again decided to illustrate their unbridled power (even before finishing closing arguments in their antitrust case) by declaring that they will remove support for Java on future versions of the Windows OS.

    Why, you ask? "The decision to remove Microsoft's Java implementation was made because of Sun's strategy of using the legal system to compete with Microsoft," Microsoft spokesman Jim Cullinan said in a statement. Cullinan said the company will temporarily support Java "to minimize any potential disruption among our customers."

    But is Microsoft admitting that they are punitively trying to harm Java and Sun? No, of course not. Microsoft claims that the settlement they signed when they were found to have created Java tools to intentionally fool programmers into writing incompatible code forces them to drop Java support.

    How, you ask? "The settlement agreement between the companies prevents Microsoft from making any changes -- including any security fixes -- to our Java implementation after January 1, 2004," Cullinan said. "We will not put our customers or Windows at risk so you can anticipate that there will be no Java in Windows from that point forward."

    One of the antitrust penalties proposed by the states would force Microsoft to carry support for Java. Now why do you suppose they would have suggested that?

    Read all about it here [nytimes.com] (free registration required).

Thus spake the master programmer: "After three days without programming, life becomes meaningless." -- Geoffrey James, "The Tao of Programming"

Working...