Search This Blog

Wednesday, September 3, 2008

The colors of Google Chrome: A user review

So the rumors of many years ago were true. Google finally did release a browser. Naturally, I downloaded it and took it for a test drive. Here is the short of it.

Version reviewed:

Google may be rolling out updates regularly (For example, I suddenly see evident popup blocking), so to put it in context, this is the version I am reviewing


The installer is just around 470K to download, but of course that is the 'pre-installer'. Once you grab the pre-installer, it downloads the rest of the browser from the net. As of now, in its first release, focus seems to be on super simplicity. It does not even ask you where to install it. I am OK with that, but it really does choose a weird location to install it (in Documents and Settings!)

(click on any image to see a full size version)


Chrome is a spiffy looking interface. Clean, no-nonsense but smart. When I downloaded Firefox, I just had to use a theme. The theme less version was like soup without salt. I did not get that feeling with chrome. I liked its basic looks (just like I liked Safari's basic theme). The "home" starts off with a collection of thumbnails of websites you recently visited, like so: (Note that chrome caches these thumbnails locally, so it does not need a net connection to display these thumbnails. That's good, because I *hate* start up delays)

Some things to note:

a) There is no separate search bar. Like other browsers, you can enter your search query in the address bar itself. Just a minor nit here - it the query is an obvious search phrase, then it executes a Google search off the bat, but if you are searching for a URL looking search query, naturally, it is going to try and resolve it first. For that reason alone, the 1/2 second delay, I prefer a separate search bar.

b) I like the neat status bar. It does not take up permanent real-estate. When you mouse over a link, a dynamic status bar shows up at the bottom like so:

I also liked their choice of UI when you are browsing 'unsecured' websites (example, when you are visiting a site where the certificate does not match the site URL) (check out the strikeout HTTPS)


Of course, remember that this is a beta product:

Thrashing Galore

First off the bat, when I first used chrome, I was very impressed. Very very fast, good UI and based on Web Toolkit, so it did a good job with all sites I usually visit (again, they did not have to  reinvent the rendering engine, Web Toolkit is stable and good).

However, after a few hours of use, I was surprised that each time I started it, it would thrash my hard disk like crazy. So I fired up my trusty sysinternals filemon program and saw this:

Gee, that's a lot of writing to the safebrowsing folder - no wonder why my hard disk was grinding. So naturally, I went to that folder to see what was going on.

That's already a 50MB file and constantly increasing!! I took a quick peek inside - seems to be an SQLite database file. On reading the documentation, it seems this is a huge list of websites that gets downloaded if you enable phishing support. Well, that would mean my system should stabilize once the full file is downloaded. We will see. If not, I will just disable this option. (update: HD grinding seems to  have stopped after around 57Megs of download  65 megs and still thrashing. Does it really need to download this list ? Is comparing against an online DB that slow?)

The acid 3 test

I ran the browser through the w3c acid test, and it came out with an acceptable 77, considering its the first release.


As of now, there are very limited plugins. There is Flash, and there is Google Gears. I did not see anything else. Again, I did the obvious thing of looking in plugins folders, did not hunt around

Where on earth is Popup blocker?

The one thing that I found missing in its interface is the popup blocker. But, that's not to say it doesn't exist. Looks like Chrome has a built in blocker that is not yet customizable via a evident interface. I went to some popup heavy sites, but did not see popups or under. That's good, but there are certain times where a popup is valid. So not sure if chrome will kill those as well. (update: I wonder if google rolled out an update today? I am suddenly noticing new windows at the bottom saying 'blocked popups'. I am sure this was not there this afternoon. Anyway, that is a good thing)

Geared to go

GoogleGears is integrated into chrome. that's not to say it automatically localizes any site. It can 'gear' any site that supports gears (like google docs). So don't expect that if you add an 'application icon' on your desktop, it is automatically 'geared'.

Incognito (p*rn) mode

And then there is the incognito mode. You can launch a new window where Google promises no history, traces or cookies are maintained. Nice interface, complete with a shady man icon. To make sure you know it is incognito, chrome opens this in a new window, not tab.

Processes vs. one process

The biggest talk about chrome tabs is that they are all individual processes. While this leads to some overhead when initiating processes, it helps in ensuring one tab doesn't crash the other.  And rightly so. I verified in process manager, that each tab corresponds to one process. Example, this is how it looks like when I have two tabs active

And then, I decided to kill one 'process manually from process manager, just to see if Chrome balked or it delivered. It delivered. When I killed one process, Chrome did this in that tab UI:

Neat. Why did I kill it from a process tree? Because I could :-)

And after I killed that tab, I saw only two processes which matched their claims

How deep is their JS stack?

One way to kill browsers is to kill their stack by overflow. So I ran a recursive JS box drawer to see how it would behave. When I ran the same thing in Firefox, the boxes kept being drawn till FF took up around 200MB and then slowed down to a crawl to a point that I had to manually kill it. Chrome on the other hand stopped eating up after around 30MB and did not seem to invoke any further JS stack calls. My guess is that Chrome chose to limit the memory that can be allocated at a much lower level than FF.

The JS debugger and DOM viewer

For the developer in you, Chrome has a built in JS debugger that is easy to use and simple. You can set breakpoints in JS where needed.


Finally, there are limited options for you to customize. I am sure this is going to expand over time.


Chrome has a built-in task manager, which, (of course) reports memory differently from any 3rd party task manager (it reports lesser memory, again, of course). I am sure there is some explanation, but the  general rule of thumb is if a program comes with its own memory reporter, more likely than not, it does so because it believes some memory should not be counted when comparing to its competition :-). To be fair however, the reason why a customized task-manager may be more accurate is that often, processes share memory between each other. An external task manager may report them multiple times, where in reality it is only one physical memory space mapped to different virtual spaces of processes.

Chrome Task Manager:

Sysinternals Task Manager:


Overall, I think Chrome has a nice UI, very good performance and has good potential to become the browser of my choice. Their choice of Webkit is also wise - it does not come with the bloat of Mozilla and is stable from a rendering perspective. Further, I read that webkit scales down well for embedded devices, so I guess android would also come inbuilt with chrome.

1 comment:

  1. Good extensive review. Good that google passed the java crash test. For me it's my main browser for forums, google apps and google mail. I'm using Firefox to post this though due to the plugins.