Slashdot Mirror


Sun to Change Java License for Linux

daria42 writes "It looks like the days of downloading Java every time you re-install a Linux box may be at an end. Reports are trickling in that Sun plans to alter the Java license to make it easier to bundle the JRE with Linux. From the article: 'Sun has faced calls several times to open-source Java, which advocates say would foster innovative open-source development. The company has resisted formally open-sourcing all of the Java software, but it has dramatically changed the development process around Java and changed licenses to make it easier to see Java source code.'"

72 of 226 comments (clear)

  1. Finally! by pryonic · · Score: 3, Funny
    It's about time they woke up and smelled the coffee!

    I'm sorry...

    --
    Never underestimate the power of stupid people in large groups.
    1. Re:Finally! by moro_666 · · Score: 4, Funny
      --

      I'd tell you the chances of this story being a dupe, but you wouldn't like it.
  2. Sweet... by racebit · · Score: 3, Funny

    Three cheers for sun *reaches for mug java*....o wait, my self heating mug exploded

  3. Hard.. by ZoWnX · · Score: 5, Insightful

    Because downloading the JDK or the JRE after installing linux was hard? If it wasnt for this, I wouldnt be periodically using the latest version.

    1. Re:Hard.. by $RANDOMLUSER · · Score: 2, Insightful

      Exactly. Especially if you're running multiple versions of Java. What really annoys me is RPMs that expect an RPM-installed Java.

      --
      No folly is more costly than the folly of intolerant idealism. - Winston Churchill
    2. Re:Hard.. by CastrTroy · · Score: 5, Insightful

      I think it has more to do with having the distro do it for you. If we want Joe User to be able to use linux for their desktop needs, then we are going to have to make it as easy as possible for them to use. Of course the people in control of the distro are the ones making the decision. If they don't want to include it because of some ideological values, then that's their business. If they feel the people using the OS has can just install it themselves, then that's their business. But if they're trying to put out an easy to use desktop distro, then they'd probably be smart thinking twice about including it.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    3. Re:Hard.. by CastrTroy · · Score: 2, Interesting

      This is what bothers me most about RPM. If RPM didn't install it, then it doesn't exist. Sure you can force the install, but if the package wasn't installed where it was expected to be, then things often won't work properly. It doesn't help that a lot of things aren't available as RPM. I'm using Mandrake(iva) 2006, and it still only has Firefox 1.0.6 available.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    4. Re:Hard.. by /ASCII · · Score: 3, Informative

      That's the fault of lazy packagers, not a problem with RPM itself. You can specify dependencies on a particular file (like /usr/bin/java) insesad of a package if you want to. And if that's not enough (e.g. if you want to allow people installing into /usr/local/ or /opt) you can write little dependency checking scripts at install-time. For example, this snippet makes sure a few X headers are present, regardless of if they are installed in /usr or /usr/X11:

      %define xinclude %( if test -d /usr/X11R6/include; then echo /usr/X11R6/include; else echo /usr/include; fi )
      Requires: %{xinclude}/X11/StringDefs.h, %{xinclude}/X11/Xlib.h

      --
      Try out fish, the friendly interactive shell.
    5. Re:Hard.. by Reverend528 · · Score: 4, Funny

      Screw Joe User! Bob Sysadmin is lazy too!

    6. Re:Hard.. by ronmon · · Score: 2, Informative
      It's not hard, but it is a pain in the neck. For example, in Gentoo:
      emerge dev-java/sun-jdk

      >>> Emerging (1 of 1) dev-java/sun-jdk-1.5.0.06-r2 to /
      !!! jdk-1_5_0_06-linux-amd64.bin not found in /net/distfiles

      !!! dev-java/sun-jdk-1.5.0.06-r2 has fetch restriction turned on.
      !!! This probably means that this ebuild's files must be downloaded
      !!! manually. See the comments in the ebuild for more information.

      * Please download jdk-1_5_0_06-linux-amd64.bin from:
      http://javashoplm.sun.com/ECom/docs/Welcome .jsp?...
      * Select the Linux AMD64 self-extracting file
      * and move it to /net/distfiles
      So you have to go there, accept the 'clickwrap' license, download it somewhere, then mv it to your distfiles directory. Unnecessary mumbo jumbo.
    7. Re:Hard.. by master_p · · Score: 2, Insightful

      Not everyone has internet access all the time or fast internet access. Don't forget that Linux is also distributed by magazines, then the Linux CDs are passed around to people that might not have internet access at the time or not have fast internet access.

    8. Re:Hard.. by AeroIllini · · Score: 2, Interesting

      So you have to go there, accept the 'clickwrap' license, download it somewhere, then mv it to your distfiles directory. Unnecessary mumbo jumbo.

      The whole point of the "mumbo jumbo" is to get you to agree to the license terms. This is also the reason why the earlier versions of Firefox 1.5 (compiled, not the binaries) did not have the official branding enabled in Gentoo; it was a licensing issue. As soon as Gentoo got permission from the Mozilla Foundation to distribute the trademarked images in the source, they reenabled official branding in the ebuild.

      But my question would be ... why doesn't Portage have the ability to show you the license and have you agree to it with a simple yes/no as the package emerges? Even though the Sun lawyers seem to have sidestepped the issue for Java, I'm sure there are other packages out there with incompatible licenses, which could then be included in Portage with a clickthrough.

      Anyway, good news for Java. Now I don't have to resort to the Blackdown version.

      --
      For security, the MD5 hash of this message and sig is 09f911029d74e35bd84156c5635688c0.
  4. days of downloading Java by JoelMeow · · Score: 5, Funny
    days of downloading Java

    That's what you get for having a slow connection.

    1. Re: days of downloading Java by Arandir · · Score: 4, Funny

      I don't care how speedy your connection is, you can only click so fast on all those Sun license agreements.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
  5. But what about Windows? by Anonymous Coward · · Score: 2, Funny

    Sadly, this means that Windows will be the only major OS that can't seem to come with Java delivered right out of the box. Maybe they'll address that problem with Vista?

    1. Re:But what about Windows? by Ash-Fox · · Score: 3, Funny

      Don't worry, there will be .NET instead.

      --
      Change is certain; progress is not obligatory.
    2. Re:But what about Windows? by Anonymous Coward · · Score: 2, Insightful

      This really comes down to marketing. Even if Java is useful for a majority of customers, Microsoft will not provide it because Java could diminish the effectiveness of their business strategy.

      This is a dangerous game to play - at what point does Microsoft stop supporting their customers for the sake of their business strategy? Some will say that that time came long ago, and that it is an implicit sign of anti-competetive, monopolistic practices. I disagree - as some could claim that Java is simply not appropriate for most users, and if it is required, then the user may install it.

      I think Microsoft's lack of proper open document support, as required by some local laws, is a much more glaring example of Microsoft's overt anti-commerse behaviours.

    3. Re:But what about Windows? by debiguana · · Score: 2, Informative

      Actually, sun has been working to get OEMs (Dell, Gateway, etc.) to bundle the JRE with their systems.

    4. Re:But what about Windows? by MrNougat · · Score: 2, Informative

      As in another comment, Sun may get OEMs to bundle Java with systems they sell that have Windows preinstalled, but it's unlikely that Sun and Microsoft will come together to bundle Java with Windows directly anytime soon. Remember, it was legal issues between the two parties over the now defunct and soon to be EOL'ed Microsoft Java Virtual Machine that forced Microsoft to ditch MSJVM in the first place (rightly so, I think).

      --
      Web 2.0 == Giant Blogspam Circle Jerk
    5. Re:But what about Windows? by raitchison · · Score: 2, Insightful

      All joking aside, Windows users actually would stand to benefit the most from open sourcing Java. The Sun JRE, which virtually ALL Java apps are arbitrarily dependent on is one of the worst apps I've ever seen when it comes to memory utilization.

      I've seen Win32 apps consuming 150Mb of RAM.

      If Sun were to open source Java it could open the door to different, better JVMs that might even be able to spoof itself as "Sun JRE" for the myriad of poorly written Java apps that refuse to run on anything else.

    6. Re:But what about Windows? by neurojab · · Score: 2, Informative

      The Sun JRE, which virtually ALL Java apps are arbitrarily dependent on is one of the worst apps I've ever seen when it comes to memory utilization.

      When was the last time you came across a Java program that required the Sun JRE? I exclusively use the IBM JRE on Linux, and have never had a problem with compatibility.

    7. Re:But what about Windows? by nissu · · Score: 2, Insightful
      Not sure how they did it but the installer said something along the lines of "Sun JRE not detected" and offered to install it for me, wouldn't let me continue if I did not. Don't reall exactly which JVM I was trying to use at the time, perhaps it was LaTTE?
      From LaTTe homepage:
      • No AWT or Swing
      • Not Java 2 (only supports 1.1).
      • No bytecode verifier.
      • Lacks JNI support.
      • Incomplete class library.
      • No support for JAR or compressed ZIP archives.

      No wonder the installer refused to continue. In fact, it's a small miracle that LaTTe (a result of a research project, apparently) was able to start it in the first place, as it seems to implement only a small subset of Java 1.1 features rendering it totally unusable for running anything real - even when Java 1.1 was the latest release. Java 1.2 was released eight years ago.

      I've never quite understood why people seem to think that open sourcing Java would magically solve all the problems. For example, memory usage and relatively slow GUI performance seem to be one of the major gripes. Does someone really think that a bunch of open source coders who have never seen the sources before would be able to improve it in any reasonable time if the engineers at Sun cannot?

      And how many (smart) OS coders would actually care?

      However, fixing the relatively small bugs and annoyances in the standard Java libraries is certainly something that could be done by the 'community', as Sun seems to be notoriously slow in fixing some of the bugs..

  6. slackware has jre in 10.2? by Edzor · · Score: 3, Interesting

    not sure about pervious versions of slack, but 10.2 ISO has it, i dont see the problem way other distro dont include it?

    jre-1_5

    1. Re:slackware has jre in 10.2? by Ash-Fox · · Score: 4, Interesting

      Mandriva Linux includes Sun's JRE5 too.

      --
      Change is certain; progress is not obligatory.
    2. Re:slackware has jre in 10.2? by moro_666 · · Score: 4, Informative

      i think debian/ubuntu keep away from it because it has an uncomfortable license that doesn't match with the rest of the system ;)

      most debian/gnulinux software is either gpl/lgpl or bsd (or alike) licensed, can be distributed without any restrictions just about anywhere. the license of java which you are supposed to read and accept while downloading and installnig, differs a lot from the "free as in beer" or "even more free than beer" licenses mentioned above.

      for the commercial distros - no idea, but possibly the same issue.

      --

      I'd tell you the chances of this story being a dupe, but you wouldn't like it.
    3. Re:slackware has jre in 10.2? by zerblat · · Score: 4, Informative
      The Binary Code License Agreement, under which Sun's Java implementations are licensed, only allow you to distribute their software if "[...]you do not distribute additional software intended to replace any component(s) of the Software[...]".

      That means that you can't also distribute e.g. gcj or GNU Classpath. The license isn't exactly clear on whether it means that you can't distribute Sun's JRE together with gcj or whether distributing Sun's software means you can't distribute gcj at all -- ever. It's also not clear exactly what they mean by "software intended to replace any component(s) of the Software". In the worst case, that could apply to any software that performs the same function as some part of the JVM, the byte compiler, the class library etc. Does distributing Swing mean you can't distribute GTK?

      --
      Please alter my pants as fashion dictates.
  7. We already have open source Java by CustomDesigned · · Score: 5, Insightful
    Sun provides an open spec (actually multiple specs). There are open source implementations of the spec. Sun and others have proprietary implementations. There are applications where the open source implementations are superior (typically small memory and embedded). If you have tons of memory, Sun's Hotspot VM is very fast.

    If there are areas where the specs need improvement to get closer to the "Write Once Run Anywhere" goal, by all means complain about those areas.

    We want multiple competing implementations, both open and proprietary. That said, I could see Sun open sourcing the Java libraries - at least the Java parts. The SDK comes with Sun source for the publically visible parts of libraries. However, the licence precludes using that source in an open source VM. Instead, the GNU classpath project has to rewrite them from the spec.

    Keeping the Sun VM proprietary but opensourcing the libraries seems like a good compromise between maximum interoperability and competition.

    1. Re:We already have open source Java by The+Warlock · · Score: 3, Insightful

      The problem is that the open-source implementations of Java tend to be a version or two behind the official Java, which can be a problem for some Linux users (such as CS students like myself).

      --
      I've upped my standards, so up yours.
    2. Re:We already have open source Java by Anonymous Coward · · Score: 3, Insightful

      Keeping the Sun VM proprietary but opensourcing the libraries seems like a good compromise between maximum interoperability and competition.

      Which is exactly why it'll never happen. The giant Java library ensures that, even with a 100% compatible JVM, most Java applications will only run on the Sun runtime. (Especially applications that use "sun.*" or "com.sun.*" packages in open defiance of Sun themselves saying not to do that. But that's beside the point.)

      Sun learned from their experience with Microsoft. When Microsoft had their own JVM implementation, Microsoft added various extra libraries and functionality to their runtime that Sun was missing. Sun responded by sueing, and forcing Microsoft to remove their JVM from Windows. (And then Sun responded to that by sueing Microsoft for removing their JVM from Windows...)

      By having a massive and hard to implement class library, Sun ensures that anyone else trying to create a compatible Java runtime will always be playing catch-up. They'll never be able to be 100% compatible with the "latest and greatest" Java runtime.

      And that's just the way Sun wants it - they're able to keep control of Java that way. Open sourcing the libraries would cause them to lose that control. And that's why it'll never happen.

      (It's worth noting that the source for all the classes that appear in java.* and javax.* are, indeed, available with the Sun JDK. However, the license prevents doing anything useful with them, and much of those classes rely on large amounts of code implemented in com.sun.* or sun.* packages, for which the source is NOT available.)

    3. Re:We already have open source Java by tomcres · · Score: 2, Insightful

      That's because Mr. Volkerding cares more about his users' experience in providing something that just works, works reliably, and is complete than ideology and software politics.. Slackware has been including xv (a shareware image viewer) since like Slackware 1.0..

    4. Re:We already have open source Java by fossa · · Score: 2

      ...and perhaps the users of Debian *want* a completely DFSG Free distribution? There's room for both.

    5. Re:We already have open source Java by /ASCII · · Score: 2, Insightful

      The way I see it, there are three relevant levels of openness here:

      * A standard which is well defined, whose license can not be arbitrarily terminated and is provided to everybody free of charge or at a reasonable cost. (This is the most important one)
      * An open sourced reference implementation of that standard, prefereably released under the BSD licence so anybody can extend it. (This is nice but not crucial)
      * An open standards process. (If the standard is stable and well written, this is not all that important)

      Sun is doing the first but is avoid doing the second by giving the strawman argument that it would somehow imply the third.

      --
      Try out fish, the friendly interactive shell.
    6. Re:We already have open source Java by Matt+Perry · · Score: 2, Insightful
      We already have open source Java
      Yeah, and they don't work correctly. Just yesterday I was helping a person at work with their code. They had a Java program that was doing an LDAP query. It worked fine on other machines but not on one of the test machines. Turns out some JRE called Kaffe was in the path before the Sun JRE. Changing the path to the java executable fixed things.
      --
      Slashdot: Failed Car Analogies. Amateur Lawyering. Anecdote Battles.
    7. Re:We already have open source Java by Tim+C · · Score: 4, Insightful

      Microsoft. When Microsoft had their own JVM implementation, Microsoft added various extra libraries and functionality to their runtime that Sun was missing. Sun responded by sueing

      MS added classes to the java.* package hierarchy, in contravention to the terms of their licence. That's why Sun sued. Had MS put their classes in a com.microsoft package hierarchy like you're supposed to, Sun wouldn't have cared (or had a leg to stand on).

      The restriction was/is in the licence to prevent exactly what started to happen - people started using the classes, and thus were writing code that could only run on MS's VM, which is completely against the core Java ethos of "write once, run anywhere". (Ok, so in practice that's often easier said than done, but this was threatening to make it completely impossible)

      For what it's worth, MS didn't have to stop shipping a VM with Windows; they just had to stop shipping their non-compliant VM. They were perfectly at liberty to remove the offending classes and continue developing a compliant VM. Instead they chose not to do so, shifting their efforts to .NET instead.

      Especially applications that use "sun.*" or "com.sun.*" packages in open defiance of Sun themselves saying not to do that.

      That's a really dumb thing to do if you care about cross-release compatibility. There's no guarantee whatsoever that classes that are present in one release will be present in the next.

    8. Re:We already have open source Java by Decaff · · Score: 2, Informative

      Which is exactly why it'll never happen. The giant Java library ensures that, even with a 100% compatible JVM, most Java applications will only run on the Sun runtime. (Especially applications that use "sun.*" or "com.sun.*" packages in open defiance of Sun themselves saying not to do that. But that's beside the point.)

      Sorry, but this is plain wrong. Most Java applications will run on any certified JRE of the appropriate version. That is the point of certification of the JDK and JRE! Even some of the largest and most complex Java applications like Eclipse will run on any vendor's JDK. Even Sun's NetBeans will do this!

      Anyway, most Java applications are Web applications, deployed on J2EE app servers like Tomcat and JBoss: these have no specific requirements for the Sun JRE.

      By having a massive and hard to implement class library, Sun ensures that anyone else trying to create a compatible Java runtime will always be playing catch-up. They'll never be able to be 100% compatible with the "latest and greatest" Java runtime.

      This is rather strange and conspiratorial thinking! Sun don't include a large library with Java to ensure that anyone else plays catch-up - the library has been extended over the years based on developer demand, with things like a more powerful Collections framework (Java 1.2) and concurrency utilities (Java 1.5).

      And that's just the way Sun wants it - they're able to keep control of Java that way. Open sourcing the libraries would cause them to lose that control. And that's why it'll never happen.

      There is no reason why open sourcing would involve any loss of control. Something can't be called 'Java' unless it passes the compatibility tests, open source or not.

      There are already an open source projects which intents to provide a full, up-to-date implementation of Java - Apache Harmony.

    9. Re:We already have open source Java by david.gilbert · · Score: 2
      1: the java.* and javax.* trees are bloody massive so reimplementing it all is a huge ammount of work

      It is, but GNU Classpath is almost there (for J2SE 1.4 at least). For 1.5, there is a little more work to do:

      http://www.kaffe.org/~stuart/japi/htmlout/h-jdk15- classpath-generics.html

      2: most java developers don't give a fuck about runtime environments other than suns and some of the platform isn't very well documented (just go and have a look at some of the stuff in javax.swing.plaf).

      I work on the javax.swing.* packages in GNU Classpath, and Sun's "spec" here truly is woeful. We're trying hard to make sure the API documentation for GNU Classpath is more...informative.

      In spite of the poor specification, GNU Classpath's javax.swing implementation is looking relatively good. The major missing piece (being worked on now) is a decent Graphics2D implementation (not strictly part of Swing, but a lot of Swing apps, and look-and-feels, need it). The text/HTML code still needs work too, but good progress is being made.

    10. Re:We already have open source Java by cecom · · Score: 2, Insightful

      Sorry, but this is ridiculous.

      apt-get install java-package
      fakeroot make-jpkg jdk-1_5_0_06-linux-i586.bin
      sudo dpkg -i sun-j2sdk1.5_1.5.0+06_i386.deb

      If this took you a whole hour, you are in BIG trouble my friend :-)

    11. Re:We already have open source Java by Decaff · · Score: 2, Informative

      "For example, there is an implementation of Hotspot for J2ME/CLDC that runs in 1MB."

      Bullshit.


      No, it is a fact:
      http://java.sun.com/products/cldc/faqs.html

      "13.What is the CLDC HotSpot Implementation?

      The CLDC HotSpot[tm] Implementation is a high performance, battery-preserving virtual machine that is compliant with the CLDC specification. It not only offers significantly improved performance over the KVM, but it also offers greater portability and faster time to market. The CLDC HotSpot Implementation is suitable for devices based on ARM microprocessors/controllers, and with 512KB to 1MB of total memory available for the Java technology stack. The latest release of the CLDC HotSpot Implementation is version 1.0.1."

    12. Re:We already have open source Java by eddeye · · Score: 3, Insightful
      which can be a problem for some Linux users (such as CS students like myself)
      As a CS student you should be able to get the sun JRE/JDK going on your linux box. (I speak as a former CS student who just did it... (again)...)

      As a former CS student *and* instructor, take my advice: run away from Java as fast as you can. I'm not saying it's a bad langage/environment or doesn't serve some audiences very well. But Java's like cigarettes, starting on them too early stunts your growth.

      CS students need to learn as many different programming approaches and concepts as they can. Procedural languages (C et al), iterative (generators, Python/Ruby), functional (lisp), declarative (prolog), message passing, object oriented, generic programming, closures, static vs dynamic typing, etc. Breadth of exposure to different approaches is crucial to knowing what approach to take with real-world problems. This should be coupled with a depth of understanding of what the system does 'under the covers' at each level. It makes all the difference in the world when facing unexpected problems and differentiates a code monkey from an engineer.

      Unfortunately Java covers only a couple of these areas and none of them particularly well. Standardizing classes on Java is one of the worst things a CS dept can do. If you're stuck in this boat, all I can suggest is play around with other languages every chance you get.

      --
      Democracy is two wolves and a sheep voting on lunch.
  8. Sun's commitement? by SWroclawski · · Score: 4, Interesting

    I remember hearing about two or three weeks ago that Sun said it was committed to "Open Sourcing all of its software, everything they make."- this is from LugRadio and a Sun representative.

    Given this /very/ progressive stance, I don't see why they're stalling when it comes to Java.

    If anything, this slows Java adoption.

    Java was all the rage in the late 90s. Had they made it Free, I think it would have been a tour de force. Now we see competition from simpler technologies. We're learning that we don't need a J2EE infrastructure when a simple Model-View-Controller model with a database backend will do the job just as well, and so on.

    Freeing Java would spread adoption, if nothing else than by including it in every distribution shortly thereafter.

    This new license system isn't good enough, it'll just frustrate people.

    1. Re:Sun's commitement? by fossa · · Score: 4, Funny

      (Luke Skywalker stands hands bound on the edge of a plank)

      "Java! This is your last chance. Free yourself, or die."

      (laughter ...but Java the Hutt will soon learn he's too sluggish as he is choked to death by Princess Ruby)

    2. Re:Sun's commitement? by Tim+C · · Score: 2, Interesting

      We're learning that we don't need a J2EE infrastructure when a simple Model-View-Controller model with a database backend will do the job just as well, and so on.

      There's nothing stopping you from implementing that MVC architecture in Java with a servlet container, of course - in fact, in my experience the vast majority of websites that use Java use it in exactly that way.

  9. Limits? by J.Y.Kelly · · Score: 4, Insightful

    Unfortunately the article is a bit light on details. It says that Sun are going to make the JRE easier to redistribute but that on it's own isn't enough for many distros. It would also have to be at least able to be repackaged (so it goes somewhere more friendly that the Sun supplied RPM) and preferably modified (to make it play nicer with the rest of the system) before it's really useful.

    Also, it's a shame it seems they're only going to include the JRE. Nice and easy for linux users to run java programs. Shame they won't be able to write any...

  10. Java as electricity by aphaenogaster · · Score: 5, Interesting

    Odd analogy, but I guess it kind of makes a little sense maybe... http://www.forbes.com/2006/05/04/sun-microsystems- schwartz-cz_ec_0504schwartz.html?partner=yahootix In shwartz's words...

    Forbes:

    You're trying to woo customers with free hardware. How do you make them paying customers? You haven't monetized Java proportional to what's out there.
    JShwartz:

    That's a misnomer. Largely an American misnomer. Nearing 1 billion Java handsets.

    Forbes:

    So what's your Java revenue?

    JS:

    Close to $13 billion.

    F:

    That's not money in Sun's pocket, though.

    JS:

    It's like asking a company that produces generators how much of their demand comes from people using electricity. It's 100 percent.

    F:

    But it's about how many customers are paying you for the privilege of using Java.

    S:

    And I'll point out that a billion handsets fuels an enormous market in the telecommunications industry. Java running on Sun's Java Enterprise system, whether it's at American Express or General Electric or Vodafone, is fueling Sun's overall revenue. Asking us how much money we make on Java is like asking Verizon Communications how much money they make on handsets. The fact is that they lose a fortune on handsets, but they make a fortune in subscribers.

    F:

    So are you going to convert Java users to subscription service for Sun?

    S:

    Partially, we're already doing that. American Express runs on the Java Enterprise system. That's per employee subscription for core middleware for Sun. My broader point is that Java ensures Sun has access to an open market. Java allows us to reach out to customers who don't run on Sun hardware and ensure we can serve them wherever they may be--whether it's on a Dell box or HP box or in an IBM customer base.

    Again, it's hard to explain to people. Here's an analogy. With the advent of electricity, Thomas Edison tried to patent a lightbulb so that you would have to use his lightbulbs if you used his dynamo. That strategy obviously failed. And what emerged was the standard plug. Asking Sun the value of Java is like asking GE--which is, I think, the largest manufacturer of power turbines in the world--what the value of the standard plug is. It ensures they can serve a global marketplace. So if you asked them what's the value of the plug, how would they respond?

    Here are some stats on Java: There are more than 1 billion Java cards in the marketplace, securing everything from set-top boxes to handsets. There are more than a billion Java handsets, all driving demand for network infrastructure. There are nearly 1,000 members of the Java community process, who collectively contribute to the standard called "Java." It is the default standard for set-top boxes in Brazil. So what will the infrastructure opportunity be in Brazil to serve 100 million Java-enabled set-top boxes? I promise you it will be enormous, and Sun will be among many participants that can serve that demand.

    1. Re:Java as electricity by Zigurd · · Score: 2, Interesting

      Schwartz is right, to the extent he can be at this time: Sun does benefit from Java.

      The interviewer, however, has a point that Schwartz did not address: It is equally clear that Sun could benefit more from Java.

      Schwartz brings up mobile Java. Sun won by default: Qualcomm keeps their application environment on their chips, and Microsoft keeps their's on their OS. Schwartz has no answer to how this victory is monetized. There are some obvious missed opportunities in mobile commerce servers, for example.

      If Sun really wants Java to be like electricity and Sun to make generators, the open-sourcing of Java is critical: It has to be a top-tier choice when considering managed lanaguages for all kinds of Linux software, including desktop software. That means it has to be in the top Linux distributions - VM, libraries, everything.

      Sun has done a great job of turning NetBeans into an open sourceIDE that is very approachable for beginners. Matisse brings NetBeans up to Visual Studio standards and beyond for making GUI layout easy. Debugging, profiling, and round-trip UML are easy and free in NetBeans. If they can convince Red Hat and Ubuntu to bundle Java and Netbeans, it will be the path of least resistance for new coders making application on Linux.

      After that, Sun still has the task ahead of it of getting the most out of Java in a market that rejects lock-in. There will be no replay of the dot-bombs that raised millions and immediately spent millions on Sun hardware and Oracle database software. Sun has to make their hardware the most attractive for key segments of a market that is using Java. They have a good start in their deals with Google. They need to build on that.

    2. Re:Java as electricity by KenSeymour · · Score: 2, Interesting

      I have been using Java for several years now. But I haven't touched Sun hardware in a long, long time.

      Even when I did, my employers did not like having to provide both a Sun workstation and a Windows box for every developer.

      I remember when a spreadsheet first became available for a Sun Workstation. It was called Wingz.
      Since it was a "powerful unix machine capable of supporting multiple users" they decided to charge
      about $1000 for a spreadsheet program.
      So for a long time, Unix software vendors kept your average business from moving to a Unix desktop.
      About the same time, running Unix (SVR4) on PC hardware was also about $1000 for the OS.

      My employer at the time also spent on the order of $100,000 for a CAD package that ran on Sun 3 (Motorola 68000
      based) hardware. Shortly after that, Sun came out with SPARC. So no one wanted to
      use the old CAD software on slower hardware, and they were never able to recharge the cost
      of the CAD system back to projects.

      At the time, there was still lots of software that could only run on VMS or Unix on mini-computers.
      Today, much much more can be done on either Linux or Windows running on commodity hardware.
      Companies only use commercial Unix hardware when the have to and when they don't have even bigger iron.

      Java allows development teams to develop for Linux/Unix servers and give their developers one desktop
      running Windows. You can have a Linux desktop if you find a castoff PC within the company to sit
      next to your company-provided Windows desktop.

      Lucky for me 1) I never bought Sun stock and 2) I learned Windows programming so I could stay employed.

      To me, it looks like a big chunk of the job market for developers is divided between .NET and Java/J2EE.

      I don't see how Sun is ever going to sell significantly more proprietary hardware than they do today.

      People can buy Sun servers. But they don't have to. And with Java, they can port their server code to Linux
      on XYZ vendor hardware.

      --
      "We can't solve problems by using the same kind of thinking we used when we created them." -- Albert Einstein
  11. Programs, getcha programs here! by Chris+Pimlott · · Score: 4, Informative

    Section 5.3 of the Debian Java FAQ sums up the present licensing issues that prevent Debian from including Sun Java.

  12. I wish Java was more like CPAN by johnnnyboy · · Score: 5, Interesting


    The more I hear calls that Java to be more open source the more I wish all these Java libraries worked like the way CPAN does.

    CPAN is great and its what keeps Perl relevant and it works well for the Perl community. All these java libraries bundled with the JDK should be more modular with a lean core distro and then the rest can be organized and installed as modules.

    And like everything CPAN all these modules will be peer reviewed by other Java developers in the open source and corporate worlds.

    Ah, one can only dream.

    --
    "If a show of teeth is not enough, bite ... but bite hard!"
    1. Re:I wish Java was more like CPAN by vdboor · · Score: 2, Interesting
      All these java libraries bundled with the JDK should be more modular with a lean core distro and then the rest can be organized and installed as modules.

      So you mean that the distribution should decide which modules/classes it should omit?

      That could cripple the standard platform of Java modules developers can depend on. It could cause worst-case scenario's like this one, quoting:

      Debian has packaged Wine in a way different to upstream, and this can cause extremely subtle bugs. One incident that sticks in my mind is where I wasted an entire Sunday afternoon and evening working with a user to track down why a program was crashing when they selected a menu item. It turned out that when the program started it was querying a registry key that didn't exist, and squirreling away a NULL pointer in some internal data structure. And when it tried to access that key it crashed. Why was the key missing? Because the installer invoked the regedit.exe program to merge a pre-written .reg file into the registry, which is more convenient than using the registry apis. No error checking of course because on Windows this cannot fail. And why was regedit.exe missing? Because Debian decided it looked like a "utility" and as such should be in an optional package
      --
      The best way to accelerate a windows server is by 9.81 m/s2 ;-)
    2. Re:I wish Java was more like CPAN by LnxAddct · · Score: 2, Insightful

      Dumb idea, and that is why you aren't in charge of these things. One of the biggest pains in the ass with perl software is that whenever you run it you have to read a 20 page reamde saying "Before you run this program, you need to run this list of commands in this order so you can install the dependencies." In good scenarios you just run a script first, or in some circumstances you can use the distro's package management, but regardless it is a pain in the ass. Java's "everything and the kitchen sink" approach is way better. You no longer concern yourself with such nonsense. If you distribute a java program, you'll know the receiver has the capability to do graphics, encryption, compression, sound, XML handling, networking, etc... all without having to lift a finger. Java is a platform. I only wish more languages, in particular Python, would get a set of libraries that is as comprehensive as Java's and comes by default. Keep in mind that since the 5.0 JDK you've been able to create a minimal redistributable JRE that includes only what your program needs to run (you use pak200, which is a utility that comes with Java 5.0), but by default the JRE should definitely include everything... it makes life and integration soooo much easier in the end.
      Regards,
      Steve

  13. Well I do declare! (as grandma said) by davecb · · Score: 3, Insightful
    Now that they've released their newest chipset under the GPL, they're going around and looking to see how much they can loosen their other licenses.

    Java, due to MS's efforts to subvert it, is probably the hardest to free up, but this is a good, workmanlike step in the right direction.

    --dave

    --
    davecb@spamcop.net
    1. Re:Well I do declare! (as grandma said) by davecb · · Score: 4, Insightful
      Because MS tried so very hard to embrace and extand Java, it's reasonable to expect that the Sun lawyers are going to be very reluctant to change anything, for fear of starting the war back up.

      Sun engineers, on the other hand, arguably agree with your desire to move to free reference implemntation, and in the short term, to fewer restrictions on the JRE.

      --dave

      --
      davecb@spamcop.net
    2. Re:Well I do declare! (as grandma said) by /ASCII · · Score: 2, Insightful

      Yes, but my argument is that the standard and an implementation of that standard are two completely separate things. They are using the argument that by opening up their reference implementation, the standard itself is opened, and that is just plain false.

      --
      Try out fish, the friendly interactive shell.
    3. Re:Well I do declare! (as grandma said) by JakusMinimus · · Score: 2, Insightful

      that is a smart distinction to make, but i feel comfortable in declaring that sun's position (for the now) is that they will have better long term control over the standard/spec by maintaining control over the reference implementation. it is also worth noting that the reference implemnentation is of very, very good quality.

      and no, im not a sun fanboi, but i am primarily a j2ee developer.

      --

      You can be an atheist and still not want to succumb to some weird cross-over sheep disease -- AC
    4. Re:Well I do declare! (as grandma said) by metallic · · Score: 2, Informative

      The source code for Java 1.5 is available from Sun for free. . You just have to search around for it a bit.

      --
      Karma: Positive. Mostly effected by cowbell.
  14. foster? by dghcasp · · Score: 3, Insightful

    ... advocates say [open-souring Java] would foster innovative open-source development.

    Because there are so few innovative open source java projects right now? Heck, I can hardly keep track.

    Leaving aside the politics of open source, and the "I can't play with your toys" argument, the main issue here seems to be the license incompatability that keeps Java from being bundled with the 267 different Linux distributions.

    If people want to be innovative, how about working to unify the basic functionality of all those distributions, specifically one common, simple way that works on all distributions and architectures to install 3rd party packages, like, say, Java?

    ObMetaDig: And besides, why do you care? Every time I see java on /., the whole thread seems to be "it's slow / no it isn't / GC sucks / no it doesn't / .NET rules / no it doesn't"

    1. Re:foster? by metallic · · Score: 2, Funny

      My development machine for J2EE work is a 2ghz machine with a gigabyte of RAM. Even with JBoss and IntelliJ IDEA running, I don't have any performance issues. This is obviously a troll.

      --
      Karma: Positive. Mostly effected by cowbell.
    2. Re:foster? by glesga_kiss · · Score: 2, Interesting
      I couldn't find the original Slashdot article or the current figures but the following is from Nov 2005:
      Java history was made today!

      Today Java overtook C++ as the language with most projects on SourceForge! Here is the current list for languages with more than 1000 projects:

      1. Java (16738 projects)
      2. C++ (16731 projects)
      3. C (15934 projects)
      4. PHP (12175 projects)
      5. Perl (6209 projects)
      6. Python (4542 projects)
  15. Run-time, not development tools by gvc · · Score: 2, Insightful

    I don't see how this is any different from tainted binary kernel drivers. They'll allow redistribution of the JRE run-time environment. Big deal.

    If they allowed redistribution of JDK compiler and libraries, we'd be making progress.

    Nothing to see here. Move along.

  16. re-install a Linux box? by gall0ws · · Score: 2, Funny

    Uh?

    --
    | (ceci n'est pas une pipe)
  17. 64-bit? by escay · · Score: 4, Insightful

    well they could start with providing the mozilla-firefox java plugin for amd64 systems on linux...libjavaplugin.so, anyone?

  18. I'd Be Happy by Greyfox · · Score: 3, Interesting
    If they'd just fix some broke-ass things about the language. Seems like every time I run up against a limitation in the language, I find a bug open from 1998 complaining about the problem and either closed wontfix or "We'll fix that in a future release of java" and then they don't.

    Three recent thorns in my side:

    The Process object's destroy method sends a SIGINT or some such rot to the child process, which may or may not kill the child process. There's no way to send a SIGKILL, no way to get the PID of the process, no way to set the process group and no way to get or kill children of the child process.

    There's no way to get OS-Specific permission settings on a File. For that reason if you try to archive some files in Java using an InputStream that takes Files, you'll lose the permissions settings on them and the files will restored with something both generic and useless like 644. They make a halfhearted attempt to address this in 1.5, but it's still useless.

    It would appear that the only way to get disk space left on the volume is to open a file and start writing 1 byte at a time until you get an IO Exception.

    It's deficiencies like this (And the ~50MB VM overhead) that make Java a poor choice for system programming tasks, but the robustness of the language design itself could be so easily changed to address these issues. The fact that it hasn't and that all of these issues have been around for over half a decade lead me to believe that Sun isn't really serious about the language and probably shouldn't be in charge of the standard, either.

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    1. Re:I'd Be Happy by LarsWestergren · · Score: 4, Informative
      There's no way to get OS-Specific permission settings on a File. For that reason if you try to archive some files in Java using an InputStream that takes Files, you'll lose the permissions settings on them and the files will restored with something both generic and useless like 644. They make a halfhearted attempt to address this in 1.5, but it's still useless.

      It would appear that the only way to get disk space left on the volume is to open a file and start writing 1 byte at a time until you get an IO Exception.


      These two are finally fixed in Mustang. I agree it has taken long though:

          Three new methods have been added to java.io.File class:

                getFreeSpace()
                getUsableSpace()
                getTotalSpace()
      [...]

        Changing File Attributes:

        In Mustang the java.io.File API provides access to the file attributes for changing its readability, ability to write and ability to make it executable. Check out the following methods for playing around with file attributes:

        Changing readability: owner-only, owner or everybody
        Making it writable or read-only: owner-only, owner or everybody
        Making it executable or not executable: owner-only, owner or everybody

      --

      Being bitter is drinking poison and hoping someone else will die

    2. Re:I'd Be Happy by mark-t · · Score: 2, Informative
      Actually, I just noticed a small typo in the line.... it should be Put jarfiles common to all users in in $JAVA_HOME/jre/lib/ext.

      I didn't realize I had typed etc instead of ext until I read your reply. My bad. Sorry.

  19. What about OpenBSD? by barbazoo · · Score: 2, Funny

    Installing Java on Linux is easy as pie. Try installing it on OpenBSD....

  20. Why not dual-license like OpenOffice.org? by benmhall · · Score: 2, Insightful

    I've never really understood why Sun doesn't just dual-license the Java VM and libraries like it does with OpenOffice. This would allow Linux distributions to include both the JDK and JRE and wouldn't preclude commercial developments. This wouldn't be that different from what Trolltech does with Qt. With Qt, this limits commercial KDE development, but Java already enjoys strong commercial support. If they GPL'd (not LGPL) the JDK, they would open doors to the Open Source community while still supporting their commercial contracts.

    I wouldn't think that forks would be a big problem either, as everyone would likely stick to Sun's JDK by default. I certainly haven't run into IBM's JVM very often and one needs to look no further than Mozilla, OpenOffice.org and Qt for evidence that dual-licensing doesn't necessarily lead to uncontrolled forks.

    The truly bizarre thing to me is that this hasn't already happened. It's not like Sun is trying to keep Java sources secret. They've already exposed them to the world with their fairly liberal research license.

    Mayber things will change. I'm reminded of Eric Sink's comment on Slashdot years ago regarding open sourcing OOo:

    "The only glimmer of hope has been Sun, which seems to have a practice of being smart during the even-numbered years and downright silly during the odd-numbered ones."

  21. Re:Why is the modification required? by cduffy · · Score: 2, Informative

    They don't have to open source it. They need to stop requiring that it be downloaded directly from their servers and that the user view and affirmatively accept the license for every installation.

  22. RPM by dereference · · Score: 2, Informative
    This is what bothers me most about RPM. If RPM didn't install it, then it doesn't exist.

    This must be your lucky day. Sun has an RPM package for download; the self-installer generates the .rpm file.

  23. Non issue? by Espectr0 · · Score: 2, Interesting

    Slackware has bundled java for years. Why didn't anyone else? Is/was it illegal?

  24. So what's Sun's angle here? by aCapitalist · · Score: 2, Interesting

    It's nice that they've made this move, but I don't see how this really changes much. The server side guys never had a problem with downloading Java. I can only assume that this is a move for the desktop.

    The problem (as I see it), is that it's too late for any kind of java desktop resurgence. How come Sun never produced any kind of Java Gnome/Gtk+ apps? They do employee Gnome contributors and Gnome is their desktop. Oh right....Swing is enough for everyone,*rollseyes*. Maybe four years ago if they had gotten behind Java gtk+, and made this move things would be different, but much of the open source desktop developers have moved on to Ruby, Python, and Mono. And there's still a lot of development done in C/C++. Even on the server side, many people are moving to LAMP+Ruby.

    So my question is what is Sun's reasoning for doing it now?

  25. Re:Why is the modification required? by DragonWriter · · Score: 2, Insightful

    From the Debian FAQ entries, it doesn't need to be open-sourced, but it does need a license which doesn't prevent it from being bundled with other software that replaces any function of JVM, which allows it to be distributed other than for the sole purpose of running an application or applet distributed with it, and doesn't require you to agree to indemnify and defend Sun from any lawsuits by the people you distribute it to, before it can be bundled. The GPL isn't an issue. Sun's license is the issue.

  26. Re:Why is hypocrisy required? by cduffy · · Score: 2, Informative

    I've downloaded GPL software for Windows, and I had to agree to the GPL before installation.

    The GPL doesn't require that; the developer of that installer did.