Community Spotlight - October 2016

It’s time for another Community Spotlight interview. This month with Jarek Toro, an enthusiastic programmer, Vaadin add-on author, and Software Developer working for Verne Software. Jarek learned Java and Vaadin in a record time earlier this year. Keep reading and find out how Vaadin helped him to reduce the time-to-market of new web applications.

2016-10-04 (1).jpg

Hello Jarek, it’s good to speak with you. Where are you from, by the way?

Good morning... or good evening… originally I am from Florida, though I moved around to a few states before I settled back in FL.

Nice. So... you learned Java in February and one month later, Vaadin. How was that? Why Java, to begin with?

Well, when I started learning how to program I started on the iOS platform. The more apps and things I made, the more I realized that sticking to one platform was holding me back from really making the things I wanted to make. So, then comes my uncle who has been a Java Developer for more than 10 years. I learned how Java really is a "code once deploy everywhere" type thing which really intrigued me. So I started learning Java. And this story leads into how I got Vaadin, if you want me to keep going...

Aha! The good old uncle giving some wise pieces of advice. But yes, how did you discover Vaadin?

Haha! I have learned everything I know from programming from trying it out myself. So after the few examples and getting a small grip on the syntax changes from Objective-C and Swift to Java, I wanted to jump right into Web Development and make a Web App. The “cliche uncle” also happens to be a big fan of Vaadin and they used it extensively. So off I was on my journey of creating Map Manager. Map Manager was actually the first program I made with Vaadin.


A good influencer! What kind of theme are you using in this app?

Valo theme plus some “Jarek Sass”. But many complex components are CustomComponents  made using HTML templates and CssLayout. I did tend to stay away from the vertical and horizontal layouts mostly because I wanted a responsive app.

Cool! Is it in production already?


And if I understood correctly, all this happened in a matter of months this year, right?

Yeah! Actually, amazingly I was able to get a production version out in only a month and a half! Then over the next two and half months I was able to really zone into some nice features like reports and Map Assignment Records.

Wow... what do you think helped you being so productive?

I actually wanted to say something about this… The single biggest help was Vaadin’s docs page. Whenever I came across a problem, that was the first place I went to. Actually, it was so helpful I only ever had to go to the forum once. And even the forum was great. In my head I was thinking "I should just ask this on Stack Overflow" but almost immediately got an answer that helped me. I also had a big drive because this project was like my baby, haha!

And your baby saw the light in less than 9 months! Awesome. What would you say is the best feature of the framework?

I would say all in all, it is the single best tool for making web-apps. On one end, you can easily lay out a sweet application in a very short time in only Java but, at the same time, I learned that you’re not tied down really by the framework. You can customize as much as you want. Sure you have to dig into some css and HTML, maybe a little JS, but the framework is built in such a way where it’s not really -in my honest opinion- that hard to customize.

That's good to hear! So, any advice to those with an iOS/Objective C background considering different technologies for building web applications?

Oh, easy! Ok, so all you iOS Devs out there, imagine if you could define a webpage the same way you define a UiView and handle navigation the same way a UINavigationController does! It really is the easiest way to build a web application!

Also, I wanted to add something… During my project and with my want for a responsive webpage. I created a few classes that really did the heavy lifting in making it responsive. Because of how supportive Vaadin and the Vaadin Community are, a co-worker and I from Verne Software have been refining the code and the API and we recently added it to the addon directory as ResponsiveLayout to "give back & show appreciation". It’s kind of like a drop in replacement for VerticalLayout and HorizontalLayout but with complete responsiveness built in. No need to touch CSS.

Thanks Jarek for your enthusiasm and time to share your experience here.

Thanks Alejandro, it's been a pleasure and say hi to the rest of the Vaadin team for me! You guys have done a great job and built a great community!

Try Vaadin today! Read or watch the tutorial

Vaadin Designer 1.1 released for IntelliJ IDEA and Eclipse

Vaadin Designer is the most intuitive way to create beautiful web UIs. Great productivity is made out of two things: speed of building even the most complex layouts visually with drag-and-drop tools and having a clean separation of your UI design files and business logic. Vaadin Designer does all of this for you. The new 1.1 version of Vaadin Designer is available for both Eclipse and IntelliJ IDEA users today.

Screenshot of Vaadin Designer 1.1 in IntelliJ IDEA

Better support for different Eclipse flavors

In addition to the IDEA support, the new 1.1 version of Designer brings improved support for different Eclipse flavors, like MyEclipse, Spring Tool Suite and JBoss Developer Studio. While the previous versions didn’t have built in support for them, 1.1 supports them natively.

