Please create an account to participate in the Slashdot moderation system


Forgot your password?
DEAL: For $25 - Add A Second Phone Number To Your Smartphone for life! Use promo code SLASHDOT25. Also, Slashdot's Facebook page has a chat bot now. Message it for stories and more. Check out the new SourceForge HTML5 Internet speed test! ×
Java Programming Government Sun Microsystems The Courts News

Two Takes on the Java Dilemma 562

Joe Barr writes "NewsForge is running a pair of excellent commentaries on the plight of Java and the Java development community following the recent "settlement" between longtime rivals Sun and Microsoft. One is by Rick Ross, the articulate leader of JavaLobby, entitled "Where is Java in the settlement?" The second is "Free but shackled: The Java trap" by Richard Stallman. Good reading. Both commentators put their finger on the heart of the problem, albeit from different perspectives." Yes, Newsforge and Slashdot are both owned by OSDN.
This discussion has been archived. No new comments can be posted.

Two Takes on the Java Dilemma

Comments Filter:
  • by tjansen ( 2845 ) * on Monday April 12, 2004 @10:37AM (#8837384) Homepage
    My theory is that Sun is going to sell Java, probably to IBM. That's also a reason why Sun is will not
    open-source Java. Even if it is losing money, it's still a valuable asset. Sun owns the trademark, many Java-related
    patents and is the only company with the authority to prevent Java from being forked.
    Sun's threat is to sell Java to Microsoft. Not sure whether MS wants to buy it (they would certainly be
    willing to spend a lot of money to destroy it, but it would also annoy many people and renew the antitrust trouble). Losing Java would be so bad for IBM that they would be willing to spent a few billions to save
    it. Possibly together with other companies in the Java trap, like SAP.
    • I doubt Sun would sell Java until they're ready to sell the company. Java has been a loss leader for them that has made the name "Sun Microsystems" nearly a household brand. Right now Sun is trying to reinvent itself because of the lack of vision in the marketplace.

      Yes, Intel x86 can handle many of the tasks that only Unix machines used to be able to handle. I'd just tend to debate whether they're capable of doing these tasks as cost effectively, as reliably, and as efficiently.
      • Yes, Intel x86 can handle many of the tasks that only Unix machines used to be able to handle. I'd just tend to debate whether they're capable of doing these tasks as cost effectively, as reliably, and as efficiently.

        Well judging by the amount of people dropping their old UNIX gear, and taking up rackfulls of AMD or Intel boxes (especially the new 64bit offerings), i'd say the answer to that is a big YES.

        Companies like Sun and SGI did used to really have a corner on the market.. but now their gear is slower than the competition and insanely overpriced. Don't get me wrong, they are all still the geeks ultimate play thing (I especially like SGI gear, and used to own a few old boxes) but price to performance ratio is soooo in Intel & AMD's favour right now.

        Reliability is superb, runs a LOT of operating systems, scales very well (imagine a beowulf cluster of these...), and doesn't cost a lot of money.
        • by The Spoonman ( 634311 ) on Monday April 12, 2004 @11:48AM (#8837998) Homepage
          Well judging by the amount of people dropping their old UNIX gear, and taking up rackfulls of AMD or Intel boxes (especially the new 64bit offerings), i'd say the answer to that is a big YES.

          Which begs the question: if they were all jumping off a bridge, would you do so, too? Just because "everyone's doing it" doesn't mean it's right. It means that lemmings can't think for themselves.

          Don't get me wrong, I agree that the price/performance/value ratio of the Suns and SGIs of the world is way skewed when compared to the Intel-style architecture. I disagree in that moving to the latter architecture just because everyone else is doing it is a management-style decision, not a technical one.
        • Well judging by the amount of people dropping their old UNIX gear, and taking up rackfulls of AMD or Intel boxes (especially the new 64bit offerings), i'd say the answer to that is a big YES.

          I would disagree. And I'll tell you why:

          1. It takes fewer Unix boxes to accomplish the same job as the ever multiplying rabbits^W x86 machines. This consolidation makes for lower overall costs in equipment and maintenance. Unfortunately, x86 looks cheaper up front. No one considers concepts like capacity planning. Just add another box. They're cheap!

          2. Dell (and their competitors) charge a mint for "server hardware". So much that Sun hardware often comes in cheaper. Again, managers thing x86 == cheap and Sun == Expensive.

          3. Unix machines allow you much more flexibility in remote maintenance, system configuration (just try to tweak the size of write buffers on Windows), and live upgrades. Linux theoretically offers many of the same benefits, but RedHat deployments have a tendency to self destruct. I've seen admins actually afraid to touch their RedHat boxes for fear that something will go wrong.

          4. Performance isn't everything. Reliability, uptime, maintainability, etc. are all worth paying extra for. The short sightedness of the industry results in these factors often being ignored. As a result, big money is spent on all three areas *after the fact*. (A company I worked for once had a Dell RAID controller go. The entire production database was corrupted on ALL drives. That hurt.)

          Long term, Unix machines still win the day. This is very much due to the fact that the entire machine is engineered instead of cobbled together. It's just too bad that the entire industry is only looking at the short term.

          • "but RedHat deployments have a tendency to self destruct."

            Err yea ok, sure whatever you say.

            "Long term, Unix machines still win the day."

            You wrote an entire reponse to something he didn't say. He never said he was advocating Winx86. He said that the older SUN/SGI style hardware was losing marketshare in favor of X86 hardware. Which of course is correct. He didn't say that these cheaper X86 boxes wouldn't be running a *nix.
            • You wrote an entire reponse to something he didn't say. He never said he was advocating Winx86. He said that the older SUN/SGI style hardware was losing marketshare in favor of X86 hardware. Which of course is correct. He didn't say that these cheaper X86 boxes wouldn't be running a *nix.

              Allow me clarify. When I say "Unix Machines", I am referring to Sun, SGI, HP, and IBM Unix based hardware. While these machines can run other OSes, they are designed and engineered to run a variant of the Unix operating system. Thus "Unix machines". I was not referring to the operating system in specific.

              And yes, RedHat does self-destruct at the slightest provocation. It's actually rather enjoyable (in a morbid way) to grab a bag of popcorn and watch as GDM suddenly disables itself, or the Apache "service" suddenly fails to start, or watch admins struggle with XInetD, only to have all their other "services" go haywire, or (my personal favorite) watch the admins struggle with some insanely masochistic script that no longer works because of some minor system change. Not to mention all the other scripts that were dependent on that script, which are now quite broken. I'm not even *going* to mention RPM hell.

              Oh yeah, RedHat boxes are lots of fun.

              • by Ayanami Rei ( 621112 ) * <rayanami@gmail . c om> on Monday April 12, 2004 @01:01PM (#8838854) Journal
                A red-hat based distro can last a long time provided you use somewhat more sophisticated tools to manage it. Suggestion: apt-rpm.

                I don't know what those other problems you speak of stem from, for I have many RedHat boxes and have not experienced them. Perhaps the admins are idiots?

                A Solaris box is also difficult to work with on the first go-round. Usually you get sent to Sun classes and everything becomes clear.

                • I don't know what those other problems you speak of stem from, for I have many RedHat boxes and have not experienced them. Perhaps the admins are idiots?

                  Yes and no. The GDM problem, for example, happens when you configure the hostname. For some lame reason, GDM tries to do a reverse lookup on the hostname, and fails to start if it can't. I don't remember all the details right now, but it didn't even like it if you used a hosts file.

                  The starting of daemons problems are caused by RedHat's insistence on trying to map XinetD to the concept of Windows Services. The configuration tools never work right, and the whole thing happily blows up. I've tried to tell admins to use the command line, but they want to do it the "RedHat approved way" for purposes of support.

                  It may have improved, but last I checked, RedHat systems are littered with extremely complex shell scripts to do every little thing. These shell scripts work fine if you don't dive too deep into the system, but they easily start breaking as soon as you start trying to ratchet up security, or install system level software.

                  RPM hell is, well, RPM hell. Eventually you install yourself into a corner, where you've got a set of mismatched dependencies. After that point, you can only force installs. You can't even uninstall anything because the dependencies have gotten so tangled. Thus the "standard" position for managing RedHat servers is to multiply them like windows machines (one task per machine), and reinstall the OS every time you requisition a machine. This procedure is covered over by the constant need to "upgrade" to the latest and greatest (and highly unstable beta software) release of RedHat Linux.

                  A Solaris box is also difficult to work with on the first go-round. Usually you get sent to Sun classes and everything becomes clear.

                  A Solaris box is complex. But I've really never seen anyone do irreparable harm through normal use of the machine. I remember when I received my first Solaris machine. I was a Unix newb, and had to struggle through quite a bit. But I found that the machine was well designed and laid out, and eventually I found everything I needed. The only concern I ever had with Solaris was trying to reign in the Open Source software from making a big mess out of my hard disk. (Ok, this goes in /usr/local, this goes in /opt, this goes in /usr/share/, that goes in /use/bin, this goes... over there! Oh, and you don't need the Sun 'tar' utility. Use this instead! Ugh.)

      • by tjansen ( 2845 ) * on Monday April 12, 2004 @11:04AM (#8837596) Homepage
        Yes, Intel x86 can handle many of the tasks that only Unix machines used to be able to handle. I'd just tend to debate whether they're capable of doing these tasks as cost effectively, as reliably, and as efficiently.

        Actually I'd be interested how many billions of Sun's yearly losses are related to Java, and how many billions are caused by creating and maintaining their own CPU architecture. I wouldnt be surprised if the last bit of 'cost-effectiveness' of the SPARC architecture would disappear immediately if Sun would charges enough to cover their real costs.
        After cancelling the UltraSPARC V and having only a few 'mystery' CPU projects left, I expect Sun to make x64-64 the primary architecture for the low-end and medium range. Maybe not with this x86-64 generation, but when the next one appears.

    • The day IBM buys Java will be the day that IBM stops talking about opening the code. They already bought Rational's products, where's the source for them?
      • They went for the bigger offer, but the smaller market. They bet on Java, when they could have bet on .NET. The Java market is still bigger now, but Java may die on the vine if Sun doesnt sell it, and I dont think they will, as long as Microsoft is paying their bills.

        Rational now will have to deal with Whitehorse [] and their sales will go south in the Windows market until corporations get a chance to compare it to Rational products. If Whitehorse becomes part of the MSDN subscription (and it will) then who

  • "Freedom isn't free" (Score:5, Interesting)

    by LostCluster ( 625375 ) * on Monday April 12, 2004 @10:38AM (#8837393)
    Sun's control of the Java language is a benevolent dictatorship. If Java was truely Open Source, then Microsoft could have forked it to allowed J++ to exist on Windows and blow a hole in the "write once, run everywhere" theory.

    In order for there to be a language that's solid in all environments, there's got to be a gatekeeper at the door.
    • benevolent my r**s (Score:5, Interesting)

      by ArmorFiend ( 151674 ) on Monday April 12, 2004 @10:59AM (#8837554) Homepage Journal
      the Gnu dialect of the C language shows you don't need a "benevolent" dictator. Its been around much longer than Java. Its probably used by more people. Its GPL'ed. And yet it hasn't led to a GNU-C linguistic forkfest.

      (the same argument applies to nearly every library under the GPL, does it not?)
    • by Fnkmaster ( 89084 ) on Monday April 12, 2004 @11:00AM (#8837560)
      Forked what? Does Microsoft need the code to write their own implementation? Not really. In fact, Microsoft DID write their own implementation, with J++ and the MS JVM, and then they morphed that into .NET, which cherry picked the features they wanted from Java. They aren't allowed to call it an implementation of "Java" unless it sticks to the Java specification, they have permission from Sun or whatever - but what's wrong with that? That's just a trademark issue, it has nothing to do with Open Source software or the licensing terms of the code itself.

      Would the Sun/MS debacle have unfolded any differently if the source code for Java had been available under the GPL? Microsoft could have build their own stuff on top of it, but they would have had to keep it under the GPL - they would never have wanted that, so they would have had to do the exact same thing they did, which is write their own clean room version of it, or make a derivative design and have their own team implement to their own modified spec. If you can put forward a convincing argument that Sun GPLing the Java standard would have substantially changed the platform battle with Microsoft, I'd like to hear it.

      • by LibertineR ( 591918 ) on Monday April 12, 2004 @12:39PM (#8838596)
        Would the Sun/MS debacle have unfolded any differently if the source code for Java had been available under the GPL?

        If Sun had GPL'd Java early on, there would be no .NET today. There would be no need, as Java would have become the de-facto language for Windows applications and Microsoft would have been forced to go along. Java would benefit from Microsoft's strength in Dev-tools, and anything good that Microsoft came up with would have been shared across platforms.

        Sun expected Java to do for them what Visual Basic did for Microsoft, but they were stupid about it. When Visual Basic came out, Microsoft created a huge market for tools vendors like Roguewave and others without giving them a rectal exam everytime they came up with something to keep them under their thumb. Sun could have done the same thing, allowing people to create Solaris widgets and stuff, but Sun should have had a decent IDE available at the time of Java's initial release for all this aftermarket stuff to fold into.

        Sun thought that good press equaled big money, and they did not listen to anyone about how to build a market. People took Java and left Sun behind.

    • by Anonymous Coward on Monday April 12, 2004 @11:04AM (#8837594)
      The problem is that Java is already incompatible across various implementations. Even if the syntax is identical, you never know if your program is going to work on Blackdown or Classpath just because it works on Sun's JVM. And lord only knows if the "standard" libraries you're using are available on the user's machine.

      Quite frankly, the stupidest thing Sun did was force MS to give up Java. MS wanted to make Java ubiquitous by making it the standard platform for writing Windows apps. In order to do this, they needed to add a few features (like delegates -- function pointers, essentially). Sure, people would end up writing "Java" programs that wouldn't necessarily run on other JVMs, but who cares -- they would be Windows programs anyway! And besides, every single one of those Windows developers would also be a Java developer, spreading Java everywhere.

      So now, instead of having a solid, fast, best-of-breed implementation of Java (with a few extras) on every single Windows machine on the planet, everybody who wants to run Java apps must install their own JVM. This does nothing but hinder use of Java. And of course, all of those would-be Java developers are still using VB or have learned C#.

      Come to think of it, had Sun incorporated MS's improvements, such as delegates and enumerations, they would have an excellent language for GUI RAD. Instead, they stuck by their NIH ways and we don't get these features until 6 years too late.

      • by LibertineR ( 591918 ) on Monday April 12, 2004 @11:37AM (#8837896)
        Your point is 100% accurate, and every single one of them was made by Microsoft to Sun at the time in question.

        The problem was too many of Sun's people were pissed off that Microsoft's first JVM was blowing the doors of Sun's and every publication said so. People at Sun were too worried that Java would become too closely associated with Microsoft, and Sun would be forgotten as the creator of Java. You had people running around basking in the glow of their favorable Java press, more worried about losing it, than about how they were going to make money.

        Microsoft went so far as to offer to show Sun how they had optimised Java in exchange for permission to continue their work. Sun thought in unacceptable that Microsoft be known as doing Java better than they did, so they pulled the plug on their largest potential market out of pure spite over being outdone.

        I'm glad they did, because C# rocks. Sun never gave a damn about their developer community, they only cared about making sure no one else got any credit at all.

        • by dekashizl ( 663505 ) on Monday April 12, 2004 @01:43PM (#8839308) Journal
          Your whole post is unsubstantiated anthropomorphization of Sun and Microsoft, boiled down to "MSFT made a better Java than Sun, and Sun wanted to hog the credit, so they rejected every reasonable offer simply out of spite". Amazing that this gets modded to +5 insightful... Please, go tell this story to a room of kindergarteners.

          Sun worried (rightfully) about the proprietary extensions MSFT was adding to Java, which would have had the result of tying "Java" to Windows and shattering the "Write Once Run Anywhere" promise, while at the same time having the (mostly false) appearance that MSFT was playing nice with its competition. And that's just one part of the whole issue.

          Get your history right, or at least don't try to pass off your skewed opinions as fact.
      • by Ogerman ( 136333 ) on Monday April 12, 2004 @03:49PM (#8840587)
        Quite frankly, the stupidest thing Sun did was force MS to give up Java. MS wanted to make Java ubiquitous by making it the standard platform for writing Windows apps.

        It's not so much just what they did, but that they used monopolistic tactics to do it. MS was trying to completely take over the Java market, not just be an ethical player. In and of itself, there was nothing wrong with them writing their own implementation. (many others have done the same, including Open Source projects..) It was all the proprietary and undocumented extensions combined with their marketing power to sway the industry away from pure implementations without their extensions. This would have hurt us all, not just Sun.

        How do we feel about MS's extensions to standards like Kerberos and HTML? Well, same thing.
    • by Waffle Iron ( 339739 ) on Monday April 12, 2004 @11:06AM (#8837611)
      If Java was truely Open Source, then Microsoft could have forked it to allowed J++ to exist on Windows and blow a hole in the "write once, run everywhere" theory.

      Well, since Microsoft couldn't do that, they just switched to plan B. They used 5 years of hindsight to write a new language like Java, but with some nicer new features, then they applied this new language to their OS monopoly to get instant market penetration with little effort.

      Meanwhile, Microsoft froze their support for Java until it was hopelessly obsolete; this passive-aggressive move blew a hole in "write once, run anywhere" all by itself. Microsoft's moves seem to have succeeded in taking much of the steam out of Sun's goal of taking over the world with Java.

      It seems to me that this course of events was a big factor in Sun's recent "surrender". I don't see how things have come out any better for Sun than if they had set Java loose.

      • The problem was that Sun didn't lift a finger to promote Java on Windows. They could have made deals with OEMs to put their own JVM on Windows machines like hundreds of other companies were doing with their products or they could have sent out Java CDs like AOL. Apparently Java just wasn't important enough to them to bother.
        • by Anonymous Coward on Monday April 12, 2004 @12:16PM (#8838277)
          Your forgetting that back when that was a possibility Micrsoft had say over what was shipped on every box. I bet that Sun had talks with more than a few OEM's who were not even willing to consider shipping Sun's Java. Plus what were OEM supposed to do? Ship two Java VM's per box? If OEM's had to pick one VM to ship it was going to be Microsoft's. In your eyes Sun didn't lift a finger but in reality they never had a chance.
  • The Algol, the (Score:3, Interesting)

    by ObviousGuy ( 578567 ) <> on Monday April 12, 2004 @10:39AM (#8837405) Homepage Journal
    The biggest problem is that Java is just another speed bump in the long line of speed bumps called Algol descendents. Its convoluted syntax, unclear precedence rules, and general tendency towards cryptic programs are all problems that originated with Algol back in the 60's and little has been done to improve it. C, C++, Java, C#, they all suck because Algol sucked.

    While we could probably debate for days the benefits and pitfalls of a language like LISP, the only good thing we can say about Algol-like languages is that they are pervasive. There are so many alternative languages that new language designers can base their syntaces on that it only shows the lack of creativity and knowledge of language history when language creators use Algol as the base of their languages.
    • by Anonymous Coward on Monday April 12, 2004 @10:43AM (#8837429)
      Isn't Algol the d00d who said he invented the Internet and then went and lost the 2000 election?
    • Re:The Algol, the (Score:5, Insightful)

      by kin_korn_karn ( 466864 ) on Monday April 12, 2004 @10:49AM (#8837467) Homepage
      You're barking up the wrong tree. People copy Algol because people are taught that programming languages -should- look like C and Java.

      Also, they're more logical to humans than stuff like LISP. When you were a kid and decided you wanted to program, did you sit down with a LISP compiler? If you did, congratulations, but I don't know anybody else who did and most programmers I know look at a programming language with the thought of, "how much money can I make if I learn this".

      Java sucks because it's wordy and the standards that people use with it are overwrought. I had no problems with RSIs until I started working in Java.

      • Re:The Algol, the (Score:5, Insightful)

        by Bastian ( 66383 ) on Monday April 12, 2004 @11:11AM (#8837661)
        Also, they're more logical to humans than stuff like LISP.

        This point seems a bit unstable to me. I don't see why an Algol-like syntax would be more logical to humans for any reason other than that most folks learn to program in BASIC or C or because the syntax is relatively similar to standard mathematical notation. But in this case the argument would be that the syntax is usually more familiar to most people, not more logical. If it is inherently logical to anything, it's logical to computers, not humans.

        If there's anywhere where folks seem to have a hard time with, for example, the LISP family, it's the recursion and not the syntax. Personally, I agree that LISP was harder to get used to than languages that have Algol-style syntax, but I'm not willing to say it was because of my human nature and not because I had already been programming in BASIC and C for ~10 years. And now that I'm used to it, I've found it is the most useful thing in the world, to the point that when I'm working out how to write a difficult function I generally use LISP syntax for my pseudocode because I've found it is much easier for me to make prototypes that will end up working.

        I agree that languages take on because folks are interested in how finacially beneficial that language is, but that has nothing to do with whether or not it is an objectively well-designed language. I submit COBOL as evidence.
    • Re:The Algol, the (Score:4, Interesting)

      by ezy ( 60500 ) on Monday April 12, 2004 @11:24AM (#8837790) Journal
      Yes, of course, algol based languages are horrible abortions.. that's why just about anything that's worth anything is written in them. It's all a result of marketing designed to hold back the progress of computer science and application development. :-)

      Excuse me, but sometimes I wonder whether LISP or functional language advocates just fell off the back of a truck.. or maybe they were just born insane. It's like the old Beta vs. VHS, Mac vs. PC vs. Amiga, etc debate. The reason Algol decendents are more popular is simply because they work better given the context in which they operate... the same reason VHS won out over Beta. and PC won out... It's not a huge mystery, nor is it some kind of ignorance of basic facts amongst the users of these languages.

      If anything, its the functional advocates who are missing the basic facts. Programming languages are aids to *human* comprehension. All of the functional languages I've ever seen suck dick as general purpose programming languages. The syntax is barely readable, and the semantics are *not* immediately clear to the average programmer who is not necessarily interested in diving into abstract semantics of proving programming languages. Some of the loops you have to jump through to solve simple nonrecursive problems are obscene. Nevermind having to force your recursion to fit within certain parameters so your code performance doesn't suck...

      The "spreadsheet" argument for easy of use I see nowadays is bogus, since spreadsheets are not abstract, but concrete. To give an example of the disconnect I'm talking about, take the canonical representations of each type of programming and see which one is easier for a human to understand as we scale upwards in complexity.

      a) a recipe
      b) a mathematical proof

      I think the answer, and the conclusion wrt to functional and imperative languages as they exist now is self evident. Note that basic techniques, such as modularization, apply to both. The typical response is that (b) is easier to "verify", since, well, it's already in the required form. However, noone seems to define "verify" WRT to real complex systems with GUIs, DBs, flakey machines and flakey network connections..

      and furthermore, we stopped trying to cater to the machine when we stopping flipping switches on the front of the box.. we should *not* be going backwards and catering to it by reorganizing logic so it's easier for the *machine* to process.

      • Re:The Algol, the (Score:5, Interesting)

        by Mornelithe ( 83633 ) on Monday April 12, 2004 @01:47PM (#8839360)
        Interesting? Perhaps the moderators fell off a truck.

        Algol descendants aren't exactly "horrible abominations," but they're not inherently better than functional languages either. If you believe they are, you probably haven't spent enough time with functional languages.

        You claim that the syntax is barely readable. I'll admit, Lisp is hard to get used to at first. However, I suspect that's because most people focus on the parentheses. If you actually get into using Lisp, and get a good editor that matches parentheses and indents for you, it becomes much easier. How is:

        if(condition) {
        } else {

        so much different than:

        (if condition

        ? Also, if you don't like all the parentheses, have you looked at Haskell for example? There's more to functional languages than Lisp.

        Also, how are the semantics of functional languages any more unclear than any other language? Sure, I don't expect someone to know what callcc does just by looking at it, but how would someone know what *foo does just by looking at it? Go up to a random novice with no pre-existing C knowledge and ask them what atoi does. The semantics of C-like languages are only "more clear" because you've been learning them for years, and you've never bothered to really learn functional languages.

        As for non-recursive problems, you can program in a procedural fashion in Lisp. There are macros for loops so you don't have to write tail recursion yourself. Your argument there holds no water.

        As a final note, I'd like to point out that as far as "catering to the machine," C is closer to that than modern functional languages. C is a couple steps above assembly; everything executes one line after another; you have variables that map to memory addresses; you have functions that are like blocks of code with labels (and some other magic). Haskell, on the other hand lets you write code like this:

        f x = y * y
        where y = z + sin z
        where z = x * x

        Which actually has to be executed in reverse order (more or less). That's not exactly catering to the machine.
    • Wrong (Score:5, Interesting)

      by Julian Morrison ( 5575 ) on Monday April 12, 2004 @11:44AM (#8837967)
      When I see a screenful of lisp, I see words and brackets. I have to read in order to parse struture.

      When I see a screenful of java, even a brief glance shows me what's going on. I can recognise a for-loop, a while with an Iterator, a method definition, a method call, an assignment. I can see the try and catch blocks. Before I mentally parse any of the words.

      Lisp isn't code. Lisp is assembler for the Lisp VM, that somebody forgot to write a code parser on top of.
      • Re:Wrong (Score:5, Insightful)

        by jdavidb ( 449077 ) on Monday April 12, 2004 @01:09PM (#8838947) Homepage Journal

        The reason this is true for you says more about your quantity of experience in Java compared to your experience in Lisp than it does about the quality of either language. An experienced Lisp programmer would probably say exactly the opposite. (In fact, someone in this thread remarked that he does pseudocode for other languages in a Lisp-like syntax, which I found interesting.)

        Similarly, I'm a Perl programmer and have never understood why people say the language is "write only" and similar snide remarks. Perl is instantly readable to me. Put me in front of a bunch of C, though, and I have to puzzle for awhile to work out what it does. That doesn't mean Perl is better than C (although every good programmer knows it is :P ); it just means I'm much more fluent in Perl.

  • It seems quite certain that Java is doomed: Microsoft did not pay $2bn just because it likes the sound of change dropping. It wants Java dead, and .NET to be the main platform for large applications. It hopes to cripple IBM this way. Most likely Sun's refusal to open source Java was based on the promise of the upcoming funds.

    So: Sun will slow down and finally stop development of Java. IBM will either try to roll-out its own compatible platform or propose a migration to something else.

    And RMS will be muttering: "those fools, those fools, if only they understood what the GPL was about". And he would be entirely right.

    OTOH, perhaps I'm just being paranoid and Microsoft will allow Sun (which is now a neutered zombie company selling its own living organs for booze money) to continue supporting one of the main obstacles to its domination of the platform business.
    • by Gothmolly ( 148874 ) on Monday April 12, 2004 @10:51AM (#8837481)
      And RMS will be muttering: "those fools, those fools, if only they understood what the GPL was about".

      He mutters that constantly anyway, you insensitive clod!
    • by DeepDarkSky ( 111382 ) on Monday April 12, 2004 @10:54AM (#8837506)
      I think both Sun and Microsoft (note I did not say general public) will be better off is Sun just sells out Java to Microsoft.
      Look at it this way: Sun and Microsoft officially get together to put Java on the .Net platform. Java gets more play, .Net gets official Java.

      I believe after the settlement, Sun and Microsoft will like each other a lot more - Sun because it has become weak and not terribly competitive, and Microsoft is happy that Sun is finally off its back, and given the state of software industry today, Sun is not in a good position as a software vendor, and though I don't know the numbers, but I don't think Java is making Sun much money (If it was, then they would not have had that much money trouble). I believe Sun is refusing to open up Java because they still want to milk more money from it, and one of the ways is to make a deal with Microsoft.

      But Microsoft has C#, right? Yes...but C# is not Java, and there are plenty of people loyal to Java who are not willing to switch to C#. But if an official Java version is available on the Windows platform and is blessed by Sun, then developers would be much more willing to use it.

      I understand the mantra of Java is write once run anywhere, but if you could at the same time, run on 90% of desktops really well (as a good Microsoft implementation would), then it's that much better.

      All that remains is for Sun to sell Java to Microsoft.
    • Not. (Score:5, Insightful)

      by Garg ( 35772 ) on Monday April 12, 2004 @10:55AM (#8837522) Homepage
      Get real. See all those Java jobs out there? I know a few months ago there were more of those than any other language. I doubt that has changed... or will change in the near future.

      Sun could drop off into the Pacific tomorrow, and Java would keep on going because in a lot of places it's the best tool for the job. As much as they would like to, neither Gates nor Stallman is going to change that fact. If Sun (under MS's influence) tries to corrupt or hamstring Java, IBM, Blackdown et al will simply fork it, and everybody will start using theirs.

      • by LibertineR ( 591918 ) on Monday April 12, 2004 @11:42AM (#8837943)
        If the corporate world decides that Java will not be supported with improvements from Sun, and without IBM able to take over due to no Open Sourced version, they will drop Java faster than you can say C#. Nobody is going to run their business on obsolete stuff, no matter how good it is now.
        • Nobody is going to run their business on obsolete stuff, no matter how good it is now.

          Like... Cobol?

          • Does anyone have enough sense to realize that my comments were related to the job market? I know damn well that obsolete stuff is still in use, but that does not mean that there is a thriving market for jobs in those areas. Consider the context of my statement, please.
      • See all those Java jobs out there? I know a few months ago there were more of those than any other language. I doubt that has changed... or will change in the near future.

        There were more Java jobs than any other language? Really? Or do you just mean there were more adverts mentioning the buzzword "Java" than any other buzzword? There's a world of difference.

        As for changing, tell that to all the VB6 developers.

        Sun could drop off into the Pacific tomorrow, and Java would keep on going because in a lo

      • by ciggieposeur ( 715798 ) on Monday April 12, 2004 @12:18PM (#8838305)
        It's a serious question. To paraphrase myself: []

        I've programmed Java J2EE for years. I am expert at the "best practices", performance tweaks, and real production-quality code, yet Java's utility is almost nonexistent beyond "it's what I [was] paid to write." Here is MY short list of things Java is useful for:

        1) HUGE web sites. J2EE is a good solution: strong typing in the language, a security model that is complete from the database backend up to the Struts frontend, and clustering/failover with EJB 2.0.

        COROLLARY: Small-medium sites should use LAMP and rely on redundant hardware to handle failover.

        2) Applets. Since they run on "most" Unixes + Windows browsers, and despite the load time an applet is much friendlier to users than Flash. But you have to use Java 1.1 to ensure compatibility.

        COROLLARY: Cross-platforms GUIs should use Python, Qt, wxWindows, Tcl/Tk, etc.

        3) Unusual database applications for which only an ODBC or JDBC driver exists. JDBC is a rather mature standard (should be since it ripped off ODBC) that works pretty well. It's faster to write a few quick Statements and PreparedStatements and run them against a database than to use native tools that "have" 'different' ''ways'' of quoting strings.

        COROLLARY: Prefer Perl or PHP if the database is supported.

        4) Any application for which speed is not an issue. Yeah, Java can do everything any other language can do, and if this is the one easiest for someone to "think in" then they should use it.

        COROLLARY: NEVER use Java to create or manipulate graphics from the command line. No JDK, EVER, has managed to do this despite five years of pleading from the professional programmers. Without a GUI Java goes belly-up on the first "new java.awt.Frame()". (And for you 1.4+ folks who think HeadlessException was a fine solution, it wasn't.)

        Java was a great idea in 1995, but since then Java has been pushed as the Second Coming and it just hasn't measured up. The other languages have surpassed Java in every one of its primary marketing points: platform independence, performance, object-orientedness, ease of use.

        So what jobs are you doing that make Java the best solution?

        Not trying to flame, but genuinely curious.

        FYI Blackdown, IBM et al CAN'T fork the Sun JDK unless Sun frees the code. And, as apparently thousands of Slashdotters are unaware, every other JDK except Kaffe+GNU is an independently licensed derivative of Sun's JDK.

        • by pHDNgell ( 410691 ) on Monday April 12, 2004 @01:05PM (#8838906)
          I'm no java apologist. I use a lot of different programming environments and find java frustrating in a lot of ways, but I disagree with a lot of what you said. Java is the best tool for many jobs simply because it was the best tool for many other jobs. This has caused a large class library to come about that has pre-built code for many of the things one needs to do. This makes it take less time for me to make some things (but the language still manages to make the process a bit slow and painful).

          In particular:

          NEVER use Java to create or manipulate graphics from the command line. No JDK, EVER, has managed to do this despite five years of pleading from the professional programmers. Without a GUI Java goes belly-up on the first "new java.awt.Frame()". (And for you 1.4+ folks who think HeadlessException was a fine solution, it wasn't.)

          I've been doing headless java graphics manipulation since 1.1.6 as part of my photo album and other tools. It got a bit easier in 1.4, but it's always been possible. For example: my house temperature diagram [] takes the collected data and renders to PNG or GIF depending on what your client claims to accept.
    • by No. 24601 ( 657888 ) on Monday April 12, 2004 @10:55AM (#8837524)
      I'm sorry, but .NET is garbage - too much glitter and not enough of the important stuff like platform-independence. Microsoft may have succeeded in getting .NET firmly entrenched in the industry if people trusted them, but they've been playing the game since day one for dominance. .NET will benefit Microsoft products, but I don't see it becoming a predominant force anywhere else.

      The whole thing was a mistake for Microsoft, because they never really supported platforms outside the x86 architecture, and rarely code for other OSs (Office for Mac). .NET was Microsoft's attempt to fool the industry into thinking they were ready to embrace and extend open standards... but when it came down to it, they just weren't ready to take the risks to their existing monopoly.

      • by Kombat ( 93720 ) <> on Monday April 12, 2004 @11:26AM (#8837804) Homepage
        I'm sorry, but .NET is garbage - too much glitter and not enough of the important stuff like platform-independence.

        You clearly have never used .NET to develop any serious web applications. While you are correct that it sacrifices platform-independence, you are way off the mark when you call it "garbage." If you are using Microsoft products from end-to-end, .NET is actually an extremely powerful and simple platform.

        We develop web applications using Visual Studio .NET, connecting to a Microsoft SQL Server backend, hosted on Windows2000 server boxes, with clients all running various Windows boxes, using IE. We test with Mozilla and older versions of Netscape too.

        We've found this setup to be extremely powerful, allowing very rapid development. Sure, it's homogeneous, but so what? It's working great for us, and our customers.

        Since we are hosting the actual sites, we get to control the backend platforms. And we've chosen Windows. So, there's no issue about "platform independence." We've chosen a platform that enables us to deliver the best results to the customers, on a very rapid schedule.
  • RMS Blathering (Score:4, Insightful)

    by twocoasttb ( 601290 ) on Monday April 12, 2004 @10:47AM (#8837449)
    As soon as RMS says something like "If your program is free software, it is basically ethical" I have to force myself to keep reading. It's a real bitch when that sentence is the first in the article.
  • by DeadSea ( 69598 ) * on Monday April 12, 2004 @10:49AM (#8837461) Homepage Journal

    RMS has a very valid point. My open source Java software depends on non-free java compiler and runtime environment.

    I continue to write free software in java because Java is sexy, and I believe that Java will one day be free (or have some free implementation). Many of the things that I can do in java would be very hard in any other language. Namely having a GUI program that can run on Windows, Mac OS X, and Linux.

    I disagree with RMS that we should not accept this even temporarily. I write open source Java libraries under the GPL so that people who find them useful and want to use them must adopt the GPL. Planting open source seeds in the Java community will help in the liberation of the platform as a whole.

    The reliable way to avoid the Java Trap is to have only a free implementation of Java on your system. Then if you use a Java feature or library that free software does not yet support, you will find out straightaway, and you can rewrite that code immediately.
    Having such a setup is currently non-trivial. I have tried many times but have yet to get one to work. The gjc compiler is not hard to get working but getting a jre and the classpath libraries set up is beyond my skill level.

    We are trying to rescue the trapped Java programs, so if you like the Java language, we invite you to help in developing GNU Classpath. Trying your programs with the the GJC Compiler and GNU Classpath, and reporting any problems you encounter in classes already implemented
    Rather than appealing to developers, making free runtime easy to set up is the best way to make this happen. I applaud RMS for his work in this area, but it is not yet practical to take his advice.
    • by dmeranda ( 120061 ) on Monday April 12, 2004 @11:04AM (#8837586) Homepage
      "Many of the things that I can do in java would be very hard in any other language..."

      You really need to get out more. But I won't waste more space here debating technical misperceptions, this is about freedom.

      "I write open source Java libraries under the GPL..."

      Ahem, you mean free rather than open? That's RMS's whole point--it's not free. He never said it wasn't open.

      "Planting open source seeds in the Java community will help in the liberation of the platform as a whole."

      That's sure wishful thinking. I hope you're correct. But there's no way you can make it free. Only Sun can do that, and your seeds aren't falling inside their walls. That's like saying that writing GPL'ed software that runs under Windows will help in the liberation of the Windows platform. You're only fooling yourself, trying to justify using a sexy language. I commend you for GPL'ing your own programs, but you must not be fooled into complacency by your lack of freedom.

      • by BlackStar ( 106064 ) on Monday April 12, 2004 @11:08AM (#8837623) Homepage
        Wishful thinking is the way Stallman has always approached solutions, and does so in his Java trap article. Getting more software written in Java with a greater demand on the platform and wider popularity is probably the easiest way to get more hackers working on teh GNU Classpath and related projects including the GNU Java Compiler. Computer science builds on itself, and on the work of others, both free and non-free. For years, Stallman's stuff only ran on Sun, as he pointed out. For years, many of us waited eagerly for the first HURD implementations. Good thing a pragmatist by the name of Torvalds came along and WROTE one rather than endlessly redesigning it. Results breed demand breed developer interest. Cygwin arose at least in part due to Unix programmers working on Windows and wanting the strength of their environment to be there. Demand and need.
      • by DeadSea ( 69598 ) * on Monday April 12, 2004 @11:12AM (#8837675) Homepage Journal
        That's like saying that writing GPL'ed software that runs under Windows will help in the liberation of the Windows platform.

        Not entirely. I don't expect a free version of Java to come from Sun. I expect free Java to come from the open source community. There are already a significant number of people (including RMS) who are working towards this goal without Sun.

        The more people with the itch, the more scratching that will get done.

        As I pointed out, even those of us who want to work on these projects have a hard time because it is difficult to get the environment recommened by RMS set up. Bundling gjc, some free jre, and the classpath libraries into an install package would be a boon. Sun does this with their non-free Java and I have no problems installing their stuff.

  • Free World? (Score:3, Insightful)

    by sielwolf ( 246764 ) on Monday April 12, 2004 @10:57AM (#8837532) Homepage Journal
    RMS's talk of a Free World devoid of any contamination by non-free dependency sounds eerily like Juche []. I guess self-reliance is nice and all but all the talk of "rescuing Java programs" from "shackles" seems to remove one of the most basic freedoms: the freedom of choice. I myself must not only be free but must all of my friends must be free as well? And if they aren't, I really shouldn't because that's just accepting their unacceptable lifestyle?

    That just doesn't sit well with me.
  • by Lao-Tzu ( 12740 ) on Monday April 12, 2004 @10:58AM (#8837547) Homepage

    Many people have argued that it doesn't do Sun any good to "open source" Java. They might be right. You can argue that an open source Java may have a good chance of becoming _the_ platform for software development, but Sun may no longer profit from it regardless. From Sun's point of view, they really don't see the benefit.

    Well, screw them. I don't care about Sun. I'm a programmer, and all I want to do is write a piece of software that I can move from system to system without a lot of pain. Swing is the best toolkit out there for this, right now. It is relatively well documented, consistant, and available to any programming language that can run under the JVM. It can run on multiple operating systems, looking fairly native-like, or with it's own ugly but usable UI where a native look-and-feel isn't available. Some classes, like JOptionPane, actually require fairly small amounts of code to do relatively robust things.

    The Java platform has a huge number of libraries available for it, and they work all over the place.

    There might be no benefit to Sun in open sourcing Java. But there is benefit to me. I want to be able to rely on Java as a platform, but right now any Java developer would be rather screwed if disappeared. I don't like that risk, and I won't build a Java application (except for consulting work - who cares there) because of it.

    (I'm not interested in alternative programming environments, by the way. I already know about them - after all, I don't do Java development, like I said.)

  • What a load (Score:4, Insightful)

    by Timesprout ( 579035 ) on Monday April 12, 2004 @11:03AM (#8837579)
    Where does RMS get off? Java belongs to SUN, they are the one who invested the time, money and effort to develop it. If you dont like it go build your own version rather than trying to imply that SUN are unethical or trying to maliciously entrap developers.

    RMS might better ask why Java has been so successful. It addressed a gap in the market, not its original intention but a need none the less and developers like it. There is an extensive Java developer base now. RMS's comments have a serious smack of petty jealousy about them. Shock horror a commercial company came up with something that has attracted developer mindshare on a far larger scale than anything FOSS can manage and almost 10 years down the line the 'free alternative' is still so half assed its not even a realistic alternative.
    • by dmeranda ( 120061 ) on Monday April 12, 2004 @11:14AM (#8837687) Homepage

      Did you even read the article? RMS never told Sun what to do. He was speaking to programmers who write software using Sun's Java platform. It is those programmers who think they are writing free software, and may not realize that it really is not free after all. His audience does not include Sun programmers; they are already aware that their software is not free--they need no warning.

      He is cautioning those people who desire to write free software to reevaluate whether they are really achieving their own goals, to not be blinded by Java's sexiness and Sun's apparant benevolence. But to say that RMS want's to force Sun to do business in a different way is to read something that I'm not seeing in his article.

    • by Bastian ( 66383 ) on Monday April 12, 2004 @11:23AM (#8837783)
      RMS's point wasn't that Sun is doing something wrong by holding onto Sun. RMS's point was to say to the Free Software community that any software they write that depends on a non-Free platform, library, whatever is not truly Free. Like he said in the article, this is the same as his beef with KDE - but that beef is now gone thanks to TrollTech going to a dual-license scheme.
      His point is that Free Software developers who choose to use Java are entraping themselves, not that Sun is trying to maliciously entrap developers.

      It's also worth pointing out that at no point in the article was he talking about OSS developers.
    • Re:What a load (Score:3, Insightful)

      by Karn ( 172441 )
      You don't understand what motivates Stallman.

      The man isn't impressed by anything, unless it meets his definition of free (which I respect and admire, personally.)

      You should at least read something about the man so you can formulate a valid opinion of him. His thoughts aren't on the short-term, where Java currently is, but on long term freedom of software. His goals predate Java, and will most likely postdate it too.
  • by Aumaden ( 598628 ) <Devon DOT C DOT Miller AT gmail DOT com> on Monday April 12, 2004 @11:09AM (#8837639) Journal
    Sun's implementation of Java is non-free. Blackdown is also non-free; it is an adaptation of Sun's proprietary code. The standard Java libraries are non-free also. We do have free implementations of Java, such as the GNU Java Compiler and GNU Classpath, but they don't support all the features yet. We are still catching up.

    If you develop a Java program on Sun's Java platform, you are liable to use Sun-only features without even noticing. By the time you find this out, you may have been using them for months, and redoing the work could take more months. You might say, "It's too much work to start over." Then your program will have fallen into the Java Trap; it will be unusable in the Free World. -- RMS

    I generally respect RMS, but I have a problem with this. Like it or not Sun (and others via the JCP []) set the Standard for Java. I fail to see how using the Standard is falling into a trap.

    The real reason Java would be unusable in Stallman's "Free World" is because the current, free compiler is sub-standard.

    I shouldn't use the features supported by Sun, Blackdown and IBM because the GNU Java Compiler hasn't caught up with the pack?

    Now, whose trap is that again?

    • by Srin Tuar ( 147269 ) <> on Monday April 12, 2004 @11:44AM (#8837966)
      I shouldn't use the features supported by Sun,
      Blackdown and IBM because the GNU Java Compiler
      hasn't caught up with the pack?

      If you dont care about having a 100% free O/S, running no proprietary software whatsoever, then his article is NOT AIMED AT YOU.

      He is NOT trying to convince the pragmatic masses to stick to a substandard implementation. He's calling upon those who do want a Free environment, that if they think Java is the future of programming (at least for themselves), to either contribute to Free implementations or to adhere to them.

      There is really nothing radical, objectionable, or unusual in his article. The fact that is is a conservative, simple, and logic position shows me that the extremist, based upon your reaction, is YOU.

    • by J. J. Ramsey ( 658 ) on Monday April 12, 2004 @12:26PM (#8838408) Homepage
      "I generally respect RMS, but I have a problem with this. Like it or not Sun (and others via the JCP) set the Standard for Java. I fail to see how using the Standard is falling into a trap.

      The real reason Java would be unusable in Stallman's "Free World" is because the current, free compiler is sub-standard."

      And the current free compiler is substandard because Sun sets both the standard and creates the reference implementation. By the time the GJC guys have seen the latest updates to the standard, Sun has already implemented them in its own reference implementation. Inevitably, that means the GJC developers will *always* be chasing taillights.

      Why don't IBM and Blackdown have this problem? Because they use Sun's code as a starting point.

      So long as the status quo remains, it will be impossible for there to be multiple independant complete implementations of the current Java standard.
  • Or some other way of disambiguating all those "free"s scattered throughout his article. That word's as overloaded as a ctor. Perhaps a complementary program to RMS-Lint [] would be good?
  • Sun only features? (Score:5, Interesting)

    by deanj ( 519759 ) on Monday April 12, 2004 @11:14AM (#8837693)
    From RMS: "If you develop a Java program on Sun's Java platform, you are liable to use Sun-only features without even noticing."

    Does anyone have a clue what he's talking about? The "com.sun.*" libraries? How could you use those without noticing?

    Doesn't sound like this guy has ever programmed in Java.
    • by ozborn ( 161426 ) on Monday April 12, 2004 @11:34AM (#8837865)
      No, he does know what he is talking about. If a programmer uses an object from say java.rmi.server on Sun's platform, who is to say whether this feature is implemented in another virutal machine? Are you familiar with how up to date the dozens of other JVM's are with Sun's latest release of java? If no other JVM is implementing this, then it is effectively sun only, regardless of whether it is prefaced by com.sun or not.

      Also on sun's JVM it doesn't say com.sun, it is all just "java.whatever", "javax.whatever", etc... when you import a package.
  • by thogard ( 43403 ) on Monday April 12, 2004 @11:14AM (#8837694) Homepage
    According to the Borders metric, java is dead.

    The Borders metric is where you wanter into a Borders book store and count the shelf space allocated to each subject. Some subjects grow to several racks and then die out and others just sort of stay at their 1/4 rack for ever (like Ada, Fortran and C).
  • Is this right? (Score:5, Interesting)

    by jthulin ( 766465 ) on Monday April 12, 2004 @11:17AM (#8837714)
    Sun won't release the source code for their JVM and Java compiler, but they allow development of an open-source compiler and VM or a Java-to-C[++] translator which can be used for future-proofing today's Java applications. Therefore, programming- and CS-savvy amateurs and professionals should undertake such a project to improve their skills and make the world a better place in which to live.
  • Ross's comments (Score:4, Interesting)

    by Leomania ( 137289 ) on Monday April 12, 2004 @11:18AM (#8837729) Homepage
    Rick Ross made this parting shot in the close of his article:

    I hope you will join me in watching how things progress before we draw conclusions about this settlement (or was it a purchase?)

    The body of the article was well-written and I agree completely with his fundamental question -- where is Java in this settlement? I was shocked to hear pretty much squat about Java in the wake of the settlement, and I think his point that we must just wait and see is unfortunately correct.

    But this little jab right at the end wasn't in keeping with the rest of the article. I wish he had instead expanded upon the idea of "What sorts of things might there be in the settlement, both good and bad for Java and/or Sun?". It almost feels as though it was inserted by someone else, it trips up the reader (well, me anyway) so badly.

    - Leo
  • Java Trap (Score:5, Interesting)

    by technomancerX ( 86975 ) on Monday April 12, 2004 @11:18AM (#8837731) Homepage
    Ok, let's face it, there IS NO JAVA TRAP.

    Java is an open specification. The libs are open specifications. Just because the FSF hasn't been able to finish an implementation doesn't mean it can't be done.

    Stallman's argument about libraries being required to conform to the specs if they're publicly available is also a load of crap. Basically it only applies if YOU CLAIM TO IMPLEMENT THE API. In other words, don't claim to be J2EE compliant until you actually are. There is nothing stopping anyone from starting a project and saying "Out goal is to build a system fully compliant with API x." and developing it. The only restriction is you can't claim to be API x compliant until you are. That's a real hardship, being required to actually support the feature set you claim to.

    I'm sorry, I develop in Java (in addition to C, C++, Perl, and PHP) and I like to know that if something says it complies with specification X that it actually does.

    Also, as a side note, Java is not going anywhere. SAP, Oracle, and IBM have too much of an investment to let Java die. Sun could declare bankruptcy tomorrow and IBM would buy the technology tomorrow, guaranteed.

    • The Java Trinity (Score:5, Informative)

      by kherr ( 602366 ) <[kevin] [at] []> on Monday April 12, 2004 @12:07PM (#8838169) Homepage
      Java is three things:
      • the programming language
      • the class libraries
      • the runtime virtual machine

      Java the programming language is well-defined and documented and anyone can write their own compiler/interpreter for it, just as they would for Pascal or BASIC or Lisp.

      Java the class libraries are, in my opinion, one of the reasons for the success of Java. They are (for the most part) well thought-out and provide a lot of useful functionality (e.g., network, GUI, data structures) for developers that enables focusing on solving problems instead of doing basic stuff over and over. This is exactly the same type of thing that helped C take off in the 1970s with the standard Unix libraries and why CPAN exists for Perl. These libraries could be replaced and/or clean-room implementations created, which is indeed happening.

      The Java virtual machine is the component Sun has been controlling, for good reason. The JVM is what provides the cross-platform execution and consistent behavior. It also defines a lot of Java features that go beyond the language specification such as runtime class loading and heap management. These are powerful aspects of Java and to have inconsistent behavior would be nightmarish for developers (and was, early on).

      IBM and Apple are two companies that have developed their own JVMs that behave consistently with Sun's but are not written by Sun. IBM even has an open source JVM separate from their licensed one. There are other JVM projects in existence, at different stages of maturity.

      I agree completely that too many major companies have too much invested in Java to let Sun just nuke it or hose it over. Java is in a much more stable state than C#/.NET. Microsoft could announce tomorrow ".NET XP" which could be 180 degrees different from what is today, whereas Sun can't arbitrarily change the fundamentals of Java without losing a lot of support from the major players and individual developers who make Java successful.
      • Re:The Java Trinity (Score:5, Informative)

        by ciggieposeur ( 715798 ) on Monday April 12, 2004 @12:37PM (#8838566)
        IBM's JDK/JVM is Sun's JDK/JVM ported to IBM hardware with some enhancements for performance and added libraries (JCE, ORB).

        IBM's JVM is Sun's JVM. IBM did NOT invent a new JVM, and IBM's JVM is completely dependent on the licensing status of Sun's JVM.

        I worked for IBM in the WebSphere Tools group from 2000-2003. We got previews of the IBM JVM from Hursley every few months; we saw IBM's branded JVM a full year before the rest of the world did.

        Please let this meme die. IBM did NOT invent a new JVM. Sun still controls all of the viable JVM's in use. Kaffe's JVM is the only clean-room JVM *I've* heard of, and it is never used inside IBM.

  • by raptor21 ( 47540 ) on Monday April 12, 2004 @11:41AM (#8837932)
    I actually read the Stallman article (yeah I know this is slashdot). One thing bothered me as I read majority of the article is Stallman's use of GPL and free interchangebly.

    My main problem is "free" means free. But in the GNU context "free" means "GPL'd". There is a problem here GPL'd software is not really free, it is freedom with restrictions. Java is also free software with restrictions, mainly not being able to modify it. GPL goes one step further allows modification but with the restriction that the modifications also be made freely available. Thus GPL is a little more free than Java but not completely free in the true sense of the word.

    Suppose I released some software completely free. Free to use, modifiy and redistribute without realsing any of the modification under a new FSL (free software License). Said software would also be shackled when run with dependencies of GPL'd software which is not as free as the software I just released, lets call it the GPL trap. Or any software linked with GPL'd software must also be released under the GPL. Java doesn't require you to follow its licensing terms, one may release Java programs under the GPL.

    As I have just illustrated, different degrees of freedoms exist in the world and mean different things to different people. Java is free, as in no monetary cost to use, GNU software is more free as in it is free to modify, but there is also a definiftion for free as in "no restrictions, no cost" which the GPL'd software like GNU/linux is clearly not. So I would like Mr. Stallman to please stop using the word free interchangebly with GPL'ed software, so as not to confuse readers.

    Freedom is a deeply philosophical term of which excrutiatingly long discussions can ensue. However, Java is free, albeit with restrictions, GPL is a little more free but also with restrictions.
  • by gustgr ( 695173 ) <rondina@gmai[ ]om ['l.c' in gap]> on Monday April 12, 2004 @12:16PM (#8838268) Homepage
    I am a computer science student and I'm very envolved with the academic activities on my university. I have a scientific initiation* project based on testing mobile agents build in Java. The project is even afforded by a gov. agency.

    We are using Sun's JVM and compilers to build the agents and the testers. I was think about using gcj/classpath to build that programs, but that would be really 'reliable' ?

    How my project would be intepreted in scientific congress when people see it is not developed under Sun's JVM but on GNU's one ?

    I have always fought for freedom and I totally agree with almost all Stalman's words but to say us to use a free replacement for Sun's JVM that isn't even completely done doesn't sound very pleasant for the programmers. In my case, I don't know what would be the academic's or even my advisor's reaction to a sentence like: "This Java program, compiled under GNU's JVM, solves that and that problem this way ..."

    Before trying to "push" (don't take me as non-free person) a environment it is better to finish it don't you think ?

    * that's how it is called the first project the student have in the academic environment in Brazil
  • by innerweb ( 721995 ) on Monday April 12, 2004 @12:27PM (#8838430)
    Years ago, I decided not to get into Java for the very reasons that people are afraid it might die now. I kept on using Perl. I know, it is old, and is taking forever to come out with 6.x. It works, it is free, I have never seen the platform it does not now run on (though I know there are some), and it has a ton of support. Is it perfect? No. What language is?

    The real problem here is that the community in general has forgotten what a business is all about. Even my business. To make money. And when the squeeze comes on the primary lines of income (as it always does), the "charity" gets "changed" in ways the community does not approve of.

    It is the same reason I will not produce serious applications in .net. I have used it, it is neat, but it is locked up and problematic. If MS wants to make a change that breaks my code, my clients are in trouble. If you think they will not, go back to VB, VC++ et al. MS always makes changes that breaks things, and then they do force the change on you.

    Sun is yet another company that has tried to be a gallant knight in shining armor (all in the name of profit). If Sun kills Java for a few billion, what can we say? They own it. If Sun decides to let it go free, what can MS say? No payment?

    If we as a community really want to keep Sun's Java alive (not our Java), then we need to make it worth Sun's while to do so. Sun needs to turn a profit. Without that profit, they can not pay the people who write Java to write. Without a profit, there is no gatekeeper.

    If we all really want to keep Java, we need to reach into our pockets and pull out some money. If everyone contributed $100.00US to a fund (say the OSDN) earmarked to purchase Java and set it free (or to pay sun to keep it going), you might get what you need. You need to get 10,000,000 people to each pay their $100.00US to the fund (1 billion dollars US). Now, that is only half what the MS people are paying for whatever it is they are paying for, so we all might need to pay more than $200.00 each.

    Of course, you could always try to get a few thousand serious developers to start contributing to the development of Java in the wild.


  • by bfg9000 ( 726447 ) on Monday April 12, 2004 @12:37PM (#8838568) Homepage Journal
    As this thread progresses, I'm certain we'll find that a lot of people whine about and take cheap shots at RMS. Coincidentally, these are typically people who haven't accomplished anything useful in their entire lives except post witty one-liners and flames of others here on Slashdot. RMS' legacy is the GPL and a fast-growing freedom movement, mine is having Excellent Karma on a News for Nerds site.

    RMS actually tries to protect our freedoms, which is more than I can say for 99% of us, including myself. We mostly seem to care about what's the best DRM or how easily we can adapt to the corporations' new demands on us. We act like a slave nation. I remember reading a book about slavery in the Old South, and the amazing thing was that many slaves believed that slavery was ethical because they had been taught that they were an inferior people, and that the white overlords were justified in beating wayward slaves because it was their plantations and their profitability that would suffer from lazy slaves. The masters managed to get the slaves to see it from their perspective, and in the process, to forget the reality that was their own perspective. We are the same. This is fast becoming our way of thinking. We're not looking out to protect ourselves, but to be "fair" to the companies we have to deal with. The RIAA cries about lost sales. Software companies cry about free alternatives or piracy. Pretty much everyone cries about people making products similar to what they've already released, even though their design was just common sense. And we hear their cries, and often feel bad for the poor Multinationals whose sales are down 7%, leaving them with a meagre profit of about 5 billion dollars (after hiding some with crooked accounting, of course). Needless to say, the companies don't have this self-doubt and ethical dilemma. If they can get us to cave in and start down that "slippery slope of compromise" at all, they can continually and slowly take our consumer rights from us. Look at fair use, already on its deathbed. Timeshifting, which will soon be legislated to death. Copying, sharing, tinkering; all dying. Public domain vs. copyright.There's even crazy talk about the US outlawing free software. The balances are shifting hard and fast in favor of the corporations and against consumer rights. We the people generally have no ethical problem with proprietary software, spyware, or restrictions on our freedom as long as it is inobtrusive. Because we have bought the line that we don't OWN anything. We're only LICENSING our possessions AT THE SAME PRICE AS WE USED TO BUY THEM FOR. Pretty soon, we'll only be able to license our computer hardware. Since we won't own it, we will have NO legal right to privacy on it. And you know what? Give us a better media player or smoother GUI and we'll line up for it like lemmings.

    We tend to begin from the assumption that the corporations are right and ethical in their thinking. They spend massive advertising dollars to promote their claim that they occupy the moral high ground. This is often incorrect. We should always begin by doubting every position, but especially the status quo. I got a chance to talk to a few fairly famous musicians at Juno afterparties a few years ago, and yes, they were all thankful that the record companies supported them, but at the same time agreed that they were taking too big of a cut, had too much artistic control, and that the RIAA-type organizations were all crooked and greedy as hell. Some of the artists WANTED to put free songs online to get their names out or to reward faithful fans, but they were forbidden by their corporate masters. They aren't even allowed to play guitar and sing around a campfire without the Company's permission. So whose ethical viewpoint should we be listening to -- the artists themselves, or the middleman who packages the artists music? In a digital age, why are these middlemen even still around? If we keep them around and move to the digital download model, we've just added another layer of middlemen (Apple, Nap
  • by MikeMo ( 521697 ) on Monday April 12, 2004 @01:21PM (#8839061)
    I don't know about the rest of his article -- seems ok to me -- but his memories about Bill's "investment" in Apple are rather flawed:

    1) Apple did not abandon their Java compliance projects. Today, they are arguably among the best Java development and deployment platforms out there.

    2) It is hard to say Apple used the $150M to kill the clones. They had already been killed by the time Steve and Bill got together.

    My recollection of the event was that the big thing that Apple got was an endorsement from Microsoft, a notion that Apple wasn't going to die in the next few weeks.
  • by Anonymous Coward on Monday April 12, 2004 @01:26PM (#8839107)
    I've been watching the paranoia around the Sun/MS deal for some considerable time and I just don't get it. This is a huge good deal for Sun. There is no conspiracy here and nothing to be concerned about.

    What could Sun achieve by proceeding with its 2002 lawsuit? The lawsuit asked for $1 billion in damages; the settlement yields Sun $700 million for antitrust issues - less than what it wanted - and a further $1,250 million covering patent royalties - which is more than what it wanted. The only reason for continuing to persue the legal case would be on a point of principle. Sun can't afford this at the moment. The fact is that the EU ruling was a watershed - Sun can't hope for any more out of MS at this time. And Microsoft is doubtless hoping that by paying out it will derail the EU ruling. I doubt there is any more to this then that - Microsoft knew it would loose in the end, and litigation is bad for any company, but particularly one that is in the throws of taking on the EU. Sun has principles, which is nice, but can no longer afford them. The idea that Sun would cease development on Java (its most important product of the last few years, central to its Linux strategy going forward and worth a not inconsiderable amount of money (50 million USD from Nokia alone)) is as daft as imaging MS will now cease work on .NET and the CLR.

    As for the rest of the debate Java is in pretty good hands at the moment - Java developers have way more influence over it then .NET developers do over .NET. Come to think of it Java developers have more influence over .NET then .NET developers do. In the end Sun may well go under in which case IBM, BEA, Oralce, Nokia, or some other company with a major vested interest in Java will buy them out. It might be Microsoft I suppose, but it seems very unlikely to me.
  • Stallman's article (Score:4, Insightful)

    by akuzi ( 583164 ) on Monday April 12, 2004 @01:26PM (#8839111)
    From Stallman's article..

    > If you develop a Java program on Sun's Java
    > platform, you are liable to use Sun-only features
    > without even noticing. By the time you find this
    > out, you may have been using them for months, and
    > redoing the work could take more months.

    You could say the same thing for GCC.

    It's possible you link to a proprietary library without noticing. It's the same with any development platform. Does this mean you should avoid using the GNU compiler?

    The reality is that standard Java is so feature-rich and there are so many open-source libraries and frameworks around you very rarely (if ever) need to resort to using proprietary libraries (Sun or not).

Your code should be more efficient!