The Problems with Java
20th December 2005
Java is a good language. It follows it’s own rules (mostly) and has some great libraries (dates and file I/O excepted). But it’s just too big! When was the last time you wrote (or even used) a java app that felt nimble? When was the last time you knocked something up in 10 minutes that saved you hours? Yes, perhaps use it for big, complex applications. But for a general purpose, first-choice programming language? No thanks. I am currently using PHP, Python, Perl and looking at Ruby. I never really consider Java any more. Too clunky. It may have had its day. Also, it’s tied to Sun in unpleasant ways – the Java Community Process will never beat a real Open Source language. What this means for C#/.NET which is basically a clone with a little syntactic sugar thrown in I leave as an exercise to the reader.
Update 2nd December 2003
Have written some fairly big applications at work, an eBay checker and numerous other screen-scraper and other internet-related programs. Java is now the language I am mostly likely to use for a given project. Most recently my Mobile Streetmap. I really like Java but I have to admit it’s not as free as I would like and C# is probably slightly better (but even less free). Best book on Java for bringing you on is Effective Java by Joshua Bloch (which I note I was a bit less complimentary about a year ago when I wasn’t quite ready for it or hadn’t quite absorbed its lessons). Have been teaching Java to some people at work and I’m going to write (yet another) tutorial/training course for three of them starting tomorrow.
Update 25th March 2002
Moving my Java knowledge on a bit now I bought the (quite dry but fundamentally correct) Effective Java from Sun themselves and the excellent (and slightly more relaxed) Java Cookbook from O’Reilly. I particularly reccommend the O’Reilly book for moving on from a beginner level
Update 21st November 2001
Well, I never did get to the end of the Thinking In Java ‘book’ but I do seem to have learnt Java somehow. I got Java 2 from Scratch which I couldn’t get into and also a Java Servlets book (which was somewhat better). My advice after all this is that you need an app that you want to write and then use the API documentation and the Sun Java Tutorial to get the information you need (both of which are available for download from Sun’s java site
Thinking in Java
You can get the slightly unorthodox ‘Thinking in Java’ free (in HTML format) from Bruce Eckel’s website (he’s the author). Its a proper, recognised, ‘Learning Java’-type book which gets good reviews at Amazon and so on
If you do download (or buy) the book, there is a Yahoo! group (of which I am a member) set up to work through it together. You can join below
If you view the source of this page you’ll see whatever you type in goes straight to Yahoo! so obviously I won’t be using your email address for any nefarious purposes