WIRED MAGAZINE: 16.10
Inside Chrome: The Secret Project to Crush IE and Remake the Web
A less weighty issue was what to dub the product. After considering some ridiculous codenames (Upson says they were so awful that he took the un-Googly step of a top-down veto), the project borrowed its moniker from the term used to describe the frame, toolbars, and menus bordering a browser window: chrome.
One more hire was key. Because Chrome was supposed to be optimized to run Web applications, a crucial element would be the JavaScript engine, a "virtual machine" that runs Web application code. The ideal person to construct this was a Danish computer scientist named Lars Bak. In September 2006, after more than 20 years of nonstop labor designing virtual machines, Bak had been planning to take some time off to work on his farm outside Århus. Then Google called.
Bak set up a small team that originally worked from the farm, then moved to some offices at the local university. He understood that his mission was to provide a faster engine than in any previous browser. He called his team's part of the project "V8." "We decided we wanted to speed up JavaScript by a factor of 10, and we gave ourselves four months to do it," he says. A typical day for the Denmark team began between 7 and 8 am; they programmed constantly until 6 or 7 at night. The only break was for lunch, when they would wolf down food in five minutes and spend 20 minutes at the game console. "We are pretty damn good at Wii Tennis," Bak says.
They were also pretty good at writing a JavaScript engine. "We just did some benchmark runs today," Bak says a couple of weeks before the launch. Indeed, V8 processes JavaScript 10 times faster than Firefox or Safari. And how does it compare in those same benchmarks to the market-share leader, Microsoft's IE 7? Fifty-six times faster. "We sort of underestimated what we could do," Bak says.
Speed may be Chrome's most significant advance. When you improve things by an order of magnitude, you haven't made something better — you've made something new. "As soon as developers get the taste for this kind of speed, they'll start doing more amazing new Web applications and be more creative in doing them," Bak says. Google hopes to kick-start a new generation of Web-based applications that will truly make Microsoft's worst nightmare a reality: The browser will become the equivalent of an operating system.
Google also brought in reinforcements to implement the multiprocess architecture that allowed each open tab to run like a separate, self-contained program. In May 2007, it acquired GreenBorder Technologies, a software security firm whose technology was designed to isolate IE and Firefox activities into virtual sessions, or "sandboxes," where malware intrusions couldn't mess with other activities or data on your computer. When the deal was announced publicly, tech pundits wondered whether it meant that Google was going into the antivirus business. Only after the acquisition did GreenBorder's engineers learn that their job was to construct sandboxes for the tabs of a new browser. "It was confusing," says Carlos Pizano, one of the GreenBorder hires. "They would not say what they wanted to sandbox."
The team was growing, but the process never got bogged down in bureaucracy. In the project's early stages, Chromers would all have lunch together at a table in one of the Google cafés. Soon even the largest table couldn't accommodate them all. Working in an open source spirit, every engineer was free to check out any piece of code and tweak or improve it. Rakowski always tried to keep things light, one day awarding tins of chrome polish to the best bug catchers.
As the plumbing aspects of the product fell into place, activity focused on user interface. From the beginning, the Chrome team hoped that its visual presentation would be so understated that people wouldn't even think they were using a browser. The mantra became "Content, not chrome," which is sort of weird given the name of the browser. ("We've learned to live with the irony," Mark Larson says.) The clearest expression of this comes when you drag a tab containing a Web application like Gmail to its own separate window and specify that you want an "app shortcut." At that point, the tabs, buttons, and address bars fall away and the Web app looks pretty much like a desktop app. Welcome to the cloud era.