Google Chrome

Google has officially announced it will be releasing its own browser, named Chrome. The web comic explaining their thinking is well worth a look, but the key points are:

Each browser tab is a separate process. This means that one web page hanging or script stalling only affects that page. Your browser doesn’t crash or hang — individual tabs crash or hang and can be killed. It’s so obvious it’s brilliant. I imagine Firefox, Camino, and Safari will all follow suit as soon as they can.

Google has been working on a new JavaScript engine, named V8, that’s roughly twice as fast as the latest versions of Firefox or Safari nightly build. Remember that these engines were in turn a lot faster than Internet Explorer or anything else we had a year ago. We’re looking at something like a 10x improvement in overall JavaScript performance over the last two years.

It’s based on Webkit.

It’s entirely open source.

  • I imagine Firefox, Camino, and Safari will all follow suit as soon as they can.

    I suspect Google are trumpeting this and explaining it very carefully so that all of the other browsers adopt this model and think about standardisation.

    Once the browser is a process manager which mediates and delegates access to network, storage, and media resources… it’s getting incrementally closer to being an operating system. Pushing more traditional OS capability into the browser is going to make life incrementally easier for web companies and operating system vendors who don’t mind giving up a little control to web apps.

    I liked this revision of Marc Andreessen’s old quote about “reduc[ing] Windows to a set of poorly debugged device drivers.”

    Apple and Google throw some serious resources at Webkit-related open source projects — check out the Webkit contribution history — that’s a hefty development team even before you factor in contributions from other random benevolent people and organisations (Nokia, Adobe). You can feel their love for Webkit. It’s like an open cartel. Apart from anything, the source is very nicely curated which I think is a tell for a very cooperative community development.

  • Agreed, but…

    I think a better approach than Google is suggesting would be for the OS to allow windows to be docked together into tab sets independent of which application they’re from, but with an OS-level API that lets you find and target doc sets (so you can do a command-N and decide which tabset you want to dock the new document to OR drag it post-hoc). Then you take something like the original IE or Safari (without tabs) or Fluid and simply allow ad-hoc docking. I can combine Safari and Firefox into a single tabset to use Safari for browsing and Firefox for debugging. A web page designer can combine Photoshop, Transmit, TextMate, and CSSEdit into a tabset while working on a page.

    This makes the OS more powerful and relevant, and the web browser a swappable component.

  • That’s an OS upgrade I’d happily pay for.

    Independent browser instances and an OS with the tabby scheme you suggest would obviate most of the UI glitz that Chrome implements itself.

    Reworking a window manager and API into a tabbed windowing system doesn’t sound like a big job for a modern OS. I imagine that glue code to beat legacy apps into compliance wouldn’t be too hard to do either.

  • Exactly.

    I think Apple could do it and automagically support legacy apps. Heck, it could probably be done as a “haxie”.

    And we get OpenDoc Lite that actually works.