Motorcycle Adventures and Free Software
Henri Bergius
Biker, free software consultant, neogeographer

See also my JavaScript blog, The Universal Runtime

This entry was posted on 2011-03-09 11:32:58 UTC in 60° 0.000 N 24° 0.000 E 28km S of Lojo, FI to

The Universal Runtime

In the coming years another billion people will get online. They will do it with their smartphones instead of what we consider computers. And their experience will be quite different from ours when we initially started using the internet.

Despite its promises, it looks like the post-PC ecosystem will be a lot more restrictive than the PC one was even in the worst days of the wintel duopoly. For a while it looked like software freedom might be one of the cornerstones of the new world, but since then it has been shown that the tech giants Apple and Microsoft, together with the American content industry, will ensure that this new environment is more tightly locked down than anything we've seen before.

These companies will have a say on who gets to create something, who to distribute it, and who to use it. Users will be 'protected from themselves' by enabling these devices to run only code approved by the company. We've already seen that this approval can be declined, or even retroactively withdrawn on a whim, and on grounds more political than technical.

If we want to ensure digital freedoms for ourselves, and for the people only now reaching across the digital divide, we must act. We must find ways to enable creativity to happen on these new devices. We need to find ways to enable people to create, distribute and use any software on their phones, regardless of what locked-down ecosystem their mobile operator pushed them into.

Luckily there is one programming environment, one runtime that even the most restrictive players haven't had the courage to lock down: the web. Web browsers, coupled with the modern, fast JavaScript engines, could be the tool to build the next step of the free software revolution. We must embrace it.

JavaScript is already fairly prominent in free software development. The GNOME Shell has been largely written in it, Qt Quick builds on it, and most of the common JavaScript libraries are free software. There are even ways to run JS as a server or build your own desktop applications with it.

For those looking to get started with JavaScript, here are some useful resources:

While there will never be a "one true language" to program in, JavaScript has the potential to be a big thing. And for writing and sharing software across platform boundaries, it may be the only way. It runs even on the most walled of gardens.

Sponsored links

save money using, phone card

Comments:

Felipe Contreras on 03/09/11 13:23:16

I agree, but you can share the language, and use different libraries. C is the universal language (or most widely used). JavaScript might become the next big language, but that doesn't change the situation much.

Ideally, HTML 5, or something like that could provide some common interface to access the functionality of the system, but that's still far from being realized.

Henri Bergius on 03/09/11 14:39:08

The point here, however, is that you can run JavaScript and HTML on even the most restricted devices, while running your C code your require jailbreaks and other measures most users will not be able to take.

Zeeshan Ali on 03/10/11 01:54:15

Henri, Nice post and thanks for that JSLint pointer. It really helped me today. :)

Felipe, Parts of HTML5 are already implemented in browsers and more are coming. Its not a distant future you are looking at but rather a near future. Nobody uses C for writing Apps these days. Yes yes, you showed me a chart proving your assertion but it seems these popularity charts vary a lot based on who is drawing the chart: http://langpop.com/ .

Felipe Contreras on 03/11/11 15:43:31

It depends on your definition of "near future". I would say at least 2 years until HTML 5 has some decent system integration already working on popular browsers. And there will still be some support missing.

Post a comment:

Post a comment via Google Buzz

Back