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.
I'm happy to announce that Bill Ryan is
now a blogger here
. In addition to maintaning his
main blog
, he'll be sharing his technical knowledge here too.
If you're in the Silicon Valley area on October 27-28, check out the Silicon Valley Code Camp. The
list of sessions
looks impressive with speakers like
Jeff Atwood
and
Juval Lowy
.
http://www.siliconvalley-codecamp.com
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.
Twin Cities Code Camp -
http://www.twincitiescodecamp.com/TCCC/Default.aspx
Speakers and Sessions -
http://www.twincitiescodecamp.com/TCCC/Fall2007/Sessions.aspx
Schedule -
http://www.twincitiescodecamp.com/TCCC/Fall2007/Schedule.aspx
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\\. 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.
UPDATE (10/11/2007 4:10PM PDT): You'll need to restart the Windows SharePoint Services Timer service (OWSTIMER.EXE) each time you make any change that will effect how your code behaves (i.e. deploying a new version to the GAC, changing a config file value, etc.) in order for the change to take effect.