In this article I will write my impressions of the Java conference I visited in March 7-10 2016 in Brühl, Germany, also known as JavaLand 2016. The conference takes place in Phantasialand, an very interesting theme park. During the conference, many of the exibitions are open for the conference visitors.
Archive link: https://www.javaland.eu/de/archiv-2016/
I had made many notes in my old plain paper notebook, but somehow I lost it on the way home. That was an big motivation to search for the information about the presentation which I have visited.
Hint: You can download all the JavaLand 2016 presenations as a ZIP file from their homepage.
The following list was made before this link was released. That's why the videos and presenations in this article are taken from other conferences.
08 Mar 2016
JUnit Lambda — The Next Generation — Jens Schlauder
- It was an talk about JUnit5, which is being developed by a new team.
- In Autumn 2016, a new release of the framework can be expected.
- Not in one jar file but across many files for modularity. There are no package cycles, and a Degraph tool is included.
- Compatibility mode exists, invoking Junit5 from Junit4 and vice versa.
- Some of the features will not exist. Rules and runners can be implemented in an different way.
- New systax can be expected (@Disabled // replaces @Ignored), the methods don't need to be declared as public.
- Nested tests, tagging, and Meta annotations were mentioned.
Is Your Profiler Speaking the Same Language as You? — Simon Maple
- Yourkit was mentioned as well.
- In the last third of the presentations we saw a demostration of XRebel, a powerful profiling tool for Java web applications.
Java Modularity: Life After Java 9 — Paul Bakker, Sander Mak
- Demostration on what modularization will look like in Java 9.
Java-based Microservices, Containers, Kubernetes How-to — Ray Tsang
- Presentation on using Docker containers with Kubernetes.
- In the videos, Spring Boot Microservices was used which I did not notice in our presentation.
- This technology allows for architectural scalability, where the instances of the application are increasing and descreasing depending on need on the server side.
For better understanding of the videos and presentation you should be familiar with the following terms:
A big help for the attendees was the graghical presenation of the system arcitecture state where you can see any changes.
Technische Schulden in Architekturen Erkennen Und Beseitigen — Carola Lilienthal (German)
- Techical debt on software project level is the recognition of bad architecture through analyzing the software via tools.
- Refactoring after this step of development results in better software.
- For a good architecture the software needs to have good:
- Pattern consistency — techical / functional layer
- Examples of detection of bad architecture
- Tools for detection of wrong architecture (wrong structure, hierarchy, dependency)
Funktionale Programmierung: Jenseits Des Objektorientierten Architekturmodells - Michael Sperber (German)
- Advatages of functional programming over object-oriented programming.
- Disadvantages of the MVC pattern
- React (Java Script) - React ClojureScript
- Explanation of the usage of functional programming on one example
- Introduction to functions and monads
- Introduction of the Java 8 implementation of (not real) functional programming
- Data are snapshots
- Only pure functons are real functions
- Better abstraction
Mit Vert.x vom Monolithen Zum Reaktiven Microservice - Jochen Mader (German)
- Microservices with Vert.x.
- Intoduction to some definitons of microservices.
- Problems which no one talks about but they exist (latency is not null, data volume can be infinite, etc.).
- Reactive programming and its four main characteristics: elasticity, ability to respond, resistance, message-oriented.
- Tools and framework which are used for creating the arhitecture: hazelcast, JGroups, Apache ZooKeeper.
09 Mar 2016
Let's Get to the Rapids: Java 8 Stream Perfomance — Maurice Naftalin
- Performance of the Java 8 stream feature explained in detail
Java (In)security — Adam Godwiak
- Presentation about the insecurity of Java
MVC 1.0 By Example — Ivar Grimstad
- Presentation about the MVC pattern, which is realized via JEE like JAX-RS, JSP
Eclipse Platform - Rise and shine — Lars Vogel
- Many improvements since Eclipse 4.2
- New committers and contributors came to the project
- Useful information about the features of the next Eclipse version, which can be seen in the presentation
When Microservices Meet Real-World Projects: Lessons Learned — Alexander Heusingfeld, Tammo van Lessen (German)
- Real examples about refactoring of software projects to microservices architecture.
- Not only technical but internal political probems occur when an project needs to be refactored.
- Sample solution with automated testing and metrics on deployment pipleine which gave the developers fast feedback about their job.
Fürs Karma: Konfiguration zur Laufzeit — Alexander Schwartz (German)
- Changing configuration on runtime
- Netflix Archaius
- CoreOS etcd as central configuration DB — on change, triggers an update via confd to the config server e.g. NGINX
- Consul & Ribbon — service discovery, configuration and monitoring, client-side load balancing
- Togglz — activating / deactivating functionalities.
This year the conference was early and not at the end of March as usual. That's why the temperature was obviously colder than usual and not pleasant as it should be. :D A negative suprise was the missing WLAN connection. From the person working in the information service we heard that only people who do not live Germany can use the WiFi because of the poor infrastructure. Very unusual for an IT conference I guess. Even in the Matamba Hotel, there was poor WiFi on the ground floor, and only cable LAN was available in the rooms (we haven't tested that).
The presentations gave us lots of information about new themes which we did not know or only partially knew about. Many aspects of the IT world were discussed like Java and other JVM languanges, IDEs and Tools, containers, architecture, and so on. By looking for the presentation title I didnt expect that many of the presentations to be found on the internet as video, which surprised me. It seems that one and the same person is making the same presentation several time in many places, which I didn't know until now.
Javaland is a nice conference where a lot of new stuff can be learned from evangelists who have many years of experience presenting technical news. Next year my colleague will be there and I hope they can experience the magic of Javaland on their own and only have positive experiences about it.