Monday, January 26, 2009

Introduction to the Java Diaspora

How many years does Java and the Sun VM have left? Will the JCP continue to maintain the standards?

The Java diaspora is not a positive thing. This is not about the ubiquity of Java technology in our modern technological marketplace, but instead this is about Java being displaced from the server and the standards of Java technology escaping from Sun.

Three days ago Sun let go 1300 employees... after Logitech, Microsoft, IBM, Creative, and many more other blue-chip computer companies than I remember have laid off thousands of their own. The register claims this will hit OpenJDK, Java desktop, and OpenSolaris. I wonder what Java desktop losses mean for JavaFX. Between Silverlight and Adobe AIR JavaFX can't afford many setbacks.

There was some less notable but significant news that Redhat's server offering has begun to eclipse Sun's. Redhat has recently played a very significant role in employing developers who are dedicated to developing the art and science of Java server technology. It seems that just as Glassfish promised to offer better performance, and Sailfin was going to lead server technology back into layer 5 via SIP; that customers would return to the percieved stability of a Tomcat J2EE implementation.

I feel a strong pull away from Java as a career path. It has been a good introduction, but the common wisdom is that in these times developers NEED to branch out into other technologies. Indeed, Java itself has seen developers do this for years and they take their products, services, and systems with them.

The evolution of session-based services and server connections has tremendous potential. The primary feature for me would be the ability to suspend a session no matter what the application (telephony, video conf, gaming, multimedia streaing) and resume the application connection without renegotiating the layer 7 logic. This already means flexible VoIP connections (iPhone jumping from 3G to WiFi), network gaming in the car, shotgunned WWAN connections for increased reliability and throughput, and wwan closed-circuit TV and security cameras on trains & cars over commodity networks. Sun's strength lies in tapping into these new technologies but they need their J2EE customer's loyalty or they won't have the fuel to climb these initial development grades.

I hope to make my peace with the direction server technology is going between the hopefully numerous thoughts on concurrent library API design and exploring the future of programming with work-stealing algorithms and frameworks like Intel's thread building blocks and the various Java 7 analogues.