CacheMyWork is a handy utility that lets you reboot without losing your place in your work. It builds a checklist of currently open applications, and will restart the apps you've selected the next time you logon to the computer.
Cache My Work is great for occasions when you need to unexpectedly reboot, such as on "Patch Tuesday", after installing new drivers, or when Windows runs out of Desktop Heap, Handles or GDI Objects (which happens more often than I'd like - even with the fixes described
here).
If you're like me, you avoid rebooting your computer because it means you'll forget what you were working on. Every time I have to reboot because of some install/uninstall/patch, invariably I forget half of what I was working on because I don't remember all the docs and apps I have to reopen (those 5-15 minutes between "shutdown all apps" and "logged in, Windows quieted down" are huge opportunities for me to be randomized and lose my short-term memory cache).

News
(2008-03-22) Major update to the application Documentation
here, explaining how the app works, and documenting some of the quirks I've had to deal with so far.
Version 1.3 release is mere days away!(2007-10-08) Version 1.2 installer has been uploaded - sorry about that, I really thought I'd made it available last week!
(2007-10-05) Version 1.2 is released - now with better filters, so you're only restarting apps that don't launch automatically! Get it
here.
(2007-09-25) Version 1.1.1 is released - fixes the bug introduced in v1.1. It's available
here
Documentation
The CacheMyWork application documentation can be found
here.
FAQ
(1) How was this built?
- This application is written in .NET 2.0 using VB, and is currently using only in-box classes.
(2) What are the prerequisites?
- The .NET 2.0 CLR is required. I've developed & tested this on Windows Vista and Windows XP SP2, but I expect that it should work on Windows 2000 as well.
(3) There's some obvious flaws in your application (or its source code). Are you an amateur?
- When it comes to professional-quality code development, the answer is "yes".
(4) What are the current Bugs in CacheMyWork?
(5) What are the planned or desired Features for CacheMyWork?
- All Features that I've thought of are documented as Features in the Issue Tracker.
- If you'd like to see one of these Features implemented sooner rather than later, please Vote on that Feature in the Issue Tracker.
- If you'd like to see some other Feature that I haven't documented, please add it as a new Feature to the Issue Tracker.
- If you'd like to submit code to help speed up the process, please submit a Patch with a code sample to me and I'll do my best to integrate it as soon as possible.