Year in Review: Java development in 2009

New directions for the Java platform

1 2 3 4 5 Page 4
Page 4 of 5

One or two new languages will probably emerge in 2009, but chances are most developers will essentially ignore them, and focus on the existing options instead. Groovy and JRuby will continue to grow in popularity, especially given that each language has a commercial backer. (JRuby's main contributors are Sun employees -- remember, Sun's a software company!). Newer languages like Scala and Clojure will continue to be much discussed, but will most likely be adopted by a select few organizations. The rest of us will continue to ponder them from afar.

RIA: Let the battle begin ... er, continue

Sun finally released the JavaFX platform in late 2008. JavaFX isn't new but many in the community felt that the 1.0 release came late to a territory already staked out by Adobe and Microsoft. Nonetheless, Sun will continue to focus heavily on the JavaFX platform in the year ahead, and I suspect we'll see more and more applications and companies successfully leverage this technology as well. RIA itself is the killer application in this space, with developers across the globe clamoring for technologies that hasten the development of slick, rich Web applications. The skyrocketing popularity of Adobe's Flex -- the leading choice for RIA development for Java developers, as opposed to Microsoft's Silverlight -- also attests to this.

Android: Slim hope for Java mobile

Java developers continue to wait for a consumer-friendly Java mobile platform to call their own. In the meantime, what has ignited the mobile market is the iPhone, which does not support Java-based apps. The current bright spot on this grim horizon is Google's Android platform, which does support Java and seems to be gaining popularity. Java mobile developers looking for opportunities could find them on Android in 2009. It will be an uphill battle, competing with the iPhone. It's also an open question whether smartphone users will adopt Android in significant numbers.

Adobe does have a head-start in innovation, market-share, and mindshare. Count on Sun trying to counter Adobe's advantage by bolstering JavaFX's position, in part by focusing on supporting development tools such as NetBeans. It's likely that Sun will also put some muscle behind Eclipse JavaFX tooling.

It's without a doubt that RIA will continue to be hot in 2009, especially now that Sun has entered its own 500-pound gorilla into the fight. This is good news for developers, of course. Competition encourages innovation that results in easier tools and faster development times. Watch for both the commercial and open source communities to innovate in the area of testing RIA applications, which has been somewhat problematic in the past.

Up in the clouds

Cloud computing gained buzzword status in the closing months of 2008. Using distributed processing resources to leverage underutilized machines or capacity is by no means new, but 2009 may be the year it finally gains prominence, driven by an economic climate that requires examining (and reducing) IT costs.

Google and Amazon are the current major players in this space, and Sun has announced its intention to join them there, with its new cloud computing division. Microsoft is also in the clouds with its nascent Azure platform leveraging .NET. Google's cloud infrastructure doesn't support Java, instead requiring developers to write applications in Python. (Sun's move to embrace Python could have been a preemptive strike to bring Google App Engine platform developers to the JVM.) Amazon Web Services does support Java, however, and arguably leads the materialization of low-cost cloud computing for the masses.

Concurrency on the back burner

More developers are grappling with the challenge of writing applications for multicore machines, but it seems unlikely that we, as a community, are ready to put concurrency on the front burner. One of the factors keeping concurrency in the background is the new proposed timeframe for Java SE 7, which is now slated for release in 2010. The new platform release is expected to include utilities and improvements for easing concurrent programming. Until then, most of us will continue to create ad-hoc solutions as we need them. It will be interesting to see what effect the coming concurrency crunch has on languages like Scala, Clojure, and Erlang, all of which are said to be concurrency friendly.

Sun actually has been in the clouds before with its now-discontinued Grid Compute Utility service (launched in 2006), which let companies buy computing power from Sun's data centers at a fixed hourly rate. But cloud computing is a mix of both an infrastructure and supporting software tools and environment. Amazon and Google are veritable infrastructures themselves, whereas Sun isn't. It will be interesting to see whether Sun can get the jump on these competitors on the other side of the house.

1 2 3 4 5 Page 4
Page 4 of 5