The single biggest thing that's helped me context switch between projects (or return to one) has been keeping a project log.<p>To me, a project log is to documentation as Twitter is to blogging--it requires little effort but over time provides useful pointers to where you were at the time.<p>Originally I used a "one way personal wiki" to keep track, like this: <a href="http://code.rancidbacon.com/ProjectLogArduinoUSB" rel="nofollow">http://code.rancidbacon.com/ProjectLogArduinoUSB</a><p>But when I lost the server it was on I decided to re-implement it on Google App Engine and make it available to other people, thus was born Labradoc, here's an example project log: <a href="http://www.labradoc.com/i/follower/p/project-sms-text-scroller" rel="nofollow">http://www.labradoc.com/i/follower/p/project-sms-text-scroll...</a><p>It's kinda a "commit log for your day".