Webix in Practice: digital solution for teams cooperation

Today we turn to the Netherlands to meet Martin Zevenbergen (LinkedIn profile) and his colleague Johan Van Veldhuizen (LinkedIn profile). Together these young and enthusiastic developers work at a startup called Engasy. The company offers digital solutions for team cooperation. We are excited to learn about their experience.

interview with Johan Smith

Hello guys! Please, tell us about your project.

Johan: I’m a backend developer. There are just the two of us in our company. But we have two jobs and also do consultancy for Dynamics AX. The solution we are currently developing is a small ERP to make the teams get connected. Team by team instead of everyone. The second goal is to make it easier to work together. Every company has external consultants, subcontractors, and customers in collaborative developments. With the help of our solution, they share project goals, tools, and work together in a context.

Why did you decide to use a JS library in your project?

Martin: We looked for components manufacturers. We needed a consistent API for each component. Webix offered a full library of components with almost everything. It was not too expensive and had a consistent API between the components. We are glad we purchased it. After testing a lot of other things, we had a good feeling about Webix.

Where do you use Webix?

Johan: We use it for the front end. Webix helps us to have a flexible way to define applications. For example, in the backend, we can develop functionality to create invoices, and the front end is created dynamically. Webix helps us with that. It gives us full flexibility with the front end. 

interview with Johan Smith

Which widgets do you use?

Martin: File Manager, Kanban. We are looking into adding the Scheduler. That was a missing piece at Webix, but it seems you are working on the library and expanding the solution. We also use the Form, Datatable, List components. We build applications on the Webix Jet microframework to combine all the pieces.

What criteria are important for you in a library?

Martin: Consistency in the API and the look.

Johan: Documentation and samples are very useful. And snippets.

How did you learn about Webix?

Google.

interview with Johan Smith

Do you have any difficulties and challenges with Webix?

Martin: There are always challenges. You have to look in the API how every component is working. I find myself looking at Github quite often. I’m glad it is open source and you can read the code as well. In some cases you need it. For example, I was developing a custom filter on the Datatable. The API was badly documented, so I had to look at the source code. Building custom components with Webix extended functionality feels a little bit old-fashioned.

What I’m struggling with quite often is the reactive programming paradigm. If you have to update a certain property, Webix is not that smart. For example, you replace the name for a field, it is always replacing the HTML, while the value is the same. It makes everything a bit more difficult for me because I have to take care of it. I have to check what should be updated, so there is more work on the developer’s side. A smarter way of updating the UI should be beneficial. 

We’ve also faced a strange issue with the date. I posted that on the forum. Our localization is Dutch, but it was changed all of a sudden. We could not understand why. But we discovered that the File Manager was causing that issue. I was very surprised. We are sharing the same Webix Jet underneath. But in my opinion, it shouldn’t be like that, it should be isolated as much as possible.

I’m sure our technical support will assist you with that as soon as possible. What would you recommend Webix to improve?

Martin: Documentation for sure and also an easy way of doing state management. Webix Jet is a nice thing, it gives a lot of freedom, which is a downside also. You make a lot of decisions about how to deal with things. I saw Jet Restate to make easier updates, which is nice but limited. If I update a simple value, it gives me an update. But if I push an item in the array, it is not giving me any feedback. But that’s what you quite often need. Maybe some guidance from Webix would help there. It would be nice to get some support from one of your developers on how to deal with things, what the best way is.

interview with Johan Smith

Where do you usually find the information about IT?

Martin: I’m following Medium. Most things there are about React and Vue. It keeps me up on new things. And googling. I also look at the Webix blog to find new things.

Johan: I receive emails from Webix and most of the time it is interesting. I always look at what’s in it. Good job!

We’re glad to hear that! Do you use any other libraries?

Martin: No, not right now. We want to stick with Webix, and in the future maybe hire people from the Webix team. It is an easy way. We would like to know more about this possibility.

Johan: The other thing is collaborative development. We know a lot about product development, so we could help you with that also. We are open to doing that.

We appreciate that. Thank you! How likely are you to recommend Webix on a scale from 0 to 10?

Johan: Must be a 9. There are always ways to improve things, but we are still happy with Webix. If we had to choose again, we would still do Webix.

Martin: Yes, it is faster than building everything with HTML for example.

Thank you guys for your time and feedback. It is an opportunity for the Webix library to grow and improve.

We are sure all our readers have something to share with us. Please, do not hesitate to contact us.