As an innovation driver for our development team I had the opportunity to attend a software developer conference Devoxx, which took place in Antwerp in November.
Devoxx is a commercial European Java, Android and HTML5 conference (kind of like Disneyland for Developers). With 3,500 attendees it is the biggest vendor-independent Java conference in the world. Speakers are generally comprised of thought-leaders from big tech companies, including Java language architects from Oracle. The event has now outgrown its venue - the Kinepolis movie theatre - with many of the more interesting talks turning people away. Two of the big topics this year were ‘Microservices’ and ‘Machine Learning’.
Everyone’s Talking About Microservices
This buzzword has been making rounds for few years now and it was quickly evident that even the architects who built their ivory towers long ago had heard of it.
The huge surge in data has led to the need to break applications into more granular parts. The pace of software development is increasing and microservices are the promised cure.
Microservices also bring in a lot of additional movement around core development work. Some people might call this additional baggage, but I believe the direction is justified since the innovation around the core architectural decisions are picking up speed as well.
Automation has probably been the main point of DevOps teams for last few years and I predict the microservices revolution will accelerate that process even more in 2017.
Rise of the Machines
Machine learning was another big topic with major cloud providers presenting their solutions on everything starting from speech recognition to sentiment analysis.
Github has been pushing continuous delivery and deployment boundaries for a while now. They presented their processes around DevOps, where everything goes through their chatroom and automated chatbots. Cloud native application deployments were presented in a few situations with the help of big cloud providers; these processes brought another new buzzword to the table as well, ‘NoOps’!
Another loud topic in the conference was ‘Reactivity’. While the whole world is striving to be proactive, the programming world is looking to be reactive. Reactive programming, in all its varieties, was everywhere at this year’s Devoxx. There were multiple talks about reactive systems, reactive functional programming, reactive frameworks, reactive streams etc. Reactivity ties in closely with microservices and the need to handle more and more data efficiently. Even Java 9 included reactive streams APIs on its new update in a very short time-frame.
Reactive style seems to fit very nicely on that world and I get a feeling that discussions around reactivity will increase quite a lot in 2017 when message passing becomes more common.
Java 9 is around the corner and the Java language chief architect Mark Reinhold gave the keynote speech. This version will introduce the long-awaited project Jigsaw to the language core. Jigsaw will finally bring built in modularity to the Java world and help users to have more fine-grained control over what to expose from a module.
Another addition to the language is something that other languages have been taken as a given for many years. JShell will introduce a long awaited REPL (Read, Eval, Print Loop) for Java to help on rapid prototyping and debugging.
What’s in Store for 2017?
Devoxx 2016 was all about Microservices, Reactivity and Machine Learning. It seems that these trends will be the ones that dev teams around the world will need start paying attention to next year. The introduction of Java 9 will bring modularity back to the minds of developers and microservices will mould that thought process even more.
Machine learning will make its entrance to a wider audience, probably along with the introduction of new user interfaces in the form of chatbots, automated assistants and speech recognition.
Reactive programming and reactive systems are going to keep pushing functional and declarative programming style, even amongst Java developers.
All in all, the feeling in the dev world is that we are in the cusp of a tectonic shift when it comes to programming style, distributed application architectures, data processing and analytics; it’s a pretty exciting time to be a developer.
Jussi Hallila is a Software Engineer for Brandtone at our HQ in Dublin.