Google Chrome Is Not What You Think
The web design world let out a collective cry yesterday. To some, it was a squeal of delight. To others, it was a groan of despair. At issue was Google’s new brainchild (and latest step towards WORLD DOMINATION), Chrome. If you have been hiding in a hole since Labor Day, Chrome is Google’s attempt to enter the web browser market by dropping a “lightweight,” WebKit based browser designed to function more efficiently in an increasingly modern web environment (while at the same time trying to drag us kicking and screaming back into the browser wars that defined the late 90s). They made a bit of a goof in their release cycle, and let the cat out of the bag a bit early the other day (it could have just as easily been planned to stir the pot for the couple days leading up to the Beta release on the 2nd). Like many things Google related, the idea is quite idealistic, and has a ton of potential. But just the same, new browsers always pose a number of issues.
First, I can’t count the number of times I heard “Oh great, another browser I have to bug check layouts in,” today. Luckily, Chrome is using WebKit as its rendering engine. WebKit, if you aren’t familiar with it, is becoming hugely popular for mobile browsers due to its footprint, efficiency, and accuracy. It’s also the backbone for Safari and Konquerer, and currently passes Acid2 and aces Acid3 in the latest builds. So, this is good news for designers, as we shouldn’t be pulling our hair out with display quirks. “Shouldn’t,” always the operative word. Secondly, Google (so far) has no intention of unseating Firefox, let alone IE. Google just extended their sponsorship deal with Firefox until 2011, which will provide the Mozilla folks with better than 80% of their operating dollars. And IE simply has market penetration on their side. Since Chrome is open source, I do expect to see a lot of cross pollination of features in upcoming FF releases. If they don’t, there’s a serious chance it could spell trouble for the future of our favorite flaming dog-cousin. After playing with Chrome though, you can quickly tell it is not the web browser to end all web browsers. It’s more of a rebirth, and new beginning, for a web where the web application rules supreme, rather than the web page.
Instead, Google is simply trying to produce an environment that is more conducive to using the web as a sort of ambiguous operating system, rather than a place where we read stuff and watch videos of people hitting each other in the crotch. The idea is to treat browsing sessions as discrete processes just like how an operating system addressing different programs, so if a poorly crafted Javascript crashes one page you’re viewing, it won’t kill the document you’re writing in Google Apps on another tab. My big question is, why not throw this effort into Firefox wholesale? I know they have an interest in WebKit since they are using it for Android, but when I think of multipurpose environments, Firefox kicks all, and a Firefox/Google partnership could easily be as powerful as Google flying solo, if not moreso. I know people will complain until the end of time about Firefox’s memory management, and I won’t defend it. But, Google could have taken their multithreaded approach to them to fix that. To me, Firefox is an IRC client, FTP client, layout debugger, social networking engine, and more. And all the plugins that make that happen, in all fairness, are what cause a lot of that memory bloat in Firefox 3. However, the browser itself is good. Chrome does feel a tad snappier, but not by any degree that would make or break user experience.
What Google is banking on here is a tool that addresses the potential of the Internet as an operating system-like interface. They want you to use Chrome to interface with all your most important web applications (especially if those start with the name “Google”) where stability and security are important considerations. But in lacking any kind of plugin interface, they really have made a tool that best serves people hell bent on living in Google Apps. In that sense, it is very self serving. Not that that’s bad. To the contrary, it knows very well what it is and what it’s for, and they did a pretty kick ass job of executing that goal. Their little comic explains fairly clearly what they were going for with garbage collection and multithreading around pages 6-7. Those of you familiar with Java will catch on pretty quickly to what they are explaining.
Don’t get me wrong. I used it, and I rather liked it. The interface is clean, and collapsing the tabs into the title bar when maximized really tops out the viewable browsing area (why not just do that full time?). The built in Java debugger and task manager are handy for tackling misbehaving tabs/processes. Javascript runs faster thanks to the multithreaded JVM compiler, V8, which allows Javascript to be ran as compiled code instead of interpreted code (this has been a long time coming). Incognito mode readily answers IE8′s InPrivacy for you privacy minded folks. Likewise, it’s also fast to clearly announce when it encounters a mismatched or self-signed SSL certificate. FF3 does this, but the page can be easily mistaken for a standard error page. No risk of that in Chrome.
On the other hand, I think they could have built in a nice print preview mode, and using the text-zooming method instead of the cleaner and, in my opinion, far superior page-zooming method was a big whiff on their part. Also, on the topic of V8, running compiled Javascript code is fast and awesome… when you’re working in applications that constantly run Javascript. Odds are most pages you visit don’t. And with respect to garbage collection, consider times when you have 25 tabs open. Instead of a pool of memory and resources, each tab is now a defined, idle process, holding on to all its own resources and threads. Seems a little wasteful and reinforces the “this isn’t really a web browser, per se” argument.
Here’s the bottom line: I don’t plan on looking at Chrome as a web browser. It is, but it isn’t. The way it has been developed, the purpose, target, and reason for its being is to serve as an interface portal for increasingly complex and robust web applications. Chrome, as I mentioned, is a very selfish and self serving application (not that that’s a bad thing!). It’s made to run Google Apps, Google Video, Google Calendar, GMail, your web apps, and whatever else you want to throw at it where stability, security, and reliability are musts. They’ll run faster and be more trustworthy than in “traditional” browsers. If GMail crashes, oh well, everything else is safe, just like in a real operating system environment.
Keep an eye on Google Chrome. There’s a lot of opportunity here, and a certain gamble taking place in just which direction the web will evolve. Reserve judgment, because if you’re like me, there’s not quite enough here to beat out Firefox. Yet. And even if Google’s gamble pays off, I suspect you’ll see Firefox quickly moving to integrate a lot of Chrome’s smarter features, the main one being multithreaded processing and garbage collection. There’s no need to start sweating bullets over whether or not web pages will work perfectly in it (though I would test web apps pretty heavily in it). Plus there’s huge opportunities here if there’s ever Java integration and a plugin architecture added.
This post was written by Michael Fienen