Go
Decent Blogging using Foswiki Read on
14 Nov 2006 - 08:27 in , tagged , , , , , , by Michael Daum
Tell me, who cares. I don't as there are better platforms to develop software with and have been in the hands of fossies for quite some time now. Steven J. Vaughan-Nichols asks whether Java's move to GPL is too late? and my answer is a firm ``Yes, Sir.'' I don't care what took them so long to make that step.
They f***ed all those people for nearly a decade that tried to cooperate with them to get Java running on different platforms than Windows. If you followed the history of Blackdown Java 2 you know how stingy Sun has always been to answer technical questions that these guys asked again and again without getting a sufficient answer. Blackdown tried hard to cooperate with Sun to bring Java to Linux but their stack was never a vital alternative to using the original distribution downloadable by Sun for free (as in free beer). And programmers that first of all want to get their own problems solved don't care as you simply risk to get fired for using non-standard tools if things go belly up due to incompatibilities between different Java engines. For a long long time there was a pressure to get a free Java implementation. Just count the lines of code other people where willing to write just to get around using Sun's Java. Good code, that will probably never flow back into an open sourced Java.

Yes, Java and all its APIs still runs best on Windows, Microsoft not being a particular friend of Sun and vice versa as you know. Nevertheless, Sun developed Java for Windows first as this is the biggest market. They always had to catch up with the underlying operating system and its moving APIs trying to lock out competitors. That surely was not cheap.

One of Java's key selling point has always been platform independence: ``write once -- run everywhere''. So far the theory but things are always different in real life. Trolltech had a nice twist on that meme rephrasing it ``with write once -- compile everywhere''. The differences between both approaches to platform independence are compelling. Java plain fails to run on multiple platforms for technical reasons or just because Sun did not deliver the equivalent software stack for other platforms than Windows; Java is slow as its byte code is still to be interpreted by a virtual engine even though you need a separate compile step. Qt, Trolltech's key product, on the other hand, is simply yet another library you link your programs against the result of which is a highly optimized executable. And you can do so on whatever platform you decide to support. Plus the code is more efficient. I could go on comparing Java's APIs with Qt for quite some time where Qt wins hands down, e.g. library design. But let's stop here.

In some respects Java on servers has to be judged differently than in browsers or on the desktop. Let me make it short: it is OK on servers but sucks everywhere else. Applets are dead. Swing sucks. It is too complicated. It looks bad. It is ugly, out of the box. It does not integrate with the rest of your desktop. If it does then it only integrates with a Windows desktop. Fonts are a nightmare. Themability and skinnability of its widgets is voodoo -- at least to me.

Next point: who is interested not only going to looking at the masses of source code but also understand and fix it? The anonymous Open Source masses? This project is much too large now to. It was locked away for too long. Things are fine if a community is given a chance to mature and grow as the software does it is grouped around. This is obviously not the case for Java. Just have a look at Open Office or Firefox. These projects have big big problems to get more coders involved, people that not only work around symptoms but understand and fix the underlying issues besides envision sensible enhancements. How many coders work on Firefox? Who is currently investigating buggy printing? How long does that bug persist? Is this issue being a key feature for browsers really 7 years, 8 months, 1 week, 2 days, 5 hours old with a long thread of comments circling around it. To be fair, we all have such bugs buried in you bug tracker too. But hey printing is so essential ... gosh.

One comment from a guy called Wells dating back to 2006-10-13 reads like this: While I wish I had the skills necessary to fix a bug like this I don't, but I have hung around now a year and a half to see what would happen and I find this bug an excellent case study in the Cathedral and Bazaar model of software development. It seems to defy traditional claims that the bazaar model is a superior development model when it comes to fixing top100 rated bugs. The wider community has not hunkered down and come up with a fix to this critical printing problem. Now the bug fix is slated for Firefox 3, if we should be so lucky. Keep up the good work! Not quite encouraging, eh? Don't forget that this browser has its own knotty history and this particular bug may be a good indicator of what the situation currently is for the Firefox project. As I trust in history I expect things to be even worse for Java. The community already moved on to different techniques. Will it come back to Java? Let's place a bet on ``no''.


Leave a Reply

You may have to login or register to comment if you haven't already.
r4 - 11 Dec 2006 - 10:23:19 - Main.MichaelDaum
Copyright © 1999-2010 Michael Daum Consulting. All rights reserved. Impressum.