Java going Open Source is old news at this stage but it’s taken me a while to digest. Ideologically I think it is a great move, I’ve always been a little annoyed that Java was not GPL or similar. So it’s good for me as an Open Source fan, but is it also good for me as a Java Programmer? That’s what I’ve been trying to figure out for the last few days and in the end, I think it is.

[tags]Java, Sun, Open Source, GPL[/tags]

Firstly, deploying Java services on Linux has always been a bit messy because you didn’t get the sun JVM out of the box. Sure, you got GCJ or some other clone but those never quite worked right for me. I always ended up having to manually install the Sun JVM, manually change the simlinks in /usr/bin, and manually set the JAVA_HOME environment variable. Sure, this works but it’s messy and it generally means Java is not being managed by what ever package manager your distro of choice uses. Depending on the distro there were one or two reasons that Sun’s Java was not bundled, firstly there were licensing problems, and secondly there were often ideological problems because Java was not GPL. Now there is no theoretical reason why Linux distributions can’t bundle the Sun JVM. Even if your distro of choice decides not to start bundling Sun’s Java you’ll still win because you can rest assured that products like GCJ will be benefit immensely from access to Sun’s source!

Finally, this is likely to encourage more open source Java development because the more idealistic open source guys who steered clear of Java on principle can now feel comfortable using Java. In particular this shifts the sand significantly in the .net/Mono v Java/J2EE debate. Java will now be more seriously considered by more Open Source developers.

In the end I think this will result in better Java support on Linux, more open source Java projects, and it makes me feel a whole lot better about being a Java developer, so good news all round!