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 realization 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. OS.js is 100% free and open source and is released under the BSD license.
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 realization 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 labeling me a hapless radical ). 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 application across all platforms. The holy grail 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.
For those who are interested in OS.js you can hop on over to https://github.com/andersevenrud/OS.js ( which i strongly recommend ) and check out the source code and class documentation or see an example of the technology in action http://osjs.0o.no. You can also keep up-to-date with Anders Evenrud on his personal blog over at http://anderse.wordpress.com/