The Future of Web Applications
Google's entire business is people using a browser to access it and the web. Larry Page and Sergey Brin, founders, wanted a browser of their own, especially so as it'll be so aggressive a move to put them in the zone of their archrival Microsoft, which long ago crushed the most fabled browser of all, Netscape Navigator.
They could have got their wish long back if not for the opinion of the CEO Eric Schmidt that the company was not strong enough to withstand a browser war. He already was involved in the great browser war in the 90s as the CTO of Sun Microsystems, so he surely knows what it takes. As a kind of halfway house, Google sent a team to improvise firefox, the open source browser. Signing Darin Fisher and Ben Goodger, who had a stint with Mozilla, and Linus Upson, who previously worked at NeXT, as director of engineering proved as masterstroke by Page and Brin's part as it initiated a process that can have a huge impact on the future of how we perceive the web.
Yet, the rumors spread gradually that Google is building a browser of their own. With them, the idea persisted. The question but then was, if Firefox is working so brilliantly, slowly and steadily eating up the IE market, why do you need a new browser? According to Fisher, developing for Firefox was innovative enough to be amazing and they all loved Firefox.
But its not Firefox, its all the existing browsers that had a flaw in them. They were simple, browsing was previously less complex. Email, DBM, Spreadsheets, et al which were generic to the desktop, are being handled online more and more. Cloud Computing, sharing computer resources via web instead of from a PC, makes internet more than a content delivery agency but a platform in its own right.
By 2006, the Firefox team knew that they had to build a new application. Just an ecology of add-ons couldn't accommodate this concept. They would be broken when a new version is released and the whole process had to be dealt with every time this happens.
Since a browser is the linchpin of Web activity — the framework for our searching, reading, buying, banking, Facebooking, chatting, video watching, music appreciation — this is huge for Google, a step that needed to wait until the company had, essentially, come of age. It is an explicit attempt to accelerate the movement of computing off the desktop and into the cloud — where Google holds advantage.
And so when a two year top-secret project code-named Chromium resulted in a semi-accidental beta release of the browser Chrome on September 2 2008, it changed the internet game completely. Innovation was perceived in every aspect of it, even in the description of the browser's inner working as a thoughtful comic. Chrome had tabs, handles errors, and it was blindingly faster, it made Firefox 3 seem slower. But that's not all, it enhanced the concept of web application by allowing it to look and feel as a desktop application. At a touch of a button, Chrome makes a desktop, startmenu or quicklaunch shortcut for any web page or web application blurring the outline between what is online and inside a PC.
Let's now see how Chrome works...
Chrome is a bundle of four open source projects
Chrome: An internet OS. Chrome treats every tab like an OS treats an application. Each tab has its own protected memory, permissions and essentially works like an individual process. What if it misbehaves - open Chrome Task Manager, check the tabs processor and memory usage and shut it down - Simple.
It is more amazing if we imagine a system with multi core processor, each tab can render HTML and JavaScript independently on each processor. Revolutionary indeed. This is almost the same concept that earned fame for Win NT and XP. Protected memory is a value addition as it allows multithreading and stabilizes applications.
V8 JavaScript Engine: JavaScript, which was virtually interpreted earlier by moderate web browsers, will be compiled by V8 engine, essentially turning it into a real programming language. Now there is a possibility to enable rich - AJAX like - web apps without even using add-ons like Flash and SilverLight. And it runs blazingly fast too.
Gears: It adapts some HTML 5.0 standards and adds an offline element to surfing. Meant for web developers to design faster and powerful web apps.
Webkit: This third party rendering engine adds its top selling memory management konqueror boasted of and the speed. Works much better than Mozilla’s Gecko.
Google needed a browser to be redesigned from scratch to run its asynchronous web applications better. But by making it an open source project, Google proclaimed that its interest really lies in its online properties.
The Chrome release and the way it treats web pages as applications is so innovative, it might have jumped years ahead of iterative advances from current browser offerings. It changed the game.
References: wired.com; webmonkey, Google, Chrome, Chromium Blogs
Look out for the next part of this essay in my next blog
Web Applications and Cloud Computing