What skills do I need to program CUBA?

My team are mostly C++ programmers. We develop high performance systems software as well as QT GUI apps. However, we now recognize that we need to build up our web app development capabilities and C++ is unfortunately not a good fit. As a project manager, I now wonder what the best approach is to get a few people up to speed in CUBA. Assuming that we can learn java fairly quickly, where do we go from here? Should we learn Vaadin? Do we need to learn anything like jBoss or webshpere? Do we need to learn Spring framework?

CUBA offers some training videos for 400$. Do I need to buy that separately for every team member? Is that the best way to start?

Thanks for the help, Peter

Hi @peter1,

To start with CUBA using CUBA Studio the minimal skill-set is

  1. Java SE syntaxis
  2. XML
  3. JPQL (very similar to SQL)

It will allow your team to start learning CUBA by watching the QuickStart video. After that I would recommend to walk through this guide.

There is no specific need to know Vaadin or application servers - this all will come with time and not highly required at the beginning.



Teamwork & Perseverance :slight_smile:

In any case with CUBA you have chosen a good stack to take the corner of Web, for three main reasons:

  • with Vaadin you build web UI with litlle to no knowledge in HTML, CSS, JS and so on, Java is enough
  • CUBA integrates very well all pieces of the stack: UI, ORM, Build & Deployment and also an IDE
  • it comes with lot of stuff by default that is needed anyway for a serious application: admin tools, users management, the list is too long

In fact, we come from a background very similar to yours (client/server programming, heavy clients etc…) and faced the same question 2 years ago. Being able to build your 1st web app and deploy it in a matters of minutes/hours is something.

Later when you have mastered the stack enough and want to do more custom things, you’ll see that the platform is extensible in most cases. And the slick architecture (distinct layers, component-oriented through Spring) makes it clean and easy.

And if after that you are still stuck, inputs on this forum are quality ones.