If you follow the world of Java and Open Source, there’s a big chance that you have stumbled upon articles, videos, forum answers, talks, and code from Stéphane Nicoll. I had the pleasure of meeting Stéphane some days ago at Vaadin’s headquarters in Finland and I interviewed him about Spring Boot and Vaadin.
Hi Stéphane, it’s great to talk with you. I’m a big fan of Spring Boot. It really increases developer’s productivity. I particularly like how easy it is to create a new project using Spring Initializr and Spring Boot’s auto-configuration capabilities. What other “killer features” would you highlight in Spring Boot?
Hey, thank you for having me! The first one that comes to mind is our dependency management for not only a selection of Spring modules but also a wide range of third party libraries. As a matter of fact, statistics show that we have consumers of that feature that do not use Spring Boot at all. In a nutshell, we make sure to provide a Bill of Materials (BOM) for all of these so that they work well together. No need to worry about which version to pick and upgrading Spring Boot will consistently upgrade your technical stack as well.
Having joined the Spring Framework development team and being a member of the Apache Maven PMC, you are well known in the world of Java. But you’ve also been doing some Vaadin stuff. You even published a Vaadin add-on. How did you come across Vaadin? What else have you done with Vaadin?
In my previous job, we were looking to migrate a backoffice application written in Swing to a web frontend. Given our constraints, we quickly identified that Vaadin is a perfect fit for us but we had to convince our management. We spent a week in your office and we were able to build quite a convincing prototype. Back in Belgium, we worked on several other prototypes and this add-on was born as a result of our experiments.
You, obviously, have used Vaadin in Spring applications. Do you think it’s a good match? Would you recommend Vaadin Framework as front-end technology in Spring-based applications?
Actually, what convinced me the most about Vaadin is that I was able to build something that looked nice. I am a backend guy, none of the UI work on start.spring.io would have been possible without the help of my colleagues. In my opinion, Vaadin is interesting for single page apps and its ability to integrate with your backend is quite unique. I also find the charting support quite convincing.
Similarly, would you recommend Spring Boot to developers currently using Vaadin?
I was already using Spring back then and a lot has changed regarding the Spring support in Vaadin. Our two teams have been working quite hard on it and it shows. I find it quite natural to write a Vaadin app and integrate various Spring-related features. Similarly, if you are a Spring Boot user, integrating Vaadin is very easy and straightforward and the existing features will just work.
Spring supports a wide range of backend stores and offers plenty of features on the backend so it’s an excellent choice for your Vaadin applications. But I am obviously biased here! ;-)
What can you share about the future of Spring and Spring Boot?
Spring Framework 5.0 is already around the corner (March 2017) with reactive programming, HTTP/2 and preliminary JDK 9 support. Since JDK 9 got delayed twice in the meantime, our dedicated GA support for it will have to wait until Spring Framework 5.1.
Spring Boot will obviously follow closely on that route, with Spring Boot 2.0 providing auto-configuration for reactive architecture and support for new deployment infrastructure (e.g. netty).
Thanks Stéphane for your time and I hope to see you here at Vaadin again!
Thank you! I had a great time. I enjoyed the discussion with the team on several new features of Vaadin’s Spring support. Not to mention the ride on the Vaadin boat: that was epic. Take care and see you soon!