Slashdot Mirror


Gosling on Opening Java

An anonymous reader writes "It sounds like James Gosling's nudging Sun closer and closer toward open-sourcing Java, as requested variously by IBM, Eric S. Raymond, and Richard Stallman, though not by JBoss's Marc Fleury. 'Developers value Java's cross platform interoperability and reliability,' Gosling writes, adding 'If we do something to make Java even more open-source than it is already, having safeguards to protect the developer community will be something we pay a lot of attention to.' Surprisingly, 'the creator of the Java programming language,' as Sun usually calls him, seems to be at odds on this issue with his own CEO, Scott McNealy. So, who should have custody of the child, the father...or the boss?"

453 comments

  1. Well, legally... by Anonymous Coward · · Score: 4, Insightful

    The boss. They paid him for his work, so it is there's to do with as they please.

    1. Re:Well, legally... by Anonymous Coward · · Score: 0

      They paid him for his work, so it is there's

      It is there is? Where is?

    2. Re:Well, legally... by The_Mystic_For_Real · · Score: 2, Informative

      Actually, this was what the copyright ;aws were designed for. Just because you pay someone for something does not mean you own all rights to it. Think of every closed source program ever. The employee might still own it, though it is rare an employee will copyright it as opposed to the company doing it. Also, many employees have to sign a contract to say that anything they produce belongs to the company.

      --

      _____

      Thank you.

    3. Re:Well, legally... by generic-man · · Score: 5, Informative

      Copyright law defines something as a work for hire if it was produced by an individual at the request of a company. All rights to a work for hire are retained by the company who paid for the work to be created.

      Most of the employee contracts are supplemental to this definition. Many companies claim all rights to works created by employees without the explicit request of the company, as well.

      --
      For more information, click here.
    4. Re:Well, legally... by Feren · · Score: 5, Insightful
      [Also, many employees have to sign a contract to say that anything they produce belongs to the company.]

      It's been standard operating procedure for years for most companies to have any employee who might even touch programming sign such a waiver/contract that gives all rights to the employer. Even some of the higher education systems (what we traditionally viewed as a bastion of free innovation because of projects like those put out by Berkely, etc) are taking on this practice. It's gotten to be a very dog-eat-dog world out there and everyone's looking to keep their cards close to the vest in hopes of gaining an edge over their competitors.

      On the other hand it's generally a smart move on the employer's part to weigh the advice of the creator when they're about to do something with the project that the creator feels strongly about. They may not agree and ultimately they may not act on the employee's advice, but it's good form and wise business practice to at least listen to his or her opinion. Every once in a while these folks have an idea what they're talking about and it makes the employee feel as if his input is valued, meaning the company is less likely to lose a valuable resource.

    5. Re:Well, legally... by Anonymous Coward · · Score: 0
      What a meaningless and totaly uninformative post that totaly tries to be wrong, but isn't because it actuallys states zero facts.

      It is well established law that what you invent, write and create for your employeer, belongs to your employeer -- unless pre-employment agreements were made stating otherwise, or your employeer waives its rights.

    6. Re:Well, legally... by ron_ivi · · Score: 4, Insightful
      Parent wrote: "The boss. They paid him for his work, so it is there's to do with as they please."

      Which boss? And no, bosses can't always "do as they please" (Tyco). They have fiduciary responsibilities to make responsible decisions.

      Also, bosses can delegate authority.
      Just as the shareholders delegates some responsibility to the board, and
      just as the board deligates some responsibility to the executives,
      a high-level exec delegates some responsibility to middle level execs.

      Ultimatelly, they should be accountable to the shareholders - but where the chain of deletaing authority for software licensing stops probably depends on the management chain in place. There's no reason why this decision couldn't be delegated to a software-strategy person in some companies and be a board-level decision in others.

      IMHO a CEO _should_ delegate domain-specific decisions to the most qualified person (and I'm just speaking hypothetically, not about java/gpl now). Not sure about "Legally", though - somone else will say if a CEO has a fiduciary responsibility to delegate such decisions or not.

    7. Re:Well, legally... by persaud · · Score: 4, Informative

      Depends on state employment law. California is an at-will employment state, which means your employer has no ownership of work produced on your own equipment and your own time (you of course have to honor confidentiality and non-compete agreements).

      This means you can be fired at any time or quit at any time. It also permits switching between headhunters whose contracts explicitly prohibit such switching. State law trumps the letter of any contract. But maintaining the spirit of fair employment contracts is in the interest of all parties.

    8. Re:Well, legally... by xero314 · · Score: 5, Informative
      Contrary to popular belief there does not need to a contract in place for most works create by employees, at the request of an employer. Here is a quote from the U.S. Copyright Office, which does cover Sun's Java Copyrights.

      • In the case of works made for hire, the employer and not the employee is considered to be the author. Section 101 of the copyright law defines a "work made for hire" as:
      • * (1) a work prepared by an employee within the scope of his or her employment;

      To read more go to http://www.copyright.gov/
    9. Re:Well, legally... by cyborch · · Score: 2, Informative

      ...it is there's...

      there != their

    10. Re:Well, legally... by Anonymous Coward · · Score: 0

      In California, it's widely acknowledged (at least from the lawyers that I've talked to) that non-compete agreements here are also unenforceable.

    11. Re:Well, legally... by Anonymous Coward · · Score: 0

      Heh, just try firing somebody in CA because you "can be fired at any time." As somebody who has been an employer in CA let me tell you that that is so far from the reality of the situation as to not even be funny. Non-Compete agreements, as far as I know, aren't actualy enforcable anywhere, except in the case of the sale of a business.

      -HC

    12. Re:Well, legally... by haute_sauce · · Score: 1

      The way the headhunter (and employers) curtail the 'switching' is by using signing bonuses, which are either payable in full, or prorated, should the employee jump ship. But that was 'in the day', when kids fresh out of school could demand 120k/yr . Nowadays, they are happy to take any job that does not use the word 'fries' as part of daily business...

    13. Re:Well, legally... by Anonymous Coward · · Score: 0
      Of course! Without the current manager/engineer system that we're using now, there'd be
      1. no way to keep engineers in check.
      2. no places for people to stupid to be engineers to work.
  2. Why open Java? by JamesP · · Score: 2, Troll

    Please enlighten me? Why GPL Java?

    Java is pretty good right now.

    --
    how long until /. fixes commenting on Chrome?
    1. Re:Why open Java? by superangrybrit · · Score: 0, Troll

      And the parent post is moderated as Troll?

    2. Re:Why open Java? by BigGerman · · Score: 1

      and why is this a troll already?

    3. Re:Why open Java? by mindriot · · Score: 4, Informative

      Because it would be one hell of a Free software killer application. There's so many people using Java already, and Stallman's point against Java right now is that when writing code in Java (which many do simply because it's easy and beautiful to write in Java), you create dependencies to non-Free software making it practically impossible to run an entirely Free system using such dependent Free software.

      Consider this: if Java were Free, it could easily be the world's most used piece of Free software (before you say Apache or something, let's say 'most used by private persons')

      You might be a troll and I did bite, but it was just too good an opportunity to point out what Freeing Java could mean.

    4. Re:Why open Java? by JustinXB · · Score: 5, Insightful
      I don't believe bringing Java under an open source license would advance it any way, shape, or form.

      Yes, there be ports to other platforms (I'd love to see Java on *BSD). Yes, there'd be performance patches and probably security patches. But with this comes the down side to all open source projects: Fragmentation.

      One of Javas goals is to provide compile-once-run-anywhere. At the moment, it does a decent job of doing this. Other platforms do this better (Read: Inferno) but Java is trying. With fragmentation, compile-once-run-anywhere disappears and would be impossible to bring back.

      Let Sun has Solaris and Java. Stop trying to force them to open source their software. They already are the second largest contributor of open source software, the first being Berkeley.

    5. Re:Why open Java? by T-Ranger · · Score: 2, Insightful

      Open Source and GPL have very little to do with each other. GPLing something would Open Source it, but the inverse is not necessaraly true. I think that there is exactly one person who thinks that Java should be GPLd.

    6. Re:Why open Java? by T-Ranger · · Score: 1

      Because he equates Open Source with Free Software. Which is a mistake that was acceptable in the 20th century, but today is inexcuseable. He therefor must either be a moron (which there is not a moderation effect for), or a troll.

    7. Re:Why open Java? by Anonymous Coward · · Score: 0

      Why not just answer the question? What will open sourcing Java accomplish. A slew of forks that fuck up Java's cross-platform compatibility?

    8. Re:Why open Java? by Anonymous Coward · · Score: 0

      It could also mean the end of Java if there are many forks with incompatibilities.

    9. Re:Why open Java? by mindriot · · Score: 4, Insightful

      s/Java/Netscape/

      I'm sure people said the same thing when the Mozilla project came to life -- and see where they're standing today. Of course things might go wrong -- but we, the Free Software community, can have an influence on that. And frankly, we don't really want "forks with incompatibilities" either. I don't really think that "the end of Java" is a possibility.

    10. Re:Why open Java? by FuzzyBad-Mofo · · Score: 2

      and see where they're standing today

      With an incredible standards-compliant cross-platform software package that's competitive against a monopoly-backed behemoth against all odds?

    11. Re:Why open Java? by njcoder · · Score: 1

      Mozilla people sure have a weird way of defining success. Here's some Reality

    12. Re:Why open Java? by njcoder · · Score: 2, Insightful
      Ok, so you've pointed out how this benefits the Free software community. How would this benefit Sun?

      There is nothing stopping people in the Free software community from using, Java now.

    13. Re:Why open Java? by aristotle-dude · · Score: 0, Flamebait

      and that person would be RMS. Sorry GNU/RMS. :)

      --
      Jesus was a compassionate social conservative who called individuals to sin no more.
    14. Re:Why open Java? by Anonymous Coward · · Score: 0

      What's the point then? So rather than having Sun, with plenty of paid competent people working on it, we have a distributed development model with people doing this as a part time hobby?

    15. Re:Why open Java? by Ogerman · · Score: 5, Interesting

      I think that there is exactly one person who thinks that Java should be GPLd.

      As opposed to what other license? (L)GPL would probably be the best choice for Sun because it ensures that people cannot create proprietary forks (Microsoft anyone?). BSD or similar less freedom-guaranteeing licenses would be an awful choice. And if you think Java shouldn't be open source at all, well.. you're just an idiot. It's going to happen whether Sun wants it to or not. This whole discussion is only a question of whether they remain a player.

    16. Re:Why open Java? by Brandybuck · · Score: 1

      I am not a Java developer. I prefer old fashioned old fart languages like C and C++. Unfortunately .NET is being shoved down my throat.

      It might not be enough to check the Microsoft/Ximian Hegemony that is coming, but an Open Source Java might slow it down a bit.

      --
      Don't blame me, I didn't vote for either of them!
    17. Re:Why open Java? by aristotle-dude · · Score: 1
      Umm... yeah. Stop drinking that GNU/Koolaid.

      How does BSD provide less freedom? Are we talking about freedom of the code again? I'll let you on a secret. People can have freedoms and rights. Objects and information do not have rights. People can own information and inanimate objects.

      How do you expect Java to be open sourced without Sun's consent? It is the IP of Sun. Careful about calling people idiots when you make statements about Sun being forced to do something with their property.

      Open sourcing Java under any license would be a mistake. Numerous forks of the code would occur completely destroying the "write once, run anywhere" nature of java. Maybe you don't understand that not everyone runs either Linux or windows on their desktop (not to mention phones, set top boxes and PDAs). As a programmer of in-house proprietary software, I'm painfully aware of forking issues. At times we have two developers working on two future versions and releasing patches to the version in production. :D

      --
      Jesus was a compassionate social conservative who called individuals to sin no more.
    18. Re:Why open Java? by justsomebody · · Score: 1

      Exactly. Right way would be open sourcing but not allowing forks. Last thing I would like is to have 5-10 different JRE on computer, to get apps started.

      Open source, no forks and community involved under Suns supervision is the correct answer

      --
      Signature Pro version 1.13.2-3 release 83.5 beta3try7 after-breakfast edition
    19. Re:Why open Java? by Ogerman · · Score: 4, Insightful

      Yes, there be ports to other platforms (I'd love to see Java on *BSD). Yes, there'd be performance patches and probably security patches. But with this comes the down side to all open source projects: Fragmentation.

      Open Source fragmentation is a myth largely propagated a certain proprietary vendor's FUD campaign. Successful open source projects simply do not fork. Why? Because there's no interest and it's way too difficult with large scale software. There is one GNOME, one KDE, one Apache, one Linux kernel, one GNU Compiler Colection, one OpenOffice, etc. Similarly, an Open Source Java would be a large project with so much momentum that any unlikely attempts to fork would be rapidly ignored and wither away. Not to mention Sun would still hold the Java trademark..

      One of Javas goals is to provide compile-once-run-anywhere. At the moment, it does a decent job of doing this. Other platforms do this better (Read: Inferno) but Java is trying. With fragmentation, compile-once-run-anywhere disappears and would be impossible to bring back.

      Wrong again. Open Source developers are terrifically anal about sticking to standards. You don't see a dozen different C compilers each with a slightly different dialect do you? You don't see KHTML or Mozilla trying to extend web standards do you? Even more obvious: You don't see the existing clean-room Open Source Java projects deviating from Sun's specifications do you? -- and they're not even under legal obligation!! Fact is, an Open Source Java is the only way WORA can ever hope to fully live up to its promise. (btw, that's Write Once, not Compile.. minor correction) Three reasons: 1.) more ports 2.) better quality control 3.) less Java implementations floating about, whether proprietary or open.

      Let Sun has Solaris and Java. Stop trying to force them to open source their software.

      Nobody's trying to force Sun to do anything. They're simply asking because it would be mutually beneficial.

    20. Re:Why open Java? by Anonymous Coward · · Score: 0

      "I'll let you on a secret. "

      Uh... your mom and dad were sister and brother?

    21. Re:Why open Java? by Anonymous Coward · · Score: 0

      "As a programmer of in-house proprietary software"

      As opposed to in-house non-proprietary software? Do you understand why this is a goofy thing to write?

      No, probably not. Someone who doesn't understand the power of the GPL probably marvels at the "elegance" of the Windows operating system.

    22. Re:Why open Java? by Anonymous Coward · · Score: 1, Insightful

      Lets remember here that open-source in the GPL sense does not mean free.

      I sometimes wonder how many people reading /. know what the GPL restrictions on redistribution actually are.

    23. Re:Why open Java? by batkiwi · · Score: 1

      You didn't give a single reason to GPL java, though, apart from (paraphrased) "well then it would be GPL'd."

      I'm not saying I don't support GPL-ing java, but how you got moderated to "5" by essentially begging the question I don't know.

    24. Re:Why open Java? by aristotle-dude · · Score: 1
      Why don't you stop being a sniveling anonymous coward and get an account already?

      Do you understand that some open source products start out as in-house developed software? Do you also understand that a GPL'd project can be forked internally within a company and none of the changes have to be released back to the community if you only distribute it within your organization?

      I was trying to point out that I work on software "in house" and our software is solely proprietary and even it can have issues with forking.

      I do develop on windows and linux at work but have two macs at home. So, no I do not marvel at the "elegance" of windows. I curse at it every weekday.

      Please stop trolling an get an account already.

      --
      Jesus was a compassionate social conservative who called individuals to sin no more.
    25. Re:Why open Java? by sproketboy · · Score: 1

      I usually don't side with anon-cowards but seriously, post a reason - other than that pedantic free!=beer crap. Or are you the moron?

    26. Re:Why open Java? by Ogerman · · Score: 3, Insightful

      How does BSD provide less freedom? Are we talking about freedom of the code again? I'll let you on a secret. People can have freedoms and rights. Objects and information do not have rights. People can own information and inanimate objects.

      BSD does not insure that what people create and then desire to be free, remains free. There are both philosophical and commercial reasons why this "restriction" can be desireable.

      And, by the way, people cannot own information. They can only be granted a temporary monopoly on the use of information within the borders of a soverign state that grants such monopoly. Big difference philosophically and legally speaking. And, in case you're wondering, this viewpoint is fully backed up by the US Constitution and legal system. It's not "GNU/Koolaid" or hippie-speak.

      How do you expect Java to be open sourced without Sun's consent? It is the IP of Sun. Careful about calling people idiots when you make statements about Sun being forced to do something with their property.

      Sun's Java implementations are copyrighted by Sun. Clean-room Open Source like Kaffe / GNU ClassPath are not. (and legally they're not even Java(tm) but they effectively they are) Nobody ever said anything about Sun being forced to do anything with their own code. It would, however, be mutually beneficial if they released as much as possible under a freer license instead of fighting what they cannot stop.

      Open sourcing Java under any license would be a mistake. Numerous forks of the code would occur completely destroying the "write once, run anywhere" nature of java. Maybe you don't understand that not everyone runs either Linux or windows on their desktop (not to mention phones, set top boxes and PDAs).

      This is 100% pure recycled FUD. Since when do large, successful Open Source projects fork? Even more so, since when do Open Source projects go against established industry specifications? If Sun GPL'ed their Java code and somebody tried to fork it to be a jerk, nobody else would pay attention. It's entirely against the community ethos to fork without significant cause or out of spite. Practically speaking, large projects have gravity regardless.

      As a programmer of in-house proprietary software, I'm painfully aware of forking issues. At times we have two developers working on two future versions and releasing patches to the version in production. :D

      That's not forking, it's a management problem. Forking is when somebody purposely takes all the code and runs in a different direction.

    27. Re:Why open Java? by JustinXB · · Score: 4, Insightful
      Open Source fragmentation is a myth largely propagated a certain proprietary vendor's FUD campaign. Successful open source projects simply do not fork. Why? Because there's no interest and it's way too difficult with large scale software. There is one GNOME, one KDE, one Apache, one Linux kernel, one GNU Compiler Colection, one OpenOffice, etc. Similarly, an Open Source Java would be a large project with so much momentum that any unlikely attempts to fork would be rapidly ignored and wither away. Not to mention Sun would still hold the Java trademark..
      The Linux itself is fragmented across distros. Try taking a Red Hat binary to SuSE, there will be trouble.

      There are now 3 projects who will use the X windows standards, and I can tell you there will be fragmentation. Each will try to improve it somehow and bye bye compatibilty.

      There may be one GNOME and one KDE, but each use a different GUI toolkit resulting in the same effect as fragmentation.

      Wrong again. Open Source developers are terrifically anal about sticking to standards. You don't see a dozen different C compilers each with a slightly different dialect do you? You don't see KHTML or Mozilla trying to extend web standards do you? Even more obvious: You don't see the existing clean-room Open Source Java projects deviating from Sun's specifications do you? -- and they're not even under legal obligation!! Fact is, an Open Source Java is the only way WORA can ever hope to fully live up to its promise. (btw, that's Write Once, not Compile.. minor correction) Three reasons: 1.) more ports 2.) better quality control 3.) less Java implementations floating about, whether proprietary or open.
      GCC has it's own extensions, as does the GNU C library. Same goes for gmake. You can't compile software that use these extensions on Solaris using native compilers.
      Nobody's trying to force Sun to do anything. They're simply asking because it would be mutually beneficial.
      No, it would only hurt Sun and Java.
    28. Re:Why open Java? by aristotle-dude · · Score: 0, Offtopic

      No, only anonymous cowards are inbred. Why do we allow anonymous cowards in the first place on /.?

      --
      Jesus was a compassionate social conservative who called individuals to sin no more.
    29. Re:Why open Java? by aenters · · Score: 1

      GPL isn't the right license for Java in my opinion. Sun, or some other group, needs to maintain control over the language to ensure what happened to HTML doesn't happen in Java (MS HTML). We don't want Microsoft to make their own proprietary version of Java and 10 years down the road, every Java program will have to be designed for a different virtual machine. We need an open source license which leaves more control for this kinda thing, as I don't want to see a fork of Java that uses its own bytecode or uses "include" instead of "import" and so on.

      --
      where flamebait is +5 funny and funny stuff is -1 flamebait
    30. Re:Why open Java? by doc+modulo · · Score: 2, Insightful

      Satisfying the Open Source community is the only logical way to go for Sun.

      Sun is a hardware company, they sell high-price, high quality servers. They sell their own processors which are incompatible with Intel.

      To make everyone compatible with their servers they release the Java platform out into the world. Now everyone can run their programs on Sun hardware and hardware sales increase. As far as I know they don't make a lot of money out of software sales compared to their hardware sales.

      So their strategy rests on the fact that everyone is running programs on the Java platform. Sun needs to spread Java as far and wide as possible so they get the most possible customers for their hardware.

      A growing number of computer users are switching to open source/Free source, especially on the server side of the market. Open source software is going to grow bigger in the future so this group is important to have as a customer for Sun.

      Here's the big one. The open source community don't want Sun to "pull a Microsoft" on them! Who's to say that when Sun has spread the Java platform everywhere, they won't abuse their position to treat users the same way Microsoft is treating it's users?

      I'm not sure if Sun has completely embraced the idea of giving away the platform to increase hardware sales. They seem to want it both ways. Control of the platform as well as the increased hardware sales. I've heard people say that the Java spec can't be implemented in an open source way because of something in the license. I heard Sun was having arguments with the Blackdown team over their open source Java implementation.

      Sun has blocked Microsoft from Embracing and Extending the Java platform in the past using their power over the Java platform, this was a good thing, it ensured that Java was not fragmented and stayed a powerful platform to make users compatible with their servers. However, it seems that now, Sun must let go of some of it's power to satisfy the Free Source community and keep them as hardware customers. Strenght against fragmentation is good, but letting the Java platform become a little more open doesn't have to mean that it'll become weak against attacks. As long as Sun convinces the Open Source community that it can't hijack the Java platform for evil in the future, those people will use Java. Sun doesn't have to go much farther than that in my opinion but Sun has to make it clear to everyone they ARE basically giving away java control in return for more hardware sales. That attitude has to shine through in their actions.

      Then the Free source community might use Java more than mono's C#, Python, OCaml or whatever in the future. IBM sells services, Sun sells high-end hardware to more geeks, Microsoft slowly dies and everyone's happy.

      --
      - -- Truth addict for life.
    31. Re:Why open Java? by aristotle-dude · · Score: 1
      Kaffe/GNU ClassPath are nothing like java. They do not run on every platform supported by Java nor do they have all of the GUI functionality. I'm sorry, but having to install/configure additional compatibility libraries on each platform that is non-linux does not count.

      Again, you are focusing on the hobbist desktop and completely ignoring, cellphones, pdas and set tops not to mention app servers (J2EE) and the general desktop environments.

      To most people, Kaffe and GNU Classpath do not exist. Sorry to break it to you.

      --
      Jesus was a compassionate social conservative who called individuals to sin no more.
    32. Re:Why open Java? by AstroDrabb · · Score: 1

      Yeah, your reality != others reality (Moz = 10.1%). Stats can be changed to benefit anyone.

      --
      If Tyranny and Oppression come to this land,
      it will be in the guise of fighting a foreign enemy. -James Madison
    33. Re:Why open Java? by newhoggy · · Score: 1
      Please enlighten me? Why GPL Java?

      Personally, I don't care if Java is GPLed or not. GPL was raised because many believe that GPL is one of the more fork resistant open source licenses, which was McNealy's primary concern.

      Any GPL compatible open source license will do.

      I don't know if it wasn't intentional, but notice that Gosling in the article does not mention forking as a concern.

      If it passes the test suite, then it's considered behaviourally the same. Sure - the might be some subtle difference in the behaviour of the implementation but either the difference is desired (eg. one is a research project into making the VM faster) or there is an oversight in the test suite/specification which needs to be fixed.

      That's all we as users care about really (All that fuss about "open standards" remember?).

      So why is open source important?

      This is what Gosling said:

      Again yes, they do have the source. It's also true that anyone can get the source. The major restriction is that if folks want to redistrubute their changes, they have to pass the test suite. Which means that about the only thing that they could get from liberalization is to be able to skip testing.

      What we need to understand is that "skip testing" is a very important part of open source. That open source developers want to "Skip testing" doesn't they want to create incompatible implementations per se. It's just that the nature of the requires the distribution of implementations that don't pass the test suite in the course of development. How else will they do beta testing or share their code changes with other open source developers?

      Does the Java license allow this? The article doesn't say - and I don't know, but it is something to think about.

    34. Re:Why open Java? by Quattro+Vezina · · Score: 5, Insightful

      Of course, you're assuming it will be forked.

      KDE and GNOME have never been forked.

      GCC was forked once, as egcs, and the forks were later rejoined. It was also forked because GCC had serious problems--the fork was rejoined when GCC was effectively halted and egcs became the new official GCC.

      XFree86 was forked once, and only very recently. There was also a damn good reason to start a fork--this wasn't something done on a whim.

      --
      I support the Center for Consumer Freedom
    35. Re:Why open Java? by njcoder · · Score: 1
      "Stats can be changed to benefit anyone."

      That's funny, considering that OneStat statistics are based on numerous websites and the statistics you cited are only for W3Schools.com.

      Why not post links to apple.com's statistics and proclaim that Safari is the most popular web browser out there?

      The numbers presented by OneStat are inline with what I've seen in my own, and other, non computer oriented websites.

    36. Re:Why open Java? by BokLM · · Score: 2, Interesting

      open source does not mean fragmentation.
      Do you know php, perl and python ?
      Theses are 3 languages which are Open Source projects (and they are not the only ones). Is there any fragmentation ?
      Why couldn't it be the same with Java ?

    37. Re:Why open Java? by labratuk · · Score: 1

      But with this comes the down side to all open source projects: Fragmentation.

      FUD. How many pythons are there? How many perls are there? How many rubys?

      On the other hand, let's look at a language that traditionally has proprietary interpreters. Smalltalk. How many smalltalks are there? About 6. From what I can remember.

      But more importantly, say you're writing a bunch of your code in java. What happens if sun decides to discontinue java? Or if sun goes bust? That's fine for now, we have the tools. But what happens in 3 years time when technology moves on and linux has changed its' ABI again or windows gets a major update and java won't run?

      Or perhaps the whole world has moved on to a new platform. People start to abandon x86 or move to a new flavour of it (like the emergence of amd64). Maybe sun isn't around or just doesn't want to port java to your new platform. You're stuck. And all that code you've spent all those years writing is in limbo. It can't be run on modern machines. And if Sun and java still are around, they can dictate what hardware / os platform you migrate your apps to by selectively porting java to them.

      Face it. While you're writing your software in a closed java, Sun basically has you up the arse.

      --
      Malike Bamiyi wanted my assistance.
    38. Re:Why open Java? by Anonymous Coward · · Score: 0

      There is a big difference: They were open source from the start.

    39. Re:Why open Java? by evilWurst · · Score: 5, Insightful

      "Open Source fragmentation is a myth largely propagated a certain proprietary vendor's FUD campaign"

      Yes. A certain vendor that did itself try to fork Java, and now has a competing product that is extremely similar to Java. If Java went GPL, this company would not hesitate to muck around with it, just because they can, and the company has a history of doing anything it can to 'win'.

      "Successful open source projects simply do not fork."

      Sometimes yes, sometimes no. I would not expect Java to fork in the classic sense of the word (except the version that one particular company would make), but look at Linux as a whole; multiple distros out there, by companies, by individuals, by governments. That kind of "forking" alone would make it more difficult for WORA with Java; it'd increase the amount of tweaking neccessary. Every distro tweaking the JVM a little differently than the others... code then running great on some and flakey on others... well, maybe that's already true. Why make it worse, though?

      And what about BSD? I'd call that successful, and it has most definitely forked. Even its forks have forked. BSD is totally forked! :) I could see the same easily happening with Java; different bright folks wanting to take it in different directions, without a leader, ending up disagreeing too strongly and going it alone. Would Sun and IBM and Microsoft and Oracle and so on always agree on the next level to take Java to? I doubt that.

      For the record, I'm undecided about the opening-up of Java. I like the language, and it's the one I use the most. I'm not as against the idea as I may sound in this post.

    40. Re:Why open Java? by Ogerman · · Score: 4, Insightful

      The Linux itself is fragmented across distros. Try taking a Red Hat binary to SuSE, there will be trouble.

      This is an improper example. Try taking some C source and compile it on both RedHat and SuSE -- same results. Fragmentation would be if RedHat or SuSE modified the Linux kernel or supporting GNU software so much that code would need significantly re-written to work.

      There are now 3 projects who will use the X windows standards, and I can tell you there will be fragmentation. Each will try to improve it somehow and bye bye compatibilty.

      Not even close. Read this: http://www.xouvert.org/faq.html#2.1 It should be especially noted the strong emphasis on sticking to standards. There are many X11 implementations and they are very much compatible, though some are at different levels of specification advancement.

      There may be one GNOME and one KDE, but each use a different GUI toolkit resulting in the same effect as fragmentation.

      This is an example of diversity, not fragmentation of an original standard. Would you say that there should only be one programming language? I should hope not. Each has its advantages. It should be noted, of course, that there is a growing movement to harmonize GNOME and KDE, but that's another topic of discussion.

      GCC has it's own extensions, as does the GNU C library. Same goes for gmake. You can't compile software that use these extensions on Solaris using native compilers.

      It can be easily argued that the only reason C compilers have extensions like this is because there does not exist as active a standards body as say, W3C or SCP, to recommend changes before they are tried experimentally. There are also different ISO C versions. I believe some of the GNU C "extensions" are actually part of the C99 ISO spec. Solaris's native compilers may be using an older spec, but I'm not familiar. Also, you can use the -pedantic option with gcc and it will warn you of any code that uses extensions beyond C89. There is little to make me believe a similar scenario will exist with Open Source Java. The industry has learned since C/C++ the value of creating standards early and then sticking with them. As I said, Open Source developers tend not to deviate when solid standards exist. Java is a solid standard.

      No, it would only hurt Sun and Java.

      How much have GNU ClassPath and the various open JVM's hurt Sun and Java? And how much have they deviated from Java specifications? The answer to both is: not at all. If Sun relaxed licensing on code for their implementations, it would only serve to promote their own over the clean-room versions.

    41. Re:Why open Java? by Anonymous Coward · · Score: 0
      It's entirely against the community ethos to fork without significant cause or out of spite.

      Hey, that's not true. Without spite there wouldn't be XEmacs!

    42. Re:Why open Java? by AstroDrabb · · Score: 1
      They are not consistent with what I have seen. Mozilla also has a nice feature that lets you accept each cookie and it will remember your choice to accept or reject that cookie from that site. I personally OK each cookie for the first time and always reject onestat and other similar stat/tracking cookies (which I bet a lot of geeks do). You also need to look at the type of sites that onestat tracks. They are more of the sites that average Joe user goes to, so they are not getting accurate stats since many power users and geeks are not counted. If you look at the stats for more geeky sites, then you will see that Mozilla/Firebird has a nice share and the numbers are growing.

      I am a senior programmer for a fortune 500 with 140,000 employees. I just compiled a bunch of stats about our corporate intranet wich is accessible to home users. About 90% of traffic came from IE and MS Windows, the rest came from Mozilla and non-MS windows users. We actually still have about 5 users using WebTV, 3 users using Win 3.1, one user using SunOS and about 8% of all 140,000 home users are using Mac or Linux with Mozilla/Safari.

      Stats should always be taken with a huge grain of salt. If we base our stats on just /. traffic, Mozilla, Linux and Mac would seem to have a very large market share. If we take our stats from just MSN, then IE and MS Windows would show as being very dominant. OneStat is mostly mainstream and show that most of your average Joe Home user with little to no tech experience just use what they get when they buy a computer wich is MS Windows and IE.

      --
      If Tyranny and Oppression come to this land,
      it will be in the guise of fighting a foreign enemy. -James Madison
    43. Re:Why open Java? by JustinXB · · Score: 1
      FUD. How many pythons are there? How many perls are there? How many rubys?
      The big difference between those and Java are those have been open source from the start and Java has commercial value.
      Face it. While you're writing your software in a closed java, Sun basically has you up the arse.
      But that goes for anything closed source. If Cisco goes bust, you won't get firmware upgrades.
    44. Re:Why open Java? by rodgerd · · Score: 1

      I'm curious as to how I might join the parallel world you inhabit, where Java apps don't already make me use wierd and peculiar verions of the JRE installed in parallel.

    45. Re:Why open Java? by Anonymous Coward · · Score: 0

      "FUD. How many pythons are there? How many perls are there? How many rubys?"

      If the answer to your question is 1 each, then I strongly suspect that being open source is not much of a factor. Where are all the enhancements that are supposed to be possible with open source?

      On the other hand, some might argue that there are at least two perls; the one that everybody uses and the new one.

    46. Re:Why open Java? by BokLM · · Score: 2, Insightful

      and why do you think it is different ?

    47. Re:Why open Java? by Anonymous Coward · · Score: 0

      "Yes. A certain vendor that did itself try to fork Java, and now has a competing product that is extremely similar to Java. If Java went GPL, this company would not hesitate to muck around with it, just because they can, and the company has a history of doing anything it can to 'win'."

      You're no doubt referring to IBM and SWT, right?

    48. Re:Why open Java? by JustinXB · · Score: 2, Interesting
      This is an improper example. Try taking some C source and compile it on both RedHat and SuSE -- same results. Fragmentation would be if RedHat or SuSE modified the Linux kernel or supporting GNU software so much that code would need significantly re-written to work.
      Red Hat is modifying the kernel, don't read the headlines? Although it won't effect the userland, try apply many existing patches against the existing Red hat source code. There will be problems.
      Not even close. Read this: http://www.xouvert.org/faq.html#2.1 It should be especially noted the strong emphasis on sticking to standards. There are many X11 implementations and they are very much compatible, though some are at different levels of specification advancement.
      We'll have to wait and see.
      This is an example of diversity, not fragmentation of an original standard. Would you say that there should only be one programming language? I should hope not. Each has its advantages. It should be noted, of course, that there is a growing movement to harmonize GNOME and KDE, but that's another topic of discussion.
      It's fragmentation. There's no reason why KDE couldn't have used GTK. But they didn't, and now programs are less portable.
      It can be easily argued that the only reason C compilers have extensions like this is because there does not exist as active a standards body as say, W3C or SCP, to recommend changes before they are tried experimentally. There are also different ISO C versions. I believe some of the GNU C "extensions" are actually part of the C99 ISO spec. Solaris's native compilers may be using an older spec, but I'm not familiar. Also, you can use the -pedantic option with gcc and it will warn you of any code that uses extensions beyond C89.
      You admit it's fragmentation, good. You're learning.
      There is little to make me believe a similar scenario will exist with Open Source Java. The industry has learned since C/C++ the value of creating standards early and then sticking with them. As I said, Open Source developers tend not to deviate when solid standards exist. Java is a solid standard.
      Then you're a fool. There are millions of reasons why Java will fragment if it goes open source. The C standards are solid standards, but GNU made extensions anyway. Open source developers do what they want, standards or not.
      How much have GNU ClassPath and the various open JVM's hurt Sun and Java? And how much have they deviated from Java specifications? The answer to both is: not at all. If Sun relaxed licensing on code for their implementations, it would only serve to promote their own over the clean-room versions.
      Open source zealots would choose an open version over Suns clean-room version. It's what you people do. Sooner or later, the Sun version isn't mainstream.

      IBM, for example, could fork the code and really open up to the community. The entire open source community gets behind the IBM version and, after awhile, Sun disappears.

    49. Re:Why open Java? by njcoder · · Score: 1
      "They are more of the sites that average Joe user goes to, so they are not getting accurate stats since many power users and geeks are not counted."

      That's the point. Joe User makes up the majority of computer users. Also most companies have standardized on IE, after Netscape stopped being a stable alternative.

      When your fortune 500 company standardizes it's web browser to Mozilla on the desktop, then you can come back and claim some sort of victory.

    50. Re:Why open Java? by AstroDrabb · · Score: 1
      Numerous forks of the code would occur completely destroying the "write once, run anywhere" nature of java.
      Stop smoking crack and spreading FUD. No one would use all the little silly forks. The official fork would still be used. Look at the Linux kernel. There are other version for specific tasks such as real time OSes and people who need those versions use it. However, the strong majority still get the kernel from kernel.org, even the vendors that add a lot of patches such as Red Hat. Who in the world would use Joe's Java Fork for any real production work? Do you think enterprises would? How about JBoss, Bea, IBM, Oracle etc? Nope. Forking is a non-issue, please give me one example of OSS software that has forked where the original official version was still doing its job? Many people may say XFree. However, XFree became stagnant, and X.org came around to stop XFree from dying since most of OSS software depends on a good X implementaion. So here, forking actually saved the day. I would like to know of one instance of where forking has killed the original product where that original product was actually continuing to improve and meet the end-users needs?
      --
      If Tyranny and Oppression come to this land,
      it will be in the guise of fighting a foreign enemy. -James Madison
    51. Re:Why open Java? by iroberts · · Score: 2, Funny
      Successful open source projects simply do not fork. Why? Because there's no interest and it's way too difficult with large scale software. There is one GNOME, one KDE, one Apache, one Linux kernel, one GNU Compiler Colection, one OpenOffice, etc.

      Not to mention one Emacs, one XEmacs.

    52. Re:Why open Java? by ClosedSource · · Score: 1

      "BSD does not insure that what people create and then desire to be free, remains free."

      Sure it does. Code that has the BSD license is free forever. What it doesn't do is force those who incorporate the code in their own projects adopt the same license.

      So under the BSD license whoever writes the line of code gets to determine whether it's free or not. That's sounds quite fair to me.

    53. Re:Why open Java? by JustinXB · · Score: 1
      BSD or similar less freedom-guaranteeing licenses would be an awful choice. And if you think Java shouldn't be open source at all, well.. you're just an idiot
      You're the idiot. The GPL removes freedom, the BSD grants freedom. Stop buying into the GNU foundations misinformation.

      Don't even get me started on your "It's going to happen whether Sun wants it to or not." line.

    54. Re:Why open Java? by westlake · · Score: 1
      Yeah, your reality != others reality (Moz = 10.1%)

      But OneStat's numbers look much the same as those of the Google Zeitgeist.

    55. Re:Why open Java? by Anonymous Coward · · Score: 0
      Amen brother. I work for a fortune 500 as a senior programmer. We did an internal evaluation and paid several external, non-biased companies to evalute our resources and help us pick if our IT should move to Java or .Net. The end result came out to Java. We did our first few projects in Java and it was very nice. We developed a beautiful Java framework for client and J2EE applications that handled DB access, LDAP, security, encryption, you name it. However, a few PHB's were infulenced by MS sales guys and all of a sudden out of now where, .Net became the new standard. It POed me and other developers to no end. Our Java framework was open and worked on any platform. We got our first few Linux server in that were running BEA, etc. Now, we are again locked into just one platform and one development environment, MS. I think .Net and C# are nice, though I don't think they are any better then Java/J2EE. They both have their pros and cons.

      I personally don't think the mono/GTK#/Ximian/Novell stuff will last. Why? Because of MS patents. If mono ever grabbed a portion of the market, MS would stop it quick.

    56. Re:Why open Java? by Ogerman · · Score: 4, Insightful

      Yes. A certain vendor that did itself try to fork Java, and now has a competing product that is extremely similar to Java.

      What this proves is that it doesn't take Sun Open Sourcing their own implementation for a fork to occur! And yet, the existing Open Source implementations of "Java" are not forking from the spec.

      If Java went GPL, this company would not hesitate to muck around with it, just because they can, and the company has a history of doing anything it can to 'win'.

      How exactly could they muck around with a GPL (or similarly licensed) Sun Java to win? They couldn't release proprietary versions. They couldn't make changes without telling everyone. They couldn't completely fork the code and still call it Java (Sun trademark). And they don't even need Java anymore since they have .NET and CLR. MS is really out of this picture. Oh, one more thing: they won't touch anything GPL with a ten foot pole because that would only further legitimize it to those on the fence.

      Sometimes yes, sometimes no. I would not expect Java to fork in the classic sense of the word (except the version that one particular company would make), but look at Linux as a whole; multiple distros out there, by companies, by individuals, by governments. That kind of "forking" alone would make it more difficult for WORA with Java; it'd increase the amount of tweaking neccessary. Every distro tweaking the JVM a little differently than the others... code then running great on some and flakey on others...

      Linux distros are not a proper comparison because they are a conglomeration of very diverse software. Here, we're only about talking the JVM and a set of libraries. There's no incentive to fork and any 'tweaking' would only be within the implementation of the specs. With Sun still holding the trademark, they would still be the sole source of endorsement. So "Bob's J*** Derivative" could fork and tweak to heck and back, but typically only experimenters would use it. And if they came up with something really great that SCP approved of.. cool! roll it back into the official codebase that normal people use.

      well, maybe that's already true. Why make it worse, though?

      Because there's virtually nothing to lose and a lot to potentially gain.

      I could see the same easily happening with Java; different bright folks wanting to take it in different directions, without a leader, ending up disagreeing too strongly and going it alone. Would Sun and IBM and Microsoft and Oracle and so on always agree on the next level to take Java to? I doubt that.

      Sun would still be a strong leader, even if they Open Sourced their implementations. Weak leadership or poor quality is what encourages forks. As for IBM and Oracle contributing, that's what the SCP is for. It works and is well established. Why would anyone want to diverge? All that would do is make them look bad.

      For the record, I'm undecided about the opening-up of Java.

      Java is already being opened-up. (http://www.kaffe.org/links.shtml) It's just a matter of how long that takes. If Sun helped out, it would happen a lot sooner and dramatically increase their influence over the whole 'open Java' scene.

    57. Re:Why open Java? by nathanh · · Score: 2, Insightful
      Please enlighten me? Why GPL Java? Java is pretty good right now.

      A GPL Java might become a standard part of the Linux desktop (really GNOME/KDE desktop). Right now it doesn't even rate on the meter.

      I can appreciate Sun's position. They want to avoid a fork and the current Java license was a good attempt. Unfortunately it's too restrictive for most Linux distros. Oh sure, I can install a free JVM like Kaffe or Jikes but nobody seriously thinks they're "there yet". And the majority of value in Java isn't the language or the JVM. The value is in the class libraries. The free class libraries definitely aren't there yet.

      So I'm on Debian and I can't install a decent Java environment from the primary apt archives (only from third party apt sources). And if it's not part of the standard distribution then nobody is going to target it for their applications. I see a lot of enthusiasm for Java anyway, but it's mostly in the webspace where people are expected to be intelligent enough to download and install Sun's J2SE by themselves. Java isn't "integrated" with Linux like Perl or Python or Bash has been integrated. An open source J2SE would allow it to be a standard part of Linux, alongside Perl and Python. It doesn't have to be Sun's J2SE either, but none of the other J2SE implementations look like they'll be finished this decade, so Sun's J2SE is the only practical choice.

      Think of it this way. Nobody seriously thinks that the majority of apps for a future version of GNOME will be written in C. It's hard to write C code. You have to do your own memory management. It takes a lot of skill and a lot of effort. Even the "flagship" GNOME applications like RhythmBox and Galeon have their fair share of memory leaks and segmentation faults. GNOME needs a framework and language for writing simple apps. Stuff like image viewers and music players and cheque-book balancers. Stuff that isn't performance critical. Take a look at the current apps being written for MONO, like Muine. They're written in C# and use the Sharp framework but the performance is really good. Because modern apps don't do a lot. A modern application is just glue between the underlying libraries and objects. An interpreted language like C# is fine for that.

      So it must really burn Sun's boots that there is a good chance that a future version of GNOME will promote MONO for writing Linux desktop applications. Sun knows that would be the death blow for Java on the desktop. Linux and Microsoft in arms against Java, who would have imagined that would ever happen! It's in Sun's best interest to ensure that Java is the preferred applications language for the GNOME desktop. But that's never going to happen with the current license.

    58. Re:Why open Java? by Ogerman · · Score: 1

      Kaffe/GNU ClassPath are nothing like java.

      Uh.. they're everything like Java. They're just behind on implementing the newer specs.

      They do not run on every platform supported by Java nor do they have all of the GUI functionality.

      Even Sun's JVM doesn't run on every platform supported by Java. (-: As for GUI stuff, it's still in the works, though SWT will probably be possible before AWT or Swing since it's already open.

      I'm sorry, but having to install/configure additional compatibility libraries on each platform that is non-linux does not count.

      Invalid argument. You're criticizing a young but rapidly growing project for not being what you want today. Who cares. Wait another few years and keep using the official Java implementations until then.

      To most people, Kaffe and GNU Classpath do not exist. Sorry to break it to you.

      Only because they're not completed yet. I don't use them yet and I never said it was possible to use them in place of the complete Sun/IBM Java runtimes today.

    59. Re:Why open Java? by AstroDrabb · · Score: 2, Interesting
      When your fortune 500 company standardizes it's web browser to Mozilla on the desktop, then you can come back and claim some sort of victory.
      I work on back-end servers, middleware and web apps. When we develop web apps, they are standards compliant and do work on Mozilla, IE, and other browsers so there is no need to "standardize on IE". In fact, the majority of problems reported from home users have been from IE users that have had their computers taken over by spyware and the like thanks to the great security of IE. It would save most companies tons of money in support if they did "standardize" on Mozilla.
      --
      If Tyranny and Oppression come to this land,
      it will be in the guise of fighting a foreign enemy. -James Madison
    60. Re:Why open Java? by AstroDrabb · · Score: 1

      Yes I know. It is hard to pick whose stats to accept. Google's Zeitgeist show Mac at 4% and Linux at only 1%, while this site shows IDC analyst showing that Linux 25% of the new server market an 2.8% of the desktop which is almost the same as Mac on the desktop. It is hard to know whose "stats" to accept anymore : )

      --
      If Tyranny and Oppression come to this land,
      it will be in the guise of fighting a foreign enemy. -James Madison
    61. Re:Why open Java? by T-Ranger · · Score: 1

      BSD does not insure that what people create and then desire to be free, remains free. There are both philosophical and commercial reasons why this "restriction" can be desireable. Bull fucking shit. The BSD grants specific things. GPL grants different specific things. If a given programmer releases things under the BSD then that is what he wants. The choice of license is up to the programmer. If you want things to "alwas be free", then choose the BSD. Who is forcing people to choose BSD?

    62. Re:Why open Java? by Ogerman · · Score: 3, Insightful

      Red Hat is modifying the kernel, don't read the headlines? Although it won't effect the userland, try apply many existing patches against the existing Red hat source code. There will be problems.

      Exactly.. won't affect userland. Which is what I was talking about. I never said distros don't patch the kernel. On the other hand, you can always plug in a virgin kernel without issue.

      It's fragmentation. There's no reason why KDE couldn't have used GTK. But they didn't, and now programs are less portable.

      It seems by your definition, the simultaneous existance of C, C++, and Objective-C is an example of fragmentation. If so, that's patently silly. KDE didn't choose GTK because at the time it was vastly inferior to Qt. Fragmentation would be if KDE had split off of the GNOME project.

      You admit it's fragmentation, good. You're learning.

      I never said that smartass. C/C++ doesn't have the level of standardization that Java does because of its history. Modern languages do and Open Source implementations of those languages are on spec with high precision.

      Then you're a fool. There are millions of reasons why Java will fragment if it goes open source. The C standards are solid standards, but GNU made extensions anyway. Open source developers do what they want, standards or not.

      The C/C++ standards are *now* becoming solid, but they have an enormous history of variation. Some things that are "traditional C" are not part of the ISO standard and this is why GCC supports them unless you turn off support.

      Java already is going Open Source and it's not fragmenting yet. Get your head out of the sand. A forked Java is not in anyone's interests and there's nothing to suggest it will ever happen. It very easily could have by now, but it hasn't. And I'm talking about all the proprietary, non-Sun implementations even.

      Open source zealots would choose an open version over Suns clean-room version. It's what you people do. Sooner or later, the Sun version isn't mainstream.

      You mean: Open Source advocates will choose their own open clean-room version because its the only one they can legally redistribute and it's just as good if not better than the proprietary versions. Sun's version won't be mainstream too much longer if they don't find a way to participate in the inevitable change.

      IBM, for example, could fork the code and really open up to the community. The entire open source community gets behind the IBM version and, after awhile, Sun disappears.

      IBM's code is based on Sun's. They can't legally open it. Now, suppose Sun was to GPL their implementation. IBM could participate openly, but they still wouldn't fork because it would break all compatibility and everybody would cry foul.

    63. Re:Why open Java? by Paradise+Pete · · Score: 1
      'm curious as to how I might join the parallel world you inhabit, where Java apps don't already make me use wierd and peculiar verions of the JRE

      OS X, for one.

    64. Re:Why open Java? by T-Ranger · · Score: 3, Informative
      The reasons are well documented and well understood.

      .... Or do you want a different reason why the grandparent post was modded a troll? It doesnt need any better reason then that.... You yourself recogonize the topic as being "crap".
    65. Re:Why open Java? by njcoder · · Score: 1
      You don't seem to read what you write so let me point out how you disprove your own statements.

      "When we develop web apps, they are standards compliant and do work on Mozilla, IE, and other browsers so there is no need to "standardize on IE""

      "When we develop web apps, they are standards compliant and do work on Mozilla, IE, and other browsers so there is no need to "standardize on IE""

      So much for no reason to standardize on Mozilla. In fact that sounds like a pretty good reason to do so. If you're not developing using .Net and using MS specific extensions to tie into your backend applications you don't need IE.

      I'm not saying standardizing on Mozilla is bad. I like Mozilla. But having a bunch of geeks flaunt how much better it is means nothing. If it's not being adopted by the general public or corporate community then all it is is a decent web browser for the relatively few people that choose to run a linux desktop.

      Being good isn't good enough, you have to be popular too.

    66. Re:Why open Java? by runderwo · · Score: 1
      Wow, aren't we smug? Maybe you might learn something if you paid attention instead of contriving haughty comebacks to "you people".
      Red Hat is modifying the kernel, don't read the headlines? Although it won't effect the userland, try apply many existing patches against the existing Red hat source code. There will be problems.
      Wow, big fucking deal. Your patches might not apply against a particular vendor's private source tree. Why is this an issue for Linux application programmers again?
      There are many X11 implementations and they are very much compatible, though some are at different levels of specification advancement.
      We'll have to wait and see.
      Wait and see? X11 has been around for, oh I don't know, 15 years now? How much longer do you have to wait to be convinced that designing an open, extensible spec from the beginning is a recipe for interoperability and compatibility, whether you like open source or prefer your software nice and closed.
      It's fragmentation. There's no reason why KDE couldn't have used GTK. But they didn't, and now programs are less portable.
      No reason? How about the fact that GTK+ was pretty much unusable in 1998? How about the fact that KDE developers typically prefer a native C++ GUI library? Is there no room for individual choice or competition in the world of software development? Do you really think GTK+ would be as advanced as it is today if it hadn't been for the hundreds of people hacking on it who were sneering at Qt and saying "We can do it better"?

      Only recently have these toolkits even approached a decent level of functionality. To coincide with that, interoperability standards began to be published on freedesktop.org. If KDE or GNOME does not conform to those standards, it is considered a bug. How much more can you ask for? Tell me you prefer Motif or something, since you seem to be sucking Sun's cock so cheerfully.

      You admit it's fragmentation, good. You're learning.
      You really do resent people having choices in this world, don't you? GNU is free to implement whatever extensions they want. They also provide -ansi and -std=? to ensure that if you want no part of those extensions, none will slip by. GCC for years had things that the C99 standard just showed up with, such as inline functions, variadic macros, etc etc. What's better, an extension that can be disabled at the programmer's option to avoid straying from the standards, or nothing at all?
      Then you're a fool. There are millions of reasons why Java will fragment if it goes open source. The C standards are solid standards, but GNU made extensions anyway. Open source developers do what they want, standards or not.
      Out of millions of reasons, you haven't bothered to list one. Look at Mono. Is it "fragmenting"? Why would anyone bother? Sun's Java distribution would be the reference Java distribution of the entire free software world. Far from encouraging forking and incompatibility, I think developers would leave the various incomplete Java projects behind and work on the one true Java. You're welcome to your opinion, but you have provided absolutely no prior occurrences to back up your baseless assertions that Open implies Forking and that Forking implies Incompatibility.
      Open source zealots would choose an open version over Suns clean-room version. It's what you people do. Sooner or later, the Sun version isn't mainstream.
      Please, a little more vitriol in your sneering. Have you ever considered that Sun might want to wash its hands of being the primary supporter of Java? You don't know one way or the other, so making sarcastic comments about what might happen is pointless.

    67. Re:Why open Java? by Ogerman · · Score: 1

      The choice of license is up to the programmer. If you want things to "alwas be free", then choose the BSD. Who is forcing people to choose BSD?

      Who ever said anything about forcing. Wasn't me. I just said GPL can be desireable because it prohibits proprietary forks of free code. End of story.

    68. Re:Why open Java? by ninjadroid · · Score: 1

      Truly your hand-waving is quite impressive. You aren't the first person to spread FUD about FOSS forking, and you won't be the last to keep doing so in spite of reality.

    69. Re:Why open Java? by njcoder · · Score: 1
      Damn, was on phone... second quote should be....

      "In fact, the majority of problems reported from home users have been from IE users that have had their computers taken over by spyware and the like thanks to the great security of IE. It would save most companies tons of money in support if they did "standardize" on Mozilla."

    70. Re:Why open Java? by Anonymous Coward · · Score: 0

      Java isn't beautiful. Haskell is beautiful. Java is grotesque.

    71. Re:Why open Java? by Ogerman · · Score: 2, Insightful

      So under the BSD license whoever writes the line of code gets to determine whether it's free or not. That's sounds quite fair to me.

      Not necessarily. It encourages proprietary free-riding on the efforts of the community rather than a healthy responsibility to give back. That's only good if you don't believe OSS is more than a toy and don't care what direction the industry goes. In the commercial realm, GPL prevents your competitors from holding back their improvements to your code, again free-riding. Thus GPL is more like a social contract than a simple give-away.

    72. Re:Why open Java? by Anonymous Coward · · Score: 1, Insightful

      You've no doubt never downloaded an IBM JRE, right? SWT is not in IBM's Java.

      IBM has not forked Java with SWT, it has provided a separate piece of software that it has decided is useful in Eclipse, and that some others have used in their own projects.

      Are you suggesting that someone should have a veto over what kind of software may be written in Java?

    73. Re:Why open Java? by the+MaD+HuNGaRIaN · · Score: 3, Insightful

      Have you forgotten?

      Java was ALREADY forked by none other than our good friends in Redmond.

      "Some vendors, notably Microsoft, have insisted on adding platform-specific features (for example, in Microsoft's case, for Windows) and Sun has reacted strongly....Sun sued and won both damages (some $20 million dollars) and a court order enforcing the terms of the license from Sun." source

      And I really think this is the type of thing that would pollute the language and destroy the whole concept of the platform, and as Marc Fleury points out, Sun's oversight is really what's holding the developer community and the platform together.

    74. Re:Why open Java? by N1KO · · Score: 1

      Where are all the Perl forks? TCL? Python? Ruby? Where are the RedHat-only binaries?

      If supporting C99 makes gcc a fragmentation of C then you haven't realized Sun has made many changes to Java, making newer code incompatible with older jvm's, and there are already forked versions of java (the JVM included in Windows 98, C#/.Net).

    75. Re:Why open Java? by ClosedSource · · Score: 1

      "Not necessarily"

      I'm not sure which of my points you are attempting to refute. You don't believe that the BSD license allows each software writer to choose his own license? Or you don't think it's fair?

    76. Re:Why open Java? by spectre_240sx · · Score: 2, Insightful
      But that goes for anything closed source. If Cisco goes bust, you won't get firmware upgrades.
      True, but then again, you haven't put months of labor into those switches / routers, etc. either. They can be replaced if they fail, whereas a program written in a sudenly deprecated language has to be ported, meaning a lot of time and money down the drain.
    77. Re:Why open Java? by spectre_240sx · · Score: 1

      I may be out of my league here, but logically it would seem to me that if you have problems with forking in-house, then your programming staff needs to have better guidelines.

    78. Re:Why open Java? by aristotle-dude · · Score: 1
      My bad. I meant branching. But branching can lead to forking where you have two incompatible branches of code with an older release having changes that have to be merged manually into later releases if the later releases touch the same area of code.

      It is not a matter of guidelines but rather changing or misunderstood requirements collected during the analysis phase before the coding starts. Sometimes changes have to be made before the next release because of changes to third-party interfaces. I also have to deal with interfacing with government information systems for reporting (to the government) purposes which can change their interface without much notice.

      There are also times when bugs are discovered after the QA cycle and the software has been deployed to production.

      --
      Jesus was a compassionate social conservative who called individuals to sin no more.
    79. Re:Why open Java? by cpghost · · Score: 0

      And if you think Java shouldn't be open source at all, well.. you're just an idiot. It's going to happen whether Sun wants it to or not.

      Everyone can download SUNs Java implementation source code, if they submit to their license agreement. If you want to compile Sun's JDK on FreeBSD, that's the only way.

      So the source is not exactly "open", but it's certainly not secret!

      Oh, and the BSD license is not a less freedom-guaranteeing license. The opposite is true; esp. for developers. But that's another story.

      --
      cpghost at Cordula's Web.
    80. Re:Why open Java? by killjoe · · Score: 4, Insightful

      Let me.

      It would help propagate java further by having it included by default in every single linux distribution.

      The OSScommunity could fix some of the long standing bugs in teh JVM. The bug parade also include tons of feature requests which although very popular are not important to sun. If Java was open sourced these feature requests would be implemented and make java a better platform.

      They could save money that they spending on java development now.

      Last but not least. It would prevent java from becoming another cobol. Java is facing heavy competition from .NET. In a year or so parrot will come out of beta and preliminary results show that it will be faster then the JVM. If parrot fulfills it's promise (and there is no reason to think that it won't) you'll get all the advantages of the JVM while being able to use perl or python.

      Parrot has the potential to be a very disruptive development for java. Sun needs to be proactive about defending against it and .NET/mono. Right now they are simply pretending that there is no threat and they can go along like they always have.

      --
      evil is as evil does
    81. Re:Why open Java? by dossen · · Score: 1

      Sure it grants freedom, both licenses grant some form of freedom, there is just a big difference between who is free to do what. With the BSD-style licenses the reciever of the code is free to treat it as their own, except attributing it to the original author and such things. With the GPL the people who use the product are free to get and use the code, at the cost of having to pass on their improvements.

      I don't think you can get absolute freedom for all. In the BSD case anyone with enough resources can add enough to the code, closed, that someone you depend on will choose it, thereby forcing you to choose the closed version. In the GPL case the reciever is not granted the right to withhold any improvements, to use as leverage for a business model.

      In either case you are getting more freedom than under propritary licenses. It is only a matter of choosing which kind of freedom you want to give the world: The freedom to always use anything that comes from your code, or the freedom to take your code and use it as their own. The choice is yours to make, I just happen to belong to the camp that thinks that the GPL provides a greater net benefit to the community as a whole.

      And as for "It's going to happen whether Sun wants it to or not." just consider GCJ, Classpath, IKVM, and Kaffe. Given enough time and resources, there is nothing short of patents (which might be circumventable) to prevent them from becoming fully compliant implementations of the java standard.

    82. Re:Why open Java? by synthespian · · Score: 1

      -"Sun, or some other group, needs to maintain control over the language to ensure what happened to HTML doesn't happen in Java (MS HTML)"

      You are talking absolute nonsense! This has nothing to do with GPLing Java (or not). "Control over a language" is not necessary when you have a language specification. Various languages have one: Common Lisp, Eiffel, Scheme, ML, C, etc. Once you have a specification, people go and implement it. And there will be different, competing implementations, yes. That is a Good Thing.
      For sure, for there to be a specification, there has to be set up a commitee, I believe it's a requirement by the overseers (ANSI, ISO, ECMA) of the specification process.
      The fact that in the Open Source world we have all these scripting languages - Perl, Python, PHP, Ruby, what have you - that do not have a specification but are in continuous flux of implementation due to the continuous change of mind of their designers is probably what is confounding you.
      My suggestion: learn a /real/ programming language. You will live a happier life.

      --
      Main difference between the BSD license and the GPL license: one is from California and the other is from Massachusetts
    83. Re:Why open Java? by mindriot · · Score: 1

      That wasn't the point of my post. My post's parent argued about the end of Java. I never said everything was alright with Mozilla. But clearly it hasn't been their end because of "forks and incompatibilities", has it? You shouldn't just look at market share. A Free project cannot just be about market share! A Free software project is about producing a valuable piece of software that is, well, Free as in speech. And the Mozilla people have managed that quite well.

    84. Re:Why open Java? by MobyTurbo · · Score: 1
      I'd love to see Java on *BSD

      Java is already available on FreeBSD, DragonFly BSD, and NetBSD. FreeBSD even finally has a binary version available for download (the "Diablo" project) so you don't have to neccesarily download the JDK source and a Linux JDK (to be run with binary emulation) in order to build and bootstrap it, a lengthy process.

      Diablo currently is 1.3 though, but reportedly a 1.4 version is going to be ready soon, jdk1.4 in ports is basically production-ready and almost ready to pass Sun's required complience tests for a new "Diablo" version.

    85. Re:Why open Java? by FuzzyBad-Mofo · · Score: 1

      I happen to currently contract to a Fortune 500 company for my web development expertise. Guess which web browser comes first in my compatibility tests.

    86. Re:Why open Java? by Anonymous Coward · · Score: 0
      Because it would be one hell of a Free software killer application.

      What kind of reason is that? Only a free software zealot would care.

    87. Re:Why open Java? by the_womble · · Score: 1
      There was also a damn good reason to start a fork--this wasn't something done on a whim.

      Or rather a developer who does fork on a whim is likely to be be ignored by everyone else.

    88. Re:Why open Java? by Anonymous Coward · · Score: 0

      C# and .NET are not forks of the JVM ROFL TARDLICIOUS!

    89. Re:Why open Java? by Anonymous Coward · · Score: 0
      In the BSD case anyone with enough resources can add enough to the code, closed, that someone you depend on will choose it, thereby forcing you to choose the closed version.

      Not exactly. No one is forcing you to choose the closed source version. You have the choice. If you want features only found in a closed version, then you have the choice of going without the features or not. It is true freedom. Choice is freedom.

      In the GPL case the reciever is not granted the right to withhold any improvements, to use as leverage for a business model.

      Thus removing the choice of using the software in a business model, or even with other licensed software.

      In either case you are getting more freedom than under propritary licenses. It is only a matter of choosing which kind of freedom you want to give the world: The freedom to always use anything that comes from your code, or the freedom to take your code and use it as their own. The choice is yours to make, I just happen to belong to the camp that thinks that the GPL provides a greater net benefit to the community as a whole. I agree they give more rights to the coder than non-OSI licenses. However, if you want actual freedom, the GPL won't give it to you. I happen to be a person who believe whoever gets code directly from me should be allowed to do anything they want to it.

      In either case you are getting more freedom than under propritary licenses. It is only a matter of choosing which kind of freedom you want to give the world: The freedom to always use anything that comes from your code, or the freedom to take your code and use it as their own. The choice is yours to make, I just happen to belong to the camp that thinks that the GPL provides a greater net benefit to the community as a whole. Well, I think software patents as awhole are bad ideas.

    90. Re:Why open Java? by Anonymous Coward · · Score: 0
      You don't see forks of those languages because they've been open from the get-go and fully support their open community. As for Red Hat-only binaries, they are everywhere. You must not use commercial Linux software.

      GCC has lots of non-standard extensions which other, normal, standard compliant compilers do not use, thus making GNU code non-portable. It's a major problem in open source projects.

    91. Re:Why open Java? by JustinXB · · Score: 1

      I don't see why it would have to be ported. Your actual could would still exist only with what is neded to run it. You could still maintain the program without problems. The only differences there wouldn't be able new versions of Java.

    92. Re:Why open Java? by lokedhs · · Score: 1

      There is one big well known fork: The GNU Emacs vs. XEmacs fork.

    93. Re:Why open Java? by Anonymous Coward · · Score: 0

      Well, javascript is disabled and images are set to load from the site I'm visiting only. Silly js/img tag stat sites don't get a hit from me, the numbers are flawed.

    94. Re:Why open Java? by Anonymous Coward · · Score: 0

      Windows and Solaris for 2 others. On both I run the only the Sun jvm (both from the SDK, as I'm an active Java developer). Never had a problem running other peoples compiled classes on either. I've seen some applets that wouldn't run on the Sun java plugin for IE, but that mostly dissapeared once Microsoft had to stop bundling their jvm with windows.

      Java is a happy, healthy, growing language, it really doesn't need to go open source right now. I see the use for a GPLed vm for all you linux users, but Sun should keep their reference VMs closed source so as to have a common platform that others can work to for compatability. OSS is not the answer to everything!

    95. Re:Why open Java? by gbjbaanb · · Score: 1

      If Java was made OSS, then the risk of forking it is huge - especially if some of those feature requests require design changes (as many will). Personally, I see the forking risk as the main reason why Sun won't free Java - pure Java is a big selling point for it, the moment you need to write code that won't run on previous JVMs (or with certain syntax changes) then you've stuffed the whole reason for having Java in the first place (write once etc).

      That said, if Parrot is going to be so good, why not just dump Java and its 'tons of' bugs and design problems? Lets move on people, newer, faster, better stuff over here...

    96. Re:Why open Java? by Anonymous Coward · · Score: 0

      "Are you suggesting that someone should have a veto over what kind of software may be written in Java? "

      Not at all. But the idea of SWT is to replace Swing which is Java's standard GUI framework. So it could end up fragmenting Java regardless of whether it's part of the JRE or not.

    97. Re:Why open Java? by ClosedSource · · Score: 1

      "I just said GPL can be desireable because it prohibits proprietary forks of free code."

      No, that's not what you said. You said:
      "BSD does not insure that what people create and then desire to be free, remains free."

      These are entirely different statements.

    98. Re:Why open Java? by JohnFluxx · · Score: 1

      Yes, because look at how many perl and python forks there are..
      oh wait

    99. Re:Why open Java? by JohnFluxx · · Score: 1

      hmm nope I don't follow.

      Please give an example where java could be open-source, but not free (after the first copy).
      If it was GPL'ed but was they charged for it, then people would just distribute it themselves for free.

    100. Re:Why open Java? by t4k1s · · Score: 2, Interesting

      .Net+C# or even J# is similar enough to Java to attract former Java developers and to leverage the marketing done by Sun for Java. Sun promoted portable bytecode as being essential, JIT compiled code as being competitive with native compiled code and these same advantages Microsoft is using now to promote its .Net. So, they are actually using Sun's effort already and imho you could already consider .Net as a Java fork.

    101. Re:Why open Java? by Anonymous Coward · · Score: 0

      Mod Parent Up...everyone seems to forget what has already happened in Java's brief history.

    102. Re:Why open Java? by Anonymous Coward · · Score: 0

      Code might be free to use, but under the gpl not entirely free to distribute as one pleases. The gpl requires availability of any modified source code.

      In other words, if Sun used a gpl license for the Java source, and I modified a bit of code with a really cool idea I had and wanted to sell it without giving my really cool secret away, then I would not be free to do that.

      How can a system that locks you in be called 'free'?

      The gpl ensures that everyone has freedom of use, but has that 'viral' (I hate that word) clause that might not suit everybody.

    103. Re:Why open Java? by ph4rmb0y · · Score: 1

      BSD or similar less freedom-guaranteeing licenses

      LOL. I still can't get how people can't see that:

      more restrictions = Less Free

      GPL is less free than the BSD license..

    104. Re:Why open Java? by killjoe · · Score: 1

      "That said, if Parrot is going to be so good, why not just dump Java and its 'tons of' bugs and design problems? Lets move on people, newer, faster, better stuff over here..."

      My point is that they will. Unless Sun open sources java they will developers in hordes once other VMs like mono and parrot mature. Python is already draining java programmers.

      As I said. Java is the new cobol. Good for doing non gui stuff on mainframes and little else.

      --
      evil is as evil does
    105. Re:Why open Java? by JohnFluxx · · Score: 1

      One explanation that I saw that I liked was that GPL was free for the code, and BSD was free for the users.

      So GPL ensures that the code is always free, but BSD ensures that the user is always free.

    106. Re:Why open Java? by HeaththeGreat · · Score: 1

      But Sun's license allows you to redistribute source, as long as you keep things compliant with their open standard. Java is basically Free software now. They just don't want any forking going on. I can't say that I blame them. A lot of Java's value would be lost with a major split. That's what the whole M$ suit was all about.

  3. Joint Custody by modifried · · Score: 5, Funny

    So, who should have custody of the child, the father...or the boss?

    Boss gets it on the weekends, father gets it during the week.

    1. Re:Joint Custody by ndogg · · Score: 1

      That's why it's always a bad idea to have sex with the boss, or if one does, be sure to use condoms charged on the company credit card.

      --
      // file: mice.h
      #include "frickin_lasers.h"
    2. Re:Joint Custody by Halfbaked+Plan · · Score: 1

      I was in a public rest room this afternoon where there was a vending machine that would dispense condoms for cash payment.

      There was not a credit card reader on the vending machine.

      Any suggestions what I should do? My expense account manager will NOT reimburse for cash purchases.

      --
      resigned
    3. Re:Joint Custody by Anne+Thwacks · · Score: 1
      Boss gets it on the weekends, father gets it during the week.

      Yeah, but the godfather gets to own both of them!

      --
      Sent from my ASR33 using ASCII
    4. Re:Joint Custody by Anonymous Coward · · Score: 0

      What, Bill Gates will "make them an offer they can't refuse"?

  4. kudos to gosling... by all+your+mwbassguy+a · · Score: 5, Funny

    ...we need java to be open source, so we can fix all the flaws he left in it. i mean, no goto?!

    1. Re:kudos to gosling... by malakhi · · Score: 3, Insightful

      goto statements in Java are virtually useless. There are other, better ways to accomplish anything a goto statement would be used for in Java (break and continue come to mind Remember, Java is not C or C++. It has it's own way of doing things. That's why we use Java. If we tried to "fix" everything C/C++ developers thought was "wrong" with it, we'd just have C all over again.

      Thanks, but no thanks. I'll stick with my "evil" non-GPL Java.

    2. Re:kudos to gosling... by Anonymous Coward · · Score: 0

      Remember, Java is not C or C++

      Also, even though C and C++ do have gotos, it is considered highly evil to use them anyway ...

    3. Re:kudos to gosling... by Anonymous Coward · · Score: 0

      " ...we need java to be open source, so we can fix all the flaws he left in it. i mean, no goto?!"

      goto is sloppy, and not a part of structured programming.

    4. Re:kudos to gosling... by LaBlueCow · · Score: 1

      There's always better ways to do things than with goto, unless you're programming QBASIC... but that's just my opinion :)

      --
      [SQL Error ID 10-T: This sig. is above your current threshold.]
    5. Re:kudos to gosling... by AKAImBatman · · Score: 1

      What you talkin' bout foo? GOTO has been long supported by Java, it just hasn't been used by its developers. Using a GOTO statement in OO code is a rediculous thing to do. Even semi-functional languages like C have no need for GOTO statements.

    6. Re:kudos to gosling... by jmb-d · · Score: 1

      GOTO has been long supported by Java, it just hasn't been used by its developers.

      If you define "supported" as "reserved by the developers precisely so it wouldn't be used as an identifier, or, worse, as a method name, then yeah, it's been there all along.

      --
      In walking, just walk. In sitting, just sit. Above all, don't wobble.
      -- Yun-Men
    7. Re:kudos to gosling... by trompete · · Score: 1

      What's wrong with having #ifdef, #define or some other kind of compile directive?

      I don't like adding extra login to my programs in hudreds of places.

    8. Re:kudos to gosling... by Compenguin · · Score: 1

      Then I take it you've never done any assembly programming?

    9. Re:kudos to gosling... by Timothy+Brownawell · · Score: 2, Informative
      What you talkin' bout foo? GOTO has been long supported by Java, it just hasn't been used by its developers.
      From the page *you* linked: "The keywords const and goto are reserved, even though they are not currently used. This may allow a Java compiler to produce better error messages if these C++ keywords incorrectly appear in programs."

      So, the Java language does not support goto. Trying to use a goto will result in a compiler error.

      Tim

    10. Re:kudos to gosling... by Anonymous Coward · · Score: 0

      Some Linux kernel developers may disagree with you.

    11. Re:kudos to gosling... by woodhouse · · Score: 2, Interesting
      Well I suppose this is supposed to be funny, but actually, the idea that goto is always evil is just wrong. There are a few occasions when it's justified:

      Try finding a better way to break out of an inner loop. For example:

      for (int i=0;i<n;i++)
      for (int j=0;j<m;j++)
      if (blah[i][j]==1) goto doublebreak;
      doublebreak: ...

      To exit from a function, while cleaning up properly afterwards:
      if (error) goto error;
      ...
      if (anotherError) goto error;
      ...
      error:
      close(files);
      delete stuff;
      return -1;

      Well, ok, that one is pretty much covered by exceptions in Java, but in C it's useful and justified.
    12. Re:kudos to gosling... by neurojab · · Score: 1

      >I don't like adding extra login to my programs in hudreds of places.

      I assume you meant "logic".

      That's what "functions" are for. You can encapsulate your logic in a function and call it from multiple places.

      #defines are a dirty hack. Java has no need of them.

    13. Re:kudos to gosling... by T-Ranger · · Score: 1
      Those are preprocessor directives. While preprocessing is done automaticly, not even with a sepearate program, with GCC, this is recent, and atypical. You can force GCC to run only the preprocessor phase if you want.

      I cant see any reason why you couldnt put in #ifdefs in a .java, and run it through gcc -E first.

      Anyway. Java is supposed to get rid of the necessity for #ifdefs. If you find yourself needing #ifdefs in Java, then either you need to get a better Java book, or Java itself is compleatly broken.

    14. Re:kudos to gosling... by bug_hunter · · Score: 4, Informative


      mainLoop : for(int i=0; i n; i++) {
      for(int j=0; j m; j++) {
      if (blah[i][j] == 1) break mainLoop;
      }
      } ....

      Is also how you can break out of nested loops in Java. More restrictive then goto's so it keeps the code neat.

      --
      It's turtles all the way down.
    15. Re:kudos to gosling... by Anonymous Coward · · Score: 0

      I agree with doublebreak part, but for the cleaning up properly, Java has finally block, which IMHO far more versatile than that.

    16. Re:kudos to gosling... by LaBlueCow · · Score: 1

      Sorry, Assembly slipped my mind. I actually have programmed some ASM - though I've seen some full ASM programs with less gotos than a lot of naughty C++ programmers use :)

      --
      [SQL Error ID 10-T: This sig. is above your current threshold.]
    17. Re:kudos to gosling... by Brandybuck · · Score: 1

      Everyone since the early 1980's agrees with Nicklaus Wirth that GOTO is evil. Apparently your intense hatred of C/C++ and the people who use them caused you to completely miss the humour in the previous post.

      To clue you in, NO ONE uses goto in C/C++ anymore, except for some niche areas like kernels.

      --
      Don't blame me, I didn't vote for either of them!
    18. Re:kudos to gosling... by Anonymous Coward · · Score: 0

      Actually the "JMP" instruction of java bytecode is called GOTO! So it is there, and you could use it if you really wanted to :)

    19. Re:kudos to gosling... by Anonymous Coward · · Score: 0

      I think he meant logging. I thought it was kind of standard to compile in lots logging surrounded by #ifdefs for a debug build. But maybe anything short of deciphering a core dump to debug a program is a dirty hack for a real programmer.

    20. Re:kudos to gosling... by FattMattP · · Score: 1
      parent:
      we need java to be open source, so we can fix all the flaws he left in it. i mean, no goto?!
      response:
      goto statements in Java are virtually useless. There are other, better ways to accomplish anything a goto statement would be used for in Java (break and continue come to mind Remember, Java is not C or C++.
      I think that you forgot to import com.reallife.humour.sarcasm.
      --
      Prevent email address forgery. Publish SPF records for y
    21. Re:kudos to gosling... by The+Slashdolt · · Score: 1

      Even simpler, no break, continue or goto...

      boolean done = false;

      for(int i=0; !done && i < n; i++)
      {
      for(int j=0; !done && j < m; j++)
      {
      if (blah[i][j] == 1) done = true;
      }
      } ....

      --
      mp3's are only for those with bad memories
    22. Re:kudos to gosling... by Anonymous Coward · · Score: 0

      Really, you've seen 'full' assembly programs that have less branching than "naughty C++ programmers" have utilized goto? That would be impressive. Name one. If it does nothing, don't bother.

    23. Re:kudos to gosling... by Anonymous Coward · · Score: 0

      goto is quite useful for performing error handling within function bodies. It's also useful for implementing virtual machines.
      I could probably think of other ways in which it reduces code bloat or helps with correctness issues, but whatever. Most people that read Slashdot are idiots, I don't know why I expect anything different.

    24. Re:kudos to gosling... by Anonymous Coward · · Score: 0

      That's not simpler. You have to repeat your boolean test for every level of nested loops. How is that simpler? That's error prone as fuck and inefficient.

    25. Re:kudos to gosling... by Anonymous Coward · · Score: 0

      If it's less flexible than it's not more versatile. It might be safer, but not more versatile, and certainly not 'far more versatile.'

    26. Re:kudos to gosling... by Anonymous Coward · · Score: 0

      Well, I am generally of the opinion that goto's are evil but I do not really understand you. Goto's in java would be just as useful as in C++. Both C and C++ have break and continue- in fact I really can't think of any control structs that java has that C++ does not. You would be better off arguing that it is bad form than to declare it "virtually useless" and say java has its own way of doing things compared to C and C++.

    27. Re:kudos to gosling... by neurojab · · Score: 1

      >But maybe anything short of deciphering a core dump to debug a program is a dirty hack for a real programmer.

      Or you could just put in breakpoints and step through the program.

  5. "Even more open-source than it is already"... by JessLeah · · Score: 2, Interesting

    Java is not open-source at all.

    (Pre-emptive response to the argumentative sorts who point out the various GNU Java projects: These are not "Java proper". Java is a Sun product, and it is not open-sourced.)

    1. Re:"Even more open-source than it is already"... by blackdragon7777 · · Score: 2, Insightful

      When you download java, you get the source files along with it. GPL is not the only license that makes something open source.

    2. Re:"Even more open-source than it is already"... by Henrik+S.+Hansen · · Score: 1

      Actually, this is a very good example of the kind of confusion that can arise from using the term 'open source'. Since you do get (some of) the source with the JDK, is it not at least partially open source?

      If we choose to use the term 'Free Software' instead, there is no confusion. It is not rms-free (yes, I just invented that term), since the license is too restrictive.

      This will probably be modded flamebait, but needs to be said.

    3. Re:"Even more open-source than it is already"... by Anonymous Coward · · Score: 0

      >> rms-free

      Let me guess: root mean square?

    4. Re:"Even more open-source than it is already"... by Earlybird · · Score: 2, Insightful
      • When you download java, you get the source files along with it. GPL is not the only license that makes something open source.
      Both of the above assertions are true. However, in the context of the parent, they imply that because Java comes with source files, Java is open source, while is categorically false. The "open" in open source represents a freedom to modify and redistribute, which is encoded in the GPL and other open-source licenses. The sources that come with the Sun Java distribution -- which, incidentally, only cover the standard class libraries -- are not "free as in speech".
    5. Re:"Even more open-source than it is already"... by Anonymous Coward · · Score: 0

      -1 redundant

      Click on "Richard Stallman" in the article summary and you will have seen this article already.

    6. Re:"Even more open-source than it is already"... by vegetasaiyajin · · Score: 5, Informative

      When you download java, you get the source files along with it. GPL is not the only license that makes something open source.
      Actually, the source code you get is for the standard library, not the JVM source code. That one is a separate download.

      --

      My heart is pure, but make no mistake, it's pure evil
    7. Re:"Even more open-source than it is already"... by T-Ranger · · Score: 2, Informative
      Correct.

      The list of licenses that make something Open Source is here.

      While there are some Sun licenses on the list, the Sun Community Source License (which Java source is provided under) is NOT.

      This is not an opinion question. This is a fact. Java is NOT Open Source. It is not a little Open Source, or almost Open Source. Open Source is a binary state. It is, or it isnt. Java IS NOT.

    8. Re:"Even more open-source than it is already"... by T-Ranger · · Score: 1
      There is no confusion.

      "Free Software" has a specific meaning. "Open Source" also has a different specific meaning. Besides the meaning itself, "Open Source" is also an enforceable specific meaning, as "Open Source" is a trademark.

    9. Re:"Even more open-source than it is already"... by Anonymous Coward · · Score: 0

      Besides the meaning itself, "Open Source" is also an enforceable specific meaning, as "Open Source" is a trademark.

      Rubbish. Open source was specifically rejected as a trademark as it was already a generic term.

    10. Re:"Even more open-source than it is already"... by Anonymous Coward · · Score: 0

      And why does opensource.org get to define what the term "open source" means? Because they bought the domain name?

      Actually, T-Ranger appears to be putting words in their mouth. Their site says says SCSL is not "OSI-Approved".

    11. Re:"Even more open-source than it is already"... by Anonymous Coward · · Score: 0

      The Eric S Raymond school of marketing:

      1) Apply for a trademark
      2) Have it rejected
      3) Use it like a brand name anyway
      4) Respond to the massive confusion by having your advocate lackeys flame people.
      5) ???
      6) Suprised by Cock.

    12. Re:"Even more open-source than it is already"... by N1KO · · Score: 1

      Just like 486 and the letter 'a'.

    13. Re:"Even more open-source than it is already"... by persaud · · Score: 2, Informative

      They get to define Open Source (registered tm), not "open source". Because they paid for trademark registration, in the US and possibly other jurisdictions.

    14. Re:"Even more open-source than it is already"... by Brandybuck · · Score: 2, Insightful

      If we choose to use the term 'Free Software' instead, there is no confusion.

      To someone who hasn't drunk the FSF Koolaid, "free software" means software that is free of cost and/or relatively unencumbered by legal restrictions. Since Java is free of cost, and relatively unencumbered by legal restrictions, most people would consider it to be "free".

      "Free Software" is just as confusing as "Open Source". Actually it can be more confusing since
      "free" has about fifteen more synonyms than "open".

      --
      Don't blame me, I didn't vote for either of them!
    15. Re:"Even more open-source than it is already"... by Anonymous Coward · · Score: 0

      It is not rms-free (yes, I just invented that term)

      No you didn't. Sco did.

    16. Re:"Even more open-source than it is already"... by AstroDrabb · · Score: 1
      Oh, stop trolling. Do you think Open Source and the GPL are about getting the source code? Where have you been? Under a rock? The GPL is about giving more rights to end users then standard copyright allows. The GPL is all about giving YOU more rights. You may be able to look at the source code to Java, however you are very limited with what you can do with it. Just like MS's "Shared Source" that prevents you from doing anything with the code.

      Think about this: what in the world does letting me look at the Java source do for me if I cannot legally do anything with it? I cannot create a better Java can I? Nope, Sun would not let me. I personally don't think Java should be under the GPL since that could require all Java apps to be GPLed and that would be stupid. Maybe the LGPL, which would allow closed source Java apps and only require that changes to Java itself be returned to the community, or Sun could come up with another OSS license that prevents someone from taking the Java code and making a proprietary implementation such as the BSD license would allow. BSD would be a bad choice here since MS could make their MS Java and use their monopoly to take away Java and have most Java code only work with the proprietary, closed source MS Java. I have actually ran into this with some Java applets that only work with the MS JVM and IE and not Sun's JVM.

      --
      If Tyranny and Oppression come to this land,
      it will be in the guise of fighting a foreign enemy. -James Madison
    17. Re:"Even more open-source than it is already"... by JessLeah · · Score: 1

      Why would GPLing Java require all Java apps to be GPLed? Are all applications compiled with GCC required to be GPLed?

    18. Re:"Even more open-source than it is already"... by AstroDrabb · · Score: 1

      Java is much more then just a compiler. It is a framework. Why do you think that glibc (GNU C Library) is released under the LGPL and not GPL?

      --
      If Tyranny and Oppression come to this land,
      it will be in the guise of fighting a foreign enemy. -James Madison
  6. wow! by narkotix · · Score: 4, Funny

    first maybe solaris....now maybe java...whats next...open source star office??? oh wait..

    --
    We played dungeons and dragons for 3 hours.....then i was slain by an elf
    1. Re:wow! by Anonymous Coward · · Score: 0

      Star Office isn't Open Source. Open Office is and whcih Star Office is derived from, but because of the restrictive Open Office licence there are some things in Star Office that aren't available in Open Office. Use the closed source version at your own risk.

    2. Re:wow! by aristotle-dude · · Score: 2, Insightful
      Use it at your own risk? Come on. If it is based on OO and they use the same format, what is your point besides being a GNU/Troll?

      GPL != Open Source. GPL is one of many Open Source licenses.

      Proprietary software has it's place as long as it uses open standards and formats.

      --
      Jesus was a compassionate social conservative who called individuals to sin no more.
  7. Not such a big deal? by spellraiser · · Score: 5, Insightful

    Question from the artice:

    2. "Some have asked what IBM would get if Java were open-sourced: doesn't IBM already have the source?"

    Gosling's answer: Again yes, they do have the source. It's also true that anyone can get the source. The major restriction is that if folks want to redistrubute their changes, they have to pass the test suite. Which means that about the only thing that they could get from liberalization is to be able to skip testing.

    So it doesn't seem to be such a big issue after all. The source is already available, and all that is required to change it and redistribute it is to pass a standard suite of tests. Now, call me crazy, but I think that's not A Bad Thing. This restriction is what helps Java to be uniform and platform-independent.

    The benefits of making Java fully open source therefore seem overrated. Isn't the availablity of the source most important? Or perhaps I'm misunderstanding something ...

    --
    I hear there's rumors on the Slashdots
    1. Re:Not such a big deal? by EsbenMoseHansen · · Score: 0, Offtopic

      Two problems: 1, I can't really fork Java I think Sun is killing it. 2. That test-suite should then be publicly availble, so Joe Hacker can test his YAJ-compiler-etc against the suite. But who cares? It's not like there is a lack of languages out there, and Java lacks some pretty vital stuff anyhow (e.g fork() --- and forking the JVM is not really a solution).

      --
      Religion is regarded by the common people as true, by the wise as false, and by rulers as useful.
    2. Re:Not such a big deal? by Chalybeous · · Score: 5, Insightful

      The source is already available, and all that is required to change it and redistribute it is to pass a standard suite of tests.

      I agree with the parent. I'm not 100% clued up on such technical matters, but it seems to me that if Java were opensourced, suddenly every developer would implement their favourite functions and fixes, and it could risk losing its crossplatform compatibility.
      As it stands, I understand that Sun is (as the parent quotes) pretty liberal with its Java policy. Would it be worth creating potentially problematic issues by changing this policy to make Java opensource?
      It seems sensible, at least to me, to keep Java as it stands with regard to source changes, or we'll end up having Joe's Java, MSJava, Java for Nokia Mobile Phones, Java Reloaded... all built off the same core, but all implementing the same thing different ways, possibly with platform dependence or crosscompilation compatibility issues.
      I'm guessing that Sun's "standard suite of tests" for additions/changes to Java is designed to prevent this kind of branching, and is (in a multi-OS, infinite-diversity-of-hardware-combinations world) A Very Good Thing.

      Opinions, developer-type /.ers?

      --

      "It is dark. You are likely to be eaten by a grue." -- Zork

    3. Re:Not such a big deal? by Rosco+P.+Coltrane · · Score: 1

      Java lacks some pretty vital stuff anyhow (e.g fork() --- and forking the JVM is not really a solution).

      A good thing then, since you can't fork().

      --
      "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
    4. Re:Not such a big deal? by Anonymous Coward · · Score: 0

      The questions in the article:

      1. *Some* have asked ...
      2. *Sone* have asked...
      3. *Some* of IBM's statements have essentially distilled...
      4. *Some* have asked
      5. *Most* of comments I have heard

      Hmm, fabricating and/or selectively choosing questions and then giving arguments - every can do this. If the guy wanted to fabricate a FAQ, it is very poor job...

    5. Re:Not such a big deal? by Anonymous Coward · · Score: 0

      I'm also not terribly familiar with Java, but from what I've heard, Java is already somwhat fragmented. Apparently, many projects have to repackage their Java releases for several different versions of Java.

      So I think the benefits of keeping Java closed source are overrated.

    6. Re:Not such a big deal? by pfafrich · · Score: 2, Interesting
      The benefits of making Java fully open source therefore seem overrated. Isn't the availablity of the source most important? Or perhaps I'm misunderstanding something ... For most users I'd agree with you, for me personally the current way Java is licensed seems fine. The one thing which could happen is that people could fork the source to try some language extensions, something like adding aspect oriented programming (aspectJ) or adding in operator overloading. Sun could keep their community process for the main branch.

      A lot of this just seems to do with the name Sun could feel good about being "open source" GNU can feel good about another OS project, IBM can feel good about making it happen and Microsoft can feal confused. But it does not mean anything really changes for developers.

      Maybe there needs to be a distinction between and Open Source License and an Open Source Development Process. Just because the code is open source does not mean they need to follow the same development model as Linux.

      --
      There are four sorts of people in the world: fools, lunatics, idiots and morons. - Umberto Eco, Foucaut's pendulum.
    7. Re:Not such a big deal? by Anonymous Coward · · Score: 0

      Gosling's answer: Again yes, they do have the source. It's also true that anyone can get the source. The major restriction is that if folks want to redistrubute their changes, they have to pass the test suite. Which means that about the only thing that they could get from liberalization is to be able to skip testing.

      Of course, because, for an OSSzealot, they think they should have the fundamental right to swap the meanings of + and -

    8. Re:Not such a big deal? by Chalybeous · · Score: 2, Informative

      Interesting, AC.
      I know that since switching to Mozilla Firefox and the latest version of Sun Java, I've had some minor issues with web-based applications (mostly games) which refuse to work with anything but MS Java VM. So I suppose there's at least one forked (or b0rked, depending on your view of MS Java VM) version of Java out there in widespread use.

      Anyone else wants to throw their 2c into the ring on this?

      --

      "It is dark. You are likely to be eaten by a grue." -- Zork

    9. Re:Not such a big deal? by rutwms · · Score: 2, Informative
      Maybe there needs to be a distinction between and Open Source License and an Open Source Development Process.

      Open Source software is based on a development process. You are asking for a distinction between Free Software and Open Source software witch does exist, but is often confused.

    10. Re:Not such a big deal? by FatherOfONe · · Score: 1

      Here is my 2c....

      Our company tested around 10 JVM's (including different versions) and what we found was the following.
      1. Old JVM's were around 10X slower than modern ones.
      2. 9 out of 10 JVM's behaved EXACTLY THE SAME!!! Only one JVM had major issues. Any guess which one? Microsofts.... shocker!!!

      The Microsoft JVM was fast though, but the latest ones from IBM and Sun were just as fast and behaved correctly.

      Also here is the scoop with older to modern JVM's. Sun use to have only a handfull of test to "certify" a JVM. Specifically this was with the 1.0 JVM. Then with 1.1x the test to certify got a little more tough. Now with the 1.2 and above, it got a LOT more tough. I have heard that it went from a few hundred test to many thoughsand test. It is my belief that this coupled with the fact that SWING was decent, made Microsoft aware NOT to support Java at all.

      I have developed many JAVA apps, on Linux, Solaris, NetWare, and Windows and have never found any major issues with compatibility with "MY" code. Granted most of my stuff is business apps, so take this with a grain of salt.

      I will add that the test that our company did, actually did open up a Microsoft fan boy of their tactics. He tried hard to defend Microsoft, but you can only do so much when EVERY other companies JVM worked.

      Now, having seen what Microsoft has been able to do without open-sourcing JAVA, I kind of like the idea of Sun controlling it, in such that they maintain the standard for testing.

      --
      The more I learn about science, the more my faith in God increases.
    11. Re:Not such a big deal? by Per+Bothner · · Score: 1
      The source is already available, and all that is required to change it and redistribute it is to pass a standard suite of tests. Now, call me crazy, but I think that's not A Bad Thing.

      It's not a bad thing, but there are a couple of problems:

      • The testsuite is big and monolithic. Suppose I have an experimental JVM that doesn't support all of Sun's required features yet. I can't use part of Sun's implementation (such as say java.io), even though I have no intention of changing that, because my system as a whole can't pass the testsuite.
      • What if I'm a researcher wanting to experiment with a new but incompatible dialect of Java - perhaps I have some ideas I'd like to propose for "Java 3". I can't release this experimental dialect, because I can't pass the testsuite - even if I call it someelse else besides Java.
    12. Re:Not such a big deal? by a.bokovoy · · Score: 1

      The thing which many tend to forgot is that Sun's compliance test procedure costs a lot of money for any entity wanting to verify its implementation. It effectively rules out Open Source implementation. And I think main problem is how to solve this issue. At my previous company we were able to convince Sun to get compliance tests done without substantial funds but it is still forbidden to use resulted Java implementation (Sun's one, with our portability enhancements for XScale) freely.

    13. Re:Not such a big deal? by d^2b · · Score: 1
      So it doesn't seem to be such a big issue after all. The source is already available, and all that is required to change it and redistribute it is to pass a standard suite of tests. Now, call me crazy, but I think that's not A Bad Thing.
      I think there are other issues as well. I was following the FreeBSD java teams efforts to release binary jdk for a bit, and the discussion seemed to involve a lot of "we are talking to Sun's lawyers about that". This is a big resource drain for a small development group (commericial or non-commericial). Perhaps someone from the team can give details.
    14. Re:Not such a big deal? by trance9 · · Score: 1


      Compliance tests are incompatible with the way in which opensource software is developed; it is really NOT the same "just with tests".

      Mandatory compliance tests are utterly incompatible with the way opensource developers work. OSS development is not done behind closed doors: Broken versions of the software are routinely distributed to anyone and everyone. First, the software repository is probably on a public CVS server, with patches routinely posted on mailing ists; integration builds and nightly builds are likely posted on websites along with release candidates that are the OSS alternative of an expensive QA department. None of this is compatible with compliance testing as the interim releases are practically guaranteed not to pass the tests and so this is all illegal.

      Could opensource developers make an exception for Java and work behind closed doors in this case? No. What would be the point--the benefit of an opensource project is that it brings together people from different continents and companies with different motives and interests and enables them to collaborate on a shared resource. These people generally do not, cannot, and will not work together behind a closed door--what door would that be? Worse, that's just development, the "QA team" for an opensource project tend to be just anyone who is willing to download and try out the interim release.

      If these severe legal problems could somehow be solved then perhaps it's viable. Maybe we could contemplate "time limited" release licenses for the interim versions--users can use and access them for a few months before they "expire", whereas a compliant version could be used indefinately.

      There are still further problems--to be acceptable, the compliance test ought to be freely available as well, so that anybody can download and run it against their version of the JVM. The content of the compliance test also ought to be under the control of a public standards body so that the community can feed back its development into the standard: what's the use of creating a popular extension of the langauge if it can never be a part of the language?

      I fully understand and respect Sun's desire to prevent a fork of Java technology. Were it opensourced tommorow before long there would be incompatible versions of Java from Sun, Microsoft, IBM, and who knows how many countless others. It's an understandable, important objective to prevent the platform itself from forking incompatibly.

      However, this is a problem that does need a solution and saying that it is really the same thing "just with compliance tests" is an inadequate response: compliance tests, as they stand, are fundamentally incompatible with opensource software.

  8. Color me confused... by ItMustBeEsoteric · · Score: 4, Insightful

    "If we do something to make Java even more open-source than it is already"

    Is it even possible for something to be partially open source? As far as I've always been concerned, something either is or it is not.

    I know someone will definitely say "well, X part of Y OS is open source, while the OS isn't" but Java isn't an OS. Even in that case, let's use OS X. Are its Darwin portions open source? Well, yeah. I doubt we'll argue that? Will any /.-er in their right mind say OS X is open source?

    Hell no. And I love my Macs.

    1. Re: Color me confused... by Ploum · · Score: 1

      As far as I've always been concerned, something either is or it is not.

      You're a one or a zero... Dead or Alive... (a famous-for-geeks movie)

    2. Re: Color me confused... by T-Ranger · · Score: 1
      No. It is not.

      Open Source-ness is a binary state. It is, or it isnt. Java is not.

    3. Re: Color me confused... by Distinguished+Hero · · Score: 1

      Is it even possible for something to be partially open source? As far as I've always been concerned, something either is or it is not.

      So, what you're saying is "You are either with us or against us." Interesting.

      --
      Uttering logically derived and empirically supported truths to the disciples of the orthodox establishment.
  9. custody problem? call Jerry Springer by Anonymous Coward · · Score: 0

    Sun has demostrated that for every OS framework based in java they have their own like Java Sever Faces and Struts, for sure Struts is way more flexible and useful despite some confusing configuration variables. There is so much redundancy in Java that soon or later will haunt it back and the so called portability will go to hell.

  10. Custody? by Anonymous Coward · · Score: 0

    I say we put the baby through the mulcher. Next...

  11. Please Mister the Boss... by Ploum · · Score: 0, Troll

    I don't like programming in Java, but having a free Java (as in speech) would be really great !

    Think about how it can be easy to include Java in a Linux Distro.

    If Java becomes free, I can imagine a lot of thing. Why not bindings with GTK for example ?

    1. Re:Please Mister the Boss... by chez69 · · Score: 1

      you mean this?

      --
      PHP is the solution of choice for relaying mysql errors to web users.
    2. Re:Please Mister the Boss... by vegetasaiyajin · · Score: 5, Informative

      I don't like programming in Java, but having a free Java (as in speech) would be really great !

      There is a very good free java implementaiton. GCJ (GNU Compiler for Java). The library lacks a few things (e.g. AWT/Swing), though, but other than that it is a great implementation. And it is not based on a JVM, but is a traditional ahead of time compiler, so the related disadvantages (as well as the advantages, if any) dissapear. It uses the same (or at least a very similar) object model as C++, so interoperation with it is much easier.

      Think about how it can be easy to include Java in a Linux Distro.
      Sun's Java JVM can be included in linux distributions without problems. Knoppix, SuSE and SoL include it. Don't know about others. The reason some distributions don't include Sun's Java implementation is because they don't want to include it.

      If Java becomes free, I can imagine a lot of thing. Why not bindings with GTK for example They already exist. Check Java-GNOME. It includes GTK and GNOME bindings for Java.
      There are also bindings for Qt and KDE.
      You can also use GTK via the SWT toolkit .
      Java is NOT a proprietary language (despite some ignorant people who say so), you can find many open source libraries for it, and there is at least a high quality free (as in speech) implementation of it.

      --

      My heart is pure, but make no mistake, it's pure evil
    3. Re:Please Mister the Boss... by Milton+Waddams · · Score: 3, Insightful

      bindings with GTK!?!? but what if someone ran a GTK'd app on a machine with no GTK libs? what would be the point in writing an app in a cross platform language with bindings for a platform dependent library?

      this is why java isn't and shouldn't be gpled. open source is great for certain situations but not for others. i think that it's great that java comes from one company, it means that it's completely controlled.

      why are people pushing so much for this? java is free (as in beer) and is very well documented. there is no need to "port" an app that you write, all that's necessary to run a java app is the jre. and you can write an open source java app if you want with no restrictions.

      oss advocates like this guy above are well intentioned but they can do more harm than good. with freedom comes responsibility and unfortunately developers can be egotistical and not think about the greater good of software when they make decisions.

      really what's more important, a model that's free (as in speech) or something that works.

    4. Re:Please Mister the Boss... by raindog2 · · Score: 3, Insightful

      I mean no disrespect to the GCJ project, or Classpath or any of the other contributions to the goal of a fully compatible free software Java implementation. But...

      Saying that GCJ's existence proves Java is not proprietary is a bit like saying that WINE proves Windows is not proprietary.

    5. Re:Please Mister the Boss... by philipborlin · · Score: 1
      There is a very good free java implementaiton. GCJ (GNU Compiler for Java). The library lacks a few things (e.g. AWT/Swing), though, but other than that it is a great implementation.
      So I can do everything but write a desktop app?
    6. Re:Please Mister the Boss... by Per+Bothner · · Score: 3, Insightful
      Sun's Java JVM can be included in linux distributions without problems. Knoppix, SuSE and SoL include it. Don't know about others. The reason some distributions don't include Sun's Java implementation is because they don't want to include it.

      No, it's because some distributions are less cavalier about Sun's license than others. For example, the Supplemental License Term B iii (of JDK 1.4.2) seem to prohibit distributing both JDK and GCJ. Note also that redistribution is "non-tranferable", so somebody who receives a copy of Knoppix can't give it to somebody else. In fact your only allowed to reditribute JDK "for the sole purpose of running, your Programs".

      Note also (3 RESTRICTIONS) "you may not modify, decompile, or reverse engineer [Sun's] Software."

      I wish people who made these claims about Java being "Free enough" would actually read the Java license ...

    7. Re:Please Mister the Boss... by Anonymous Coward · · Score: 0

      Use SWT.

    8. Re:Please Mister the Boss... by vegetasaiyajin · · Score: 1

      I mean no disrespect to the GCJ project, or Classpath or any of the other contributions to the goal of a fully compatible free software Java implementation. But... Saying that GCJ's existence proves Java is not proprietary is a bit like saying that WINE proves Windows is not proprietary.

      Java is a language defined by a specification. The spacification is not proprietary in the sense that anyone can develop a clean room implementation of it without being subject to IP/patents infringement.
      Sun's implementation of Java can be considered by some as proprietary because it is not free software, but it is not the only implementation.
      BTW, according to ECMA (the origanization who says C# is a standard) Windows is a standard. See ECMA standard 234.
      So, to me, the fact that the Java specification is not controlled by an organization like ECMA is of no great importance. Who really considers the windows api an international standard?
      I would trust more the JCP (the organization that drives the Java and related specifications) than an organization who states windows is a non-proprietary standard.

      --

      My heart is pure, but make no mistake, it's pure evil
    9. Re:Please Mister the Boss... by vegetasaiyajin · · Score: 1

      No, it's because some distributions are less cavalier about Sun's license than others.
      That is another way of saying they don't want to include it. I did not make judgement about the reasons they have for not including it, but there is nothing in the Sun's JRE license that prevents a linux distribution from including it. Proof of that is that many do include it.

      It certainly is not free software, but that doesn't mean it cannot be included in a linux distribution.

      Each distributor has a policy about what they include or not. Some only include free software (and don't include sun's java, but an alternative), others do include non-free software.

      --

      My heart is pure, but make no mistake, it's pure evil
    10. Re:Please Mister the Boss... by Per+Bothner · · Score: 2, Interesting
      I did not make judgement about the reasons they have for not including it, but there is nothing in the Sun's JRE license that prevents a linux distribution from including it. Proof of that is that many do include it.

      No, that is just proof that of lots of people (including distributions that ought to know better) are incredibly sloppy about licenses.

      Of course they can distribute JRE - but may they? Are they violating the license - or encouraging others to violate the license? The license puts rather strong (if vague) restrictions on any GNU/Linux/*BSD distribution who wants to (legally) distribute the JRE, and a general-purpose distribution that does so is probably violating the license. Not a good idea.

    11. Re:Please Mister the Boss... by Tim+C · · Score: 1

      the related disadvantages (as well as the advantages, if any) dissapear

      Two advantages off the top of my (rather tired) head, in no particular order:

      Platform independence. That's achieved, of course, because the JVM *is* the platform, but at work I write Java code on my Windows XP box that others use on their Linux and Win 2K boxes, that is then deployed on machines running various flavours of Linux - generally RedHat. Can't do that with native compilation.

      Code optimisation with the JIT compiler. Having the code compiled by a JIT compiler means that the JVM can optimise it taking advantage of knowledge about how its being run that simply is not available to a traditional compiler.

      I have to ask - what is your level of experience with Java? I get the impression that you're not particularly experienced with it, if you doubt that there are any advantages to using runtime interpretation and JIT compilation. Sure, there are disadvantages too, but nothing is perfect. Java's method is particularly well suited to long-running (server) applications, although I use a couple of excellent GUI apps too (but then I have a "beefy" machine - 2.4GHz P4 with 1/2 gig of RAM)

    12. Re:Please Mister the Boss... by t4k1s · · Score: 1

      GPLing Java has nothing to do with Java having unportable extensions. Microsoft added COM-bindings to Java which obviously were not portable. The reason I would strongly vote for Sun to GPL its Java implementation, is that it would mean a full Java implementation finally would be available under the GPL license. The good thing about this is, that Java could finally be portable and not just in theory. Now, it isn't really, since the freely downloadable JVMs are only portable across some operating systems. For embedded systems having a GPL full JVM implementation is very interesting, since you can port it yourself to any platform thus making the Java platform truly portable.

    13. Re:Please Mister the Boss... by TheSunborn · · Score: 1
      >It certainly is not free software, but that doesn't >mean it cannot be included in a linux distribution.

      The licence for java(jre 1.4.2) is the reason you can't distribute it with your linux distribution.

      Just look ath this quote from the licence:


      B.License to Distribute Software. Subject to the terms and
      conditions of this Agreement, including, but not limited to
      the Java Technology Restrictions of these Supplemental
      Terms, Sun grants you a non-exclusive, non-transferable,
      limited license without fees to reproduce and distribute
      the Software, provided that (i) you distribute the Software
      complete and unmodified (unless otherwise specified in the
      applicable README file) and only bundled as part of, and
      for the sole purpose of running, your Programs, (ii) the
      Programs add significant and primary functionality to the
      Software, (iii) you do not distribute additional software
      intended to replace any component(s) of the Software


      The linux distributions could ofcause sidestep tha t licence by making and including a java program, but then who has to deside if the Programs add significant and primary functionality to the Software

    14. Re:Please Mister the Boss... by vegetasaiyajin · · Score: 1

      Platform independence. That's achieved, of course, because the JVM *is* the platform, but at work I write Java code on my Windows XP box that others use on their Linux and Win 2K boxes, that is then deployed on machines running various flavours of Linux - generally RedHat. Can't do that with native compilation.
      You would have to recompile. In some cases this wouldn't be practical.

      Code optimisation with the JIT compiler. Having the code compiled by a JIT compiler means that the JVM can optimise it taking advantage of knowledge about how its being run that simply is not available to a traditional compiler.

      I doubt a JIT compiler is better than an ahead of time compiler. However, Java JVM's are very fast. But I think that good optimizing ahead of time compilers can always be better than virtual machines. The only important advantage of VMs is the ability to run the binary on different platforms without recompiling. That might be useful, for example, in heterogeneous clusters. But VM's will always have a performance penalty that AOT compiled code won't have (including speed of execution and memory use).

      I have to ask - what is your level of experience with Java? I get the impression that you're not particularly experienced with it,
      Actually, I consider myself a very experienced Java programmer.

      --

      My heart is pure, but make no mistake, it's pure evil
    15. Re:Please Mister the Boss... by vegetasaiyajin · · Score: 1

      The linux distributions could ofcause sidestep tha t licence by making and including a java program, but then who has to deside if the Programs add significant and primary functionality to the Software

      Some well known linux distributions are distributing the JRE and Sun hasn't complained. Probably the programs they include add significant functionality to the software according to Sun.

      --

      My heart is pure, but make no mistake, it's pure evil
    16. Re:Please Mister the Boss... by Milton+Waddams · · Score: 1

      you make some good points there but i still think that Java needs to be controlled. i think that MS should be made stop their botched version of Java. it'd be much better if currently unsupported platforms had a native Java port but i wouldn't want to see what happened to XFree86 happen to Java

  12. Closed for your own protection by Curtman · · Score: 4, Insightful

    This sounds a lot like pkware's strategy with DCL. They actually tried to tell me I should use it because its patented. I told them it's surprising that we'd even consider using it in spite of it being patented.

    1. Re:Closed for your own protection by blackcoot · · Score: 1

      the more obvious question is: why pay for dcl when there's libz and libbz2 available open /and/ free?

    2. Re:Closed for your own protection by gnu-generation-one · · Score: 1

      "This sounds a lot like pkware's strategy with DCL. They actually tried to tell me I should use it because its patented. I told them it's surprising that we'd even consider using it in spite of it being patented."

      Thanks for saying it.

      If I see another "proprietry" in a press-release or product catalog, I'm gonna puke...

    3. Re:Closed for your own protection by Anonymous Coward · · Score: 1, Informative

      Pantents used to be a marketing gimic. "try pats patented medison"(made with mercury and arsenic). Now patents have a bit of a negative contation, and it is seen as a piece of junk if they have to advertize a patent.

    4. Re:Closed for your own protection by Curtman · · Score: 3, Insightful

      That was pretty much word for word my exact question. Apparently, some people see vendor lock-in as a good thing. They treated me like I was from another planet when I suggested that software patents might be a bad thing. 'What happens when pkware goes out of business', was my follow up question. I never heard back.

    5. Re:Closed for your own protection by Lehk228 · · Score: 1

      'What happens when pkware goes out of business'

      pkware is still In business?

      --
      Snowden and Manning are heroes.
  13. What's important is by Rosco+P.+Coltrane · · Score: 4, Interesting

    that they open-source it before Sun tanks, or before some nasty company takes control of it. In short, they ought to do like Netscape did, and I'm sure even McNealy would rather do that than any other alternative...

    --
    "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
    1. Re:What's important is by Radical+Rad · · Score: 1
      open-source it before Sun tanks

      Sun doesn't have to tank. They have the resouces to change their business model, but they will have to either create a new market or carve out a new niche in an existing market. They won't be able to make it going head to head against Dell and HP selling Wintel PC's.

      In short, they ought to do like Netscape did, and I'm sure even McNealy would rather do that than any other alternative...

      A couple years ago I might have argued against you but now I think you are right. Back then MS was not yet set on their .Net Java imitator strategy. But now that they are, there is much less chance that they would spend the necessary resources to "embrace and extend" Java. Netscape was in just the same situation when they open sourced their browser.

      Right now, Java has a bigger developer base. Java runs on a plethora of processors and OS's while .Net is stuck on Ms Windows. But MS still has a monopoly on the desktop and that can be used to leverage their way into control over middleware just as they've done in the past.

      Sun is making some money on Star Office (and notice that is at the expense of MS Office.) That income will grow faster if the Linux desktop grows. They are making some money on Java too but that will end if they open source it, but it would help the Linux desktop to grow faster.

      So McNealy is in the difficult position of deciding whether to completely cut off a source of income right away or watch it slowly peter out as MS uses the desktop to "cut off their air supply." And he has to make this decision at the same time that Unix sales are decreasing.

  14. doesn't matter who SHOULD have custody by igotmybfg · · Score: 1

    in the real world all that matters is who DOES have custody, which is essentially guaranteed to be the boss...

  15. Gosling??? by Anonymous Coward · · Score: 3, Interesting

    Worth noting that Gosling is the one who produced the first non-free version of emacs, which was a direct motivation for RMS to produce the GPL!

    He also produced NeWS which was superior to X in almost every way... except... it wasn't open either!

    I've always thought that Java will become open source over Gosling's cold dead body, but maybe he'll prove me wrong.

  16. Per King Solomon by big+tex · · Score: 4, Funny

    McNealy gets Ja, and Gosling gets Va.

    Now that's a fork.

    --
    I think I need a new sig here.
    1. Re:Per King Solomon by Anonymous Coward · · Score: 0

      > McNealy gets Ja, and Gosling gets Va.

      So McNealy gets a German Yes, and Gosling gets a Spanish Go?

  17. mod funny, not interesting by Anonymous Coward · · Score: 0

    For the mods that modded this "interesting" I think most modern developers would agree GOTO is clearly a "four letter word" in programming.

    Maybe you should remod this funny, because as anything other than a joke it's frightening. GOTO has no place is readable code.

    1. Re:mod funny, not interesting by Anonymous Coward · · Score: 0

      if goto does not work, they had to correct.

    2. Re:mod funny, not interesting by ClosedSource · · Score: 2, Insightful

      Since when is readabililty a concern of any 'C' derived language? To wit:

      +=,-=, etc.
      var++ vs. ++var
      & vs. && etc
      >> vs. >>>
      ?:

      The GOTO may be bad practice but it's one of the most readable statements in Java.

  18. Yeah by Anonymous Coward · · Score: 0

    At my workplace we've all been gosling about whether Java should be opened or not. We must have gosled at least one hour about it, it's pretty hard to decide! Anyway I'm sick of Java, and I'd rather gosle about something else now. What does gosling mean anyway.

  19. Re:So... by Moofie · · Score: 0, Troll

    What kind of idiot would confuse a freakin' computer program with a child?

    --
    Why yes, I AM a rocket scientist!
  20. Sun's plan by dioscaido · · Score: 0

    1) Open Source Java
    2) ???
    3) Profit

  21. how about downloading it w/o clickthru? by Anonymous Coward · · Score: 0

    It would be great if java was Free software as RMS et al point out. But at this point, what I would like is just the ability to download sun's java without the goddamn clickthrough. I'd like to just "emerge sun-jdk" or whatever on my Gentoo box and get the damn thing, without having to navigate all the different mutations and bundles.

    That's one cool thing about Free software. You can just get the URL and download it, no BS.

    So Sun, even if you don't open-source it, can you please just get rid of the clickthrough junk??? Nobody reads it anyway.

  22. How can a language be open-source? by creidieki · · Score: 3, Insightful

    I'm very confused by both the article from Gosling and the discussion here.

    "Java" is a programming language, right? Programming langagues doesn't have source code, they have specifications. Are they talking about open-sourcing a specific compiler for Java? Or are they talking about releasing or loosening license restrictions on the specifications for the language?

    1. Re:How can a language be open-source? by vegetasaiyajin · · Score: 2, Informative

      "Java" is a programming language, right? Programming langagues doesn't have source code, they have specifications. Are they talking about open-sourcing a specific compiler for Java? Or are they talking about releasing or loosening license restrictions on the specifications for the language?

      They are talking about open-sourcing Sun's compiler and runtime. The Java language specification is very open. It literally says:
      "Sun Microsystems, Inc. (SUN) hereby grants you a fully-paid, nonexclusive, nontransferable, perpetual, worldwide limited license (without the right to sublicense) under SUN's intellectual property rights that are essential to practice this specification. This license allows and is limited to the creation and distribution of clean room implementations of this specification...".

      --

      My heart is pure, but make no mistake, it's pure evil
    2. Re:How can a language be open-source? by mindriot · · Score: 2, Informative

      Don't forget that there's a whole run-time library associated with Java. You have the language specifications, of course, but there's also all the classes that are coming with the JRE already. These are available in source code within the Java SDK, but under a more restrictive license. And then there's also, of course, the compiler itself, the virtual machine, and tools like javadoc. OK, there's kaffe, for instance, but they're not completely there yet (read their What is Kaffe not? section on the title page). There's also GNU classpath to replace Java's core class libraries, but they're not quite there yet either.

    3. Re:How can a language be open-source? by Anonymous Coward · · Score: 0

      No, wer'e talking about making the java bytecode interpreter open source.

    4. Re:How can a language be open-source? by shaitand · · Score: 1

      Except changing the specification is not open, it rests with sun instead of a standards body.

  23. Possible solution: exclude Microsoft et. al. by MisterLawyer · · Score: 2, Interesting
    From the article:
    "Developers value Java's cross platform interoperability and reliability. They're afraid that if Java is open-sourced then someone will try to fragment the community by creating incompatible versions of Java and ignore the community process, just like Microsoft did. Microsoft did a lot of damage to the community and many developers strongly do not want that to happen again."

    Microsoft is one of a handful of entities in a strong enough position to be able to do a lot of damage to the community.

    In the present situation, that damage could be avoided by writing a License that, for example, specifically excludes 'any employee of Microsoft'.

    1. Re:Possible solution: exclude Microsoft et. al. by revolvement · · Score: 0

      In the present situation, that damage could be avoided by writing a License that, for example, specifically excludes 'any employee of Microsoft'.

      Hey, and then also they(Microsoft) could write a compiler with a licence that reads "For none of you poopyheads at Sun. Nyah nyah, you have to use GCC!"

    2. Re:Possible solution: exclude Microsoft et. al. by Anonymous Coward · · Score: 0

      But Sun's not going to be around, so it won't matter. :D

    3. Re:Possible solution: exclude Microsoft et. al. by revolvement · · Score: 0

      But Sun's not going to be around, so it won't matter. :D

      Sun's not going to be around? Is there still time to sell my solar panels then?

    4. Re:Possible solution: exclude Microsoft et. al. by 0racle · · Score: 1

      At which point you would have RMS crying that its not compatible with the GPL, and all the little people that hang on his every word would declare Java evil and would go on a crusade to try and convince everyone not to program in Java.

      In short the only thing that would change is Sun no longer has control of Java, so what was the point.

      --
      "I use a Mac because I'm just better than you are."
    5. Re:Possible solution: exclude Microsoft et. al. by Wesley+Felter · · Score: 2, Informative

      The open source definition includes "No Discrimination Against Persons or Groups" specifically to head off such misguided ideas.

      Besides, Microsoft doesn't need Sun's source code to fork Java. They have enough people to write a VM from scratch. Or they could use Kaffe.

    6. Re:Possible solution: exclude Microsoft et. al. by psycho_tinman · · Score: 1

      and Microsoft or anyone else who is in this "forbidden" list spins off another company and uses it to do the damage anyway ?

      Microsoft using SCO all over again ? You think they wouldn't ? Even if such a clause isn't outright discriminatory, and thus illegal, there are trivial ways to circumvent it.

    7. Re:Possible solution: exclude Microsoft et. al. by Anonymous Coward · · Score: 0

      HUH? Are you smoking crack? We WANT Microsoft to use Java, just as we want them to use Linux. The more people who use a technology the more attractive and useful that technology becomes to everyone else. Look at gcc or the Linux kernel for example.

      As long as the technology in question is GPL/LGPL, were safe, because any changes they make to the code are automatically re-licensed Freely to the general public (thanks to the GPL), and therefore, can be used by the developers of the original codebase if they're genuinely useful.

  24. On the topic of BSD-derived projects... by Anonymous Coward · · Score: 0

    Is it just me, or is ezine.daemonnews.org finally deader than a doornail? I mean, what with not having an issue out in two months and all....

  25. Why IBM Wants Open Sourced Java by njcoder · · Score: 5, Insightful
    Basically, they want to be able to have more control of it and Sun, or anyone else to have less.

    The reason for this is that IBM is the big money maker in the Java/J2EE Space. It is fighting strong competition from BEA and now JBoss, maybe soon to be Jonas and Geronimo.

    I think it's a credit to Sun that while they help build and manage the standards, they are not the big players providing the solutions that are being sold in that space.

    They would like to sell more of their Java middleware components and are working towards it but they are not dependant on that to make (lose) money. The fact that they haven't made changes to the specification to favor their products over any one else's products speaks volumes. They have said they were going to open the standards so that others may benefit and everyone will compete on other merits while offering a lot of common features. The market proves they've kept their word.

    I don't see IBM doing the same. Look at Mark Fluery's comments on how IBM forked a version of Axis back into a proprietary product. They did the same with other products they worked on. JetSpeed I believe is one.

    They get the open source developers to help build the application, help people get buy in, then they take the codebase in house and work on it from there making improvements and selling it for mucho dinero.

    That's not a bad thing, and is allowed under the license. The OS community has a good base to start building based on the initial investment by IBM. It's just something that isn't acknowledged by others.

    With the JCP, the new arrangements with the Apache Group, Java keeps getting more and more open (with a little 'o').

    Sun IS doing good things with Java and for the java developer community. They are making it easier for people to contribute back to java. Sun has a lot of things it needs to do in other areas but they really are doing a good job with Java. If it ain't broke why fix it?

    One of the reasons's Java/J2EE is doing so well is because of the competition in the marketplace. Different vendors bring different things to market. Some wind up becoming standards, some get coppied from others. It works out to the advantage of the user community who relies on these different technologies to do their jobs.

    Whether IBM will do this, we really don't know. They have more of an incentive to do this as JBoss is cutting into some of their installations. We do know that Sun isn't.

    1. Re:Why IBM Wants Open Sourced Java by psycho_tinman · · Score: 5, Insightful

      Ok, I'll bite. Sun is in the application server market, they have their own product. Is it one of the big names? No, it's not. Would they like that to change? I am certain they would. Just that it doesn't seem to be working too well at the moment. If you think for a moment that Sun isn't interested in controlling the direction of Java, google a bit for the rants people have written on how "heavy handed" and "autocratic" (I quote those terms because I don't completely agree) they can be in the JCP process.

      IBM already has the source, they have an implementation of the JDK, there is nothing to stop them from making competing products. The fact of the matter is that for IBM or anyone else, once you open source Java, they can fold it back into your own product, but nothing can prevent someone else from doing the same. We, as consumers, have the freedom to decide which implementation we wish to use. Do you honestly think that BEA and other application server makers won't scream blue murder ?

      I can't make a decision either way. On one hand, yes, there would be benefits to open sourcing Java. The community *could* get more involved in contributing extensions and patches to how Java works. The developer community surrounding Java being such, I think the pace of development would proceed at a much higher pace than Sun does. Another worrying factor is that if Sun has to fight for it's survival, it needs to make some tough decisions down the road. How many engineers will be pulled off a project which doesn't (strictly speaking) provide Sun with any revenue ? If Java development is left solely in the hands of a company who's survival is uncertain, then Java development will suffer as a result and I don't like seeing that happen.

      On the other hand, Sun hasn't done badly in it's role as "steward" of the directions in which Java goes.. They've (their marketing has) driven the Java brand relentlessly forward and I think the sheer size of the developer community is a good thing. I can't think of any reason why it would be advantageous for them to spend 8+ years promoting and developing the product, only to "give" it away to the masses. Even the Linux kernel has Linus at the helm. Who else can be trusted to take the helm of such a commercially valuable piece of intellectual property ? Who would resist the temptation to subvert it to their own ends?

      One final note to everyone who wants Java open sourced just so their favourite distro can start packaging it.. please, think a bit. Not all useful software is open sourced now, nor will it be in the foreseeable future. If it's your only reason for Sun to cast out a decade or more of research and development, it's not enough.

    2. Re:Why IBM Wants Open Sourced Java by njcoder · · Score: 1
      Ok, I'll bite. Sun is in the application server market, they have their own product. Is it one of the big names? No, it's not. Would they like that to change? I am certain they would.
      That's my point. They do have competing products but they don't use their control of Java to hurt their competition and make their products better.
      Do you honestly think that BEA and other application server makers won't scream blue murder ?
      Again I think that's the point I'm making. Sun isn't trying to kill competition. Other companies might if Java was open sourced. That doesn't just hurt sun, that hurts Java and the developer community.
      The community *could* get more involved in contributing extensions and patches to how Java works.
      They can already do this through the JCP. Individual membership in the JCP is free.
      Who else can be trusted to take the helm of such a commercially valuable piece of intellectual property ? Who would resist the temptation to subvert it to their own ends?
      Again, that's my point.
    3. Re:Why IBM Wants Open Sourced Java by modipodio · · Score: 1

      "They get the open source developers to help build the application, help people get buy in, then they take the codebase in house and work on it from there making improvements and selling it for mucho dinero."

      uuuh doesn't the GPL, which was the licence I believe IBM asked java to be released under, prohibit this ? If they wanted to make changes and keep the changes in house then they could not publicly distribute it ie sell it if java was released under the GPL. This is one of the main strengths of the GPL it stops people forking and running. Linus Torvalds has even commented on this fact :

      "I personally think that the BSD license is a dead end for serious projects, since it inevitably results in forking with no way to re-join if it becomes commercially viable.

      Forking a project is in my opinion hugely important, since forks are how all real development gets done, and the ability to fork keeps everybody honest (i.e. if you don't do a good job and keep your users happy, they can always fork the project and go on their own). But equally important is the ability to join back forks, when/if some group finds the right solution to a problem. And that's where the GPL comes in: you can really think of the whole license as nothing more than a requirement to be able to re-join a forked project from either side."

      --
      __________________________________________________ "UNIX is a fascist state, Windows is a democracy.
    4. Re:Why IBM Wants Open Sourced Java by njcoder · · Score: 1
      IBM didn't specify which license.

      in fact

      "He also said IBM is struggling for differentiation and that Sun has offered many technologies, such as Network File System and the OpenOffice office applications, under a General Public License while IBM has not offered technologies under a GPL. IBM has a problem in that the main beneficiary of its Linux demand generation is Red Hat and not IBM, according to Schwartz. "
      According to http://developers.slashdot.org/comments.pl?sid=106 069&threshold=-1&commentsort=0&tid=108&mode=thread &pid=9030397
    5. Re:Why IBM Wants Open Sourced Java by shaitand · · Score: 1

      "They can already do this through the JCP. Individual membership in the JCP is free"

      Yes and IF accepted (unlikely) then your contribution will sit on a shelf for a MINIMUM of 6-12months before being accepted.

      "Again I think that's the point I'm making. Sun isn't trying to kill competition. Other companies might if Java was open sourced. That doesn't just hurt sun, that hurts Java and the developer community."

      How exactly is it their going to accomplish this I wonder? They can implement a non-standard vm already, hell they can even license sun's from sun and do it. With an open source license like the gpl they would have to gpl their changes which precludes doing anything like what you suggest.

    6. Re:Why IBM Wants Open Sourced Java by modipodio · · Score: 1

      Fair point concerning IBM and a specific licence but if sun were to release java under an open licence I don't think they would offer it under one that would allow IBM the chance to run away with the ball. IBM may not have said release your source under the GPL but I harldy think they were expecting SUN to release their code under the BSD licence.

      --
      __________________________________________________ "UNIX is a fascist state, Windows is a democracy.
    7. Re:Why IBM Wants Open Sourced Java by njcoder · · Score: 1
      By the way I came across this interesting account of IBM and abusing patents recently and thought I'd share. It made me laugh considering all the IP legal stuff going on with them now. For those of us that weren't around when IBM was the evil empire, it is a good refresher.

      This probably won't be seen by many people at this point but what the heck.

      My own introduction to the realities of the patent system came in the 1980s, when my client, Sun Microsystems--then a small company--was accused by IBM of patent infringement. Threatening a massive lawsuit, IBM demanded a meeting to present its claims. Fourteen IBM lawyers and their assistants, all clad in the requisite dark blue suits, crowded into the largest conference room Sun had.

      The chief blue suit orchestrated the presentation of the seven patents IBM claimed were infringed, the most prominent of which was IBM's notorious "fat lines" patent: To turn a thin line on a computer screen into a broad line, you go up and down an equal distance from the ends of the thin line and then connect the four points. You probably learned this technique for turning a line into a rectangle in seventh-grade geometry, and, doubtless, you believe it was devised by Euclid or some such 3,000-year-old thinker. Not according to the examiners of the USPTO, who awarded IBM a patent on the process.

      After IBM's presentation, our turn came. As the Big Blue crew looked on (without a flicker of emotion), my colleagues--all of whom had both engineering and law degrees--took to the whiteboard with markers, methodically illustrating, dissecting, and demolishing IBM's claims. We used phrases like: "You must be kidding," and "You ought to be ashamed." But the IBM team showed no emotion, save outright indifference. Confidently, we proclaimed our conclusion: Only one of the seven IBM patents would be deemed valid by a court, and no rational court would find that Sun's technology infringed even that one.

      An awkward silence ensued. The blue suits did not even confer among themselves. They just sat there, stonelike. Finally, the chief suit responded. "OK," he said, "maybe you don't infringe these seven patents. But we have 10,000 U.S. patents. Do you really want us to go back to Armonk [IBM headquarters in New York] and find seven patents you do infringe? Or do you want to make this easy and just pay us $20 million?" After a modest bit of negotiation, Sun cut IBM a check, and the blue suits went to the next company on their hit list.

      In corporate America, this type of shakedown is repeated weekly. The patent as stimulant to invention has long since given way to the patent as blunt instrument for establishing an innovation stranglehold.

      Gary Reback

      By the way if you don't like the original source it's also on Forbes.com

      How do you like dem apples?

  26. The boss by Omega1045 · · Score: 4, Insightful
    So, who should have custody of the child, the father...or the boss?

    I think making Java open source would be very cool. But I am sure all of the developer who invented Java were paid well for their time, and Sun should make the decision.

    --

    Great ideas often receive violent opposition from mediocre minds. - Albert Einstein

  27. Re:So... by Moofie · · Score: 1

    Computer languages are defined by...what? Compilers. And compilers are...what?

    I'll let you figure out the rest.

    --
    Why yes, I AM a rocket scientist!
  28. Re:So... by Rosco+P.+Coltrane · · Score: 4, Insightful

    What kind of idiot would confuse a freakin' computer program with a child?

    A computer program is much like a child : when you release the first versions, it keeps on crapping out and you're constantly after it to fix it, then it slowly grows and grows and costs more and more money to maintain, then it's big enough that it becomes an ugly unmanageable thing that keeps on making unreasonable demands on the system, then when it finally matures, it leaves the development team and goes in maintenance mode until it's end-of-lifed.

    --
    "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
  29. Already been done... by MisterLawyer · · Score: 1

    The open source gnomes tried that one, but it didn't work.

  30. Re:So... by mukund · · Score: 1

    Just why is the parent post marked flamebait? It makes perfect sense.

    --
    Banu
  31. Re:What's important is; Shareholder lawsuit by David+Hume · · Score: 3, Insightful

    What's important is that they open-source it before Sun tanks, or before some nasty company takes control of it. In short, they ought to do like Netscape did, and I'm sure even McNealy would rather do that than any other alternative...


    Well, at least as long as they don't admit to doing so publicly. :) Can you say, "Shareholder lawsuit for waste of, or giving away, corporate assets?" I knew you could. :)

    Yes, your Honor, we decided to essentially give away our valuable intellectual property for no consideration (i.e., nothing in return) before some "nasty company" could either: (a) buy the property; or (b) pay more for Sun's stock based on Sun's owndership of the property. NO, we wouldn't want that! Not if it meant Microsoft might get the property. Similarly, we couldn't possibly take the risk that MS would buy the asset out of bankruptcy, thereby enriching our creditors and/or stockholders.

  32. "If Done Carefully" by njcoder · · Score: 3, Insightful
    He says "if done carefully". Open sourcing Java isn't just a simple matter of replacing the license.txt file. There is a lot at stake and you don't want this to be the thing that kills Java.

    Of course if it doess all the OS zealots will say "see they did it too late".

    I don't see Gosling's comments as as strong a call to open source java as other's do.

    He's saying there could be a good thing.

    The rest of Sun thing it could be a good thing too that's why they were looking into it. It's neither an easy decision to make nor an easy one to implement.

    1. Re:"If Done Carefully" by smallpaul · · Score: 1

      What is all of this "kills Java" crap? Name a healthy technology that died out after it was open sourced. Even Netscape, which was already dieing, is undeniably doing better as open source then it would have.

    2. Re:"If Done Carefully" by shaitand · · Score: 3, Insightful

      How could it possibly kill java to open source it? I imagine sun would remain the maintainer, so it's not exactly like anything is going to go in they wouldn't approve of.

      The whole "millions of forks" argument is pointless. Anyone can look at the specs and implement a Java VM NOW and many DO. In fact there are open source Java VM implementations ALREADY so anyone too lazy to code one from scratch can do it now.

      What we have NOW is millions of forks, if java opens and sun actually accepts contributions as well (if they don't, it WILL fork and eventually settle on another major VM, read XFree86) then alot of those will disappear as additional features they offer become part of the new open source Sun java.

      Open sourcing java alone is not enough though, two other things need to happen.

      1. Sun must actually actively maintain and accept contributions. Or appoint a third party from the community to do so.

      2. The spec must become standardized and be taken out of sun's hands so that the community can actually submit extensions, etc.

      Basically Java must become open. As far as the VM, yes it's a matter of changing the license.txt file and putting the source out there. Fragmentation won't occur if they don't give it a reason to, if sun is slow or unwilling to accept contributions THEN it will kill java.

  33. Free Java? by oO+Peeping+Tom+Oo · · Score: 1

    Well, I DO care for a hot complimentary drink from time to time....

  34. by definition Gosling is not the father of Java by Anonymous Coward · · Score: 2, Interesting

    He was (and still is) a Sun employee and developed Java during that time, by today standards any product developed by an employee is property of the company, so even McNealy is the father, McNealy is just the obnoxious uncle that says wierd things when is drunk.

    Gosling was just a surrogate father.

    BTW what happened to the other people around OAK project?, did sun killed all of them and throwed them into a ditch?.

    1. Re:by definition Gosling is not the father of Java by persaud · · Score: 1

      Several went from Sun to Marimba.

    2. Re:by definition Gosling is not the father of Java by kubrick · · Score: 1

      BTW what happened to the other people around OAK project?, did sun killed all of them and throwed them into a ditch?

      Well, some people wouldn't have been upset if that had happened to Patrick Naughton. Hopefully he's still behind bars.

      --
      deus does not exist but if he does
  35. Are you pregnant? Wow, do we have a child? by Anonymous Coward · · Score: 1, Funny

    Well, dear, yes and no...

  36. GPL Java? Who cares... by Anonymous Coward · · Score: 2, Interesting

    As has been pointed out, it's a programming language with an environment. Open sourcing it is irrelevant. What it really needs is ISO Standardisation - so that the test suite is not a moving target as defined by a single vendor.

    For goodness sake, MS did that for C# and environment that it requires. Anyone can implement it and MS get no say and no kickback.
    Please may Sun do the same for Java.

    1. Re:GPL Java? Who cares... by shaitand · · Score: 1

      Despite what some people are saying, the reason for opening it up (as well as standardizing it) is so that improvements can actually get into real sun vm.

      If we can pull that off then there won't be 200,000 different vm's anymore that splinter off from the standard. Forks is what have WITHOUT open source, unification is what we'll have WITH open source... assuming sun actually accepts contributions.

  37. Weekly Schedule by cubicledrone · · Score: 4, Funny

    Monday: Open source Java
    Tuesday: Forked
    Thursday: Enormous whirling clusterfuck

    Saturday: Start on new language

    --
    Business isn't willing to pay for products, innovation and careers, so we get brands, mortgage commercials and layoffs.
    1. Re:Weekly Schedule by Daleks · · Score: 1

      No one can't fork Java already on their own. They just can't call it Sun brand Java. The whirling custlerfuck and starting on new languages can already take place. So what are you waiting for?

    2. Re:Weekly Schedule by hak1du · · Score: 1

      Monday: Open source Java
      Tuesday: Forked


      You bet it would be forked by Tuesday. And those forks would survive in the real world if and only if they are actually more useful to users than Sun's version. That's, of course, what Sun is afraid of: they know they can't compete if they are forced to compete freely.

      Of course, Java has already forked: that's what Kaffe, gcj, and C# are. C# will probably take over from Java in the open source world: it's less restrictive and it's technically superior.
  38. what if things work out fine? by MozillaFireBird · · Score: 1

    Let's say RMS and ESR pushed Sun to open up Java. What are we gonna call it? Open-Java or Free-Java? Mind you, free as in freedom.
    If your program is free software, it is basically ethical
    Classic Stallman, talking about ethics again. So guys, which one do you prefer? Open? Free?

    --
    Happy Hacking!!!
    1. Re:what if things work out fine? by Anonymous Coward · · Score: 0

      RMS will call it GNU/Java, I guess

    2. Re:what if things work out fine? by MozillaFireBird · · Score: 1

      Well, I don't think so. Because, first of all, he's not that stupid. I do think the entire OS should be called GNU/Linux, instead of just Linux, as most of the packages are GNU stuff. Bash, GCC, GDB, GNU automake...heck, no standard distro comes without this stuff (it won't be a "standard distro" if it did). Since GNU has nothing to do with Java, we may safely call it Java, not GNU/Java. What do the other geeks prefer, open-java or free-java. My vote for free-java. It's more ethics that just coding practise :-)

      --
      Happy Hacking!!!
    3. Re:what if things work out fine? by dfghjk · · Score: 1

      RMS should start his own dictionary.

    4. Re:what if things work out fine? by shaitand · · Score: 0, Troll

      "I do think the entire OS should be called GNU/Linux, instead of just Linux, as most of the packages are GNU stuff. Bash, GCC, GDB, GNU automake..."

      This is offtopic and I should be modded into the ground but everytime I see this I just can't let it go.

      First point: The ENTIRE OS is the kernel, everything else merely interfaces with the OS and is thus either a library or an application. System utils like those you mentioned above are still just apps. Since the Kernel is the OS, and it's author(s) choose to call it Linux, it is properly refered to as the Linux Operating system or a linux operating system (as the case may be).

      Individual applications may be called by their respective names. And distributions again should be called by the name whoever compiles the distro chooses to call it. There's nothing that says Fedora linux, couldn't just be called Fedora for instance (they name the full distribution after the OS which make sense but isn't required).

      The GNU applications are often packaged with linux, but there is no particular reason for them to be. The BSD tools for instance would work just fine. And further, most of the GNU utils are pretty trivial stuff to say the least, would you like to see me write half of them using a grand total of less than 100 lines of perl code? They are by no means ALL trivial and some are good stuff, but there's nothing there that couldn't be replaced either...

      Most distributions include 100's or even thousands of programs coupled with the Linux Operating system, compared to the total the GNU stuff really isn't all that much I don't know where people get this idea.

      In short, there is no actual credible reason to call the Linux OS GNU/Linux. Simply because he's depressed that hurd is pretty thoroughly lame and useless isn't a good enough reason to call it by something other than the name the author and maintainer has chosen for it.

    5. Re:what if things work out fine? by Anonymous Coward · · Score: 0

      Please, dont mention RMS and ESR in the same sentence. ESR may have done alot for the community, but his contributions are pedestrian compared to RMS's, who single handedly started the Free Software movement.

    6. Re:what if things work out fine? by maxwell+demon · · Score: 1
      Please, dont mention RMS and ESR in the same sentence.

      Funny that you did so yourself in exactly the sentence asking not to do so ...
      --
      The Tao of math: The numbers you can count are not the real numbers.
    7. Re:what if things work out fine? by glenstar · · Score: 2, Insightful
      I do think the entire OS should be called GNU/Linux, instead of just Linux, as most of the packages are GNU stuff.

      You know, all it would take to make that a reality would be an advertising clause in the GPL saying something like "If you use this software in your program you must acknowlege the GNU project by either prepending 'GNU/' to the program's name, or...'

      Trying to retroactively rename things GNU/ is just plain silly.

  39. Re:So... by njcoder · · Score: 1
    It's marked flaimbait because "Sun is setting" is just wishful thinking by the linux community. Sun has a lot of things going for it.

    They've hit hard times for a lot of different reasons. Companies come back. Novell kinda did, Apple did.

    Sun has a lot of stuff going for it and they are finally starting to listen to their customers more. Better integration with MS, no more bickering with MS, more support of Linux and open source, more options in commodity hardware, bringing back solaris x86.

    Another anology could be that Java could be what's keeping them from hemoraging even more. Release Java, and Sun could be in worse shape. It's a difficult decision they have to make but they're the ones that have to make it. They've been good to the Java developer community and whether they GPL java or not, they're track record indicates that they will take the needs of the developer community into account.

  40. dont know if its a good idea. by xmorg · · Score: 2, Insightful

    I dont know if its a good idea to open source Java. Imagine every website you come to demanding that you install their "version" of the java plugin. Which then of course, in addition to adding addware to your system, will generally screw up your java environment. MS VM anyone?

    1. Re:dont know if its a good idea. by BokLM · · Score: 2, Interesting

      There is no reason for this.
      Do you see a lot of programs that require you to install their "version" of python or perl to run ?
      Do you know a lot of .sxw files that require you to install their "version" of OpenOffice ?
      Do you know a lot of .tex that require you to install their "version" of LaTeX ?

      The MS VM was different, they volontary created something incompatible to break portability (that's what they often do).

  41. The devil's in the details by Wesley+Felter · · Score: 4, Insightful

    One thing Gosling neglects to mention is that it costs tens of thousands of dollars to get access to the test suite.

    While compatibility is great, a major advantage of open source is the ability for people to make and distribute experimental changes (after all, new features often start out as experiments).

    While anyone can get the source code to Sun's VM, there is concern that looking at the code taints you for life, unlike open source.

    1. Re:The devil's in the details by Anonymous Coward · · Score: 1, Interesting

      there is concern that looking at the code taints you for life, unlike open source.

      FUD. The license specifically grants you the rights to study the code for research and learning purposes. This not an NDA.

    2. Re:The devil's in the details by persaud · · Score: 1
      Back in 2002, Sun offered $3M worth of TCK-testing grants to the open source community (for projects represented by a non-profit foundation), as a result of discussion with the Apache Foundation:

      Sun had to completely revamp its Java licensing model in order to create a separate license for TCKs. "That's what all this negotiation was... they [Sun] had all these various licenses. Their whole business model used to be that they'd license the [reference implementation] RI, the TCK, the trademarks, all in one big bundle, and you couldn't just get the Test Kit as an independent implementation."

      Sun had to change all of that and work with the Apache group to arrive at a new TCK license that was acceptable to the Open Source group. "Sun changed their business model to now allow [developers] to just have a TCK license," Hunter told OET.


      Anyone know of open-source projects that successfully participated in this TCK program?
    3. Re:The devil's in the details by aristotle-dude · · Score: 1
      Compatibility across platforms is the main feature of Java. It is not a hacker language.

      For people working in enterprise environments compatibility is everything.

      Instead of trying to pushing to open source everything, shouldn't we be pushing for more open standards and for proprietary software to adopt them?

      --
      Jesus was a compassionate social conservative who called individuals to sin no more.
  42. Response to Mono? by PCM2 · · Score: 5, Insightful

    I think -- and I'm really serious -- Sun should probably be looking at open sourcing Java as a response to Mono, if for no other reason.

    Miguel and Ximian took a look at Java and decided it didn't suit their needs, as far as developing rich desktop applications for Linux (e.g. Evolution). So rather than use Java, they decided it was actually better to implement the .Net environment themselves, from scratch. To me, that sounds like a fairly heavy indictment, and one that Sun should be looking into, if they're smart.

    Now you've got Mono humming right along, with the developers busy implementing two distinct stacks: One that's a Microsoft compatibility layer, for using all the stuff you might have written with Visual Studio, and another that's more Linux-oriented, with GNOME and GTK bindings, Linux printing architecture support, and so on -- the kind of things that people hope would come of an open-sourced Java.

    If Sun doesn't care about this, they've got more problems than I realized.

    --
    Breakfast served all day!
    1. Re:Response to Mono? by r.jimenezz · · Score: 1
      I am a bit ignorant about Mono, but I understand .NET and Java well enough, and I'd like you to clarify something for me.

      I interpret your writing as saying that Miguel et al want Mono to benefit from Visual Studio as a development tool. So they're working on that and they're working on some other stuff, like the bindings, printing support, etc.

      The tools bit I can understand. VS.NET is good. I would say Eclipse, NetBeans and IDEA are at least as good though.

      So we are left with the model. WinForms vs Swing or AWT or SWT. You could say WinForms is better/easier. I guess it depends a lot on the fact you have VS.NET behind it. Back to above.

      As for the rest, it is not clear to me why wouldn't they be able to somehow implement this in Java.

      Bottom line: I am not sure Sun should really take this as an indictment. Miguel is betting on being able to do this (with the ECMA standardisation of C# and whatnot), but I am not sure that he'll manage to keep up with Microsoft any more that he could against a non-open source Java like we have now.

      Just my opinion :)

      --
      The revolution will not be televised.
    2. Re:Response to Mono? by earache · · Score: 1

      Because, like it or not, C# is a better designed language than Java. It's a nice bridge between C, C++, Java and - yes - object pascal.

      Additionally, the idea of the CLR is language neurtrality which means that Mono isn't tied to a specific language. All the linux geeks won't lose anything by writing mono apps in python/perl/ruby/what have you.

      Plus, if it's broken, you got the source, fix it.

    3. Re:Response to Mono? by PCM2 · · Score: 5, Insightful

      True, true ... you could probably do a lot or even all of it with Java. But my point is that Miguel doesn't want to. He thinks Sun has failed to listen to the market as far as language features, changes to the VM, etc. While Microsoft, on the other hand, has developed what is essentially a Java competitor, only they've taken the opportunity to learn from all of Sun's mistakes or shortcomings. (Plus, .Net does some things that Java will never do, like multiple language support in the VM.)

      So here's Ximian, now part of Novell, pouring a significant amount of resources into developing tools that will make building complex desktop applications easier on Linux -- and they're not doing it with Java. I think that's significant, or at least Sun should see it as being significant.

      Because meanwhile, here's Sun promoting what's essentially a Linux distribution for the desktop, only they're branding it "Java." It's not the Sun Linux Desktop, it's the Java Desktop. One is led to ask: Is that supposed to be some kind of hint? What are we led to infer about Sun's Linux position, based on that? For a company that's suddenly all about promoting Linux on the desktop, just what has Sun done for the Linux desktop application developer lately? What do they intend to do?

      I guess it all comes down to Sun's perpetually half-assed Linux strategy. Do they have a Linux strategy, or don't they? Is Linux on the desktop important or isn't it? They can call their Linux desktop "Java" all they want, but at the end of the day, if the best tools for developing desktop applications for Linux are going to come from Mono... well, good luck, Sun.

      So that's why open-sourcing Java could be a good move for them. Even if it doesn't really change anything much about the way Java works in the real world, at least it could send some sort of message to the growing community of developers who are interested in Linux -- and open source in general -- that Sun is finally ready to either shit or get off the pot.

      As far as the WinForms stuff, Miguel doesn't really advocate that approach over any other. Mono is developing the more Linux-oriented stack precisely to suit the people who have no interest in WinForms development. But, for obvious reasons, a lot of the developers working on Mono are Windows developers. And a lot of the real-world code written in C#, for the foreseeable future, is going to be written on Windows, and a lot of those developers are going to use the tools available to them, including WinForms. So supporting that style of development with Mono is a good thing, as far as growing the installed base of Mono-compatible developers. But even if, at some point in the future, it became problematic, infeasible, or even impossible for Mono to keep up with what Microsoft is doing with .Net, Ximian would still continue to use Mono and the core .Net framework to do their development. They just wouldn't use WinForms (or whatever its successor might be).

      --
      Breakfast served all day!
    4. Re:Response to Mono? by Alomex · · Score: 1

      Because, like it or not, C# is a better designed language than Java.

      For sure. C# is what Java could have been had the original creators had enough guts to do an apocalypse-like revision of the language. To their credit they did revise the AWT disaster, but didn't go any further.

    5. Re:Response to Mono? by r.jimenezz · · Score: 2, Interesting
      Thanks for the thorough reply. I confess I'm not a big Mono fan for a number of reasons, but what you've said is 100% true. Java is being disregarded as a desktop alternative on what is perhaps the last front it had other than the server side, given that Windows developers want (and justly so) tools that allow them to e.g. write natively to the System/Application Event Log, etc., and the war on the browser is long lost to Flash.

      We do agree, then, that Miguel is doing this based above all on personal preferences about the language and not necessarily based on platform capabilities or deficiencies. And it might just be the right call especially because of the multi-language thing.

      (Not that your previous post meant differently, but as I said earlier I needed a bit more detail. Thanks again!)

      --
      The revolution will not be televised.
    6. Re:Response to Mono? by chromatic · · Score: 1
      Additionally, the idea of the CLR is language neurtrality

      Sure, that's the idea, but the actual situation is that only languages that act like C# or Java run well on the CLR. It's certainly possible to emulate continuations and closures and coroutines atop the CLR, but you'll lose a lot of speed and probably a lot of flexibility that way.

      Unless the CLR suddenly gains several new features not present in C#, Perl, Python, and Ruby will likely never run well -- or fully -- on it.

    7. Re:Response to Mono? by OmniVector · · Score: 4, Insightful

      i was looking for this post. and i was thinking of modding it up but felt i'd rather reply. you hit the nail on the head. if sun doesn't open up java now, it stands to let C# walk all over it. there's a major problem with java right now in that no distro in linux can bundle it. installing it in most distros is a pain in the freaking ass and requires going to some java website, clicking agree on a bunch of stupid licsense agreements, etc. in short, it's not SEAMLESS. and java support should be in every distro out of the box such that java could become *the* new language for desktop development via java gtk/gnome bindings. you have to take a look at the current stance of java. it's preinstalled on all os x machines. it *could* be bundled with linux machines, or easily installed via apt-get install sun-jdk or emerge sun-jdk, but as it stands we can't do this because it requires that damn website/license agreement crap. switching to gpl would fix this, and suddently grind the C# momentum to a halt i think. c# honestly has a few nice perks but the advantages stop there. the ONLY advantage you get out of supporting C# is the windows world suddently has the ability to run your apps. and i'm all for allowing easy porting, but i don't think the solution to porting is to make it easy for the crappiest OS in existance to have easy port capabilities. we should set our standards higher, and worry more about making the best environment out of the tools we have. and currently java is more portable via applets, preinstalled on os x, and if gpled preinstalled in linux, than just supporting windows.

      --
      - tristan
    8. Re:Response to Mono? by JInterest · · Score: 1

      I think -- and I'm really serious -- Sun should probably be looking at open sourcing Java as a response to Mono, if for no other reason.

      Actually, my impression is that Mono is just one more aspect of Ximian's strategy of making Windows work-alike/interoperable programs. Java was unsuitable to their plans precisely because Microsoft is using .Net. Simple as that.

      Whether that approach is a GOOD IDEA is a different matter. I'll stick with Java for my own stuff, thanks.

      Mono will always be second best, playing catchup with MS's implementation. With Java, you can get the "real thing" straight from the source.

    9. Re:Response to Mono? by Tim+C · · Score: 1

      java support should be in every distro out of the box such that java could become *the* new language for desktop development via java gtk/gnome bindings

      Let's not get ahead of ourselves here, shall we? Linux still only has an absolutely minute share of the desktop market. Doing what you say might make Java "*the* new language for desktop development" on Linux, but hardly in general. Even that is far from certain, though, given the amount of downright hatred there is for it amongst people here.

      switching to gpl would fix this, and suddently grind the C# momentum to a halt i think.

      You think wrong. C# has enough advantages and nice features that almost no matter what is done to Java, it's not going to go away. The same is true the other way around, of course - C# isn't going to make Java go away, either.

      (Disclaimer: I code C# for fun, and Java for profit)

    10. Re:Response to Mono? by greg_barton · · Score: 1

      (Plus, .Net does some things that Java will never do, like multiple language support in the VM.)

      100% wrong: JYthon

    11. Re:Response to Mono? by lfourrier · · Score: 1

      jython is one in many.
      look at : http://grunge.cs.tu-berlin.de/~tolk/vmlanguages.ht ml

      now, in term of ease of integration, .Net is perhaps better. Easy when there is only one vendor.

      And remember the saying, C# is a skinnable language : there is a cobol skin, a VB skin, a fortran skin ..., but it is always the same language.

  43. "Java" is a standard, not a product. by Anonymous Coward · · Score: 5, Interesting

    Anyone is free to make their own implementation of a Java framework. There's an (outdated) list here of alternative implementations (and possibly more here as well).

    For example, SableVM and Joeq are the first two that I found on Sourceforge (and there are several more).

    So it's not really a question of "open sourcing Java" - because there are already open source implementations of Java (and a few commercial ones as well). It would be a question of Sun opening up their reference implementation of Java.

    So the main advantage of opening up their reference implementation would be to focus the software community's efforts more on one Java implementation and to stop the fragmentation. People would still be free to develop their own Java compatible VM's & compilers, but it would provide less of an incentive for them to do that if there's one central, relatively community-oriented distribution.

  44. logicly by Anonymous Coward · · Score: 1, Insightful

    Saying that Java is Gosling's is like saying that the US government is Bush's.

    While one can argue that Gosling is the core hand in Java, he neither financed it nor did most of the work.

    More importantly, if it is open sourced, what license would it be under to prevent forking and the like since a (the) core value of Java is its universality?

  45. McNeely married Java, but wants some XAML lovin. by LibertineR · · Score: 1

    The man repeats the word "Avalon" in his sleep. His old faithful is gettin fat and doesnt put out as much, and Bill Gates introduced him to a hot young thing that made him want to abandon his family and take up with the slut across town with all the new moves.

  46. last time I checked, java was already open source by aggieben · · Score: 0, Informative
    --
    Don't become a regular here, you will become retarded. -- Yoda the Retard
  47. Re:So... by Moofie · · Score: 1

    Do it again. Come on. This time, you'll feel better about yourself. Really!

    --
    Why yes, I AM a rocket scientist!
  48. Re:What's important is; Shareholder lawsuit by mattyrobinson69 · · Score: 2, Interesting

    GPL isn't giving it away. its not as if you have to pay for it anyway. whats the difference between freeware and GPL to shareholders?

    all it means is that the OSS community can make it better, and Sun can, if they want, use it more in their operating systems or whatever to get more money.

    how is GPLing something thats already freeware giving it away?

  49. Why don't ........ ? by Usagi_yo · · Score: 2, Interesting
    The people who want open source Java just buy it from Sun and then make it open source. I'm sure Sun would sell it for a billion or so.

    Oh, wait. You want something Sun spent 100's of million dollars developing, and protecting for free. Like 100% really free.

  50. Re:What's important is; Shareholder lawsuit by Wesley+Felter · · Score: 2, Informative

    Sun actually makes millions of dollars from licensing their VM source code to IBM, Apple, HP, BEA, etc.

  51. Fragmentation by Florian+Weimer · · Score: 3, Insightful

    A couple of years ago, most vendors certified their Java software just for selected Sun JVM versions. This meant that most serious Java users had to install different JVM versions on their systems. In a sense, Sun had already fragmented Java on its own.

    Has this changed in the meantime? Is Sun's Java implementation fully backwards compatible now, and do other vendors trust Sun in this area?

  52. Re:What's important is; Shareholder lawsuit by mattyrobinson69 · · Score: 1

    dont believe you.
    look *points*, a purple cat-frog

    ok, forget that

    i thought we were just on about the runtimes

  53. GPL the JVM and keep the trademark by forlornhope · · Score: 2, Insightful

    Somebody probably already said this, but...
    I dont get why Sun can't keep the trademark and make people pass the test suite to us the Java trademark. Isnt this what happened to UNIX, the trademark went to one company and you have to pass a test suite to call your product a UNIX. This would be optimal for sun because Java would get a lot more use and development, while they still get to control what is called Java.
    Maybe there is a difference that I just don't see, but it seems like they are doing this already, just also placing that as a restriction on distributing the changes as well. GPL the source and keep the trademark. Its that simple.

    --
    "We Don't Need No Truthless Heros!" - Project 86
  54. Sun's New Business Plan by Anonymous Coward · · Score: 0

    1. Open Java
    2. ???
    3. Profit!

  55. Just open source the Java J2ME,J2SE,J2EE Libraries by NZheretic · · Score: 1, Insightful
    It would benefit the entire Java based industy, including the free software, open source and proprietary based vendors, to open license the core J2ME,J2SE,J2EE libraries and Java to bytecode compilers.

    Java's primary strength, the ability to write code which is constantly portable across many vendors platforms, would be greatly enhanced if all of vendors were using the same core libraries.

    To insure that the standard base core would not become polluted with incompatable forks, the source could be licensed with a clause requiring any incompatable changes or any additional classes or methords to be moved to and occupy only the vendors namespace. Another clause would require that the vendor version of Java bytecode compiler and any GUI IDE defaults to generating portable bytecode, without embedding any vendor specific references.

    The OSF definition of an open source license clause five explicitly states: "The license may require derived works to carry a different name or version number from the original software."

    Contributions to the core standard would be required to licensed under the same open source license. The existing JCP standard body could decide what becomes part of the Open Java Core. Sun would still retain the veto, and the Java J2ME, J2SE and J2EE brand would be still be protected under trademark law.

    It should not be necessary to open source license Sun's JVMs. In the long run it could greatly benefit Sun to develop the JVM under a dual license as it doing with OpenOffice.org and selling StarOffice.

  56. RTFA, my friend by melquiades · · Score: 5, Insightful

    Stallman is less open minded than Java is open source.

    OK, here's the deal with the Java source code: You can get it. You can modify it. You can redistribute it.

    BUT...

    It has to pass Sun's compatibility tests.

    OK, so yes, I can see how an ideologue like RMS would lump Sun's Java implementation into the same category as closed-source software. But really, you do have quite a lot of freedom with Java. It's just that Sun (and the Java community, myself included) are very concerned about compability: cross-platform dependability is one of Java's must important features, and forking is a big concern. (Sun was already bitten once by Microsoft making an incompatible "Java" and basically wreaking havoc on the client Java market for years.) Just look at all the crap that goes into the typical C/C++ project's ./configure.sh to see why Sun is so anal about this!

    Gosling explains this well in the article (for those who actually read it...).

    On top of all that, Java != Sun's implementation of Java. Everything in Java is determined by a spec -- the language, the runtime, the libraries, everything. If Sun's requirement that you pass their test suite is too restrictive, just write your own damn implementation of the specs. Yes, I know that's a lot of work. Boo hoo hoo.

    JessLeah is totally wrong on this point: the reason that the GNU Java projects are not "Java proper" is not that Sun didn't make them, but that they are immature and don't completely implement that Java spec. I think this may help explain why RMS is so sore (and unfair) on this point: GNU Java kind of sucks, even after many years of work, his "free software" baby isn't winning in the Java world, and nobody really cares except GNU ... so there's a bit of sour grapes.

    1. Re:RTFA, my friend by njcoder · · Score: 2, Interesting
      "JessLeah is totally wrong on this point: the reason that the GNU Java projects are not "Java proper" is not that Sun didn't make them, but that they are immature and don't completely implement that Java spec. I think this may help explain why RMS is so sore (and unfair) on this point: GNU Java kind of sucks, even after many years of work, his "free software" baby isn't winning in the Java world, and nobody really cares except GNU ... so there's a bit of sour grapes."

      I'm trying to find a sound file of a hammer hitting the nail on the head. I can't find one... so just use your imagination.

      The people actually working on the GNU java stuff don't want Sun to open source Java. they want to prove that they can do it themselves with out their help and do it better. There was a post on one of the previous slashdot threads by one of the developers indicating that.

      The reality though is that most of the open source projects don't get to where they are based on a large community of volunteer developers. The big gains in open source software have been by corporations donating money and paying their developers to work on open source solutions. I'm not saying this is bad, but it should be recognized.

      Maybe RMS is still just ticked off at Gosling over emacs.

    2. Re:RTFA, my friend by IGnatius+T+Foobar · · Score: 1

      Easy solution:

      Open the code base. Slap a GPL or multi-license (such as is currently done with OpenOffice) on it.

      But, be very strict about the name. Only a build that has passed Sun's compatibility tests would be able to be called "Java."

      I think that would make everyone happy -- even hotheads like McNealy and Stallman.

      --
      Tired of FB/Google censorship? Visit UNCENSORED!
    3. Re:RTFA, my friend by hak1du · · Score: 1

      JessLeah is totally wrong on this point: the reason that the GNU Java projects are not "Java proper" is not that Sun didn't make them, but that they are immature and don't completely implement that Java spec.

      So, you agree: the only complete implementations of Java are from Sun, which makes those implementations about as proprietary as Microsoft Windows.

      Now, it is Sun who keeps claiming that Java is somehow open. Well, the burden of proof to support those claims is on Sun. If, after nearly a decade, there are no independent Java implementations around, we have to assume that such implementations simply aren't feasible. Whether the specifications permit independent implementations in theory is academic: if such independent implementations don't exist, Java just isn't interesting for either open source users or commercial users that don't want to be tied to the (mis-)fortunes of a single company.

      In different words, if Sun goes out of business (and there is a good chance they will), you will likely end up with an orphaned, unsupported platform whose maintenance nobody can take over. That is exactly what OSS and open standards were meant to avoid, but Java isn't delivering.

    4. Re:RTFA, my friend by newhoggy · · Score: 1
      forking is a big concern ... Java != Sun's implementation of Java

      Has it ever occured to you that a totally different implementation conforming to the same spec is the same as forking from day 0?

      Let's get this straight. Forking is not an issue. Compatibility is.

    5. Re:RTFA, my friend by Anonymous Coward · · Score: 0
      If sun DOES go out of business, they will not simply disappear one morning, with all their code and contracts and such gone. This ain't a rug seller store on main st.

      And parts will be spun off or sold before they entirely tank.

      recall too that SGI, Apple and BSD have been going away for well over 10 years.

    6. Re:RTFA, my friend by Anonymous Coward · · Score: 0

      >>Sun was already bitten once by Microsoft making an incompatible "Java" and basically wreaking havoc on the client Java market for years

      I can hear the conversation now.

      MS: We can't use what you sold us without some changes. Please add the following: http://www.javaworld.com/javaworld/jw-11-1997/jw-1 1-pitfalls-p2.html

      Sun: That would only be usefull on 90 percent of of installed operating systems. Our requirement is 100%.

      MS: We can work with you to fix it.

      Sun: Fat Chance! It is what it is. You bought it, you gotta eat it.

      MS: Screw it, we'll do it ourselves.

      Probably works the same way with everything else Sun sells to anybody.

    7. Re:RTFA, my friend by Anonymous Coward · · Score: 0

      No, you're wrong.

      Joe User can't just get the source code to the Sun JDK, modify it, and redistribute it. If he could, that would make it Free under the Debian Free Software Guidelines and Debian would be distributing it in their base (Free) distribution. Since Debian is not re-distributing it, we can conclude it's not Free software. Idiot.

    8. Re:RTFA, my friend by hak1du · · Score: 1

      If sun DOES go out of business, they will not simply disappear one morning, with all their code and contracts and such gone. This ain't a rug seller store on main st. And parts will be spun off or sold before they entirely tank.

      Yes, and it is anybody's guess who will be the new owner of Java. Will it be IBM? Well, that wouldn't be bad--they'll probably just do what Sun should have done from the start.

      But it could be Microsoft, or some Microsoft-friendly company, or it could be some company like SCO that starts suing everybody who has ever downloaded Sun's source code or one of Sun's "unpublished specifications" (JCP), or it could get spun off into some small company that jacks up the consulting fees.

      We wouldn't even have to think about that possibility if Java were an open standard and there were independent implementations of it (commercial and/or free, it doesn't matter).

      This is not about open source, it's about a failing company trying to keep control of a proprietary standard for their own gain, and that's a dangerous combination for users.

      recall too that SGI, Apple and BSD have been going away for well over 10 years.

      Well, you are kind of making my point for me: SGI's own software can hardly be called a future-oriented platform and Apple threw out their old OS and is supporting it only through a compatibility layer.

      With BSD, on the other hand, people don't have to worry because it is open source.

  57. Solaris & Java by Alan+Cox · · Score: 4, Interesting

    Except that it seems "Solaris maybe, especially if we can knock Red Hat, Java unlikely even though its creator gets it".

    Sun need to keep a tight rein on the java name, and maybe the standard process. You want it to be called Java, you make it pass the test suite. That bit makes sense, although its hard to take too seriously given all the things out there like vnc java versiosn "patched to work with macos", "patched to work with ie5" etc.

    What matters is that a JVM+class library called "Java" or "J2EE" etc behave in the defined way. Just as "Posix" and "LSB" matter. Implementation, reference code, no reason that can't be truely open.

    In the Sun case the fact some of the interface specs are secret for tests for some of the extensions is not umm helpful. Imagine C++ programming where you had to sign an NDA to open a file 8)

    1. Re:Solaris & Java by narkotix · · Score: 2, Insightful

      You want it to be called Java, you make it pass the test suite.
      kind of like the old method of naming programming standards like F77, C85, etc etc?
      It sounds theoretically possible but like how feasable would it be considering there is a new java release/patch every 2nd month?

      --
      We played dungeons and dragons for 3 hours.....then i was slain by an elf
  58. A good thing by Earlybird · · Score: 5, Insightful
    Regardless of the motives of third parties who are pushing for the opening of Java, such as IBM, making Java truly free is a good thing.

    Opening up a development process tends to bring more brains to the table, and that exposure, history has taught us, tends up to open the technology up in ways we had not imagined before.

    Consider the flurry of activity surrounding Python after its internal reorganization around the time of version 1.6 -- modified license, python-dev list, PEP system, more lenience towards experimental and backwards-compatibility-breaking changes -- after which we have fantastic new language features, as well as strange, clever new techology such as Stackless Python, Pyrex, Psyco, PyPy etc.

    Or, indeed, consider Linux. We all know what happened with that little insignificant grass-roots project. If Linux had been closed off around version 2.0, would we have an O(1) scheduler today, or configurable swappiness, or hyperthreading, or pre-emptible kernel?

    Regardless of the quality of Sun's engineers, Sun's hold on the Java is constraining its growth. For example, what if I have a wild new idea to make the JVM's synchronization locks lightweight enough to have barely any overhead at all, thus improving the speed of applications? There's a large barrier to incorporating that kind of change. With something like Python you can grab the CVS sources and start hacking. Just the existence of such a point of entry is enough to inspire curious visitors.

    Does Java need hacking? Sure. While my main point is that Sun possesses a finite number of brains -- what wonderful ideas and inventions aren't happening at Sun? -- there are specific areas that will benefit from the attention of outside hackers. JVM performance is still lacking, for one. The bytecode instruction set is still to specific to Java-the-language, as opposed to Java-the-platform, leaving potential other language platforms with much to desire.

    Furthermore, anyone who has struggled with a bug in Sun's Java implementation knows that the process to get a bug fixed is often arduous, sometimes impossible. Last I checked there were serious problems reported years ago and not yet fixed.

    Any language needs to develop in order to catch up with the times. With Java, it has been going rather slowly. With 1.5, Java is, in many ways, playing catch-up with C#. Other technologies spend much time in the pipeline before they are ratified and implemented. JDO took years. Support for "web services" is lacking, at best.

    To me it seems that Sun does not have the resources to drive Java development. Witness Eclipse, which did what Sun never could do: produce a solid IDE. Eclipse is a multiplatform program, yet appears native on every platform it runs on; and supports a myriad of modern technologies, such as background compilation, refactoring, version control, remote file systems, and profiling; and is also a teeming breeding ground for experimental technology, such as AOP, fine-grained source-level version control, graphical editng, and quality control. Eclipse built this house in record time. To see what Sun did, over a considerably longer period of time, check out the ancient, outdated monster that that is Netbeans/Forte.

    In summary, Java is better off in the hands of the community, not Sun alone.

    1. Re:A good thing by Bert690 · · Score: 2, Interesting
      Very well said. I've reported several bugs in Java runtimes. Years back they were quite responsive, but the last one I submitted was well over six months back, and I have received no word yet. The previous bug I reported took about 7 months to be confirmed. That's pathetic. And I always submit concise source code clearly demonstrating the problem.

      Sun -- either get your act together, or open Java up.

    2. Re:A good thing by dstrupl · · Score: 1

      Sun does produce a solid IDE: NetBeans (www.netbeans.org) is almost there (with release 3.6). Even open source one. Lot of features, lot of 3rd party projects based on the platform ;-)

    3. Re:A good thing by The+Swedish+Chef · · Score: 1

      Which is why we have the JCP & JSRs.

  59. The licence choice is important - but be nice by dbIII · · Score: 3, Insightful
    So, who should have custody of the child, the DEVELOPER...or the boss?
    Now if we follow the example of RMS with emacs - the boss would get the full say in it and sack the developer. Fortunately, one thing that RMS did correctly is that those who wrote the emacs program based on RMS's text editor macros released it under the GPL. Because of that, the developer of the time could keep on going with a forked version after RMS objected to X windows support, so we ended up with an emacs with features which were previously not implemented because they did not contribute to the hurd.

    I think RMS should sit this one out - his licence is good, but his "you're all evil if you don't use my own personal licence" comments are not going to help anyone.

    1. Re:The licence choice is important - but be nice by Anonymous Coward · · Score: 0

      Uhmm, it's not just RMS that wants a Free Java. Every linux distributor and FOSS hacker that gives the least shit about freedom including Red Hat and Debian, as well as the GNOME project (who are sick of C and are trying to decide between Java and Mono/C# or Mono/Java/GNU-Classpath/IKVM) would LOVE to see Java freed.

  60. It is not there yet, possible notable achievements by expro · · Score: 1

    1. Performance? My experimentation 6 months ago with compute/object-intensive code showed a fully-optimized GCJ only getting 30% the speed of the latest Sun JVM.

    2. Popular applications? Can Jakarta Tomcat with JSP, etc., a common open source Java-based web server be run on it? If not, there is a clear list of what it is missing.

    3. Web applications sandbox? How about loading untrusted applications over the internet and running them in a security sandbox?

    4. Is GTK or QT really ready to be the free cross-platform Java standard for UI? Is there licensing preventing bundling of IBM's Eclipse UI toolkit with GCJ? Is relicensing under GPL possible?

  61. Artistic Licence? by erikharrison · · Score: 4, Interesting

    When we say "Open Sourcing" why do we really mean "GPL"? Granted, the GPL has the advantage from Sun's point of view, as they get any changes back.

    But Perl was released for the longest time under the Artistic licence, which (IIRC) allows derivitive works, but doesn't allow you to call them Perl. This could keep the one, true source of Java unsullied by broken or incompatible implementations yet gives everybody else the hope that when Sun tanks Java won't.

    1. Re:Artistic Licence? by shaitand · · Score: 2, Interesting

      "But Perl was released for the longest time under the Artistic licence, which (IIRC) allows derivitive works, but doesn't allow you to call them Perl. This could keep the one, true source of Java unsullied by broken or incompatible implementations yet gives everybody else the hope that when Sun tanks Java won't."

      The gpl will do this as well, sun java remains sun java so long as sun continues to maintain it and passes it off to another to maintain afterward.

      Anyone can get the specs and write their own implementation of java now. Java being gpl'd doesn't change this, it simply means that people can write improvements and possibly get them into the main official java instead of having to write a custom vm to get the simplest change implemented.

      Under the gpl we won't see a reappearance of the Microsoft Java VM either... or if we do it will have to be gpl'd.

  62. GPL fits the description. by expro · · Score: 1

    In the present situation, that damage could be avoided by writing a License that, for example, specifically excludes 'any employee of Microsoft'.

    Have you heard of the Microsoft stance on the GPL?

    1. Re:GPL fits the description. by MisterLawyer · · Score: 2, Informative
      "Have you heard of the Microsoft stance on the GPL?"

      Yes I have. It's basically: "The GPL sucks because it prevents us from making money."

      Here it is, from an article on Microsoft's website, titled "Microsoft's View of the GPL":

      "Microsoft's concern is the resulting degradation of the software ecosystem that would be triggered by widespread acceptance of the GPL"..."Microsoft further contends that the combined forces of a well-funded research community and a robust commercial software industry will continue to drive global economic expansion."

  63. this just shows you don't know java by jbellis · · Score: 2, Informative

    for the former, use a labled outer loop

    outer: for ...
    for ...
    break outer;

    for the latter, "cleaning up properly afterwards" is a textbook case of where you want to use the finally clause of a try/catch block.

    1. Re:this just shows you don't know java by woodhouse · · Score: 1

      TBH I'd forgotten about the former method. It's been a while since I coded anything in Java. As for the latter, I explicitly mentioned that you could do this with Java's exception handling.

      My point wasn't specifically about Java, it was just that goto isn't evil by definition.

  64. #define PREPROCESSOR "No!" by gidds · · Score: 5, Insightful
    What's wrong with having #ifdef, #define or some other kind of compile directive?

    Two main things.

    The generic any-language answer is that a pre-processor is awkward, fragile, and ugly. It's parsed, processed, and structured differently from the code -- it has different tokens and different semantics; it can lead to code that's a nightmare to maintain, and makes automatic source processing much harder.

    And the Java-specific answer is that, as the parent says about 'goto', there are better ways to do any of the things you might want a preprocessor for:

    • Probably the main one is to work around different compilers, OSs, architectures, and platforms. But Java is one platform; if you need to do something that different on each underlying OS or system, then you're doing something wrong!
    • Another reason is isolation of constants and other singletons (is that what you mean by your comment about 'login'?); but Java has better ways to handle these (class constants, static finals, singletons, &c).
    • A third reason is optimisation; but that's the sort of thing that a dynamic compiler can probably decide better than you can, especially given that your code may run on different JVMs with different characteristics. (Some 'optimisations' made to early Java code actually slow it down when run on more recent dynamic JVMs.)
    • A fourth is conditional compilation for assertions or other development aids; again, you can do this more neatly with a simple 'if' statement -- and a decent compiler or runtime will optimise it away when not used.
    In short, there are no reasons for a preprocessor in Java, and lots of reasons against.
    --

    Ceterum censeo subscriptionem esse delendam.

    1. Re:#define PREPROCESSOR "No!" by newhoggy · · Score: 1
      Hear, hear!

      Probably the main one is to work around different compilers, OSs, architectures, and platforms. But Java is one platform; if you need to do something that different on each underlying OS or system, then you're doing something wrong!

      Although sometimes, you're wrapping OS services (ie. around JNI code) because the Java API doesn't provide the functionality you want.

    2. Re:#define PREPROCESSOR "No!" by pauljlucas · · Score: 1
      A fourth is conditional compilation for assertions or other development aids; again, you can do this more neatly with a simple 'if' statement -- and a decent compiler or runtime will optimise it away when not used.
      Suppose I have debugging code in that can be switched on/off at runtime. Furhter suppose that, for production, I want it not even present. Because the 'if' statement tests a variable and not a constant, no compiler can optimize it away.

      A preprocessor is still useful in this case.

      --
      If you reply, do so only to what I explicitly wrote. If I didn't write it, don't assume or infer it.
    3. Re:#define PREPROCESSOR "No!" by Anonymous Coward · · Score: 0

      >>a decent compiler or runtime will optimise it away when not used So doesn't this make the functionality you describe implementation specific? One vendors compiler or runtime may or may not optimize it away since the exact behavior is not specified as it would be #ifdefs.

    4. Re:#define PREPROCESSOR "No!" by cortana · · Score: 1

      I believe that a dynamically optimising compiler, such as HotJava(?), can see that the value of your debug variable is never changed and safely remove the check at runtime.

    5. Re:#define PREPROCESSOR "No!" by cortana · · Score: 1

      Why is this a problem, as long as you don't write if statements that alter your program's state?

      eg: if (something > something_else && something = 3) { ... }

      In fact the compiler should be able to detect that your if statements are dangerous, and consequently not optimise them away.

    6. Re:#define PREPROCESSOR "No!" by cbowland · · Score: 1

      Using assertions in 1.4 will allow this the addition of switchable runtime debugging without the need for testing with an if statement.

      --

      Give a man a fish and he will eat for a day.
      Teach him to eat and he will fish forever.

    7. Re:#define PREPROCESSOR "No!" by pauljlucas · · Score: 1

      Except that has nothing to do with what I'm talking about.

      --
      If you reply, do so only to what I explicitly wrote. If I didn't write it, don't assume or infer it.
    8. Re:#define PREPROCESSOR "No!" by Per+Bothner · · Score: 2, Insightful
      But Java is one platform; if you need to do something that different on each underlying OS or system, then you're doing something wrong!

      Nonsense. JDK 1.4 is a very different platform from JDK 1.1 or 1.0. In my Java code I might want to use weak references (say), which are available on JDK 1.2 but not 1.1. I might want to support JDK 1.1 using some inferior fallback backanism. In theory I can do this using reflection, but that's both slow and painful to write. So conditional compilation is reasonable alternative - certainly better than refusing to support JDK 1.1 - which is the solution most Java projects select.

    9. Re:#define PREPROCESSOR "No!" by AdamInParadise · · Score: 2, Insightful

      Sorry, you're mistaken. See this part of the Java Spec, toward the end of the page: http://java.sun.com/docs/books/jls/second_edition/ html/statements.doc.html#236365 Basically, if the condition of your if() is a constant (static final boolean), then the compiler 'may' drop the block entirely. The standard compiler does it. Eclipse doesn't.
      See also the log4j cookbook, which says that leaving dynamic if() for logging statements all over the place has no mesurable performance impact.

      --
      Nobox: Only simple products.
    10. Re:#define PREPROCESSOR "No!" by pauljlucas · · Score: 1
      Basically, if the condition of your if() is a constant (static final boolean)...
      But I clearly said it wasn't.
      --
      If you reply, do so only to what I explicitly wrote. If I didn't write it, don't assume or infer it.
    11. Re:#define PREPROCESSOR "No!" by duder · · Score: 1

      How can people really say that java is one platform? Different floating point behavior can be achieved with the same code! But its totally portable- wink wink.

    12. Re:#define PREPROCESSOR "No!" by AdamInParadise · · Score: 1
      Well then, just wrap your debugging code in two ifs:
      if(constant) {
      if(variable) {

      }
      }
      Not really pretty, sure, but it fulfills exactly the same job as a preprocessor (in this case), in the same number of lines of code, while keeping the code clean. Debugging incorrect preprocessing directives is a pain!
      --
      Nobox: Only simple products.
    13. Re:#define PREPROCESSOR "No!" by Medieval_Gnome · · Score: 1
      or you could just use
      if (constant && variable) {
      ...
      }

      since I think java has short-circuit evaluation - if the first term is false, there is no need to check the second one.
      --

      :wq

    14. Re:#define PREPROCESSOR "No!" by Tim+C · · Score: 1

      I think java has short-circuit evaluation

      Yes it does - the "double" operators, && and || do short-circuit evaluation. The "single" operators, & and |, do not.

    15. Re:#define PREPROCESSOR "No!" by Anonymous Coward · · Score: 0

      > Probably the main one is to work around different compilers, OSs, architectures, and platforms. But Java is one platform; if you need to do something that different on each underlying OS or system, then you're doing something wrong!

      <sarcasm>
      Yeah. Like opening an URL in the user's browser...
      </sarcasm>

    16. Re:#define PREPROCESSOR "No!" by TheSunborn · · Score: 1

      Java is not one platform. Java is a lot of platforms . There is java java 1.0.x 1.1.x 1.2.x 1.3.b 1.4.x.

      As a developer having to support java 1.1.8, 1.3.x and 1.4.2 it is really fucked as I have to edit the source each time I want to compile it for our tre supported java platforms. And I can't just use java1.4.2 and then tell people to upgrade their java, because our software need to run on platforms where upgrading the java to 1.4 would require an upgrade of the entire OS.

    17. Re:#define PREPROCESSOR "No!" by alcmena · · Score: 1

      Which is in fact not permitted in Java. Java will give you a compile-time error stating that "something = 3" does not evaluate to a boolean (or something to that effect). It helps eliminate the much dreaded single-equals bug that can crop up in C/C++.

    18. Re:#define PREPROCESSOR "No!" by Mahrtian · · Score: 1

      So you want to add preprocessor logic to a language that is intended to be compiled once to bytecode and then executable on multiple platforms???

      If you have to support multiple platforms, how can you expect to handle them with preprocessor checks? If this is the case, then you would need to do a seperate build for each platform you wish to support. At this stage, it would probably be just as clean to have your own preprocessor code integrated into your build build system.

      --

      --
    19. Re:#define PREPROCESSOR "No!" by mburns · · Score: 1

      I advocate mightily for the use of a preprocessor with Java because of its lack of multiple inheritence and templates. Isn't the aspects compiler merely a preprocessor applied in order to make up for these deficiencies?

      --
      Michael J. Burns http://home.mindspring.com/~mburns9/

      --
      Michael J. Burns
    20. Re:#define PREPROCESSOR "No!" by Chris_Jefferson · · Score: 1

      Just do this.

      In debug code have:
      bool debugcode;
      and turn it on and off. In the final code have:

      const bool debugcode=true;
      and then all the debugging code will disappear.

      If you want to moan at this, then have: //Turn debug on/off at runtime
      bool debugcode; //Turn it off for release time
      const bool release=false;

      then have:
      if(!release && debugcode) { ... }

      That will remove the code if release is definied to true, and have it switchable if release is false (obviously you can make it look a bit nicer)

      --
      Combination - fun iPhone puzzling
    21. Re:#define PREPROCESSOR "No!" by Per+Bothner · · Score: 1
      That will remove the code if release is definied to true, and have it switchable if release is false (obviously you can make it look a bit nicer)

      In other words, you're conditionally compiling two different binaries depending on the compile-time value of release. Clearly you want a preprocessor for this, rather than editing the codebase by hand.

    22. Re:#define PREPROCESSOR "No!" by Chris_Jefferson · · Score: 1

      No, you don't have to edit the codebase. The point is that you can get exactly the same effect as the preprocessor via const ints, while not having to worry about any nasty possible preprocessor-related errors that might have crept in.

      --
      Combination - fun iPhone puzzling
  65. Huh? by Anonymous Coward · · Score: 0

    I'm confused.. won't Java belong to whoever buys Sun?

  66. FSS Java. MS Java. by solprovider · · Score: 4, Interesting

    For an implementation to use the Java trademark, it must pass Sun's tests. The source is already "open" (easily available). Anybody can make changes and call it "Java", as long as it still passes the tests.

    That sounds like "open source". We all want Java to retain its portability, so Sun requiring the tests is valid. The tests could be (and effectively are) under the control of the JCP, so that process is "open", although it is design by committee, which frightens me, but is the basic premise of the FSS community.

    The issue is how to make Java free to redistribute. Under the current license, no JVM can be included in a totally free distribution. Is there some license that can protect the trademark and portability that allows free distribution? Can such a license be written that is acceptable to Sun?

    Transfer the Java trademark to the JCP. Fund the JCP to protect it. Allow the JVM and all associated tchnologies to use the trademark if the tests score 100%. Allow free redistribution of certified code.

    You could still modify your JVM for internal use, but you must recertify it if you want to distribute it. Is that close enough to the intent of the GPL to satisfy RMS? (No, they would not be using the GPL, but that should solve all real world issues without allowing Java to fragment.)

    ---
    MS JVM:
    Why do most people assign to malevolence what can easily be assigned to stupidity?

    MS did not write a JVM that met the standards. In THIS case, they did it to add proprietary extensions to better allow virus and other integration with their OS.

    But MS has a very lengthy record of not being able to write programs very well. Their original claim-to-fame was the BASIC interpreter that could not interpret the BASIC language. Their version became the standard we all learned to program in the early 80s, but they did not change it because they wanted to steal the market from all those other (nonexistent) BASIC interpreters; they changed it because they did not have the technical ability to write it correctly.

    They have since won many software markets. I do not know of one case where the software they sold to capture the market was better than the current leader. The closest examples are when they leveraged MSWindows3 to capture the GUI market while making certain their competitors did not have the APIs to be able to write software for MSWindows3. Usually MS writes programs that work worse than the existing leader, then use their marketing and monopoly to conquer.

    Every programmer will tell you that it is easier to write an application when there is already a working version. MS has repeated failed to match the existing functionality for their early releases.

    Did MS change the JVM because they wanted to corrupt it? Or was it simply that they did not have the technical expertise to write it without corrupting it?

    --
    I spend my life entertaining my brain.
    1. Re:FSS Java. MS Java. by eloki · · Score: 1

      The issue is how to make Java free to redistribute. Under the current license, no JVM can be included in a totally free distribution. Is there some license that can protect the trademark and portability that allows free distribution? Can such a license be written that is acceptable to Sun?

      First of all, the trademark is a separate thing to the source. You can leave the trademark under a separate licensing deal, so even if people fork the code (that's OK), they can't use the trademark unless Sun agrees. That lets Sun insist on you passing the Java test suite before letting you use the logo.

      Now all the IT executives have to check for is the Java logo - which they should already be doing, since that's what it's there for, to let them choose a JVM with confidence.

      Making Java GPL or something very similar would ensure that no-one could fork it and hide the results in a way that prevented merging (either by them, or by third parties such as Sun themselves). At the same time, even if somebody came up with some funky MiniJava designed for phones, and all the phone vendors flocked to it, Sun could take their changes and merge them into their Java tree.

      Even if Sun opens Java in a GPL-way, they will still be the custodian of Java, with enormous moral authority on the code. It's amusing that everyone fears forking, when in reality it lets everyone - including the Linux distros - unite behind the one codebase.

      If Redhat, SuSE, Debian all shipped Sun's JRE - so it was there, on the CD, ready to go, that would do nice things for Java usage. Of course there will be forks, but that doesn't matter because it lets people experiment safely, and their changes can be merged. People don't want 1000 versions of Java, they want one strong one that everyone can distribute and thus unite behind.

      There will always be pressure to merge forks into the main Java tree.

    2. Re:FSS Java. MS Java. by killjoe · · Score: 1

      Lets say that a child molester has been convicted of abusing 50 kids. Lets also say that this child molester moved into your neighborhood.

      When that child molester starts hanging around the playground do you think to yourself that he is simply enjoying the nice day?

      We judge people by their past actions. We would not attribute benevolent motives to a child molester hanging out at the playground would we? Same with corporations.

      Evil is as evil does.

      --
      evil is as evil does
    3. Re:FSS Java. MS Java. by ninejaguar · · Score: 1
      Why do most people assign to malevolence what can easily be assigned to stupidity? ... Did MS change the JVM because they wanted to corrupt it? Or was it simply that they did not have the technical expertise to write it without corrupting it?

      If a snake were to accidently sink its fangs into my arm, I might find it in my dying heart to forgive it. Then, just before I close my eyes, I find out that this accident has been happening to other people ever since the snake was a little critter. What am I supposed to think? It's a snake.

      = 9J =

  67. The One Reason to Open Java by Nom+du+Keyboard · · Score: 3, Interesting
    Although it has been said in part in various different ways, there is one reason to open source Java:

    Once open sourced, it cannot ever be bought out and buried.

    We all know who I'm talking about. And frankly, Sun does look pretty weak these days. I wonder if they'll be around in 5 years.

    --
    "It's the height of ridiculousness to say for those 9 lines you get hundreds of millions."
    1. Re:The One Reason to Open Java by jlrobins_uncc · · Score: 1

      Duh. Likewise, it cannot be sold for high dollars. It is a considerable corporate asset for Sun, goven that their proprietary UNIX server hardware just isn't bringing in the top dollar it used to.

      It is a highly valuable component if SUNW.

  68. how does open Java help sun? by Anonymous Coward · · Score: 1

    How will opening Java help Sun make more money?

  69. What are we talking about here? by gidds · · Score: 4, Insightful
    Java is a platform -- it has a specification, and Sun's own implementation. Which are we talking about here?

    At present, anyone can build a clean-room implementation of the Java specs; if it passes Sun's compatibility suite, then you can call it 'Java' and do what you like with it. I'd say that's pretty open already.

    What more could be done? Well, one thing is to open up the specification. Sun already accepts outside input to that, via the JCP; any further would probably mean dropping the compatibility requirements, and letting anyone call anything 'Java'. A Very Bad Move(tm)! We'd get lots of competing 'Java' platforms that were all incompatible with each other, no-one would know what to write for, and it would kill the language.

    The other thing is for Sun to open-source their own particular implementation. That would have several good effects, e.g. much easier porting to other platforms, fixing of bugs, optimisation, &c -- but they'd have quite a job to ensure that the results still had to pass their compatibility suite. (Or, again, chaos would reign.)

    One final thing: Java gets a very biased press on /. If you believed what you read here, you'd think no-one used it, that it had died a death, that it never ran beyond a crawl, and that it epitomised everything that was bad about closed standards in comparison to the wonderful openness of C#. But that's all rubbish. In the real world out there, it's about the highest-demand skill; it's behind a staggering amount of development in the corporate, commercial world; implementations have come an awful long way in the last few years; and the platform as a whole is far more open than C# will ever be. I think it merits a place on the 'Reports Of My Death Have Been Greatly Exaggerated' list, alongside BSD and Apple...

    --

    Ceterum censeo subscriptionem esse delendam.

    1. Re:What are we talking about here? by shaitand · · Score: 2, Insightful

      A few things that can be done to improve on java. Make the standard a standard housed with an officially recognized standards body which does not allow patented features to be accepted into standards.

      Right now java is in sun's hands and nobody has a say in the standard but sun.

      And yes, open source sun's implementation, it's the only one anybody codes for! It does little good to split off a non-sun java vm. If they gpl it we don't have to worry about Microsoft doing this again either.

      And yes sun java is still slow as hell, whatever you say, you can't change that. With things opened up the interpreter will be drastically improved... it's not like sun will stop working on it, and it's not like sun alone could ever compare to what the community can do with it. Just look at Open Office 1.1 if you want an example.

      Java being in demand is all the more reason to open it up, why do you think people are clammoring for this? Sun needs to learned that closed standards and closed sourcecode are not where the money is anymore and start gpling all their software (it's not like software is sun's money maker anyway). If they want to be friends with this community they have to contribute to it and work in an open to all fashion (not merely visible to all).

    2. Re:What are we talking about here? by jswalter9 · · Score: 2, Informative

      The only thing Java is still "slow as hell" with is GUI on Linux. I've run plenty of tests vs C++, Obj-C, Perl, Python, etc. on non-GUI implementations of the same spec (proprietary in-house infrastructure spec).

      GUI on Linux is slow for one reason: the linux implementations of Java pre-2.6 linux kernel has avoided the POSIX threading (because it had to) and used processes communicating through shared memory instead of operating from the same address space. This is most significant for GUI apps because in Java each Listener runs in its own Thread.

      IF Sun releases a true thread-using implementation for linux you'll see a BIG performance gain on the GUI and maybe some gain elsewhere as well, but in the meantime I have to request (again) that folks not dump on Java unless they've used it within the previous year.

      My $.005

      --
      Retired from software... maybe. Sort of.
    3. Re:What are we talking about here? by Anonymous Coward · · Score: 0

      > The only thing Java is still "slow as hell" with is GUI on Linux.

      Nonsense. Java+Swing are "slow as hell" on the Mac, too.

      The reason for this is not the posix threads vs. NPTL but the way how Java/Swing handles the gui; Images for example bounce back and forth between the client and the GUI server (via the network!) before they are rendered onto the screen. Sorry, but Java/Swing is broken by design, it is not possible to fix that.

      But I agree with you that there's no point in open-sourcing Suns java implementation. Their code is a) extremly poor, b) broken by design or c) what we need is already open-source (e.g.: IBM's SWT or the Apache tools) -- alla SWT based java applications for example can be run on top of Mono/.NET, while Sun's Swing/AWT is not implemented and may never be implemented, neither for .NET nor for GCC.

      > [no nptl in] pre-2.6 linux kernel

      Incorrect. REL3 as well as all Fedora distributions ship with NPTL enabled. They do not need a 2.6 kernel.
      It's a fact that RedHat and other commercial vendors may not ship Sun's java with it's distributions, instead they use an open-source GNU implementation or Mono to run java apps. I don't think this will change in the future, Novell works on Mono/.NET while RedHat works on improving GCC to compile java apps into native code.

      > IF Sun releases a true thread-using

      Nonsense. They already ship a true thread implementation on Linux since JDK1.3.

      And regarding the NPTL you've mentioned: RedHat doesn't ship with java, but it does ship with Eclipse, Ant and other popular java tools (REL3). Yes, all these tools already use the new native threads library you've mentioned:

      $ ldd `which ant` | fgrep pthread
      libpthread.so.0 => /lib/tls/libpthread.so.0 (0x4f79e000)
      ^^^^^

      The bottom line is that most java applications (at least those that do not depend on broken technologies such as EJB or Swing) will continue to exist on .NET or as compiled native apps even though Java will be dead in 3-5 years.

      Sun has announced that they might(!) allow RedHat to ship their JVM with REL4, but in 2006 Longhorn, Mono and other technologies will be available; sorry Sun, too little, too late.

    4. Re:What are we talking about here? by lordavebury · · Score: 1

      A few things that can be done to improve on java. Make the standard a standard housed with an officially recognized standards body which does not allow patented features to be accepted into standards.
      So I guess you're unaware of the ECMA saga, when Sun made a good-faith attempt to do exactly this. And when they asked ECMA, "so what happens if someone breaks the rules, by say shipping a JDK with a non-conforming java.* class?", there was an embarrassed silence, and Sun decided that this would be incompatible with the lawsuit against MS.
      Work out the consensus first, then figure out the standards structure.
      Right now java is in sun's hands and nobody has a say in the standard but sun.
      Hmmm.. you don't spend too much time reading the proceedings at jcp.org, do you?

    5. Re:What are we talking about here? by shaitand · · Score: 1

      Java gui (forget the network the other poster was talking about, talk local gui app) is slow as hell on at least 3 platforms. Windows (all versions, and yes it's slow WITH sun's java on all of them), Linux, and MacOS. Process, lets say you have a p4 3ghz. Double click on java app, WAIT(WTF) basic graphical dialog with hello world and an ok button pops up on screen.

      Try it. Contrast with, for example, C, C++, hell even VB and I thought nothing could be slower than that, or perl + any gui toolkit you want. Double click on app, and there is dialog, note no visable wait.

    6. Re:What are we talking about here? by shaitand · · Score: 1

      "Hmmm.. you don't spend too much time reading the proceedings at jcp.org, do you"

      I spend enough time to know that there nothing moving with the speed of industry going on there.

      Simply because it exists, doesn't mean it's all that worthwhile.

      And quite frankly I hate MS as much as the next guy, and I don't think they should be allowed to ship an intentionally crippled java. However I also don't think sun legitimately had any right to stop it.

    7. Re:What are we talking about here? by lordavebury · · Score: 1

      However I also don't think sun legitimately had any right to stop it.
      Just a contract. Nothing complicated....

    8. Re:What are we talking about here? by jswalter9 · · Score: 1

      It depends, actually. If you're already running another Java app, the startup is quicker.

      JUST LIKE a KDE app starting up in KDE, or a GTK app starting in Gnome. Obviously graphic libraries have to be loaded. What I was referring to is runtime responsiveness.

      And I was not referring to networking at all. Java is a threaded environment, something not truly supported by the 2.4 linux kernel. I was referring to the necessary hack in place to work Java in a non-threaded OS.

      --
      Retired from software... maybe. Sort of.
    9. Re:What are we talking about here? by shaitand · · Score: 1

      As another poster already mentioned there are ntpl versions of 2.4 kernel out there, however the current stable kernel is 2.6.

      As for starting up a kde or gnome app dialog, I see no visable delay even when using the opposite environment.

      I don't even see a delay open a PERL TK gui app in gnome. I do however see a delay opening a java gui app. (all these comments respective to a simple hello world with an ok button).

      2.4 is threaded btw, simply because they improved threading in 2.6 and redhat backported those improvements to 2.4 is no reason to say otherwise.

      Also as said other poster pointed out, the sun runtime DOES support threading on linux.

    10. Re:What are we talking about here? by jswalter9 · · Score: 1

      Ok, ok. So whenever you need a single dialog, don't use Java.

      --
      Retired from software... maybe. Sort of.
  70. Yeah maybe... but by ValourX · · Score: 2, Troll

    I think it's time for a regime change at Sun. They need someone in charge who is willing to let go of the 1980s software business mentality and adapt to the modern world.

    You can't sell proprietary UNIX when others can get it for free. You can't sell StarOffice when you can get OO.org for free. You can't sell $8000 UltraSPARC workstations when you can build more powerful AMD64 machines for an 1/8th the price. You can't lock down a programming language that people want to use when there are so many other competing technologies that they can turn to.

    It seems to me that Java is going to be dead within the next couple of years if it doesn't open up and become a Free standard.

    Wouldn't it suck if Sun went under and Microsoft bought up all of their assets, including Java, and then killed it all? Don't laugh; it could happen.

    -Jem
    1. Re:Yeah maybe... but by Anonymous Coward · · Score: 0

      Sun's entire business is fundamentally flawed for the post dot-bomb tech world. They can provide their relatively expensive servers for a niche market, but decrease cost of doing business, or they can attempt to stake a claim in other markets. However open sourcing Java isn't going to positively affect Sun's business in any way. They have no motive to change their Java policy, because it won't improve their bottom line.

      Microsoft couldn't kill Java by purchasing Sun. They can make life difficult for using the Java trademark, they can cease the distribution of the Sun JVM, and they can cease to issue licenses, but that's largely irrelevant. Java is not tied to Sun, even if they're the steering party of the "community" process for directing its development. Even if they've been responsible for official licenses and conformance testing for the usage of the trademark.

      So would it suck? Eh, maybe a little. It wouldn't affect current deployments. It might cause delays in progress as the open source implementations are brought up to speed or software is transitioned to some other platform. No falling sky. No big deal.

  71. Our education system is bunk by Anonymous Coward · · Score: 0

    " Open Source and GPL have very little to do with each other. GPLing something would Open Source it"

    Read this again and again until you "get" that this is nonsensical. At best.

  72. Forks are a good thing by soloport · · Score: 3, Insightful

    Forks are a healthy thing. When a FOSS project goes bad (e.g. the head of the project looses his/her mind) forks allow the community to escape a bad thing.

    If the fork is made for good reason, the world follows. If a fork is just someone's rant-child, the world ignores it and it whithers on th vine. Forking is one way projects evolve. When two branches (resulting from a fork) survive, there's also usually a pretty decent reason.

    From the perspective of the CIO, forking should be seen as no more of a risk than a vendor being tossed around by a corporate buyout. It happens, but it shouldn't stop one from buying the tools one needs.

    1. Re:Forks are a good thing by justsomebody · · Score: 1

      Yes, you got it right. But I still fear of "When two branches (resulting from a fork) survive, there's also usually a pretty decent reason".

      Right thing in my opinion would be a simple clause that if Sun loses interests in developing Java or it is shown as a stopper, and after that everything can go under different license.

      From the perspective of the CIO...
      Not if your software is being replace and not used (look a little bit from Suns perspective). Java is Suns valuable comodity.

      --
      Signature Pro version 1.13.2-3 release 83.5 beta3try7 after-breakfast edition
  73. Is the right to implement the spec perpetual? by mariox19 · · Score: 1

    Okay, I suppose I could read the legalese; but I figured I'd take a crack at you already knowing the answer.

    Can anybody implement the spec, and is that right perpetual. What I mean is: if Sun decided, could they invalidate the license for non-Sun implementations? Could they sell their rights to another company that could then either pull the rights, or effectively stifle any innovation, allowing the language to grow obsolete?

    You see, as long as Sun can't get people "hooked on their crack" -- giving it away at first, and then charging a bundle -- I don't see the problem with Java as it is. What's the deal?

    --

    quiquid id est, timeo puellas et oscula dantes.

    1. Re:Is the right to implement the spec perpetual? by Mithrandir · · Score: 2, Informative

      The way the specs are right now is that anyone can implement them. Sun owns a Trademark on "Java" and many derivative names. In order to call your work "an implementation of Java" you need to get Sun to give you a license to use the Java(TM). To do that, you need to pass the compatibility tests. To pass the compatability tests you must purchase a TCK (test kit), run the tests and give the results to Sun. They check it over, it if passes muster you get to call your work Java.

      For a perfect example of seeing this happening in real life, have a look at the Wabi project. This was a Java-clone in all but name for small footprint devices, long before J2ME started. Basically it was Java - you could compile the code with a normal Java compiler and run it on the Wabi VM and it would work (except for the odd bug here and there). They never called it Java as they didn't want to pay for the TCK.

      --
      Life is complete only for brief intervals in between toys or projects -- John Dalton
  74. Who cares? by hak1du · · Score: 2, Insightful

    Sun has had almost a decade to follow through on their initial promise of submitting Java to a recognized, existing standards body and they haven't done it. Instead, they have set up a process in which their customers and users do enormous amounts of work for them and Sun reaps the benefits and have the final say.

    Most disturbingly, Sun still has complete ownership of JCPs (read the license agreement, say, for JCP 32).

    Sun has had their chance. Java has been a positive influence on the industry, but it is time to move on to something else, both for legal reasons and for technical reasons.

    1. Re:Who cares? by aristotle-dude · · Score: 1

      Something else? What would you suggest that runs on virtually all platforms? No, "just use linux" is not an answer. Linux is way too X86 centric.

      --
      Jesus was a compassionate social conservative who called individuals to sin no more.
    2. Re:Who cares? by hak1du · · Score: 1

      Something else? What would you suggest that runs on virtually all platforms? No, "just use linux" is not an answer. Linux is way too X86 centric.

      If you need cross-platform tools, there are plenty of excellent languages and libraries you can use. None of them provide single-stop shopping for cross-platform computing, but neither does Java, despite Sun's marketing claims to the contrary.

      But Java's dirty little secret is that most people really don't have much use for Java-style cross-platform computing. If they need to develop cross-platform apps, something like C++ with Qt or C++ with wxWindows (which require recompilation but otherwise give you identical source code across platforms) satisfies all their requirements and yields applications that actually work better on each platform.

      In any case, C# is an excellent replacement for Java. Technically, it is just like Java only with some annoyances fixed. And you can write cross-platform code in it, or you can write platform specific code in it--it's your choice.

    3. Re:Who cares? by aristotle-dude · · Score: 2, Insightful
      Excuse me? C# is not a standard language. The part MS published to the ECMA is only a fraction of the language. None of the GUI stuff works outside of windows. Most of the class library is closed and proprietary. As many have said, Java is a standard, not a product and anyone is free to re-implement the standard but they can only call it Java if they purchase access to the test suite to be certified.

      As for your comment on Java not being cross-platform, that is not a flaw in the language or specification but rather the hostile attitude people on a certain platform (linux) have towards Java. If linux had an official version of the JVM, there would be no issues. Have you used Java recently or is this insight of your based on here say on the net? I can write a Java app on the mac and have it work with little or no modification on windows or another unix platform with a Java JVM. I'm well aware of wx and QT.

      QT strongly tied to X-windows and could hardly be considered a cross-platform solution. wxWindows also look out of place on other operating environments as it tries to imitate windows dialogs and widgets. No thanks. Java AWT, on the other hand, can support a number of GUI personalities including OS X, Windows classic, Motif and CDE.

      One final note, those solutions you mentioned will not work on non-pc environments. I am not aware of wx supporting anything other than OSX, Mac OS 9, windows and linux. What about all of the PDA and Phone OSes? You PC centric people talking about cross-platform development make me laugh.

      --
      Jesus was a compassionate social conservative who called individuals to sin no more.
  75. it's not about GPL by hak1du · · Score: 2, Interesting

    Please enlighten me? Why GPL Java?

    That question itself points out a core problem with Java: it isn't a standard, it is just an implementation: Sun's implementation (and its derivatives: IBM, Blackdown, Apple). None of the implementations (gc, kaffe, waba) that don't derive from Sun's are even close to being compatible.

    Before we can talk about Sun open sourcing their Java implementation, we have to talk about making Java an open standard. Right now, it is further away from that goal than even Microsoft Windows is.

    In any case, it doesn't matter anymore. I doubt that it makes much of a difference at this point what Sun does with the Java license. I think the world is going to move away from Java over the next few years--Sun screwed up.

    1. Re:it's not about GPL by Halfbaked+Plan · · Score: 1

      Sun shopped around quite a bit for a standards body who they could work with. However, there seem to have been irregularities at every place they stopped. It seems like it has to be a Sun problem that prevented a robust standard from being established. Perhaps somebody else could help explain this more. I just remember the issue coming up in the past.

      --
      resigned
    2. Re:it's not about GPL by synthespian · · Score: 1

      But the point is valid: there has to be a specification, and not just an implementation. I don't remember the issues revolving around the time Sun pulled back from going for a specification, but IIRC it might have had something to do with the fact that once you published a specification in a body like ISO, ANSI or ECMA, that naturally leads to implementations, and those you cannot control. Think C# and Mono. I agree that Java has almost no future, it lost it's window of opportunity. C# and .NET will take over, IMHO. C# is a better language than Java (this seems to be a point generally agreed upon). C# builds on Java. C# has published a spec, Java hasn't. C# will be deployed on a monopolist platform, XAML will cause an earthquake. And we have C# on GNU/Linux. In conclusion: by going through a specification process for C# and .NET, Microsoft has delivered Sun the killing blow...

      --
      Main difference between the BSD license and the GPL license: one is from California and the other is from Massachusetts
    3. Re:it's not about GPL by hak1du · · Score: 1

      It's pretty clear what Sun didn't like about standards bodies.

      While those standards bodies don't necessarily require a standard to be freely implementable, they usually require reasonable-and-non-discriminatory (RAND) licensing, and they require disclosure of all intellectual property by members. That mean that compatibility testing by Sun would have been out. And Sun would either have had to state a schedule of licensing fees for Java, which would have demonstrated immediately that the standard is not open, or put their intellectual property in the public domain, which they didn't want.

      Sun couldn't work with any of those standards bodies because the whole purpose of a standards body is to guarantee precisely what Sun didn't want: the purpose of standards bodies is to transfer control of a standard away from the company that created it.

    4. Re:it's not about GPL by lordavebury · · Score: 1

      No, that wasn't the problem. The problem was, quite simply, how to validate conformance. Given that written specifications are, inevitably, subject to interpretation, and after the ghastly experience with Microsoft (which was about changng the semantics of core JDK classes), Sun came to the conclusion that specs needed to be backed up with reference implementations and conformance tests. So Sun asked ECMA what its policies were towards these things, and how implementations could be certified, and so forth, and there was a deafening silence. Most standards bodies don't understand that stuff (yet). Maybe that's the challenge: to create a body that can handle both the IP and the certification process.

  76. That's not entirely fair. by Bensmum · · Score: 1
    Just look at all the crap that goes into the typical C/C++ project's ./configure.sh to see why Sun is so anal about this!
    To be fair, 90% of that shit doesn't need to be in there. Autoheader, autoconf, automake, libtool, etc seriously overcomplicate the build process, and cause more headaches and problems than they solve. You can do a pretty good job of making a portable program in C or C++ if you write it for posix systems, instead of just whatever system you happen to be using. Its not actually as bad as the average configure script makes it seem.
  77. misrepresentation by hak1du · · Score: 1

    OK, here's the deal with the Java source code: You can get it. You can modify it. You can redistribute it. [...] It has to pass Sun's compatibility tests.

    What the Java licenses come down to is that Sun retains control over Java: they can kill anybody who doesn't fit into their business plans, and they can kill any modifications to Java that they don't like. Furthermore, once you look at their source code, they own you.

    And, as a purely practical matter, there are no open source Java implementations, there are only incomplete and incompatible bits and pieces. And that's not because open source developers can't handle a project like that, it's because Sun has set things up that way.

    Open source should give up on Java: Sun has proven to be a dangerous and unreliable partner, and it would be best to move on to something independent of that company.

  78. that's a huge issue by hak1du · · Score: 1

    "Which means that about the only thing that they could get from liberalization is to be able to skip testing." So it doesn't seem to be such a big issue after all.

    That's a huge issue, for several reasons.

    First, it effectively gives Sun a veto over any implementation they don't like, because they administer the tests. There is no defined process by which you can appeal their decision.

    Second, Sun can change their mind at any time: they own specifications, they own the code everybody uses to implement it, and they can change how they license that. One scenario under which that would happen is if Sun goes out of business or gets acquired--the new owner may want to take Java in a different direction.

    Third, being able to make incompatible changes is exactly what open source is about. Large parts of the Java platform just suck and are begging to be removed and replaced with something better.

    Isn't the availablity of the source most important? Or perhaps I'm misunderstanding something ...

    Availabilty of source by itself is actually dangerous in the case of Java: not only are you restricted in what you can do with it, if you look at it, you can't even work on competing implementations.

    Open source is only useful if you can modify it freely and redistribute your modifications.

    Sun's Java licenses not only prevent you from freely modifying and redistributing Sun's code, they even prevent you from writing your own, modified version of Java independently and redistributing that.

  79. I must have missed something by Anonymous Coward · · Score: 2, Insightful

    I guess I must have missed something. I seemed to think that java pretty well kicked ass over the last decade or so. I also thought that most books at the book store dealing with programming were about java.

    Granted C# is the new hot language.

    But can you tell me why with all the penetration java has had that it must be open source?

    This argument is total bullshit. Java has done just fine without being open sourced. All open sourcing it will do is lead us to having a bunch of incompatible versions. Hell, just look at C++. Show me 2 different implementations that support the language the same. Show me any that fully comply to the standard. Certainly not the GNU version. And shouldn't it be the gold standard.

    Like I said, this open source debate is bullshit. The only thing that will happen is we'll have incompatible versions and Microsoft will walk away with everything.

  80. New moderation required... by Anonymous Coward · · Score: 0

    +1 Damn Straight!

  81. LIES! by Anonymous Coward · · Score: 0

    Open Source is not a trademark because it is a generic term. OSI has a trademarked logo, but that's it.

    1. Re:LIES! by Anonymous Coward · · Score: 0

      And the really, really cruel thing is: Raymond isn't even an accidental millionaire anymore.

  82. Re:Why don't ........ ? by BokLM · · Score: 1

    You want something Sun spent 100's of million dollars developing, and protecting for free.

    We're not talking about money. Why do you think a closed source Java bring them more money ?
    And why do you think they opensourced OpenOffice ?

  83. Its who owns the TRADEMARK by Ars-Fartsica · · Score: 1

    Also, who even owns the code? Gosling didn't write all of it. Sun owns the trademark, they are the ones who can market a toolkit called Java, whatever that may be.

  84. Really.. by d_jedi · · Score: 0, Redundant

    I frankly don't see what Sun has to gain by making Java open source..

    --
    I am the maverick of Slashdot
  85. Re:Why don't ........ ? by Anonymous Coward · · Score: 0

    Well, my little rabbit, by making it open source, they still retain their copyrights on it, so they can still licence it to whoever they want.
    OTOH, anyone using the GPL version is stuck in the GPL loop, and must open every enhancement he makes, thus helping Sun in the process.
    As it is right now, anyone can use the Java platform freely, so it's not like tey will loose much customers in the process. Most of these customers certainly have their own set of patches they don't want to divulge : this is a strong reason not to stop paying the licence fee to the closed source version of java.

  86. So... by ItMustBeEsoteric · · Score: 1

    You're comparing two things which aren't even remotely the same, AND putting words in my mouth. Nice.

    Since you've deemed them directly comparable, I'm going to keep using Apple and OS X as my examples to illustrate how I feel. OS X clearly IS NOT OPEN SOURCE. However, Apple is pretty clearly FOR THE OPEN SOURCE COMMUNITY, this can be shown by the giving back of the source code to Konqueror from Safari, and from the Darwin project. See? Not open-source, but for the open source community. So, no it's not like I'm one of the close-minded prats you make me out the be.

    There are grey areas, on many things. Not on if something is open source or not. Another example could be if or not someone is dead. This is pretty fucking black and white. Now, how they died--murder? suicide? accident?--might be ENTIRELY up for debate. There are other factors to look at for that.

    /end rant

  87. "Pretty good?" by Anonymous Coward · · Score: 0

    So I'm trying to get my Debian systems to do Java. I poke around a bit, find the mirror for the Java Debian packages. Edit sources.list, apt-get update, apt-get install j2sdk1.4. So far, so good.

    Time to get some apps. Eclipse is in my apt cache already, so I install the platform and the Java build plugins. Run Eclipse. Segfault. The exception log tells me that there's some bad juju between Java and libc6.

    So I'm stuck. I could go outside the package system, and do an equivs thing so Java apps in Debian really think I've got a Java runtime. That might work, but it's pretty technical. Or I could give up on apt and do all the manual copying of jars around. That also seems like a lot of work.

    Or I could do what I'm in fact doing: nothing.

    So I poke around a little more, and find the MonoDevelop apt repository. (Mono itself is already in Debian.) An "apt-get install mono" and "apt-get install monodevelop" later, I'm writing apps in C#, in less time than it took me to figure out why Eclipse was segfaulting. No hassle, no mess, no fuss.

    Why? Simple: Mono is open source. Debian people have the right and the ability to make Mono work well on Debian. No bureaucracy has to approve fixes to Mono that make it work better on Debian.

    On Java, they'd have to go through all the hassle of getting their software tested every time they tweak a packaging problem or change a path, and then they have to nag Sun to actually pay attention long enough to give the OK. The hurdles are too high; getting Java working well on Debian is just not worth doing. The exception logs are evidence of that.

    So maybe you think constant segfaults are "pretty good". Me, I'd rather use a Microsoft technology than clear all the hurdles Sun erects to protect the purity of their technology from those evil users. I doubt I'm alone in that regard.

  88. Gosling gets a sex change... by Anonymous Coward · · Score: 0

    Mr. Gosling, the star-programmer king of ad hominems, reverses himself. What fun.

  89. MOD PARENT DOWN by Anonymous Coward · · Score: 0

    Parent is trying to claim open-source fragmentation because gcc has extensions that the Solaris native compiler doesn't. THAT IS NOT A VALID EXAMPLE OF FOSS FRAGMENTATION. In fact, it's logical considering they target different totally different architectures...

    1. Re:MOD PARENT DOWN by Anonymous Coward · · Score: 0

      It was to show that open source software breaks standards at will.

  90. Allow a decimal-free fork? by Thinkit4 · · Score: 1

    It would be great to have a language free of decimal.

    --
    -I am an elective eunuch.
  91. If IBM are so hot about Open Sourcing stuff... by leonbrooks · · Score: 1

    ...why don't they release Lotus SmartSuite as FOSS?

    --
    Got time? Spend some of it coding or testing
  92. Re:Why don't ........ ? by Anonymous Coward · · Score: 0

    You seem to imply that there is someone else willing to buy it for $1 billion, and that by Freeing it they are somehow "giving it away", yet no such thing has been established.

    As others have pointed out, the reality of the situation is Sun can either Free it making it as pervasive as Python or Perl is, or they can horde it and be paranoid, and it will be eclipsed by Mono/C#/GNU-Classpath. It is their choice entirely.

  93. OSS Java is good for Java but bad for Sun by Crackerman111 · · Score: 2

    As the subject line sugests, I think open sourcing Java would be a great thing for Java. The problem is that it's not such a great thing for Sun. As shown in this thread/article, Sun is not doing so well. They really don't have a lot going for them. Java is one of the few big things happening at Sun right now. Why would they want to let go of Java right now? At the very least, Java makes them look like a good IBM acquisition in case things really start to go south.

  94. RTFA by Anonymous Coward · · Score: 1, Interesting

    Why this surprises me, I don't know, but for god's sake, stop seeing the world with Linux coloured glasses and see it as it really is.

    Gosling's position on open-sourcing Java is well understood:

    http://today.java.net/jag/page7.html#62

    OSS has absolutely nothing of value to offer Java.

  95. Mod Parent Interesting by spectre_240sx · · Score: 1

    This is a very thought provoking post and deserves to be modded up.

  96. who care about Free Java? by Per+Bothner · · Score: 1
    GNU Java kind of sucks, even after many years of work, [Stallman's] "free software" baby isn't winning in the Java world, and nobody really cares except GNU ... so there's a bit of sour grapes.

    Any GNU/Linux distribution cares if it is strict about being Open Source, because it can't include Sun's Java. This is includes Debian and Red Hat / Fedora. Likewise, these distributions can't include (as part of the core distriction at least) any software that depends on non-Free Java, including most Apache Java software. (Apache is heavily in bed with Sun, and is happy to develop code that depends on Sun-only features - though the GNU/Free Java community can run more and more of these Apache packages.)

    This hurts (or at least inconveniences) everybody who uses these distributions. If Free Java and Sun could share more code, then there might be a lot GNU/Linux "system" software (including pre-installed applications) written in Java.

    1. Re:who care about Free Java? by melquiades · · Score: 1

      Any GNU/Linux distribution cares if it is strict about being Open Source, because it can't include Sun's Java. This is includes Debian and Red Hat / Fedora.

      True enough -- the compatibility test suite does rule Java out for some distros. But is this really such a big deal? Are sysadmins really so busy or incompetent that they can't just download Java if they need it? And who we blame: Java for having a test suite, or the distros for ruling out software whose license requires test suites? Is this such a dire problem that Stallman is right to call Java a "trap", and "free but shackled"? I'd say "free but different" would be a fairer statement.

      Apache is heavily in bed with Sun, and is happy to develop code that depends on Sun-only features...

      Whoa, whoa, I'm sorry ... what? I've read a fair amount of Apache source code, and I've never seen it depend on "Sun-only features." Can you give some examples of Sun-only features used by a Jakarta projects?

      Can you give even a single example?

    2. Re:who care about Free Java? by Per+Bothner · · Score: 1
      Are sysadmins really so busy or incompetent that they can't just download Java if they need it?

      Sysadmins - what's a sysadmin? Oh, you mean Aunt Tillie's nephew Eric.

      And who we blame: Java for having a test suite, or the distros for ruling out software whose license requires test suites?

      I suggest you read Sun's LICENSE. There are a number of problems with it that should give pause to anyone considering including it in a GNU/Linux or *BSD distribution (unless they've negotiated some other license, as Apple has).

      I've read a fair amount of Apache source code, and I've never seen it depend on "Sun-only features." Can you give some examples of Sun-only features used by a Jakarta projects?

      Let me re-phrase that and turn it around a bit: Which Apache Java packages, if any, have a policy that they must run and execute properly (at least core functionality) on a Free Java implementation?

    3. Re:who care about Free Java? by melquiades · · Score: 1

      Let me re-phrase that and turn it around a bit: Which Apache Java packages, if any, have a policy that they must run and execute properly (at least core functionality) on a Free Java implementation?

      Oh give me a break.

      Nobody would take any of the Apache projects seriously if they didn't run against any implementation of the Java standard. IBM's VM is very different from Sun's, and all the Apache projects I've used (Tomcat, Ant, Commons, BCEL, log4j, Jakarta regexp) run on it just fine ... er, well, as well as anything runs on IBM's VM. Five will get you ten they all run just fine on any Java runtime worth its salt.

      I'm sure many Apache projects do not run under GNU's Java implementation. This is not because Apache has secretly poisoned their well for the free-as-in-GNU implementations. It is because those implementations suck.

      Obviously if a distro wants to rule out Java's license for ideological reasons, that's their prerogative. And yes, you are right, many things in Sun's license are not compatible with the Stallmanist party line. My point is that the Java community basically doesn't give a shit. Die-hard free software activists, while I admire their cause, often seem to think the world revolves around their personal crusade, and if you're not riding their bus and spouting their rhetoric, you're probably secretly conspiring against them. The truth is, the Java community is quite sympathetic, but considers other problems (like verifiable compatibility) far more important.

      So when the Stallman Armada whines about how restrictive Java's unusually generous source license is, the Java folks basically say, "Know what this is? It's the world's smallest platform-neutral mod player playing a sad song for you."

    4. Re:who care about Free Java? by Per+Bothner · · Score: 1
      IBM's VM is very different from Sun's,

      The VM is relatively small part of Java. It's the class libraries that are the biggest problem - and IBM's class libraries are basically Sun's class libraries.

      Five will get you ten they all run just fine on any Java runtime worth its salt.

      That means "any Sun-derived runtime". Name me any Java runtime "worth its salt" in your opnion that is not derived from Sun's code.

      It is because those implementations suck.

      That's the same as saying that Linux sucks because it does't implement (all the features, including 3rd-party device drivers) of the Windows "standard".

      My point is that the Java community basically doesn't give a shit.

      But many in the GNU/Linux community does care about the issues - and any distribution that wants to survive needs to learn to care. And that is why there are no "available-everywhere" Java applications. Thanks to lots of work by GNU Classpath, GCJ, Red Hat, Kaffe, and others that may soon change.

  97. Evil is as evil does by solprovider · · Score: 1

    I think you were responding to the part about MS. I had difficulty finding the relevance to the Java portion of my post. If so...

    I agree the MS has embodied the concept of corporate evil. They have done more to slow the progress of computer technology than anyone would have thought possible 2 decades ago. They have made the market fearful by destroying the inventors, and removing their inventions from the world.

    We judge people by their past actions.
    MS has been UNABLE to write a decent program in 30 years, so when I see they have failed at their latest effort, I assume that they just do not understand how to do it. But their large bank account implies some form of competence, and since they consistently demonstrate the ethics of a jackal on a mouse farm, many people assume that their failure to write a good program is due to some evil corporate strategy.

    It was just a theory. I believe that Billy got lucky, mostly by picking good parents and being born without a conscience. MS has yet to demonstrate any competence at programming, but you may be correct that their awful programming is just part of the strategy to slow the progress of computer technology.

    --
    I spend my life entertaining my brain.
    1. Re:Evil is as evil does by Hektor_Troy · · Score: 1
      MS has been UNABLE to write a decent program in 30 years, so when I see they have failed at their latest effort, I assume that they just do not understand how to do it.
      Hey, that's a nice way of putting it. Mind if I use that?

      Hey honey? It's not that I'm unwilling to take out the garbage, it's that I'm unable to do so.

      Personally I doubt she'll accept that excuse.
      --
      We do not live in the 21st century. We live in the 20 second century.
    2. Re:Evil is as evil does by maxwell+demon · · Score: 1

      But does she therefore assume that you not taking out the garbage is part of an evil plan, or does she just assume it's ordinary lazyness?

      (If she's hardcore feminist, she might assume the first, but most people would assume the second.)

      --
      The Tao of math: The numbers you can count are not the real numbers.
  98. Open Source Java cannot be forked by solprovider · · Score: 1

    You are mostly agreeing with me, but we disagree that Java can survive forking.

    The fight is about the trademark. The source is already available. So far, only MS has tried to fork it, and they lost the fight with Sun because of the trademark. That is why their versions are now known as J++ and C#. MS can embrace and extend Java all they want, but they cannot call it Java.

    I like that there is only one JVM that cannot run my Java. (The MS JVM 1.1 installed with MSIE browsers makes it difficult to write Applets.) If we allow GPL-style forking, then Java will be forked and we (prgrammers) will need to test for functionality before using it. Yes, there will be pressure to merge the forks, but their existance will make our job almost impossible. Some form of certification program is needed. Today I can release a program requiring Java1.3. I do not want to release a program for IBM Java 1.6, then rewrite it for RedHat Java 1.6, then rewrite it for MS Java 1.6. If I want to do that much work, I will program in C or C++.

    We want that
    Redhat, SuSE, Debian all shipped Sun's JRE - so it was there, on the CD, ready to go
    The current license makes that illegal. That is what needs fixing. Java needs a license that allows free redistribution (of certified versions), but releasing Java under the GPL is overkill because ANY forking will kill Java's primary purpose.

    I love that the sandbox and the memory handler (garbage collection) make it easy to write safe programs. Java 1.5 is removing some of the verbosity. But portability is the main strength, and that must be protected.

    There are already 3 versions of Java, including a "Mini Java" for cell phones. You can also include many optional extensions (packages) depending on your use. What features are you expecting a fork to improve? Are any of them worth the development headaches of having multiple forks?

    --
    I spend my life entertaining my brain.
    1. Re:Open Source Java cannot be forked by eloki · · Score: 1

      I like that there is only one JVM that cannot run my Java.

      Well, I certainly don't do much Java code, so I'm not trying to pretend to be an expert here.. but have you tried your code under Kaffe or Classpath? The last time I looked at them (a couple of years ago) they were quite a way away from finishing off Java 1.1, let alone 1.4. And I understood that people still end up testing under multiple JVMs anyway.

      Sure, GPLing Java has the risk of leading to a number of forks. But I think in practice it will basically invigorate Java. Netscape opened up Mozilla and there have been no forks of it - Netscape and now mozilla.org are seen as the natural caretakers, with a strong moral authority.

      Making it GPL kills most of the motivation for people forking (commercial gain from an improved proprietary version). Individuals can still do so, but don't tend to have the weight of companies, so they tend to want to submit their work back to the main (Sun) Java, or they just end up being ignored.

      Comparing Java to things like Perl, Python and Ruby - all of these are languages with reasonably large userbases, and none of them has ever had a serious chance of forking. Sun has the bonus of even having a trademark they can use as a combined carrot/stick for the forks.

      Companies out there are still going to choose to use Sun Java by the hundreds, with the bonus that more people can work on fixing bugs, or keeping platform ports more up to date. It seems clear to me that ISVs will still almost universally use a version of Java that has the certification logo.

  99. Re:So... by Distinguished+Hero · · Score: 2, Insightful

    My intention was to illustrate that although Sun might be reluctant to open source Java, they have made several crucial contributions in the past, a fact many on Slashdot are far too eager to overlook. Many people are painting Sun as the Great Satan for not open sourcing Java; I merely meant to poke fun at this mentality and show how hypocritical some people (not necessarily yourself) can be. As for death, there are certain vegetative states which make the matter far less absolute than you make it out to be.

    --
    Uttering logically derived and empirically supported truths to the disciples of the orthodox establishment.
  100. Open source implementations by bungley · · Score: 1

    I've never played with any of the open source implementations of java, but would anyone care to inform me how well they perform, and why there are (at least) 3 of them?

  101. You forgot... by Phekko · · Score: 1

    Wednesday: ???

    and

    Saturday: Profit!!!

    Seriously, though, that's about what would happen if it became completely open source and there is absolutely nothing funny about it.

    --

    Sigs for Nerds. Sigs that Matter.
  102. Constraints! Constraints! YouMustLearnConstraints! by DarrylKegger · · Score: 1

    Im readin a great deal of posts here that talk about the dire consequences of open sourcing sun-java; there will be forking and everyone will make their own little version, etc etc...

    This 'chaos' argument (as i like to call it) that people like to use (for all sorts of things including 'runaway human population')is invalid because of the one constraint which any real system will exhibit (commonly a resource constraint(Such as the one that inhibits the overly-lengthy /.-post subject ;])).

  103. Re:Forks are a really REALLY bad thing for Java by davecb · · Score: 1
    All MS has to do is take a copy, change it to prefer to use .NET objects in preference to anything else, then
    1. return the code to the community
    2. ship only that code on their monopoly platform.
    Now the majority of Java written will run only on MS servers with .NET services. Bingo, back into monopoly lock-in.

    That make Mono critical to any Java implementation, and doesn't make it any easier than Wine... which is to say, makes it a sngle point of failure.

    --dave

    --
    davecb@spamcop.net
  104. Interesting... by jack_csk · · Score: 1

    Yesterday, we talked about GPL-ed Solaris, and we are talking about open source Java... So, what's interesting thing tomorrow?

  105. Re:So... by ItMustBeEsoteric · · Score: 1

    Ok, death from a purely biological/chemical perspective. Bring in mental activity or the concept of a soul and you open a whole can of worms. I know some people who walk around just find who I swear have no electrical activity in their minds...

  106. GCJ performance and capabilities by __Reason__ · · Score: 2, Informative

    1. Performance? My experimentation 6 months ago with compute/object-intensive code showed a fully-optimized GCJ only getting 30% the speed of the latest Sun JVM.

    GCJ isn't perfect (yet), but for the most part it produces pretty good code that matches or exceeds JRE performance on most large applications. If you are seeing such a large performance discrepency then most likely there is some bottleneck in the libgcj runtime/class libraries that your code is tripping over. We are fixing such problems regularly, but can't do so if we don't know about them. If your code runs poorly on GCJ then *please* send a message to java@gcc.gnu.org describing what you are doing or, better, with a test case/sample code. We'll do our best to help.

    2. Popular applications? Can Jakarta Tomcat with JSP, etc., a common open source Java-based web server be run on it? If not, there is a clear list of what it is missing.

    Tomcat runs great on GCJ. The issue today is not so much what GCJ can run, but making it easier for folks to build & run large scale applications like Tomcat and J2EE servers. The "native compiler" compilation and execution paradigm is substantially different from that of the traditional JVM, and this means it can be a lot of work to convert everything from an ant/javac build system to a native one. Solutions to this issue are a big focus for the GCJ development community right now.

    3. Web applications sandbox? How about loading untrusted applications over the internet and running them in a security sandbox?

    Infrastructure for the java security model is largely in place in libgcj already. There are a few bits remaining to be sorted out, but we should have a completely functional java.security AccessController/SecurityManager within the next few weeks. This will allow you to securely run a) untrusted bytecode, and b) untrusted bytecode compiled to native in a trusted compliation environment.

    4. Is GTK or QT really ready to be the free cross-platform Java standard for UI?

    Absolutely. Just look at java-gnome. The day will soon come when many of your native linux desktop applications are written in Java, and you won't even notice the difference.

    Is there licensing preventing bundling of IBM's Eclipse UI toolkit with GCJ?

    Unfortunately, it appears so. IBM's CPL, although a certified free software license, has been decreed incompatible with the GPL. This doesn't stop you writing SWT applications with GCJ, of course - many do. But the SWT itself will need to be distributed with your application or at least in a separate shared library.

    Is relicensing under GPL possible?

    Better ask IBM. I certainly hope a solution can be found to this problem.

  107. IBM has already forked Java by solprovider · · Score: 1

    Most of my professional work includes Lotus Notes (LN), but I use the best language for each project, or part of a project.

    I started with Sun JVM, then switched to the IBM JVM. I tried a couple of others, but could not find any advantages over the 2 corporate versions. I think IBM included code to make the JVM work better with their products. I had more than one major issue that disappeared when I switched to IBM's JVM. All the core functionality worked with either, but the integration was better with IBM's.

    That worked with LN5. IBM decided that including Java with Lotus Notes was hurting WebSphere, so they trashed Java with LN6. Servlets that ran in seconds on an old server would timeout on a much better server. The integration issues with any JVM are worse than ever.

    IBM has been using WebSphere to take Java away from Sun. This whole discussion shows the attack has been successful. I wish the Java issue was decided so IBM would improve LN rather than steal technology from LN to improve WebSphere. If the JVM was forkable, then IBM would be the first to fork it. (Not that MS would not try, but IBM has slightly better programmers than MS, so IBM would finish first.) My programs would require the IBM JVM, and that defeats the purpose of opening Java.

    --
    I spend my life entertaining my brain.
    1. Re:IBM has already forked Java by FatherOfONe · · Score: 1

      I agree with your post, and the last thing I want to see is IBM in control of JAVA, well perhaps Microsoft would be worse, but I will defend IBM on one main point. I believe they wrote around 70-80% of the first J2EE standard. So who actually "owns" J2EE? Technically Sun, but IBM spent a lot of time with the code.

      IBM's goal is probably not to wrench control of Java away from Sun, but to make a development platform that they fully support and can compete very well with .NET/Microsoft. With that they want to be able to go to a customer and NEVER have to recommend a competitors technology. So no Sun JVM, no Microsoft Client, No Oracle DB, No Apache, No BEA Weblogic, but Linux (IBM/Novell/SuSe), IBM JVM, Websphere, and DB2. Of course this will all be supported on IBM hardware :-) They want hard to be the one stop shop for "ALL" your I.T. needs. They will of course work with any other vendors product... :-)

      Lastly, as I told IBM/Novell/Sun/Oracle/BEA/RedHat... your enemy is NOT each other and only together with JAVA can you compete with your true enemy of Microsoft. I think all of these companies except RedHat gets this. For some reason the people I talk to at RedHat seems to hate Sun and anything about them. I had to laugh when I installed my SuSe 9.0 and it had Suns JVM installed by default :-)

      --
      The more I learn about science, the more my faith in God increases.
  108. Modded troll? WTF? by Anonymous Coward · · Score: 0

    Unbelievable that someone would mod this as a troll. Some of the /. mods are just plain morons.

  109. Meh by Anonymous Coward · · Score: 0

    Bought and buried by who? Microsoft couldn't even talk quietly about buying Sun without the DOJ having an anti-trust hissy fit. If Oracle can't acquire PeopleSoft then what chance does Microsoft or IBM have to acquire Sun?

  110. Start with unprofitable stuff! by mabhatter654 · · Score: 1
    Why don't they start with the unprofitable stuff?

    Right now "Offical Sun" Java suffers from far too much feature creep for newbies or average users. There are too many editors, graphics apis, and program structure models....and it seems Sun is always making new ones! Frankly they should give up on what they've already lost...They should ditch Swing for GTK bindings, opens source Netbeans [to merge it into Eclipse] and cull any other "extraneous" stuff they've got in the closet.

    The idea of the "Core" Java as Sun proprietary isn't really that far fetched...perhaps it would actually be better for the language. After all, even Linux has a pseudo-owner in Linus & GNU in RMS. It's not like people can't take the stuff and do what they want with it, but most of the OSS projects have fairly strong individual or corperate leadership...It helps keep things moving! If Sun was to give up control [or rather follow the users!] over some things they would appear much more responsive. They don't necessaraly have to give up the "gems" to satisfy the public.

  111. Re:Why don't ........ ? by Usagi_yo · · Score: 1
    They open sourced staroffice as a big FU to Microsoft -- playing hardball. Microsoft fears a strong competitor to windows office suite. Brilliant move IMHO, just tosses another flaming bowling ball pin for Microsoft to keep juggling.

    I really don't understand what the big deal with open source Java. But I think when your major competitors are calling for you to open source your applications -- well, that can't be a good decision.

  112. also, replacements not allowed by raindog2 · · Score: 1

    More than this, one (who's not a lawyer, dunno what a lawyer would say) could easily interpret "(iii) you do not distribute additional software intended to replace any component(s) of the Software" to mean that your license to distribute Java is revoked if you *ever* distribute kaffe, gcj or any other free software Java implementation.

    Notice that clause iii isn't qualified with "...along with the Software" or anything like that. Even clause i includes the language "for the sole purpose of running your Programs" meaning that if you include it as a general purpose Java VM for your Linux distribution, merely including a couple example programs won't be enough to avoid violating the terms of the license.

    I doubt Sun would be that stupid since they do seem to want Java to be adopted, but if a free software implementation of Java were to start stealing Sun Java's fire.... all bets would be off.

    It's even possible that Mono could be cause for termination of the above license. Microsoft certainly intends .NET to replace Java.

  113. Is it easy do engineering-reverse the closed JVM? by Anonymous Coward · · Score: 0
    GVM is GVM Virtual Machine, Java-like or C-like or C++-like.

    pub vs public, priv vs private, prot vs protected, ...

    "It divides and conqueres with Engineering-Reverse: 10000000 bytes closedsource / 100 haxors = 100000 bytes by haxor."

  114. Don't open source Java by Anonymous Coward · · Score: 0

    In order to have a driving force that is aggressive in succeeding STRATEGICALLY with Java, open sourcing it may not be the solution.

    Java is competing with others (Microsoft empire) who have that aggressive single minded strategy which open source just may not provide.....million people doing different things but who holds it ALL together into a technical, marketing strategy that can make it succeed ? Solve this question in open source and THEN 'open source' Java. We would all be happier to see Java then succeed regardless of what the evil empire does !