Wednesday 9 January 2013

5 Reasons to be excited about Java in 2013



With 2012 done and dusted, it’s time to look forward to the coming 12 months for the development world. Over the past few days, we’ve asked some respected developers for their predictions - now it’s time for our own.

Here’s five quick reasons why you ought to be excited about what 2013 holds...

1. Java 8

An obvious place to start but for most Java developers, it’s the release of 2013. Assuming there’s no further delays, we can expect Java 8 to arrive in September, bringing with it long awaited lambda functions.

It’s fairly likely in the immediate aftermath of Java 8’s welcome, we will see blogposts of equal measure either moaning at the complexity of the new features or saying the release isn’t big enough to warrant interest.

Either way, some much needed deferred features finally make an appearance and the rest of us will just knuckle down. The improved Date and Time API within Java 8 also deserves a mention here.

2. JVM languages go from strength to strength

2012 was really the year when JVM languages took centre stage. Front of the pack was multi-paradigm Scala, notching up impressive enterprise clients thanks to investment into Typesafe. Extending the possibilities with Akka and Play 2.0!, it looks like the foundations are in place to push further in 2013. The real challenge is selling Scala to those who don’t need something heavy duty.

The dynamic Groovy wasn’t far behind last year, adding static compilation into the mix with Groovy 2.0.  A third major version is expected not long after Java 8 to allow Groovy developers to get the most of the new features. The supporting cast, including Gradle and Grails, could be a big draw for those looking for a Java alternative that isn’t too far removed.

We’ve not mentioned the likes of Clojure, JRuby and Kotlin; the latter undergoing plenty of work as it nears a final version. Ultimately, success comes down to the fostering of an active community, which many JVM languages have cottoned onto, and the spinoff projects within that community.

If 2012 was the rise, 2013 is the consolidation within enterprise circles, which is fuelled by the developers using the language.

3. The increasing importance of JavaScript in Java

Details were thin on the ground for two new initiatives in OpenJDK for most of 2012, but by the year’s end, we had learnt a bit more about each project’s goals and their importance to Java innovation.

The new JavaScript engine set to be included within Java 8 will embed JavaScript into Java applications. Project Nashorn cements the notion of JavaScript’s reemergence and ever more relevance to Java developers.

Initially shrouded in secrecy, Nashorn was open sourced in November and appeared in the OpenJDK repository four days before Christmas. Another big plus point for Nashorn is the crucial inclusion of wildly popular node.js within the deal, ushering in a polyglot future. With plenty more details set to come, we’ll be monitoring this one with eagle eyes.

4. Getting more bang for your buck - harnessing the GPU

Another project within OpenJDK that has great potential is Sumatra, aiming to harness greater Java performance by utilising the GPU. Initial investigations are centred on the Hotspot JVM to lay the groundwork, before ‘leveraging’ Java 8 library and languages features such as lambdas to test the techniques with cutting edge Java.

The project, led by GPU specialist AMD, expects to find some roadblocks on the way with the Java API and its constructs, so we won’t be seeing ideas implemented in Java 8, but Sumatra could lead to some great advances and new techniques down the line for developers.

5. Java drifts even further into the cloud

With dozens of IaaS and PaaS options flooding the market, from both indies like Jelastic and industry giants like Oracle and AWS, developers are now spoilt for choice. Java has, it seems, successfully made the leap into the brave new world of “the cloud”.

The biggest current problem, as highlighted by Martijn Verburg on the Java Advent Calendar blog, is a lack of standardisation and optimisation. With Java’s own cloud features delayed to Java EE 8, it’s now up to the providers to provide standards such as CAMP or, failing that, the community to come up with universal frameworks like jclouds. Meanwhile, others are refusing to wait patiently for Oracle to provide features like multitenancy and efficient garbage collection, such as Waratek (which we profiled in September).

With cloud platforms rapidly becoming the norm, we’re likely to see the launch of even more third-party solutions for supporting Java in the cloud: by the time Java EE 8 rolls around (possibly 2014), we may not even need it. (Elliot Bentley)

No comments:

Post a Comment

Note: only a member of this blog may post a comment.