Are you happy with Vaadins version policy?

Hello!

We’ve used Vaadin for about a year, Pro Tools for about 8 months. But I was very unhappy how things ended up with the Vaadin Versioning Policy. Do you as the users feel the same or are you happy with how the things are?

For me as the product owner / overall designer the policy is horrifing. Let’s go through an example:

We shall design a new product. There is nothing special in it, basically some CRUD operations, a little Reporting, a REST API, some data transformation and of course enterprise ready (ACL based authorization, Java 8+, integration into existing data base systems).

Easy, we chose Vaadin, right? OK, which version? Right now, there are 3: 7, 8 and 10. 7 is (about to get) deprecated, 8 is the current, but hey, 10 is already out.

  • So should we go with Vaadin 10?
    No, because it’s not ready yet.

  • But we’re still in design phase, when we’re done, 10 will be ready for us.
    Without knowing which components can be used, there is no possibility to design the application correctly.

  • So lets stay with 8, right?
    The design and implementation will need at least a year - as soon as we are done, we can prepare for migration to 10, instead of focusing on new features and improvements of the product.

Ironically I came to the Vaadin site to evaluate if Vaadin is an option again. I found this blog post:
https://vaadin.com/blog/v8-vs-v10-two-maintained-vaadin-versions-which-one-to-choose-
Basically he is saying what I’ve described: There is only a choice between the smallest evil.

What I’ve read now: There is no GWT anymore, it’s all web components. Nice - but why should I chose Vaadin anyways?
What I have taken form this
https://vaadin.com/docs/v10/flow/migration/5-components.html
is that the advantage that Vaadin is giving you is getting smaller.

I’m I the only one who feels like this? Is the rest of the community satisfied how things go in this topic?

Hi,

I’m glad that Vaadin uses web components instead of GWT.
That’s so easy to create new components in Vaadin 10 and in vaadin 10 you can control easily HTML (or webcomponents) without javascript (in Java).
It’s well explained in this video https://vaadin.com/forum/thread/17146013/webinar-what-s-new-in-vaadin-10

But:

  • I think it’s harder to understand Vaadin 10 than 8 → you have more choices to do some things (for example here are different ways to link Java method ↔ html click event)
  • Vaadin 10 is “young” → you will have some bugs and i’s quite hard to know if you do it right or if it’s a Vaadin bug. (perhaps Vaadin Prime may be the solution if you can afford)

You’ve got less components/addons in Vaadin 10 but it’s easier to create a new component (in the video you can see how it’s simple to create a starRating in Vaadin 10, so you don’t need addon for that)

If you don’t need:

  • to use your application in production now (for example at the end of the year)
  • treegrid (should be out in alpha soon)
  • drag & drop stuff

Then try Vaadin 10. (Vaadin 7 should not be used for a new project and in my opinion Vaadin 8 should be avoided for a new project except if you already create some tools/libraries for Vaadin 8 )

In my opinion, the main problem is the migration between versions (7 to 8, 8 to 10). I hope new roadmap will avoid that (V10 - V11 …).

Here’s a good explanation about the reasons behind the new versioning scheme: https://vaadin.com/blog/the-revaadin-platform

For us, the changes are to big. Go from v7 to v8 took several weeks to migrate everything. I’m very glad that this is done, but if I look at v10 that will not be easier.

There are so many changes from Version to Version. Components are missing for example the PopUpView, FormLayout, CSSLayout, TreeGrid. The Label does not contain ContentMode.HTML. Also, I must hope that all my Add-On Designer will also migrate to v10. Yes, there will be another solution for everything, but in bigger projects it will cause many many time to migrate.

Anyway, I really like Vaadin.

Hi,
As Java Developer right now the best option is to stick with V8 and separate your GUI logic from business logic. I hope one day functionality of V10 will be comparable with V8 and you will just migrate GUI logic.
I try new project with V10 but now I will do rewrite to V8. Too many features are missing and some simple things are hard to do.

That’s the result of developing cutting-edge technology :wink: BTW, V10 Label is not the replacement of V8 Label. In 10, Label maps to an HTML label tag. You can use the Html class in V10 instead.

We started a Vaadin 8 project last year. When Vaadin 10 was released as beta in Q1, we decided to switch over to that version for a couple of reasons:

  • Our app wont be released until Q4.
  • Responsive forms is a must-have. The app must work equally well on desktops, tablets and phones.
  • We only had 10 screens developed out of an estimated 80-100 screens in the final app.

The V10 beta was a bit rocky which was expected, but even with the GA release it’s still somewhat rocky. We run into issues on a weekly basis. Either because of bugs or weak documentation.

With V8 it was fairly easy to figure out what to do and the documentation (https://vaadin.com/docs/v8 and the component sample page) was quite good. I find that the documentation for V10 is not yet at the same level and time is spent hunting down the answer across documentation pages, component examples and the starter apps. Something else to consider is that where V8 only required Java knowledge and optionally some CSS, V10 requires stronger DOM & CSS knowledge and preferably also some Polymer/Javascript knowledge.

Sebastian - back to your original question to the group; IMHO Vaadin is an excellent choice for Java teams. Strategically I think switching to webcomponents is brilliant and make it much easier to build or import new components. However, it seems that V10 will be rocky for some time. If I were to start a new project tomorrow and I didn’t need the responsivenss that V10 offers, I would probably build on V8 and migrate later.