On 22 – 24 June 2015 I attended Devoxx Java conference in Krakow. It is the biggest Java conference in Poland. There was 2000 participants from 20 different countries and 100 speakers. Everyday there was 10 hours of talks, up to 6 talks simultaneously.
In this blog entry I try to summarize common topics, popular trends, favorite speakers and generally what can you expect on Devoxx conference from perspective of a Java developer.
What is it all about?
- Devoxx conference is an opportunity to discover latest trends and technologies in Java ecosystem.
- You can learn, how this technologies were used in real world scenarios.
- You can meet people behind your favorite Java libraries, tools and frameworks.
At the conference there were representatives from leading companies in Java, such as: Oracle, Google, Pivotal (Spring Framework), Typesafe (Scala, Akka, Play), JetBrains (Intellij IDEA), ZeroTurnaround (JRebel, XRebel).
Popular trends and technologies.
This year was all about microservices and related technologies. You could learn about principles of microservices, how to write microservices, how to test, deploy, and monitor microservices. From related topics there was application monitoring, logs aggregation, container deployments and deployment in cloud.
I think that the most popular technology was Spring Boot. Spring Boot is a great candidate for microservices, because it allows to create projects fast. It’s based on idea of convention over configuration. It allows integrating different technologies in very simple way. It is also very good tool for presentations, because you can create project without all of the boiler plate code.
Lastly, the most popular language feature was functional programming. There was many examples from JDK 8 lambas and stream apis. You could also see how functional programming paradigm is used in traditional functional language, and how can we use it in Java language.
Which talks are right for you?
At the conference you could choose from talks for all levels of experience in Java development. Some talks were of a more general nature, but there are also more technical presentations. General talks have some entertainment value, but on the end of the day doesn’t give much opportunity to learn and can be rather boring. I believe that many Java developers, especially conference goers, do have fundamental knowledge in programming and system design, so generic talks are rather not for them.
On the other end of the spectrum are strictly technical talks. I am especially excited about talks with code examples or live coding. Most talks do not require any prerequisite knowledge except general Java programming skills. There are some exceptions. In the world of microservices it is recommended to know common buzzwords and names of supporting technologies. Otherwise it is easy to get lost when you hear over a dozen frameworks and tools in single presentation (frameworks for integration, deployment, testing, monitoring, logging, etc.). But generally talks are easy to follow.
My favorite speakers.
There was several speakers with exciting talks or interesting topics. Below are my favorites. I would definitely go to their talks once again.
Josh Long (Pivotal)
Josh Long is Spring Developer Advocate, author of several books and blogger at spring.io. At the Devoxx he gave couple of dynamic talks with many code examples:
- “Bootiful” Applications with Spring Boot – introductory presentation about creating applications with Spring Boot.
- “Bootiful” Microservices with Spring Cloud – using Spring Cloud (Spring Boot extension project) to create microservices systems.
Ray Tsang (Google)
Ray Tsang is very charismatic guy and Developer Advocate for the Google Cloud Platform.
In his presentation “Running Micro-Services with Spring Boot in Kubernetes”, he showed how to containerize microservices using maven plugins and deploy to cloud using Kubernetes.
Oleg Šelajev (ZeroTurnaround)
Oleg Šelajev is developer and RebelLabs editor.
He gave several interesting talks:
- Flavors of Concurrency in Java – several examples how to write concurrent code in Java, including: threads, executors, fork-join, completable futures, actors.
- Java Bytecode Explained – inner workings of JVM, writing bytecode and several tools and libraries for bytecode manipulations.
Tomasz Kowalczewski (Codewise)
Tomasz Kowalczewski gave very interesting talk “Everybody lies” about mathematical basis in metrics libraries. He showed examples how metrics could give wrong results. He also showed how can we circumvent this problems.
Is it worth it?
Devoxx is great opportunity to learn about latest trends in Java technologies, meet experienced developers and learn about real world use cases. Knowledge about presented technologies can be found on the Internet in documentation and tutorials, but at the conference it is presented in a straight manner. You can also learn a bigger picture, how several technologies connect to form working systems.
I don’t think that it is necessary to send every developer from your company to the conference. Knowledge can be easily shared to make your software higher quality and to learn from people more experienced.