a blog about innovation and solutions
mobile, opinions, web, windows 8

Platform of choice for enterprise UI

Confidently adopting a framework for a new application is a difficult task, especially for the user interface part, with so many mature technology choices. Desktop PCs are no longer the only devices that are used in organizations and employees have increasing expectations regarding the accessibility of the business infrastructure. This becomes an important challenge for ISVs in the upcoming period as software products get renewed and migrated on modern technologies. It’s also a challenge for the developers here at Yonder who have to keep up to date with technology and tool trends since we’re in the business of helping ISVs adapt to technical change and innovation.

Software vendors either adapt to innovation or slowly fade out of the market. The user interface has enormous influence on the perception of value and many decisions are based on how a piece of software looks and behaves, rather than obscure implementation details that might be important, but which are definitely harder to sell.

The post-PC UI problem

A decade old software product is mature, stable, flexible and functional. Customers are happy and paying well. However, more and more users of the software would like to access it using their newly bought tablet device. This is quite difficult since the application architecture was designed with requirements that were established more than ten years ago.

You might fake it somehow, using desktop virtualization and a remote terminal connection from a “post-PC device”, but at the end of the day the result remains just that, a fake attempt at leveraging the post-PC evolution. While selling fake solutions is possible, a real one would have better chances of success.

Naive solution (let’s develop for Windows)

The first impulse is to pick the dominant platform the same way one picks Windows when developing a desktop application. If it was all right ten years ago, it should be all right today…

Smartphones and tablets are relatively new to the technology game. Smartphones haven’t really adopted a dominant platform yet, the same way personal computers have adopted Windows. There are two major choices for smartphone platforms: Android and iOS. Apple is still dominating the tablet market, but that might not be the case for much longer according to Gartner. We can easily observe that things are not how they used to be and it would be quite risky to execute the same strategy from years ago when choosing a platform for an enterprise application presentation layer today.

Open technologies to the rescue

The Word Wide Web is the most obvious approach to cross-system accessibility. Although it was initially designed for linking rich text documents on the Internet, it has slowly evolved to complex user interface running capabilities, which are enabled by JavaScript, a great programming language with a not so great name. The development of JavaScript and dynamic web pages has been very organic, driven by intense competition during the browser wars (Netscape vs Internet Explorer), which is unfortunately still visible in some aspects of this technology.

Internet Explorer has just recently started catching up with the other browsers, which are faster, more secure and richer in features. This causes a lot of headaches to web developers who unfortunately still have to support that browser. It also drags down the adoption of the web as the platform of choice because many developers associate web development with fixing cross browser issues. Explaining why Internet Explorer has been such a barrier to the development of the web is unproductive and quite unpleasant, so I’ll leave it for another time.

Fortunately, the HTML5 and ECMAScript standardization efforts are slowly fixing many incompatibilities and mismatches between browsers, which should speed up web adoption in the enterprise world. With increased performance, security and graphical representation possibilities (CSS3, Canvas, SVG), the web browser slowly becomes the platform of choice from conventional community and consumer-oriented applications to mobile web apps. The ecosystem is already mature, with dozens of web libraries and frameworks for building rich application interfaces and development is more intense than ever.

The challange

The web makes it possible to address a large number of users through simple accessibility and low barriers, but it doesn’t make everything easy. There are sometimes too many ways of accomplishing something with web technologies and doing it the right way requires comprehensive experience. It took us a lot of man-years of development and iteration to be able to really understand what makes a great web application great and we plan on sharing some of our knowledge in future posts. Stay tuned…

Leave a Reply