I recently learned that Alan Cooper recently released an updated version of About Face, About Face 3. The books covers the principles of interaction design in great depth and detail. The first version I read was About Face 2.0 and it changed the way I design software. For those who have not read About Face, you should add it to your reading list.
If you're in or near the Twin Cities in Minnesota on October 27, 2007, I recommend you visit the Twin Cities Code Camp. The list of speakers and topics looks awesome from Rockford Lhotka speaking on Build an App using WPF, WCF, WF and CSLA .NET in an Hour, to Doug Nelson speaking on An Introduction to Windows PowerShell, to William Ryan speaking on Advanced Concepts in Software Testing. I wish I could be there to see the aforementioned presentations in addition to the other ones.
Before I begin, I'd like to point out Andrew Connell's blog entry on creating custom SharePoint timer jobs. It's an excellent starting point.
The process of debugging the timer job is straight forward.
1) Since the assembly for the timer job is deployed to the GAC, you'll need to put a copy of the PDB file in %SYSTEMROOT%\Assembly\gac_msil\<Assembly Name>\<Version__PublicKey>. Once there, Visual Studio will be able to properly load the debug symbols.
2) In Visual Studio, attach to the OWSTIMER.EXE process. OWSTIMER.EXE is the Windows service that runs the timer jobs.
Once attached to OWSTIMER.EXE, any breakpoints you set will be hit when the timer job is run.