New editable content property

We have some great news if you ever wanted to add more realistic looking data to a Grid or MenuBar in your designs. Previously you were stuck with the dummy data in design time, but in 1.1 we completely changed how the default/dummy data is handled. The new content property allows you to add columns and rows on a Grid and a Table, add menu items to your MenuBar, and edit contents of other selection components, too. Of course, all this can be overridden in Java in runtime in the same way as previously.

Note that the components in designs created with the previous versions of Designer don’t have the dummy content anymore and they appear empty when opened in the new version. Just add some content or leave it as such.

A bunch of other fixes and improvements

In addition to the previously mentioned, there are a lot of other improvements in Designer 1.1. Now Designer handles components as declarative snippets when dropping a component from the palette or copy-pasting from outline. This improves the usability of the declarative view. We fixed the handling of GridLayout and made improvements to the preview mode. For full disclosure, take a look at the list of changes in the release notes.

Get started with Vaadin Designer 1.1

Building components on top of Polymer

We at Vaadin have always been committed to creating great UX for businesses and helping developers build modern web apps. We’ve always strived to create better tools and components for all web developers. So in the past few years we’ve invested into Google Polymer as the library for building our next generation of components. By building with Polymer, we reach a wider community of business and hobbyist web developers.

Last week we attended the Polymer Dev Summit in London, a two day event of talks, codelabs, and conversations about Polymer and web development. Developer Advocate Marcus Hellberg and Vaadin Elements Product Owner Jouni Koivuviita gave a talk on why Polymer and Web Components make sense for businesses. 

At the event we met with quite a few people and businesses building apps with Vaadin Elements. There’s nothing quite as powerful as direct feedback from our customers. We love hearing from developers working with Vaadin Elements so we can learn from their experiences and make a better product.

We talked with many developers, and there were a few recurring topics about Vaadin and Polymer. I spoke with some of our Elements engineers to answer these common questions.

Why did Vaadin decide on web components with Polymer?

Back in 2014, Vaadin was considering a new way to reach web developers. We wanted to create components that follow the web standard, so that they’d live forever; we wanted to create components that are simple to use with any framework, so that all developers can build with them; and we wanted to create native web HTML and Javascript to decouple UI components from the server-client communication automation that Vaadin Framework provides. After considering different options, Vaadin made the decision to develop a new set of open source components based on the new Web Components Standards coming to browsers, with Polymer as the definitive choice.

Vaadin values simplicity and usability, so by working with standards instead of close frameworks, we make it easier for all developers and designers to use our Elements. At the same time, we have always believed that by making our products truly open source, we can get more feedback and build better UX faster.

Will Vaadin Elements switch to Polymer 2.0?

Yes, we’re going to make Vaadin Elements work with Polymer 2.0, which is the next version of the Polymer Library. Polymer 2.0 will use the latest web standards, and is faster and smaller. All of these benefits will come down to all of our Vaadin Elements users!

Vaadin Elements will wait until Polymer 2.0 is stable to create a full release, but we’ll probably build Polymer hybrid elements, which will be a compatibility layer between Polymer 1.0 and 2.0. Stay tuned to this blog and we’ll give you updates on Vaadin Elements progress.

Learn more information on Polymer 2.0

What have we learned from developing with Polymer?

We’ve learned that developers switch technologies quite often. Many technologies try to solve the same problems with different philosophies. Whether it’s by layers of abstraction, level of control, declarative vs imperative: frameworks and libraries vary so much. We’ve learned that we need to be able to adapt our components to work in many different environments, and one way to do that has been to embrace the web platform and Web Components. It has been a challenge for us to change out thinking from the classical imperative model to the declarative model of Polymer, but we met the challenge to better connect to the many ways people might use or products.

We still have a lot to learn about the ways people build for the web, which is why we were so happy to go to the Polymer Summit and talk face to face with developers using Vaadin Elements. We welcome feedback in person, on our Gitter, and in our forums.

What’s next?

The Vaadin Elements team has learned quite a bit from the Polymer Dev Summit, especially after giving our talk and talking with so many developers who build with Vaadin Elements.

The Elements team is hard at work on the next set of Vaadin Elements. Keep following this blog to hear more about where we’re going next and how we’re learning from you.

Vaadin Elements Team at the Polymer summit, sporting our great new t-shirts
Vaadin Elements Team at the Polymer summit, sporting our great new t-shirts

Learn more about Vaadin Elements