Friday, September 5, 2008

Google Chrome - A re-thinking of the browser


When I heard that Google was about to launch their own browser, I definitely knew that they had something really cool, wacky and BIG in store for the world.But,it was only after I got hold of Google Chrome and tried it out that I realized how the traditional browser design could be revolutionized!

On the phase of it, it looks as if it is y
et a Firefox underneath, but that is a mistake. The Chrome team has entirely built the browser from scratch with a host of performance enhancing steps. The main issue we had with our traditional browsers was the fact that the browser ran as one process in the Operating System and different threads handles the irrationalities. So, even with all the management, the user always had the risk of crashing the browser if something went wrong. This became more evident with the tabbed browsing approach since multiple web pages appeared under tabs in the same browser window. So, if a page got hanged in one tab, or got crashed, it was time to say 'good bye' to all the tabs and start from the beginning. Still it was a load of inconvenience despite the fact that there were recovery measures taken.

However, with the rethinking with the Chrome browser, they have taken things to another level by making each tab act as a separate process in the OS. When the browser starts up, it starts up two processes which I believe correspond to the parent process which done all the administrative tasks and the one corresponding to the active tab. Thereafter with each tab creation, you can see a
new process being created. With this approach, the resource utilization is independent among tabs since they are now processes. So, at the worst case, only one tab would crash and vanish while the rest of the tabs will be 'merrily singing along'. This is just one major optimization in terms of the browser design.

In addition, what main swings it for me is the amazingly simple interface with just seven utility buttons, tab list and 'omnibox' which gives a nearly full screen view of a traditional browser.

The good stuff;

- Fully Open Source
- Chrome's own Task Manager
- A VM for Javascript
- 'Omnibox' for URL entry, suggestions and searching.
- Sandboxing for security
- Separate plugin processes
- Gears

The 'Google Book' which contains all the design decisions can be found here, and this is the most awesome technical walk through I saw after the 'Head First' series.It's just a simple comic book at a glance and yet has all the technicalities associated with this wonderful browser. So, it's time you spend some time and go through the Chrome Google Book if you haven't done alreadys :)

This link contains some cool tips to harness a considerable potential of Chrome. With all the breakthroughs, there seems t0o be room for some more improvements. Check it out...

The web is sure to be flooded with tricks and spins related to Chrome in the days to come by, and the browser market is sure to be full of hustle and bustle...