nullstream weblog - Google Chrome


« Piclens | Zune Innovation »

Google Chrome

Intarweb

September 2, 2008 02:16 PM PST

googlechrome.png

I've been working on Google Chrome, our new open source web browser. I wrote the SafeBrowsing (anti-phishing and anti-malware) feature with another engineer, the download manager, and a bunch of random other bits. I'm currently working on the Mac and linux version. I guess I'm now a paid open source developer, which is cool.

Some of my favorite things:
- fast and minimal user interface
- fast rendering (via webkit) and javascript (via v8)
- resizable input text boxes (thanks to webkit)
- downloads don't prompt you 15 times
- multi-process architecture makes Google Chrome robust to crashy sites
- tabs are slick and easy to manage by popping in and out of windows
- search / address bar and the new tab page train themselves to my usage very fast

Since each tab can use its own process, looking in the Windows Task Manager might be a bit confusing. You'll see multiple chrome.exe instances and on XP, shared memory isn't accounted for properly so it'll look like we're using a ton of memory. So we built our own task manager: right click on the title bar and see what the tabs or plugins are doing. In any case, browsers are doing much, much more these days than rendering static pages, so the resource usage is going to more, too.

This is a beta launch, so there are likely to be missing features. Leave your wish lists here.


Comments (27)
John, September 2, 2008 03:22 PM:

Pros:
Tear off tabs are cool. You can also drag them back on.
Minimal 'app' windows are cool.
I like the download manager.
The page find interface just pops down from the top in a minimal way.
History thumbnails are cool.
Renders fast.
The bookmark bar shows up at the top of the new tab page so you don't have to have it on all the time.

Cons:
No plug-in or add-on support I can see.
Memory use is a bit higher than Firefox or IE. in the static case, although hopefully it won't leak as much.

J, September 2, 2008 05:46 PM:

WHERE IS THE STOP BUTTON?

Paul, September 2, 2008 05:49 PM:

See the little arrow button to the right of the address bar? That turns into stop when the browser is actually loading something.

J, September 3, 2008 06:54 AM:

Holy flashing ads everywhere! How do people get used to it?

John, September 3, 2008 08:27 AM:

Similar to the iPhone / app store debate, people are left wondering if Google will even allow an ad-blocker. Yes it is an 'open source' browser, but still, Google is a corporation not a charity.

J, September 3, 2008 08:51 AM:

Oh, I assume that Chrome will have custom builds by people that include adblocking, etc. Similar to how there are 64 bit builds of Firefox that you can get from 3rd parties. Not forks per se, but custom builds.

Paul, September 3, 2008 03:28 PM:

Have you tried to check out the source and build it? The instructions are here. I'd like to know how easy that is for external people. Warning: the checkout can take a long time.

J, September 3, 2008 07:01 PM:

Steve tried, but it only works under VS 2005 or something. I think it doesn't work under 2008 or 2003. Of course the never ending changes to project files are Microsoft's fault. But maybe an Nmake file would be more compatible to import into all Visual Studios?

John, September 4, 2008 09:46 AM:

Random things I want in chrome:
1. Spell checker. I really miss this from firefox.
2. .mht (web archive) save. It is a standard and only IE supports it for some reason. It is very handy.
3. Support for firefox add-ons. - Why re-invent all of these?

John, September 4, 2008 09:47 AM:

4. Proper page zoom like IE7 and Firefox 3.

Paul, September 4, 2008 10:15 AM:

I can't see us supporting the Firefox extension model. That allows extensions to run all kinds of code for various networking and DOM events, amongst other things. Since we're multi-process (DOM in the renderer processes and networking in the browser), we'd have to make synchronous calls across processes, which is something we'd never want to do. It would hose responsiveness if the browser was blocked waiting for something to happen in a renderer.

Even within the browser process, we've gone to great lengths to be as responsive as possible in the user interface. For example, in the download manager, network reads, file writes and UI updates are all done on separate threads so that none block the others.

Extensions seem to be the most publicly requested feature, so there will have to be something to address it. I don't know what the plans are at this point, other than fix critical bugs, etc, discovered during the beta.

Paul, September 4, 2008 10:16 AM:

Spell checking should be there... I did many of the code reviews for it. I purposely misspelled some words while writing this comment and it worked for me.

Paul, September 4, 2008 10:20 AM:

We're working on a better, cross platform, command line build system: look at all the SConstruct and SConscript files in various directories.

Unfortunately, we currently require VS2005 for the sln files, though. That will have to change soon since you can't buy that version anymore.

john, September 4, 2008 01:22 PM:

Odd, I don't know why the spell check didn't seem to work before - or I didn't notice it. It is working for me now.

Paul, September 4, 2008 01:34 PM:

It might be that the dictionary hadn't completed downloading when you first used it.

John, September 5, 2008 11:03 AM:

Google updated their EULA to be, well, less sucky.

John, September 5, 2008 01:16 PM:

I finally tried Chrome under Vista. It looks nicer with the translucent space above the tabs.

John, September 8, 2008 12:13 PM:

Power Users's Guide to Chrome.

Paul, September 16, 2008 11:34 AM:

If you want to run the latest dev builds, which are beta candidates and NOT nightly builds, switch over to the dev channel.

John, September 22, 2008 01:50 AM:

3 weeks later and I'm still using Chrome as my primary browser. I miss some of my Firefox add-ons though and occasionally fire it up. At home I have a massive hosts file for blocking ads, and that has been working well.

I can't really articulate the main thing I like about it though. Probably the minimal UI, the tear off tabs (I was wishing for this a long time ago), and the smart address bar. Oh and the fact that Paul helped make it.

Paul, September 25, 2008 06:09 PM:

Stainless:a multi-process, WebKit based, Mac OS X browser. Just for you, J.

Paul, December 11, 2008 11:03 AM:

Out of beta.

John, December 11, 2008 04:53 PM:

Great! Now how about that Gmail? Think that will ever be done?

Paul, December 11, 2008 05:10 PM:

Is the 'beta' tag somehow interfering with your use of Gmail? I don't understand why anyone who isn't a CIO would care...

John, December 11, 2008 07:50 PM:

Yes it is. It causes me undo anxiety as I am constantly worried that my messages might get lost due to using un-released experimental 'test' software. Even MS doesn't leave stuff in beta that long.

Perhaps Google just doesn't have anyone there who knows how to edit the bitmap. In that case I will gladly volunteer my services to remove the offending text.

J, December 11, 2008 08:21 PM:

What! I didn't know Google knew HOW to get something out of beta. BTW, the auto-update without notify on Chrome confuses me.

Paul, May 22, 2009 12:46 AM:

Version 2 is out.






All links will be marked with the nofollow tag, making them useless for search rankings. Any posts containing spam URLs will then be deleted.