Am starting to gather some thoughts at http://www.arkestra.demon.co.uk/, in particular on dealing with errors and other exceptional conditions in software.
Incidentally, here's a lovely quote from Wiki:JohnFarrell: "Sometimes you just have to force people to deal with exceptional situations. Yes they are a pain to deal with and make your code hard to read, but sometimes to get people to hold the nail still you just have to start hammering their fingers."