This is my short review of the day.
Java 8 is slowly increasing its adoption rate. I think this is a good thing and this is what the speakers and many people from the industry suggest. In Java 8 we have a tone of new language features, some of them are being demoed a lot in these recent years (e.g λ expressions), but there are more stuff, maybe less fancy that can make our day to day coding, especially in the JavaEE space more productive. Solid talk about all these new features that we can all use as of today. When it comes to the use of async, and streams within 'contained' code bases, personally I think that this is a paradigm mismatch and at the time being, they are not adding anything special neither making stuff simpler.
One of the best talks today. Tony Printezis was member of the jvm team back in the Sun Microsystems days, in these last 2 years he has been part of the JVM team within Twitter. Yes Twitter heavily relies on the JVM, a fork of the OpenJDK that is being modified or patched by this small team of 4. Th service code of twitter is mostly written in Scala, and runs on thousands of JVM instances! He provided us with some very impressive metrics regarding their platform usage (of course this is Twitter). He elaborated on some of the most interesting garbage collection and performance errors/bugs spotted during high peaks and how they managed to solved the problems either by patching the JVM or changing the configuration. The Twitter JVM team is following the main-stream releases of OpenJDK and occasionally gives back fixes. Currently they have not plans on releasing (open sourcing) their modified version.
Α very interesting talk by Mario Fusco where he tried to explain that switching from the O.O to functional mindset and programming is not rocket science. In some sense he is right but I still believe we have a long way to go and it might the case that functional programming is not a silver bullet. He compared with real code examples, the 2 approaches. There were some cases where I was kind of lost with the examples and notes around the the 'Monad' pattern. Some of the examples were featuring the JavaSlang library, which seems a very nice thing to check and consider if you are about to go this road.
CDI 2.O is coming
A talk from the spec lead Antoine Sabot-Durand and José Paumard around the things to come in the CDI 2.0 spec. A lot of things are already published + some draft releases. I like CDI, the more you use the more you love it so my only comment is- release it asap and let's all hope is going to be 'implemented' by vendors soon enough.
On a side note I have been following Ivar Grimstad's work, especially one his project called Snoop, a service discovery 'module' for JavaEE code, which I think is a very cool.
The best talk for me today. Thank god there are people out there, like Milen Dyankov , that talk about the principles of good software engineering in times where every buzz word can be inherited by developers or managers and promoted to the holy grail of everything, the one solution that will make things right in your old or crappy project.
Thank you Milen Dyankov that you pointed the obvious, that microservices is not a holy grail, that no matter if we do microservices, or monoliths or soa or whatever, we need to have clear, simple and modular architecture. People still tends to forget this thing.
So when this talk is out in youtube, in a couple of hours, spend some time and play the first half. Save it somewhere and the next time your colleague or your manager starts buzzwording around, send him/her the link!