Google Chrome OS - The most interesting bit

Well Google have gone and announced they're creating their own operating system. This is big news in itself and is being covered all over the web, but I think the most interesting part of the announcement is where they state;

Google Chrome running within a new windowing system on top of a Linux kernel.

Google are not going to use X Window System!

They're going to provide their own windowing system and they are going to open-source the code. This is huge, X has so many limitations and issues. Tweaks and workarounds like the Direct Rendering Infrastructure to take better advantage of video hardware are being made, but these are all hamstrung by they underlying architecture of X11.

As one of the Apple Quartz developers, Mike Paquette explained about Apple's decision to develop Quartz rather than use X11;

once Apple added support for all the features it wanted to include into X11, it would not bear much resemblance to X11 nor be compatible with other servers anyway.

With Google providing a new window system, they have the opportunity to design from scratch a modern architecture for a windowing system. To take advantage of modern video hardware, deal with multiple displays, handle displays DPI correctly, font handling at the lowest levels. All without having to take account of a windowing architecture designed in the 80's where even the lowest power graphics chip of today would have been unimaginable.

With a whole open source operating system based on this being released with at least one large example application (Google Chrome) maybe a real competitor to X Windows will emerge, and adoption by other projects will occur?

I'm looking forward to seeing this happen.

Google App Script - bigger than Google Wave?

Google made an announcement of a limited test of App Script at the same time that Google Wave was announced. Wave gained much of the attention but App Script has the potential to be far more important. Initially App Script is just available in Google Docs  spreadsheets for a limited number of users, but this will expand over time.

So what is it?

Well App Script allows you to write functions in Javascript that run directly on Google's servers. Just to repeat the code runs on Google servers not in the browser. This really is the next step in the 'programmable web'. So now instead of having to write a full Google App Engine application or set up Amazon EC2 instances with a full server environment you can just write a Javascript function and have it running on Googles servers. (Yahoo are also providing a service where you write Javascript that executes on their servers - YQL Execute)

This will allow mash-ups on the server side, whereas currently mash-ups have resided within the browser. As more web services allow server-side scripting the web really will turn into a fully scriptable environment. Previously applications that would have required complete custom development will just require integrating together of sevices with scripting to provided the desired application.

With Javascript becoming the universal language and JSON providing the standard for data transfer along with oAuth for security - all of the pieces are falling into place to provide a complete distributed development environment hosted within the cloud and based on the cloud, rather than the old model of a single development environment by a single supplier.

The potential for this cannot be overestimated, Google Wave is fantastic but with App Scripting it will be just a messaging service that is tied into cloud hosted applications using many other services.

The Big Switch

This is a talk I gave at the Geek Night in Oxford. Slides of the talk.

Changes of computing model are rare in our industry. In the roughly 50 years our industry has been in existence, we have had only 3 computing models, and we're just at the start of the 3rd. A change of computing model is a big thing.

Javascript is slowly becoming the next big language (NBL)

Over time the perception of Javascript has changed from a language suitable for small bits of coding on a web page, to one where serious applications can be developed. With the language having an EMCA standard and with Douglas Crockford's excellent book JavaScript: The Good Parts showing you how to make the most of the language while avoiding the unfortunate historical yuckky bits, it has the underlying capabilities of a serious language.

With the AJAX movement and serious clients (GMail & Google Calender to name two) demonstrating what's possible in the wild. We also have new Javascript engines coming up in several browsers (Chrome, Firefox & Safari) that are an order of magnitude faster in performance. These will allow for a major jump in the functionality of applications running in the browser.

 Below I've listed just some technologies that are programmed with Javascript. 

Client Side

Server Side

  • Over 35 different options for running JavaScript on the server. Take a look at the list on wikipedia

Just a couple of highlights from the list are;

 

What other language allows you to target so many platforms, from a web browser to a mobile phone to a web server. Also with services like the Yahoo YQL, you can now run fragments of Javascript on their servers rather than developing whole applications.

With application and srvices created as mash-ups of other services, in the future Javascript is going to be the glue on the server as well as the client that will tie it all together. Yahoo YQL hints at where this might go in the future, where your 'application' is just Javascript code located across many servers coordinating other services, rather than a whole application installed on a server.

This is why Javascript will be the NBL. Not because it's the 'best' language, has the most features, is the only language developers want to use. But because one language will allow you to target so many platforms. As the javascript engines performance increases it will move into more and more development areas, it is only a matter of time...

 

An evening of music

Wednesday night was live gig night at the Beehive in Swindon. Playing were Phil King and Sam Holmes. I've previously seen Phil King play in Bath. That evening he was accompanied by a Cellist and Bass guitar, this time it was just Phil and his guitar, and again sounding incredible. The range of sounds he can extract from the guitar is phenomenal, an absolute pleasure to hear and watch.

First time I've seen Sam Holmes and already looking forward to seeing her again. A mix of Lisa Loeb, Gem & Suzanne Vega - really great voice and lyrics, songs that draw you in.

Would recommend both of them to anyone who enjoys chill out acoustic solo sets, you will not be disappointed.