Slashdot Mirror


"MS Killed Java" (on the Client) JL Founder

jgeelan writes "In a commentary titled "Microsoft Killed Java" the founder of JavaLobby, Rick Ross, revisits the 'death' of Java on the client. "Five years ago, almost to the day," Ross declares, "Microsoft shipped IE4 with a JVM that was intentionally engineered to provide leverage to corrupt and pollute Java compatibility standards." According to an Associated Press report, Microsoft Corp has until only October 4 to respond to Sun Microsystems' request for a federal court injunction requiring Microsoft to integrate Java into Windows."

18 of 641 comments (clear)

  1. I made a new language by Henry+V+.009 · · Score: 4, Funny

    Everyone, I've made a new platform-independant language and virtual machine. It's called OJ. Microsoft won't put it in Windows. This is killing my business model. Where do I sue to force them to put OJ in Windows?

    1. Re:I made a new language by Anonymous Coward · · Score: 5, Funny

      What's the web site for OJ? "http:////////" ?

  2. Get the facts straight.... by Lxy · · Score: 5, Insightful

    Sun didn't help. For years they complained that Microsoft was implementing Java without proper licensing, and wiping the courtroom floor with MS. Then MS raised their middle finger at Sun and told them where to go today, and removed Java completely. Then Sun let them use the broken client from several years ago in IE5.5 SP2 and IE6.0 as some silly settlement. Now, Sun is whining that MS isn't using their newest client. Yes, I'm sure MS tried to re-invent Java (J++ or whatever they call it now), but remember the facts, Sun was a huge help is screwing themselves over.

    --

    There is no reasonable defense against an idiot with an agenda
    :wq
    1. Re:Get the facts straight.... by Exedore · · Score: 5, Insightful

      Not to mention Sun childishly refusing to submit Java to standards bodies so they could maintain full control of the language. Here's a hint, Sun: it's either proprietary, or it's a standard. Pick one.

      The whole MS/Sun Java fight is little more than two children fighting over a toy and smashing the toy in the process. This works out okay for MS, cuz they have a lot more toys in their box than Sun does. They'll just go play with .net for awhile while Sun sobs and whines in a corner.

      --

      I take drugs seriously.

  3. Missed the point by Bodrius · · Score: 5, Interesting

    The typical argument for "MS Killed Java" is not that Java died because it was not included in Windows, but rather because it was included in a crippled way that misrepresented the language.

    It would be the equivalent of Microsoft giving away a Linux distribution "MS Linux" that crashes often, doesn't run most of the GNU programs (gcc included), has a different set of C libraries with their own quirks, and uses a really old version of Gnome as a fixed, non-configurable GUI.

    Then everyone would say "I tried Linux, it came with Windows, but it sucks" and it would take a lengthy, unwanted explanation to let them know that their "free Linux" was crippled. Even then most will never try it again.

    It's not clear that MS killed Java on the client. In my opinion, Java was not ready for the client and therefore it killed itself with the Applet hype.

    But that doesn't mean shooting a man dying of cancer is not a crime.

    --
    Freedom is the freedom to say 2+2=4, everything else follows...
    1. Re:Missed the point by Bodrius · · Score: 4, Insightful

      "MORE compliant"? Compliant with what? The "Java" specification? Was it more Java than Java?

      MS Java was, and is (because it's still out there and it's still a pain) NON-COMPLIANT, which means quirky, of unpredictable behavior, not-following the standard imposed by the brand which they licensed.

      If I code an Applet using standard Java and it runs on every JVM except MS, MS Java is crippled. And that's the situation that prompted Sun's conflict with MS.

      Ask any Java developer out there that has had to deploy Java Applets on the Internet, where you cannot force your users to download a standard (or non-standard) JRE unless you're willing to lose demographics. They have to target their Applets to either standard JVMs or MS JVMs, or spent code and debugging time testing both as if they were different platforms... because they are.

      If your JVM cannot run my standard Java code unless I target it specifically, the JVM is crippled. If the code I target specifically on your JVM doesn't run exactly alike in other standard JVMs, your JVM is crippled (it requires non-portable non-cross-platform code).

      Now, MS Java may have been faster (certain parts were), and may have been a nice language/VM set by itself. But it was not portable, not cross-platform, and it was not compliant with the Java specs. Which means it broke Java applications and MS legal obligations according to the license.

      --
      Freedom is the freedom to say 2+2=4, everything else follows...
  4. Java Died? by laserjet · · Score: 5, Funny

    This sucks that Java has died. I just finished up my first week of a Java programming course. And, now, I find out that I am learning a dead language?

    When will it end?
    (sarcasm skills required for reading this comment)

    --
    Moon Macrosystems. Sun's biggest competitor.
  5. Re:Okay... and...? by GusherJizmac · · Score: 5, Insightful

    Java is not even cold on the client, must less dead. There are TONS of line of business applications written in Java that are used on a daily basis. The web isn't everything. Just because you don't see Java Applets doesn't mean Java on the desktop is dead. Do a little research first.

    --
    http://www.naildrivin5.com/davec
  6. Java has always sucked on the client side by alienmole · · Score: 5, Insightful
    I'm a guru-level Microsoft-basher, but the fact that Java sucked for the development of GUI apps was not Microsoft's fault. Including pure Java in IE probably wouldn't have done much to change that - the embedding of Java in browsers was always a Frankenstein's monster kind of deal, anyway, and had little to do with the development of real Java apps.

    Java still sucks for GUI development today. I use it heavily for server-side development, and I've worked with plenty of Java UIs. The only acceptable Java UI system I've ever seen is IBM's SWT framework, as used in Eclipse. Swing UIs are borderline at best, and AWT isn't even worth discussing. In Sun's defense, creating a decent fully cross-platform UI (without depending on native widgets) is a tough problem. SWT's use of native widgets makes a whole lot more sense - Sun should take note.

    Of course, none of this changes the fact that Microsoft did everything in its monopoly power to crush Java. Abandoning Visual J++ and then insulting their userbase with J# and "Jump to .NET" showed that when it comes to crushing the competition, even Microsoft's own customers better not get in the way.

  7. HTML killed Java by zero_offset · · Score: 5, Insightful
    Java has never delivered on it's client-side promises, and it never MADE any server-side promises, it's just that the server gives the programmers enough control that the "write once / run anywhere" myth doesn't bite them in the ass and nobody cares about how difficult it is to build a decent UI in Java.

    Java on the client was mainly killed by plain old HTML and round-trip processing (CGI, ASP, forms, etc), which proved far superior for quickly and easily building decent, usable UIs, and which downloaded to and rendered on end-user machines much more quickly.

    The really stupid thing is that Microsoft was probably Sun's best chance for keeping Java alive on the client. MS had the fastest JVM around for a LONG time, and they had the most bug-free JVM for a long time. (I wrote Java apps for a number of years and had to constantly test on about a dozen JVM/JITs, I even recall the first Sun Java event where Sun people were praising and recommending the Microsoft JVM.)

    Microsoft probably could have killed Java, and it's reasonable to assume they thought about it -- although I personally disagree that J++ was an actual attempt to do so (it was a kick-ass environment, and I produced vast amounts of full-compatible code with it) -- but the simple fact is they didn't have to, because Java never really got going on the client. Java lives on in the server-side world as a kind of VB-for-people-who-hate-Microsoft, and that's about it, but MS didn't kill it.

    --

    Slashdot quality declines as the number of hot grits posts decreases. - Provolt's Law, Apr-09-2005

  8. clientside java != applets by glwtta · · Score: 4, Insightful
    Whatever you say about applets (and most of it will probably be true) there are some excellent Swing applications out there. NetBeans (for example) is one of those things you'd have to pry from my cold, dead hands to take away from me; and nothing beats being able to run the same IDE at work (Windows) and at home (Linux).

    And Swing is still great when you need a quick, thin (logic-wise) UI that's doing something just out of reach of HTML's capabilities. (native widgets or not, speed and look are often just not important)

    --
    sic transit gloria mundi
  9. Re:MS didn't kill Java by pivo · · Score: 4, Insightful

    confusing procedures
    For example?

    poor performance
    Have you used it recently?

    repeated incompatible upgrades
    Example? The only thing I can imagine you're referring to is the Swing classes that replace or enhance AWT. That was a welcome change by just about anyone's standards.

    costly support requirements
    What are you talking about, this is pure FUD

    and expensive development tools
    They never billed me for emacs, I thought it was free?

  10. Sun killed Java on the client by g4dget · · Score: 5, Insightful
    Java was supposed to be a small, open platform for writing clients that are delivered through the web browser. Sun messed up on all of that: Java mushroomed to a size of many megabytes, its original toolkit was horrible, its original runtime was slow, its graphics support was lousy, and Sun renegged on their promise to make Java an international standard. Java also had some really serious design problems. And Sun was stupid by explicitly tweaking and taunting Microsoft.

    Look at Flash and its success in comparison: Macromedia positioned it as harmless eye candy (so it didn't catch Microsoft's attention), didn't promise much of anything, had great graphics and animation support, and provided great authoring tools. Flash came in under the radar screen and didn't look like like a threat to Microsoft, and it picked a market and stuck to it (eye candy).

    Sun could have succeeded with Java: they should have fixed severe technical problems with Java earlier and standardized it through a standards body. Sun should also have focussed on keeping Java small and on the client. Microsoft would likely have supported standard Java and added lots of proprietary libraries--just like what Apple is doing with Java, for example.

    Today, Java is still a pretty decent programming environment with a very efficient runtime and capable libraries. I'd still recommend using it for many kinds of commercial applications. Java will likely continue to be a big deal for server side programming. For lightweight clients, Flash will continue to make inroads. For widespread adoption by the open source community, Java missed its window of opportunity for the most part--Sun's policies still don't make it a good platform.

    But what Java is today is Sun's responsibility, not Microsoft's or anybody else. Companies like Macromedia and Adobe have shown that you can compete with Microsoft and that you can ship formats and software that cuts into Microsoft's markets. But if a company behaves as stupidly as Sun did, they will fail. And the fact that Sun has so thoroughly failed with their promises towards the open source community and has failed to keep Java suitable for its original purpose also means that I don't have that much sympathy for them.

  11. Re:HUH, what about "free" and "freedom"??? by ryanvm · · Score: 4, Interesting

    It was Sun's responsiblity to make Java an important, dominating technology, NOT Microsoft. [...] You want to "beat" Microsoft? Do it with better software.

    You're missing the point. Microsoft, because of their desktop OS monopoly, was/is in a position to make or break anybody's desktop software. No matter how excellent Java (on the desktop) could have been, Microsoft could (and arguably did) keep it from becoming a success.

    When the operating system you distribute gets put on 95% of the computers out there, if you don't want something to exist on it - it won't. Microsoft wasn't allowed to embrace-and-extend Java, so they dropped it completely. And since most computer users haven't the slightest idea about how to install it, Java on the desktop has died a pathetic, twitching death.

  12. Java/Swing is pretty good on the client side by SuperKendall · · Score: 4, Insightful

    About three years ago I finished up a large Swing app to be used inetrnally by the company. After some profiling and tweaking, it was pretty responsive running on a P450 with just 32MB of RAM (The minimum spec for machines it would run on). That was just after jdk 1.2 came out.

    Swing was great to work with as it was VERY extensible. We had all sorts of custom comboboxes and tables and form entry fields. The app worked really well and the users loved it.

    When people try to tell me Java or Swing is not good enough for user facing applications, I have to think they haven't really tried.

    On the widgets, Sun DID try native widgets, that's what AWT is!!! To me SWT looks a lot like a spruced up AWT. I'll admit I've not seen Eclipse in action, and I still think the tools to develop Swing apps are not great (though I've evaluated very few of those for a while since I too am mostly into server side programming). All of our Swing work before was done by hand which is very easy to do when you have a good framework.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  13. Netscape fucked it up worse. by autopr0n · · Score: 5, Interesting

    Actually, I think Netscape did more harm to java in the early days then Microsoft's. I actually read one of the affidavits in the case by a technical expert, who outlined the incompatibilities. They were tiny. *TINY*. And yet, Netscape was still shipping only the java 1.0 API. People couldn't write code for the newer, more robust 1.1 API and have it work with Netscape. They could write the code to work in IE, however. And if they avoided Microsoft documentation that might mix the incompatible stuff with the regular stuff they would have been fine.

    Did MS purposely taint the API: almost certainly, there was no reason for them to put their functions and code in the Java.* packages. Did it really matter: not as much as Netscape sticking with 1.0.

    Microsoft might have made stuff worse over time, but who knows. But anyway, microsoft probably wanted to kill Java and in a way, they succeded.

    --
    autopr0n is like, down and stuff.
  14. but what if I don't want Java by nhavar · · Score: 4, Insightful

    I've been running XP for a few months now sans java. I haven't hit a single site in the thousands and thousands that I've visited that has required or even used java to perform. Why do I need it now?

    What killed java (client side)? Well people will argue to death that it was MS? But what killed ActiveX (client side)? Well people will argue to death that it was Java. What really happened.

    There are two things I think happened. Java became "popular" because of things it claimed to do (some of which never materialized). Creating a rise in "amateur" programmers who's only creative outlet was applets on the web used for banners and menus etc. Everytime someone would hit SOME of these sites and see the horrible slow downs that occured with the prominently marked "SEE MY NEW JAVA MENU" then people associated "Java" with crappy GUI development. Java might help certain aspects of coding but it doesn't suddenly create automatically efficient code. You can still use all the memory you want even though you're not specifically allocating it like you might in other languages.

    This is why Java was better on the server side. Having a server implies that you have more experienced coder doing the work. This typically (not always) means tighter code and better resource use. Hence java client side received boo's and name calling and java server side is quickly replacing other languages.

    Now client side it didn't help that even experienced programmers saw performance problems with their client side applets. I would still say it wasn't the code itself that ultimately caused the downfall. I certainly wouldn't say it was MS. Additionally I think this is a shitty way for SUN to try to get market share. SUN already sued MS and got a settlement along with a nice chunk of change, kicking MS out of that market, and killing a couple of MS's initiatives. They could have taken steps back then to take control of their destiny instead of constantly deferring to MS for the success or failure of Java. They failed to do that.

    --
    "Do not be swept up in the momentum of mediocrity." - anon
  15. A good example of Sun�s screw-ups. by jbolden · · Score: 4, Interesting

    If you take a look at Apple's system architecture:
    OSX you can see that Apple is putting the JAVA API at a coequal level with the Classic, Carbon and Cocoa APIs - all the others being Apple products. This is exactly the kind of treatment Sun has always wanted; Sun's Java being setup as a major part of the system architecture allowing it to run cross platform with the same capacity as native apps.

    Now where is Sun supporting Apple in this? Apple offers a standard set of development tools as part of the OS - why isn't Sun writing or co-writing tie-ins for interface builder and Swing? Why aren't they optimizing the JAVA Apple API for Darwin? Why when you click on Java at Sun do you see absolutely virtually nothing about the Mac OSX platform? Why doesn't Java include routines to handle files with resource forks better?

    If this isn't proof that Sun has no intention against standing behind Java implementation with real resources and real money I don't know what would be.