According to Vladimir; the most important parts of debugging are setting up break points and watching how data is being manipulated through the program. Vladimir compared two major types of debuggers Visual Studio, and GDB. GDB is a more command line based debugger which is harder to use, but Vlad found this to be his debugger of choice over Visual studio debugger (or atleast thats what I took from it)
The advantages of using Visual Studio debugger was the ability to use the GUI for easier break point setting compared to GDB which is all command line and harder to implement break points. The advantage of setting break points or watch points is they are a good way to track data changes in bytes withing an address location. Vlad also talked about EMAX which has a hook up to GDB which offers a certain level of user interface for GDB. Vlad also stressed on that fact that debugging does not solve a bug; it merely helps you to retrieve a bunch of data that helps in removing bugs; sometimes debugging might just lead you to dead ends but there are those times when it can be very useful
Vlad also mentioned Venkeman and Firebug which are useful Java script debuggers. He then talked about dTrace or Dynamic Trace which is a way to track or trace execution of code /files over a running program. It is often a good way to show when files are being used, and or accessed, and network connections are being made.
He then talked about probes used within GDB. His purpose for a probe or my understanding of his purpose of a probe is that they are used to identify target areas where the code addresses certain data variables and where the changes are being made or updated. Probes are used as a way of defining the "target" for a certain file area to be addressed during debugging. Vlad also noted that GDB has a tendency to be buggy or crash in a Linux based environment.
Vlad also touched on Chronicle which is a framework that provides complete registry and memory level recording for linux processes and efficient queries over the recorded traces. Chronomancer is another program that offers a GUI front end for Chronicle.
Overall it was a very informative session and was definitely a unique and unparalled opportunity to watch one of the programming elites of Mozilla going through and breaking down what he does for a living.