Thursday 24 January 2008
I'm leaving today to travel to California for Mozilla's "work week" next week. I've arriving early because on Friday I'm visiting UC Berkeley to talk to people there about browsers and stuff. In particular I'm giving two open talks: one on Chronomancer at noon, and one on "Inside Firefox" at 2:30pm.
BEYOND TIME-TRAVEL DEBUGGING
"Omniscient debugging" proposes to record a complete program execution and let developers query the recording to debug their programs. Because all program state over all times is immediately available, omniscient debugging can directly support the basic debugging task of tracing effects back to causes. This technology is about to break through into the mainstream, thanks to improved implementation techniques, virtual machines, increases in disk capacity, and increasing processor core count. I will describe the design and implementation of "Chronicle", a prototype which shows that omniscient debugging of large, real-world applications such as Firefox is feasible on commodity hardware. In fact, the real challenge is to design a UI that can take maximum advantage of omniscience. I will demonstrate a prototype UI ("Chronomancer") and argue that "time travel debugging" is too limited a vision; superior debugging experiences can be obtained by integrating information across times into a single view.
Web browsers have become a primary application platform, arguably more important than traditional client operating systems. They are also a key security frontier, a vigorously competitive market, and an crucial front in the battle for free software and open standards. They're hot. I'll survey the architecture of Gecko, the browser engine that powers Firefox, and discuss how it has evolved to support the changing needs of Web applications and to address security and performance requirements. I'll discuss new directions for Web applications such as advanced graphics, offline execution, faster script execution, and parallel computation, and how we're improving Gecko to support them. I will talk about the huge engineering challenges we face and how we are addressing them --- and where we need help. There will be as many demos, rants and anecdotes as time permits.
Update The Chronomancer talk is apparently at 380 Soda Hall.