Patrick Quinn's Blog

A babbling brook of information and thoughts.

header photo

Report: OS.js; Future Perfect

January 9, 2013

As many of those who have read my previous articles will know, i am a big backer of the web, especially web technology on the desktop. However with the recent course corrections made by Facebook in terms of their mobile offering and the relatively poor performance of HTML5 applications  to date this belief had become marred with doubt. That was until i came across OS.js. 


OS.js started life as a humble hobby project by developer Anders Evenrud, as a way to manage configuration of his home server remotely using a GUI. It soon became apparent that it had the potential to be more. The result of this realisation was an SDK, IDE and Minimalistic, light-weight, multi-user web desktop all running on top of Linux as a complete, standalone OS. Its features include package, session and resource management, a virtual filesystem and support for Glade/Gtk+ based UI widgets (which means the Glade designer can be used to design and develop application UIs) as well as a plethora of default applications, demos and games. Best of all, OS.js is 100% free and open source and is released under the BSD license. 


OS.js desktop

So why exactly is a platform like this exciting from a technology standpoint? Surely this is all old hat? 

Well yes and no. Sure there are existing web applications which ape desktop environments, but these are all meant to be run solely as thin clients and are web based and distributed in nature. OS.js however, is targeted at the desktop itself with the ability to be run thin only being a side-effect ( and side benefit ) of the core technologies used . As the world shifts its focus more towards the web as a common platform for both content and communication, HTML5 begins to gain recognition as a first class citizen amongst users and developers alike at a rapidly growing pace. Microsoft has even made it the official language of Windows 8 with their HTML5 based ‘Silverlight’ framework and Canonical have announced that HTML5 is to be  a major part in their upcoming Ubuntu Phone OS strategy. 


On a more personal note, what is it about this project that has me agog? For me this project is the realisation of a dream i have had for several years now, a paradigm shift in how we perceive the desktop and desktop application development and a convergence between both standard desktop and cloud computing models.

Historically, several people have argued that my interest in the desktop is nothing more than futile noise, a relic from the halcyon days of IBM ( with others labelling me a hapless dreamer ). In reality however, it is the idea of a ‘platform’ itself which is becoming an irrelevant notion. The future of applications is heterogeneity, a ubiquitous delivery mechanism for all applications across all platforms. The holy grail, neigh, the unicorn of the computing world. Be it desktop, mobile or somewhere in between, as long as it can render a web page it will be capable of running any application. And this concept excites me greatly. 


OS.js applications

There are however a few remaining hurdles with this sort of technology. The biggest being performance. HTML5 applications have yet to really live up to their native counterparts when it comes to performance, especially on the lower end systems that proliferate the consumer market. This is, in part due to the high level of abstraction by which interpreted languages such as Javascript abide and to some extent the engines which perform this task. However things are beginning to change in HTML5’s favour with technologies like Google’s v8 and Node.js entering vogue. As the gap between native and web performance closes and the functionality and application of higher level associated concepts begin to appear in scripted languages, OS.js has never been more relevant than it is today and thankfully Anders has done a cracking job of providing a showcase for what can be done when web technologies are applied correctly and efficiently, with OS.js simply screaming along. 


For those who are interested in OS.js,  you can hop on over to  ( which i strongly recommend ) and check out the source code and class documentation or see an example of the technology in action . You can also keep up-to-date with Anders Evenrud on his personal blog over at


OS.js mail application