The Curious Incident of Sun in the Night-Time

We leave this web page in place for the sake of history, but as of December 2006, Sun is in the middle of rereleasing its Java platform under the GNU GPL. When this license change is completed, we expect Sun's Java will be free software.


May 24, 2006

Our community has been abuzz with the rumor that Sun has made its implementation Java free software (or “open source”). Community leaders even publicly thanked Sun for its contribution. What is Sun's new contribution to the FLOSS community?

Nothing. Absolutely nothing—and that's what makes the response to this non-incident so curious.

Sun's Java implementation remains proprietary software, just as before. It doesn't come close to meeting the criteria for free software, or the similar but slightly looser criteria for open source. Its source code is available only under an NDA.

So what did Sun actually do? It allowed more convenient redistribution of the binaries of its Java platform. With this change, GNU/Linux distros can include the nonfree Sun Java platform, just as some now include the nonfree nVidia driver. But they do so only at the cost of being nonfree.

The Sun license has one restriction that may ironically reduce the tendency for users to accept nonfree software without thinking twice: it insists that the operating system distributor get the user's explicit agreement to the license before letting the user install the code. This means the system cannot silently install Sun's Java platform without warning users they have nonfree software, as some GNU/Linux systems silently install the nVidia driver.

If you look closely at Sun's announcement, you will see that it accurately represents these facts. It does not say that Sun's Java platform is free software, or even open source. It only predicts that the platform will be “widely available” on “leading open source platforms.” Available, that is, as proprietary software, on terms that deny your freedom.

Why did this non-incident generate a large and confused reaction? Perhaps because people do not read these announcements carefully. Ever since the term “open source” was coined, we have seen companies find ways to use it and their product name in the same sentence. (They don't seem to do this with “free software,” though they could if they wanted to.) The careless reader may note the two terms in proximity and falsely assume that one talks about the other.

Some believe that this non-incident represents Sun's exploratory steps towards eventually releasing its Java platform as free software. Let's hope Sun does that some day. We would welcome that, but we should save our appreciation for the day that actually occurs. In the mean time, the Java Trap still lies in wait for the work of programmers who don't take precautions to avoid it.

We in the GNU Project continue developing the GNU Compiler for Java and GNU Classpath; we made great progress in the past year, so our free platform for Java is included in many major GNU/Linux distros. If you want to run Java and have freedom, please join in and help.