adam bien's blog

Why I like Java and do not hate other languages... 📎

I switched from C++ to Java not because Java was more powerful, better or simpler. Java was from the beginning an open platform with many new ideas and emerging technologies, with very strong community support. The platform-independence also fascinated me. Java is one of the few technologies which are interesting enough to use them in professional work, as well in leisure. Because nearly everything is free, the are no barriers (except the spare time :-(). Sun did also great job in the last 11 years - the Java-platform was very compatible and stable. In my opinion it is one of the reasons, why it is so adopted in the enterprise space. Some few samples, why I like Java:

  1. JINI: The Java Intelligent Network Infrastructure is really fascinating, mighty and clean technology. Only the marketing was a little bit strange in the early days (writing drivers for printers). From my perspective is JINI the materialization of SOA and multichannel communication. Jini is now opensource. It is relatively easy to build scalable clusters without Java EE, but with JINI. There is also a notion of distributed storage called: JavaSpaces. It is even transactional.
  2. JXTA: It came out in early 2001 (or even 2000). It was amazing for these days. JXTA is Java-independent P2P set of protocols with reference implementation. Just amazing. From the JXTA perspective Java EE is actually an antipattern. (a good JXTA peer is a client and server in one node  :-)). Actually a six years old Web 2.0 framework...
  3. iButton: I've still an old JavaRing (1997?) - it is a small JavaCard computer. I developed the whole application with Java Workshop (an old Java-IDE) and my Pentium One 166Mhz, 32MB Ram, Peacock notebook. It worked pretty well....
  4. SunSpotWorld: A new version of iButtons:-). I'm wating already 6 Month to get a toolkit. It is a device with small JVM. You can use netbeans to develop embedded Java applications, which will run directly on the device. I will use it for house-automation and try to connect my media-box with the device using JINI....
  5. NASA and JET: Java in space - the software (maestro) is very interesting - and of course comes with source :-).
  6. Looking Glass: an amazing 3D desktop. Just download the boot cd (thank you michael)
  7. Amazing applications like aerith. Swing is just amazing.
  8. jcp.org: JCP-process is great, transparent and more or less democratic. JCP ensures compatibility and wide adoption of emerging technologies. It is sometimes a little bit too slow - but it is a democratic process...
  9. java.net, sourceforge, apache: there a tons of ideas out there.

So I'm working with Java since eleven years - and it is still very exciting. I also like Ruby (Ruby On Rails is especially interesting), Groovy and even C#, but you cannot compare this technologies with the wide Java platform. I actually do not hate other languages or technologies and I still try to use the right tool for the give job. In my projects I had often more problems and "unefficiencies" with strange political ("golf-course") decisions, than technology.

So enjoy our job - the time is to spare to "hate" something....