Java 8, Apache Spark set for rapid adoption
Java 8 shows signs of rapid adoption since its launch. A report by Typesafe, the company responsible for the development and support of the Scala language for the JVM, shows that the platform does not seem to suffer the same slow adoption of previous Java versions.
Typesafe surveyed more than 3000 Java developers, asking about upgrade plans to Java 8, key features of Java 8 and sentiments on lambdas. According to the survey of Typesafe, 27 percent of IT teams have already updated their version of Java to Java 8, while 21 percent plan to do so within six months and only 3 percent are against the adoption of Java 8. The main obstacles related to the adoption of Java are organizational barriers and red tape (19 percent); barriers related to existing infrastructure (37 percent) and lack of resources (31 percent).
Lambda leads the way
The functionality of Java 8 that is most popular with developers is the Lambda. More than half of developers (51 percent) are already exploring the potential of this major new feature of Java 8. Lambda expressions have brought the power of functional programming in Java.
At the time of the release of Java 8, several followers of Scala were skeptical about the future of Scala, whose principal asset (functional programming paradigms) would become obsolete. However, according to the survey of Typesafe, it appears that the developers think the implementation of Lambda expressions in Java is not as much a threat to Scala.
Specifically 60 percent of respondents believe that the implementation of Java Lambda expressions is a kind of validation of the fundamental concepts of Scala, which positively reinforces the adoption of Scala. In addition, 68 percent of developers said that the discovery of Java 8 Lambda is likely to push them to test other functional languages like Scala.
Typesafe CTO and Akka creator Jonas Bonér said in a interview with ReadWrite that Lambda simplifies traditional callback-driven programming by adding syntactic sugar on top of anonymous classes. The biggest benefit is that it enables a functional style of programming, which has a lot of advantages, but primarily delivers more succinct and expressive code that is easier to compose and reuse.
Java excitement building
The study also looked at the tools used by Java developers. It appears that developers mainly adopt the tools offered by Oracle. Nearly 96 percent of respondents use the JVM provided by Oracle, against 20 percent for Dalvik (Android VM) of 7 percent for Google and IBM. Oracle JDK is used by 91 percent of developers surveyed, followed by OpenJDK (40 percent) and IBM JDK (5 percent).
The ratio of Typesafe also shows a strong passion for Java developers 9, the next major release of Java. The two most requested features developers are looking for value types and support for modularity through the Jigsaw project. It should be noted, however, that support for value types is planned for Java 10 and the Java Jigsaw project has not yet been integrated into Java 9.
“Java’s footprint in production is so massive, there are just a lot of moving parts at most enterprises when thinking about upgrading a language that touches so much of its infrastructure,” Bonér said.
It’s truly remarkable how quickly the Java developer community has rallied around Java 8. Innovation around Java and the JVM coupled with new APIs like Stream and CompletableFuture is transforming the modern data center infrastructure and Internet of Things.
So does Apache Spark
The surge in popularity of the Apache Spark ecosystem opens the door of more open source components. Typesafe in the report said Apache Spark is one of the fastest growing techlonogoies and is being used in production by 17 percent of developers, despite being introduced in the market only in June 2013.
Spark API offers powerful operations that Scala’s collections offer. Spark contains new a SparkSQL API, a new Spark Streaming API, a Graph algorithms API, and more. These APIs allow developers create sophisticated algorithms for big data analytics with relatively little code and few programming hacks.
Using Spark, developers can write data analysis tasks in Python, Java, Scala or using a set of more than 80 high-level operators. With version 1.0, Apache Spark now provides a stable API that allows developers to use Spark for their own applications. The Scala API is based on Resilient Distributed Datasets (RDDs), which can be defined based on local files or files stored in on Hadoop via HDFS, and which provide the usual Scala-style collection operations like map, foreach and so on.
Developer can expand the Spark with API that runs on stream processing, Spark streaming offers a complete fault tolerance in mission-critical environments and semantics. By using a common code across both streaming applications and batch processing, it is possible to build quickly and easily scalable applications.
Spark also comes with a machine-learning library, MLlib, a fast and general engine for large-scale data processing. MLlib has features for classification, regression, collaborative filtering, clustering, and decomposition – making it important tool for IoT applications.
photo credit: Eiimeon (wandering off in London) via photopin cc
A message from John Furrier, co-founder of SiliconANGLE:
Your vote of support is important to us and it helps us keep the content FREE.
One click below supports our mission to provide free, deep, and relevant content.
Join our community on YouTube
Join the community that includes more than 15,000 #CubeAlumni experts, including Amazon.com CEO Andy Jassy, Dell Technologies founder and CEO Michael Dell, Intel CEO Pat Gelsinger, and many more luminaries and experts.
THANK YOU