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: * Windows Media Encoder [http://www.microsoft.com/windows/windowsmedia/download/default.asp](the preferred method of one of the posters) * CamStudio * Camtasia * Lotus ScreenCam Remember, a plain old video camera might be GoodEnough. ---- Usage Examples: * self/pair-analysis (what do I/we really do when we program?) * article writing (esp. of TDD/refactoring articles) * knowledge transition (how to use tools like cvs, eclipse, etc) * sharing practices and discussing (other people can watch and comment on your programming habits) ---- '''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.