This article was originally written by Junichi Niino and published on Publickey in Japan. It has been translated with permission from the author.
When it comes to adding web and mobile support in a business application, one of the major concerns that comes into the picture is how to create a good user interface which is fit for web and mobile. Recreating the user interface of a desktop-based business application to support web browsers and mobile devices including touch support is not an easy job. Wijmo, a set of HTML5/JavaScript based user interface controls, provides various features which can help in overcoming this challenge. Wijmo | GrapeCity Pvt. Ltd. - JavaScript library supporting HTML5/AngularJS/TypeScript Wijmo includes various controls commonly used in business applications—for instance, an Excel-like grid control, input fields with autocomplete features, calendar, list box, and a variety of charts. These controls are not only scalable to replicate the desktop applications, but are lightweight and have “Touch First” design for mobile support. The latest version of Wijmo 5 doesn’t depend on any specific library, and provides seamless support for a combination of AngularJS and Angular 2, including TypeScript-based development. Being recognized to have advanced features, mobile support, scalability, fast controls etc., Wijmo is being used by many web applications, from Yayoi Kaikei Online to Microsoft Dynamics CRM. As application development in JavaScript is becoming very advanced, it's almost essential to use various languages, tools, libraries and frameworks with components. We talked to Mr. Chris Bannon (Global Product Manager, Wijmo) and Mr. Alex Ivanenko (Program Manager, Wijmo), who visited Japan for a technology event hosted by GrapeCity (“GrapeCity ECHO Tokyo 2016”), regarding the present situation of JavaScript related tools, the role of components etc. (Niino's questions are in bold.) Chris Bannon, Global Product Manager, GrapeCity Wijmo (Right) and Alex Ivanenko, Program Manager
We maintain a balance between the performance and compactness of our components.
There are so many open source and commercial JavaScript controls available in the market. So what are the strong points of Wijmo?
Bannon: The strength of Wijmo lies in almost 25 years of component development. 25 years ago, we developed and started providing a product named “FlexGrid,” which was a Visual Basic component. Afterwards, we supported FlexGrid in various technologies like .NET, Silverlight, WPF, JS, etc., and we developed various new components as well. Wijmo is one of these products. We maintain a balance between the performance and compactness of our components. Along the way, we've been continuously improving them to be flexible. We optimize the core controls to include only the most important features; and we offer extensions to provide custom features. Wijmo FlexGrid In addition, our enterprise customers appreciate our support, maintenance, and the fact that we strictly follow our release schedule. Lastly, high interoperability with a variety of frameworks is another strong point of Wijmo. Alex specializes in this and can elaborate on details. Ivanenko: Wijmo supports AngularJS, Angular 2, Knockout.js, etc. This interoperability is something we always had in mind since starting Wijmo 5 development. Our customers greatly appreciate our user support and there have been many requests related to interoperability. Currently, we're looking into ReactJS support.
It's big news that Microsoft Dynamics CRM is using Wijmo. Can you tell how Microsoft became customers?
Bannon: Microsoft approached us for using Wijmo in Dynamics CRM. When we had our first discussion with them, they already had a deep knowledge of Wijmo. They had clearly done a lot of research. When asked about reason to use Wijmo, the main reason they mentioned was to add mobile support in Dynamics CRM. I believe they liked the fact that by using Wijmo components, they have the flexibility to customize, supporting a large number of mobile devices including touch support, and that it can also be implemented very easily.
From here on, I'll question you as a JavaScript expert. There are variety of languages, frameworks and tools in the JavaScript ecosystem; do you think it's getting confusing or is it something required for evolution?
Bannon: Definitely, there are many choices in the JavaScript ecosystem. We get questions from customers asking whether we support a particular framework or not. And there is no way that we can know about all the tools and frameworks (laugh), so we have to research about the tools which are new to us. But I think it's a good sign, as well. In any ecosystem, diversity means health. So it's great to see such a wide variety of healthy competition.
What kind of development tools and frameworks are you using in development of Wijmo?
Bannon: We're using Visual Studio as IDE, TypeScript as language, and LESS for CSS. We have automated unit testing using Selenium, and the code is automatically tested every night. At the time of release, it goes through manual QA testing once all the automated tests have passed.
Chris, you talked about the importance of ECMAScript 5 while presenting Wijmo 5. Why is it important?
Bannon: In ECMAScript 3, there were some limitations related to the language, so it was difficult to provide true controls. In ECMAScript 5, the most important feature is that a user can operate property values against objects by directly using a “getter” and “setter”. This is a small thing, but it has a huge impact on our control API.
Finally, a last question: “Wijmo” is a really unique name. Where did it come from?
Bannon: The name is a kind of pun. We took the phrase “widget + more” to represent “more than a widget," which becomes “widgetmore” and hence the name “Wijmo” (laugh). Niino: Thanks for your time today.