To gather insights on the state of the Java ecosystem today for DZone's Java Ecosystem research guide to be published in September, we spoke with 15 executives who are familiar with the Java ecosystem.
Here’s who we talked to:
Joel Depernet, E.V.P. Global Research and Development, Axway | Sacha Labourey, CEO and Founder, CloudBees | Rick Reich, CEO, Development Heroes | Asad Ali, Principal Software Developer and Lisa Hamaker, Marketing Manager, Dynatrace | David Park, V.P. of Products, HackerRank | Charles Kendrick, Founder and CTO, Isomorphic Software | Wayne Citrin, CTO, JNBridge | Raymond Augé, Senior Software Architect, Liferay | Laura Kassovic, Founder, MbientLab | Cameron Wilby, Co-Founder, Origin Code Academy | James Faulkner, Technology Evangelist, Red Hat | Paul Trowe, CEO, Replay Games | Calvin French-Owen, CTO and Co-Founder, Segment
We asked our respondents, "What have been the most significant changes to the Java ecosystem in the past year?" Here's what they told us:
- Java is definitely paying attention to the cloud, big data, and microservices. Lightweight apps built on top of Java scale up and down easily.
- Inclusion of VR and AR in API calls. Java has moved way beyond what Xcode is capable of. It’s a new world with medical devices, treatment, and the services doctors can provide remotely. I’m making a VR game now with J2ME.
- Not overly active. The passion for Java is not as great as it was in 1999. There’s been a focus on micro containers. It’s interesting to see different vendors (i.e. Red Hat) pushing Java more than Oracle. Oracle is under pressure with competition in the cloud. The innovation in Java has been driven by Red Hat and JBoss.
- Outstanding core language that’s mature, extendable and can provide any solution you need. A big influence on the wide acceptance of Java is the attention being spent on it in Open Source. .Net has a large cost barrier to entry.
- It seems like they’ve been stagnant. Primarily used as a maintenance language. A lot of developers are moving to newer languages because Oracle cannot be trusted. We see more excitement over other languages that are easier to build and learn. Demand for Java is falling. .Net is the direct substitute.
- 1) Controversy with Java EE Guardians – Oracle not a good steward. There’s a schism over who should take charge. 2) Google/Oracle/API copywrite and fair use. 3) Rise of a big Open Source projects based on Java like Apache and Play framework. Taking some pressure off of the Java community relying on Oracle.
- The single biggest event was Oracle’s lawsuit against Google. The entire industry was waiting to see whether the Java platform, and software development in general, was going to change radically to accommodate the fact that licenses would be required just to create a compatible implementation of an API. Previously, many companies were in a “wait and see” mode, not wanting to further commit to the Java platform. Now, investment in Java can continue in a more normal fashion. However, the Java platform will be forever diminished by Oracle’s stewardship, since they have shown themselves to be fundamentally hostile to Open Source by filing that lawsuit in the first place.
- I’ve seen a recent push to make more developer friendly. It used to be very verbose before Lambda. Over time the core development has sped up a little with Java 8. There’s a flourishing ecosystem streaming data with Java. New tools for individual APIs like Go but lack maturity around data streaming and processing. Best client libraries. Other languages don’t have as much work to build an abstraction layer. It used to be very annoying to write in. You had to change your way of thinking whereas Python gets out of your way. Java enforces more structure which can be daunting for beginners.
- Continued adoption of Java 8 and the push to break-up the monolithic code that has developed with the larger code base since this becomes a maintenance issue. Break into small services like Spring Boot and microservices.
- Effort around microservices and minimizing the "fat" jar to small runnable services with WildFly and Swarm. Spring has similar products.
What have been the most significant changes in the Java ecosystem over the past year from your point of view?