Browser Wars: Episode n+1

by Charles Miller on September 3, 2008

I suspect that Google’s new web browser, Chrome, is going to have a difficult time gaining significant market share. Which is a pity because the main differentiator of the browser—the process-per-tab model—really deserves to be adopted more widely.

Firefox got where it is today on the three-pronged attack of tabbed browsing, security and standards compliance, on the back of Microsoft's five year hiatus in developing Internet Explorer. Even with that compelling story to tell, eking even a low double-digit market share was a huge accomplishment. What is Chrome's story?

Firstly: if you introduce a beta that is largely interesting to nerds, releasing it only for Windows is a mistake. I know I subscribe to a preponderance of blogs by Mac or Linux users, but even I was surprised by the number of Chrome reviews that mentioned having to run it in a virtual machine, or on the old discarded Windows box in the corner.

Looking down the list of features there are some cool ideas, but none of the user-visible ones seem particularly revolutionary. The dynamic content for newly opened tabs looks great, but it wouldn't be a stretch for that feature to be added to any existing browser. Similarly Omnibox, Google's take on the location bar, is an evolutionary progression from Firefox’s AwesomeBar and David Watanabe’s Inquisitor.

From the Chromium Project’s User Experience documentation:

In the long term, we think of Chromium as a tabbed window manager or shell for the web rather than a browser application. We avoid putting things into our UI in the same way you would hope that Apple and Microsoft would avoid putting things into the standard window frames of applications on their operating systems.

This goal of having the web browser just get out of your way makes a lot of sense. It makes even more sense when you realise that Google would be far more comfortable writing web apps that interface with Chrome in interesting ways than it would adding features to the browser. Google already has Google Bookmarks and Google Web History web applications, why waste space on them in the browser code itself?

(More cynically, divesting regular browser functions to the web gives Google the chance to keep more of your data, and serve you more contextual ads.)

Google has an impressive team on its V8 Javascript VM:

The V8 development team has multiple members of the original Animorphic team; it is headed by Lars Bak, who was the technical lead for both Strongtalk and the HotSpot Java VM (as well as a huge contributor to the original Self VM). I think that you will find that V8 has a lot of the creamy goodness of the Strongtalk and Self VMs, with many big architectural improvements. _(David Griswold on the Strongtalk mailing list, via James Robertson)_

Still, V8 would have been more impressive, perhaps, if it had been made public before the back-to-back introductions of Squirrelfish for WebKit and Tamarin for Firefox. What would have been a breakthrough six months ago today looks more like a dose of Not Invented Here syndrome. That said, Google are releasing V8 as open source, and one assumes any advances it contains will spread to the other free browsers.

Google's stated aim in developing V8 was to provide better performance for today's script-heavy web applications, but also to make possible even more complex Javascript applications in the future. The elephant in the room, as always, is Microsoft. Unless they can improve Internet Explorer far more rapidly than they have so far proved able to, web applications will still have to be developed down to the 80% of web users on that platform for the foreseeable future1

(A more vindictive part of me relishes a growing population of websites that provide a cut-down interface for IE users as revenge against all the “your browser is not supported” pages I've seen in the last ten years.)

Which brings us to the architectural choice that apparently underlies Google's decision to rewrite the web browser from scratch: having an isolated process per tab. The good news is that it's exactly the right design for the problem at hand. The bad news is that the only people who will really care are the engineers. Unless an application is horrendously unstable, offering an alternative that crashes less (or at least crashes less hard) has not historically been an effective way to convincing the masses to switch. For most people, a browser that remembers which tabs you had open before a crash is sufficient; the crash itself is just an excuse to go make a cup of coffee.

1 On the Internet, the foreseeable future tops out at about five years.

Previously: Prior Art Due Diligence

Next: Hi, I'm a Mac… Beep, beep!