RIA Development
Zero-install HTML5 Rich Internet Applications that run in any browser without plugins or compromise

Why choose the RIA approach?

Rich Internet Applications combine the benefits of desktop applications (primarily a rich, functional UI) with those of web-based applications (primarily that they are platform-independent and do not need to be installed). Our approach, leveraging the SmartClient and Smart GWT frameworks, is also fully client-server, distributing logic to where it properly belongs and making applications more responsive and scalable.

Advantages of web applications

  • Platform independence. Properly-written webapps run in any browser, on any computer and any operating system. Desktop apps are typically much more restrictive - many will only run on certain versions of Microsoft Windows, for example.
  • Device independence. Webapps also run unchanged in the browser on web-connected smartphones and tablets, as long as allowances are made for the constraints of those devices (smaller screen, no mouse, keyboard takes up screen space, etc). A desktop app simply will not run on these devices at all - a whole separate client is needed.
  • Zero-install. Webapps do not need to be deployed to the client, and they do not need to be installed or configured - the entire process is inherently automatic. Moreover, upgrades happen automatically and fine-grained version management is easy to arrange. Managing these issues with a desktop app is often an ongoing nightmare for IT departments.
  • Ubiquitous access. Webapps installed on a public-facing server are automatically accessible to any authorized user anywhere in the world, with nothing more than a simple internet connection. At the same time, they can be robustly secured to keep out unauthorized users. By contrast, desktop apps are typically only accessible from certain computers, and often require a VPN connection

Advantages of desktop applications

  • Better user experience. Desktop apps run on the client, and have complete control over the UI. By contrast, traditional webapps tend to feel static and "flat". Each user interaction requires a server roundtrip and a page reload, leading to unresponsive, laggy applications and design choices made purely to minimize server trips (such as deferring validations until the user clicks "OK"). All this harms the user experience and frustrates users
  • Complete flexibility. Desktop apps are able to do anything that the client computer is able to do, which allows them to provide usability features that all ordinary computer users now expect: drag-and-drop, animations, graphs and charts, all kinds of dynamic interaction. Plain HTML, on the other hand, is pretty good at presenting a flat data-entry form with a couple of buttons, and that's about it
  • Proper distribution of logic. Most desktop applications are client-server, placing (in simplistic terms) the presentation logic on the client and the business logic on the server. Because traditional web applications are completely server-centric, all the load is on the server when applications need to scale up. This has led to "best practice" which calls for extremely complex server architecture as a hedge against possible future scaling issues that, for the majority of applications, will never arise.



Our approach combines the strengths of web-based and desktop applications: no compromise on platform independence, ease of deployment or ubiquitous access; no compromise on functionality or user experience; and no compromise on scalability.

CONTACT US