You can record whatever happens on your screen as a movie file, along with audio outputs and mic inputs. Use RecordProgrammingSessions for self/pair-analysis, article writing(esp. TDD and refactoring articles), and knowledge transition.
see http://groups.yahoo.com/group/extremeprogramming/message/61092 and the following postings in the thread.
Is there a good program to do this? Probably, the yahoo groups thread references:
Usage Examples:
Side-Effects of RecordProgrammingSessions
You perform better when you RecordProgrammingSessions.
One good side-effect of it is "reflectivity" and some kind of HawthorneEffect. In cognitive psychology, one of the popular research methods has been protocol-analysis, in which the subject does the usual cognitive activity, such as solving a math problem, thinking out aloud, that is, she says everything that she thinks, and explains what she is doing. Then we can observer the process of her thinking not only the final result of her thinking. However, an unexpected side-effect came about: self-reflectivity. As she explains what she's doing as she do the usual cognition, she did somewhat different from what she's been doing in normal time. Actually, the performance was better when she was speaking out her protocol. It's probably because she was thinking about her thinking.
--JuneKim
This sounds a lot like what goes on RubberDucking or when using a CardboardProgrammer.