Christian Knoop is one of the winners of the 2022 Vaadin Community Award. You might recognize him by his nickname "Knoobie" on our Discord channel. Knoobie is a Software Engineer from Germany working at DVZ M-V GmbH — the IT service provider for the state administration of Mecklenburg-Vorpommern. The company develops web applications for public authorities ranging from municipalities to agencies of the German federal government.
Java is continuously ranked among the top programming languages in the TIOBE Index. What makes Java such a robust, powerful, and popular language?
In my opinion, it is Java's striving for backward compatibility. Code that was written literally 20 years ago can still work in modern environments without any changes, even allowing incremental addition of new features, because Java makes sure that even the newest proposals and additions to the platform don't destroy backward compatibility, hence making it the perfect fit for long-running and critical applications in business and government environments.
What will the Java/JVM ecosystem look like in five to ten years? What innovations would you like to see?
My default answer would be the new possibilities created by Project Loom but I would be more intrigued if Java is going back to slower release circles. It's not a big issue for larger companies when they mostly go with LTS versions. But developers also like to be up to date with modern technology, resulting also in Java 19+ in the wild. We all know the infamous webcomic about Dependency Management and I have seen multiple open-source projects struggling to keep their projects or dependencies up to date. Most of them are using their spare resources just to make sure their projects work with Java 8/11/17 and people pushing Java 18/19/20 on them feels slightly overwhelming and creates heavy burdens for open source maintainers.
How did you discover Vaadin and how was your "getting started" experience?
That's hard to tell after over a decade of experience with Vaadin, starting with Vaadin 6 in my apprenticeship developing Portlets for the now ancient Liferay 5. I would guess it wasn't so bad when I'm still sticking with Vaadin to this date.
What are some advantages of Vaadin over JavaScript web frameworks?
Vaadin's biggest advantage is that it saves developers from working with Javascript directly — no JavaScript written by me is the best JavaScript. Nevertheless, it still allows deep access to all DOM elements, allowing developers to build compliant, highly secure, and accessible server-driven modern web applications in our favorite programming language Java with ease.
Knoobie, you’ve actively made valuable contributions on GitHub to further improve accessibility in the Vaadin Flow framework. What are your thoughts on accessibility and, in your experience, how does Vaadin help developers build web applications with accessibility in mind?
Accessibility, similar to security and privacy, is a legal requirement for modern web applications. In this regard, the commitment of the team at Vaadin is a huge helping hand, because when they already think about the accessible implementation in the design phase of new components or make changes to existing components, allowing developers to concentrate on business requirements and feel less obligated to keep an eye on these complex regulations if the building blocks — on which their application is based are already designed to be accessible.