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.


"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.


  1. A quick google didn't answer this question, so I'll ask here: do you know exactly where these talks will be? Or at least, whose website should I look at for more detail?

  2. Robert O'Callahan24 January 2008 at 22:26

    I actually don't know where they'll be. might have more info, I'm not sure. If you wander around Soda Hall there might be notices posted.

  3. Hi Robert,
    If you're going to do a pitch for "a UI that can take maximum advantage of [trace's] omniscience" you have to give a plug for the stuff we're developing at Green Hills Software.
    If you haven't seen it, drop me a line and I'll try to hook you up with a demo of the PathAnalyzer. It is the UI that you're imagining.

  4. Robert O'Callahan25 January 2008 at 04:21

    Michael: sounds cool. You should look at my Chronomancer screencast to see what I'm imagining.

  5. Well, that was fun and educational. :D
    I'm pretty bad at keeping up with what's going on outside my concentration, so it was a good overview for me, too.