So, conference began with a keynote, on Sunday. It seems there’s a lot of cool changes, this year. Here are some of my notes:
- Java EE 8 will be released by end of 2017, and Java EE 9 right after it
- MVC specification seems to have disappeared from the slides
- Instead, there’s a lot of emphasis on microservices model
- Indeed, microservices word is dropped on almost every presentation here
- Additionally, reactive Java EE seems to be another popular topic
- And of course, servlerless Java EE is also at proposal state
- As is key-value data storage
- Two new portals, go.java, and developer.oracle.com
- Java 9 is still one year away from release - like last year, and year before that, etc
- JDK will be distributed with Docker
- Netbeans IDE goes from Oracle hosting to Apache Open Source project
- Java will do away with boilerplate code - it will feel a lot more like Scala/Kotlin in the future (yay!)
For the agile enthusiasts - or haters - there was a cool story about how modern agile works in Mazda car factories now. Instead of traditional assembly line model where every worker specializes in creating same part again and again, now system provides information to support the worker. Worker can, using this information, make educated decisions what is most useful thing to assemble next. Use computers to empower the people, efficiency over mindless repetition, sounds good to me!
Also: Try to find time to watch yesterdays keynotes at https://www.oracle.com/javaone/on-demand/index.html. There’s also one about Mars exploration by Dr Anita Sengupta. Space is the ultimate place to test high availability and robustness.
Microservices and containers
Yesterday there was also mention of community alternative for waiting until Java EE 9: Microprofiles.io. Idea is to go radically lightweight, much in Spring Boot style, but within the EE standards. You can see - and clone and run some samples on WildFly Swarm, etc. Since I already love microservices, I love buzz and competition on this field. We’re getting more options to do microservices easier than before. This leaves us time to concentrate on the tricky stuff.
On that note, I attended a Hand-On-Lab on Wildfly swarm-based microservices. Hands-on labs are done using laptops provided by the host, and VirtualBox virtual machines that can be cleaned before and after session. I’m not fully sold on JBOSS Foundry tools, even though they enable rapid prototyping, but I like what I see in WildFly swarm, and microservices. There was also another, pretty cool session, on combining Docker+Java EE+Nginx for high availability - cool stuff that we can immediately use.
I don’t know if this is just the case of my mind seeing what it wants to see, but I’m seeing a lot of advanced microservices and docker things going on here. I’ve been much into these myself for a bit of time, and believe there’s still much to learn. I’ve been fortunate to use some of these in customer projects, but I’m learning new tools to do things even more efficiently. I also find new courage for pushing the limits, from seeing all this cool stuff already being used extensively in customer projects.
Exhibition halls
Today, exhibition halls opened at 9:30. It’s always an opportunity to see demos of commercial products you would not otherwise have time to observe. I’ve found many great tools to my toolkit from here previously. Things like New Relic, JFrog, Nexus, Artifactory, Atlassion tools, etc have been well in use already. This time I got some updates on all those, as well as some new intersting tools and technologies, like OverOps, TomEE (Tomitribe), Azul, Dynatrace, Cloudbees and Couchbase. Sometimes it’s easier to just use the open source variants, but sometimes the commercial version brings a lot of value, when you can use it. I’m very impressed by OverOps, and looking forward to be able to use it in a customer project, where zero bugs policy is in effect. Also, Vaadin is looking very good with upcoming Web Components compatibility. I had a bit of spin with some Vaadin component libraries and Angular 2 already, and am a big fan of what’s happening there.
Other impressions about the Exhibition halls: Robots, lots of robots. There are numerous cases of code guiding some real life item with reach and physical capabilities. There’s also a living art site, where attendees can draw shapes, and have a robot cut them for them. I tried to go for S letter, but I think it turned out to be big-nosed duck instead. I also had the privilege of seeing one cutting robot go wild, beacuse the item it was cutting got loose. I like these remainders that software in IoT world is something different than software that only manifests on screen: Any bugs and unexpected happenings in the environment are much more serious. Fortunately, this time around issue was just a small fix-and-reset kind of thing.
So, it’s time to wrap this up again, so it can get released early in the morning Finnish time. First days have been very energetic and interesting, looking forward for some more!
Here’s my schedule for Tuesday:
Operational Excellence with Netflix Hystrix [TUT1352] Billy Yuen, Principal Engineer, Intuit Inc. Tuesday, Sep 20, 8:30 a.m. - 10:30 a.m. | Parc 55 - Embarcadero
Core Software Design Principles [CON1061] Venkat Subramaniam, President, Agile Developer, Inc. Tuesday, Sep 20, 11:00 a.m. - 12:00 p.m. | Parc 55 - Embarcadero
JAX-RS 2.1 for Java EE 8 [CON7983] Ed Burns, Consulting Member of Technical Staff, Oracle Pavel Bucek, Consulting Member of Technical Staff, Oracle Tuesday, Sep 20, 12:30 p.m. - 1:30 p.m. | Parc 55 - Cyril Magnin II/III
Live-Coding No-Ceremony Microservices [CON3436] Adam Bien, Java Enthusiast, Adam Bien Tuesday, Sep 20, 2:30 p.m. - 3:30 p.m. | Parc 55 - Embarcadero
Microservices with Kubernetes, Docker, and Jenkins [CON8016] Rafael Benevides, Director of Developer Experience, Red Hat Christian Posta, Principal Middleware Architect, Red Hat Tuesday, Sep 20, 4:00 p.m. - 5:00 p.m. | Parc 55 - Powell I/II
MOAR IntelliJ IDEA Tips and Tricks [CON1245] Hadi Hariri, Developer, JetBrains Tuesday, Sep 20, 5:30 p.m. - 6:30 p.m. | Hilton - Golden Gate 2/3
Tips, Tricks, and Hidden Knowledge of Java Packager [BOF1747] Chris Bensen, Principal Member of Technical Staff, Oracle Tuesday, Sep 20, 7:00 p.m. - 7:45 p.m. | Hilton - Continental Ballroom 1/2/3
The State of Asynchronous Programming in Java: Completable or Reactive Future? [BOF6082] Aleks Seovic, Architect, Oracle Coherence, Oracle Tuesday, Sep 20, 8:00 p.m. - 8:45 p.m. | Parc 55 - Mission
As always, some cool links of the day:
Curiosity’s Seven Minutes Of Terror https://www.youtube.com/watch?v=OHwUrxzrvtg
JavaOne 2016 Highlights https://blogs.oracle.com/java/javaone-2016-highlights-weekend
High availability Docker + JavaEE + Nginx example https://community.oracle.com/docs/DOC-998210