Is there a way to record and playback a coding session in Visual Studio?
I've read in Prentice Hall's "Clean Code" that in the 80's Emacs was already capable of recording and playing back your coding session.  
I just realised how much I'd learn from that practice, I'd love to **profile myself!**

However I really don't think it'd be very effective to record the screen (as in video) especially because Visual Studio is already *unbearably slow* and besides it'd be boring to seek the video in a player. 

Instead, it would be really awesome to have some plugin that could record what I've coded (so not the debugging and visual designer, etc) and could play it back for me to see how much I suck and where.

Is this possible?

**Edit:** just a quote from the book to show how amusing this could be:

> *Bob enters the module.  
He scrolls down to the function needing change.  
He pauses, considering his options.  
Oh, he’s scrolling up to the top of the module to check the initialization of a variable.  
Now he scrolls back down and begins to type.  
Ooops, he’s erasing what he typed!  
He types it again.  
He erases it again!  
He types half of something else but then erases that!  
He scrolls down to another function that calls the function he’s changing to see how it is
called.  
He scrolls back up and types the same code he just erased.  
He pauses.  
He erases that code again!  
He pops up another window and looks at a subclass. Is that function overridden?*  
. . .  
Is there a way to record and playback a coding session in Visual Studio?
===

I've read in Prentice Hall's "Clean Code" that in the 80's Emacs was already capable of recording and playing back your coding session.  
I just realised how much I'd learn from that practice, I'd love to **profile myself!**

However I really don't think it'd be very effective to record the screen (as in video) especially because Visual Studio is already *unbearably slow* and besides it'd be boring to seek the video in a player. 

Instead, it would be really awesome to have some plugin that could record what I've coded (so not the debugging and visual designer, etc) and could play it back for me to see how much I suck and where.

Is this possible?

**Edit:** just a quote from the book to show how amusing this could be:

> *Bob enters the module.  
He scrolls down to the function needing change.  
He pauses, considering his options.  
Oh, he’s scrolling up to the top of the module to check the initialization of a variable.  
Now he scrolls back down and begins to type.  
Ooops, he’s erasing what he typed!  
He types it again.  
He erases it again!  
He types half of something else but then erases that!  
He scrolls down to another function that calls the function he’s changing to see how it is
called.  
He scrolls back up and types the same code he just erased.  
He pauses.  
He erases that code again!  
He pops up another window and looks at a subclass. Is that function overridden?*  
. . .  