Adrián Szegedi is one of the winners of the Vaadin Community Award 2021. He is among the most active users in the Vaadin Discord server, constantly sharing knowledge and helping others with their technical challenges. You might recognize him by his nickname there—Hawk.
Adrián is from Slovakia and graduated with honors from the Technical University of Košice in 2020. He mainly works on web application development and is currently part of the backend team at Nordlicht IT Solutions, and he helps with their Vaadin frontend implementation as well.
How did you discover Vaadin and how was your "getting started" experience?
I heard about Vaadin for the first time when I applied to my current company (when I was still studying at university). First, I started with tutorials and guides from Vaadin, which were really good and helpful, so thanks for that, Vaadiners! I like that it can be nicely used with composition, that you can create more-or-less self-contained and reusable components or UI parts, all of which nicely fit with OOP design patterns.
What's your advice to developers considering and evaluating Vaadin for their next projects?
The tutorials from Vaadin are high-quality, so that's a good way to start. To get a project up and running, I'd definitely suggest using the tool at https://start.vaadin.com to avoid running into misconfiguration issues. Read the starter project code, get a feel of how routes work, how you can auto-wire services, and how global and shadow DOM styling works.
Read the docs (both JavaDocs and official documentation). There are some useful videos on the Vaadin YouTube channel, too. Also, check out the Vaadin Reference Card, the Flow Theming Cheat Sheet, and the Lumo Variables Cheat Sheet. And of course, join the Discord Server anytime. Don't hesitate to ask a technical question in one of the channels in the Code Help section. If it remains unanswered for a bit of a time, you can ask it again; it can get lost if a lot of people ask stuff at once.
Does Vaadin help with the success of software development projects?
To be honest, there's never a free lunch. As with any technology, issues might arise. For example, we had recurring problems with weird behavior on the Safari browser. However, I personally like the developer experience (DX) that Vaadin provides, and the support from the community is very helpful in overcoming hurdles.
Vaadin is especially useful for applications where you have grids and a lot of fields. My company has successfully managed to launch an app with lots of grids. I don't recommend trying to create a game in Vaadin, though!
With Vaadin, you don't need to worry about REST API versioning and request/response backward compatibility needed for users who don't update your app on their phone.
You are very active in the Vaadin Discord server and your nickname there (Hawk) is starting to be one of the most recognized in the chat. What is your experience interacting with the Vaadin community?
I am happy to contribute to the community, helping people and sharpening my own skills at the same time. It's great to have a place to ask questions and get a pretty quick reply. It helped me a few times, so why not give back to the community? I personally feel that Discord is a bit less formal than other forums, so it's more engaging for people.
The community around Vaadin is definitely one of its strengths. It's an advantage. Anyone can get a chance to find help to start up with Vaadin or for more peculiar technical questions, and there's a chance that a Vaadin employee could answer you.
I also cherish the open-source nature of Vaadin. Looking into the code can sometimes help you out in understanding how things work if you miss something in the JavaDoc; or you can get inspiration on implementing your own custom components. I personally found a magic token solution in the source code comments not long ago.
The tracking of issues is very helpful to either find a workaround or actually fix real issues in the end. And anyone can add something new or fix something. I don't contribute in this way much, but, for example, I have opened a small PR adding a mixin interface to a component. The Vaadin Directory is also very useful to either find a finished solution or, on the other hand, to see the source code and learn how to integrate some web components into Vaadin yourself.
Adrián, thanks a lot for taking the time to do this and for being a valuable member of the Vaadin community. The VCA award is more than well deserved. Congratulations!
It was my pleasure. Thank you very much for this honor!