Oredev was held 7-11 November in Malmo, Sweden. Although modest in size Oredev takes pride in making an effort to bring together the best and brightest speakers around the world. It is one of the few conferences that rely heavily on targeting and inviting specific speakers as opposed to simply utilizing a call-for-papers. This year was no exception with speakers like Adam Bien, Geertjan Wielenga, Ivar Grimstad, Heather VanCura, Chris Judd, Paul Bakker and Holly Cummins. Java EE had a great showing this year.
Oredev was one of the very first international conferences that invited me as a speaker a good few years ago. I have had the pleasure of speaking at the conference a few times since. This year I am honored to be a part of the program committee helping formulate Java content. Having an insider’s look at the conference I am now even more impressed. Throughout the years I have been a part of the program committee for a number of conferences including JavaOne. The genuine care and passion that the Oredev organizers put into the event is truly extraordinary. I am especially happy that a number of speakers I invited were able to be a part of Oredev this year (you know who you are). It was also another good year speaking myself.
I started the conference with my brand new all-day workshop titled “Pragmatic Microservices with Java EE and WildFly Swarm”. I start the workshop with trying to do the right thing in explaining what microservices really are, what practical value they offer for most of us and when you should consider them (or not). The hands-on portion of the workshop starts with running a so-called “monolithic” Java EE application on GlassFish (my plan is to port this code over to WildFly). We then separate a small RESTful service out of the application (a so-called “microservice”). At this stage, the microservice is a simple vanilla Java EE thin war also running on WildFly. We then discuss the pros and cons of Java EE thin wars vs. fat jars as well as WildFly Swarm. The next portion of the lab runs the microservice as a fat jar using WildFly Swarm. We finish the lab by discussing concepts such as Linux containers (e.g. Docker), dynamic discovery, health-check, circuit-breakers/bulkheads and client-side load-balancing. We see these concepts in action using the more advanced features beyond fat jars that WildFly Swarm offers. I also cover the new MicroProfile initiative as well as the Java EE 8/Java EE 9 proposed features geared towards microservices.
The slide deck I use for the workshop is below (click here if you can’t see the embedded slide deck).
A webcast covering the more lecture-oriented parts of the workshop can be found here. The code and instructions for the workshop can be found on GitHub. I’ve deliberately designed the lab materials to be fairly self-guided so you can definitely use the lab materials on your own (or perhaps even run the lab in your own company/JUG) . You are always welcome to reach out to me when needed.
The next morning I delivered my talk on HTTP/2 and Servlet 4 titled “HTTP/2 and What it Means for the Java EE Ecosystem”. The talk examines the very important changes in HTTP/2 and how these changes need to be adopted by various Java EE 8 APIs like Servlet 4 and JSF 2.3. The slide deck for the talk is posted on SlideShare (click here if you can’t see the embedded resource).
A screencast of the talk is available here. In the afternoon there was a nice talk on the upcoming CDI 2 standard delivered by one of the members of the specification expert group.
Early the next day I delivered my brand new talk titled “Java SE 8 for Java EE 7 Developers”. In the talk I cover some of the key features introduced in Java SE 8 including Lamdas, streams, the new Date/Time API as well as Completable Futures and discuss how they can be used effectively with Java EE 7 APIs like Servlets, Java EE Concurrency Utilities, WebSockets, JPA, JSF and JSON-P. I also cover what should be done in Java EE 8 to further improve Java SE 8 support. The slides for the talk are posted on SlideShare (click here if you can’t see the embedded slide deck).
Towards noon, Ivar delivered a talk on the upcoming MVC 1.0 API. Later in the afternoon Heather delivered a very important talk covering the basics of the JCP and how people can participate directly in the creation of open standards like Java EE 8. I have a version of the talk myself here.
After Oredev I had the opportunity to visit one of the very unique sites in Southern Sweden – Ladonia. A self-declared “micronation”, Ladonia was created to protect a truly remarkable piece of art named Nimis. Nimis is best understood by seeing it (or looking at photos like mine below – click on the image or here to view the full album). It is a set of whimsical seaside structures vaguely resembling a giant playhouse made entirely of driftwood. I suggest visiting Ladonia if you get the opportunity. It is a bit hard to get to (perhaps somewhat deliberately) but well worth the effort.
All in all, I really enjoyed my trip to Sweden and Oredev. I hope to go back soon as well as helping out with Oredev.