Java Day Kiev took place on October 14th-15th, 2016. Led by the Ukrainian JUG, it is one of the most significant developer events in Ukraine. The event attracted a bevy of world-class speakers including Burr Sutter, Ivar Grimstad, Sebastian Daschner, Ruslan Sinitskiy, and Edson Yanaga.
The organizers were very kind to arrange a special session on the current state of Java EE with the Ukraine JUG the day before the conference. Ivar and I led the full house session. We talked about Java EE 7 adoption, the importance of Java EE to the ecosystem and the forward plans for Java EE 8 as well as Java EE 9 that Oracle shared at JavaOne 2016. We also talked about the key MicroProfile initiative that aims to bring a collaborative, vendor-neutral approach to microservices in the Java ecosystem. The heart of the talk covers the key features Java EE 8 will bring in 2017 such as HTTP/2, a complete security API overhaul, even stronger JSON support, support for HTML 5 Server-Sent Events (SSE), CDI 2, more reactive programming support, more pruning, and Java SE 8 alignment. The current slides for the talk are here.
I was also very honored to be part of the opening keynote panel of Java experts. Shortly after the keynote, Ivar did a detailed demo-driven talk on the MicroProfile. After lunch, I ran a hands-on lab on JMS 2 titled "Down-and-Dirty with JMS 2." The goal of this lab is to give attendees some first-hand experience with the primary changes in JMS 2. In the first hour or so, I did a brief presentation overviewing JMS 2 and went over the JMS 2 Javadocs. The rest of the time attendees actually wrote JMS 2 code mostly by themselves. The slides I use are available here. The lab materials are hosted on GitHub for anyone to use. The lab uses NetBeans, WildFly, and Arquillian. 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. In the lab you'll basically be putting in code to finish a set of JUnit tests using JMS 2, starting from incomplete code with comments on what to do (don't worry, a completed solution is also posted).
Applied Domain-Driven Design Blueprints for Java EE
I started the second day of the conference with my talk on Cargo Tracker/Java EE + DDD. This talk overviews DDD and describes how DDD maps elegantly to Java EE using code examples/demos from the Cargo Tracker Java EE Blue Prints project. The slide deck for the talk is here. I will be sharing a screencast of the talk on the CapTech site soon, so please do stay tuned! Concurrent to my talk, Sebastian delivered his brilliant talk titled "Java EE - the most lightweight enterprise framework?". If you haven't seen Java EE in action for a little while, the linked video will be a serious eye-opener. After Sebastian's talk, Ivar did a session covering the details of the Java EE Security 1.0 JSR targeted for Java EE 8.
HTTP/2 and What It Means for the Java EE Ecosystem
I finished out the conference with 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 here. A screencast of the talk is available on the CapTech site here.
All in all, this was a great and overdue trip to Kiev and Ukraine. I hope to visit again soon!