Monday, September 1, 2008
It's been a long time coming. Google's impending release of their web browser marks the first notable new browser entry since Apple with Safari. I still think Apple made a big mistake going with Webkit/KHTML for rendering with Safari (over Mozilla Gecko), but what's interesting about Chrome isn't that they chose Webkit too, rather the "fresh look" at building browser in the in the 21st century. It's a different world today.
Gecko & Webkit
I'd prefer modern browsers leverage Mozilla Gecko as it covers more rendering compatibility breadth than other engines for sure, but folks continue to be impressed with Webkit's rendering speed. I don't perceive enough of a speed difference between the two, but load tests indicate otherwise. Whatever. Rendering may indeed be becoming commodity. Hard to imagine, but it is 2008.
Javacript via V8
Put It On My Tab
Breaking pages/tabs down to process-per level is an age old idea, and it'll be neat to see it in the wild. I'm sure it'll have some benefits (obviously execution/memory/crash isolation), but intra-browser expectations we've all grown up with will take time to get right. Simple things like visited link coloring (in _real-time_), cookies, and session history all will have to be synchronized where they often weren't before (though IE started sharing cookies across processes roughly 13 years ago).
Gears & Software Patterns
I'm most excited at the notion of baked in Gears support. The Gears work Google's been doing of late is the most innovative client-server web app work I've seen. The prospect of this kind of functionality being an integral part (not an add-on) of the browser is revolutionary. Again, here comes that pesky market share penetration challenge. Without server-side apps leveraging Gears functionality natively, it'll be destined to research project status.
I have to wonder if there's room for Gnip integration either in Gears, or in the browser itself. Event driven actions across the network are a major part of modern web apps, and tighter integration with client-side software could be tasty.
The UI design stuff is "meh" at best. It's design, and promoting tabs to the top-level UI element feels right, but.... it's design. Whatever. If you don't get it right, someone else will.
Looking forward to trying it out...