On the 19th and 20th of May this year Roxana Balaci, Calin Manea, Bogdan Toma, Bogdan Marinau and me were lucky enough to attend the Spring IO Conference in Barcelona. Why lucky? We were two days away from work in a sunny Spanish city near the Mediterranean Sea. The event is organized by Sergi Almar, a Spring certified instructor. This is the first time I have attended this conference so I don’t have a reference to compare with. The event was organized very well, there were no delays and everything ran smoothly. I missed only one thing. I was too lazy to take with me a notebook and I hoped that they’d provide one. Well, I was wrong so I had to look for a place to buy it.
Going to a conference does not make you instantly smarter but if you are curious enough to take notes and after that to look for more information on those topics your effort is rewarded. I’m looking now into my notes and I’m quite shocked how bad I am on taking them. I hope that you’ll find some useful information.
It started with an awesome lights show that put us into the right mood for the next two days.
— Alvaro Amor Morales (@aamormo) May 19, 2016
- Support for Spring 3.2 will end by the end of 2016.
- Spring 4.3 will be supported between June 2016 and 2020.
- Spring 5.0 will be released in 2017, close to JDK 9 release but if JDK 9 will be delayed, Spring 5.0 will not wait for it.
- Spring boot 1.4 will have readable stack traces at startup, support to render ASCII art banners and many more other features.
The first talk I attended was CUSTOMIZE YOUR SPRING BOOT EXPERIENCE BY WRITING YOUR OWN SPRING BOOT STARTER and it was given by Michael Simons. I don’t have experience with Spring Boot so I let his code and slides speak.
Calin attended to ARCHITECTING YOUR CODEBASE by Kamil Szymański. This wasn’t a presentation of a new and shiny framework or feature that would solve all programming problems. Actually it showed the opposite. Despite all the tools, the majority of projects are quite difficult to understand, debuq, test and maintain. Structuring the project in a way that you can tell what it actually does at the first glance comes a long way. He took the Spring example Pet shop clinic project, showed its flaws and refactored it. A similar presentation was given by Uncle Bob Martin.
Roxana attended to CLOUD NATIVE JAVA given by Josh Long. She noted down:
- @RefreshScope – Please check the detailed explanations about this.
- Support for production necessary features: service discovery with Eureka, intelligent routing with Zuul, Ribbon for client side load balancing, Hystrix as circuit breaker, spring cloud netflix.
- Zipkin distributed tracing system
The second talk was delivered by Julien Dubois and it was about WHAT’S NEW IN JHIPSTER IN 2016.
— Omikron Inf. & Com. (@omikronic) May 19, 2016
I couldn’t find his slides, so the best way to find more is check directly on jhipster site.
The third talk was one of best where Oleg Shelajev discussed about FLAVORS OF CONCURRENCY IN JAVA.
I joined a little late and all the seats were taken so I had a great view behind a pillar. The content was great, I have plenty of things to learn about.
Caching is a hot subject, so I joined the talk about CACHING WITH SPRING: ADVANCED TOPICS AND BEST PRACTICES by Michael Plöd.
— Michael Plöd (@bitboss) May 19, 2016
If you want to find more, check his visual support for the talk.
Roxana attended to MODERN JAVA COMPONENT DESIGN WITH SPRING 4.3 given by Juergen Hoeller. Her take aways are:
- Spring Web
- @GetMapping == shortcut for @RequestMapping(method = RequestMethod.GET) (without the “consumes” attribute from @RequestMapping)
- @PostMapping, @DeleteMapping, @PatchMapping
- Reminder from Spring 4.2 – @JmsListener, @EventListener and @AliasFor.
- Generic Based injection matching – since Spring 4.0.
The last talk of the first day was about JUNIT 5 – SHAPING THE FUTURE OF TESTING ON THE JVM and on the stage was Sam Brannen.
One of the challenges they need to handle was to run Junit 5 in IDEs with no direct support from them. They managed to find an intermediate solution.
— Andreas Evers (@andreasevers) May 20, 2016
The take away from this keynote is very well tweeted below
I don’t like to write documentation, in fact it’s an elegant way to say that I hate it. Andy Wilkinson convinced me to join his talk because there is light at the end of the tunnel with TEST-DRIVEN DOCUMENTATION WITH SPRING REST DOCS.
— Andy Wilkinson (@ankinson) May 17, 2016
I’ll definitely check out more of these on this subject.
I don’t remember if below inspection in IntelliJ IDEA was presented in this talk but I cannot move away without mentioning it.
— Stéphane Nicoll (@snicoll) May 20, 2016
The project used in this session waits for you on github.
Another talk that I liked was UNDERSTANDING MICROSERVICE PERFORMANCE given by Rob Harrop.
I noted down the following:
- We need to define what we mean by latency.
- Systems Performance: Enterprise and the Cloud
- Latency Tip Of The Day
- Release It!
One of the last talks was SPRING INTEGRATION WITH SPRING BOOT AND RABBITMQ given by Gary Russell. My take aways from this talk are to read Enterprise Integration Patterns and to check Spring Integration Samples.
Two days of attending conference talks can be challenging and my energy level was quite low at that moment. The last two talks I attended were RAML – SPECIFICATION TO MANAGE THE API LIFECYCLE and USING SPRING WITH SCALA given by FÁTIMA CASAÚ and Bernhard Wenzel.
The top three talks of this conference were
— Spring I/O (@spring_io) May 27, 2016
and I’m happy that I attended two of them.
Any respectable event has a slogan and it’s the perfect way to end this post. See you next time.
Article written by Vasile Boris