• Hugo Kornelis (4/23/2010)


    I got it right, but I don't like the question.

    The QotD should be about testing our knowledge of SQL Server. Not testing our ability to use a search engine. And please don't tell me I've cheated by using one - how relevant is it that I do not recognise the paper from just the quote, or that I do not remember off the top of my head when it was published?

    I do thank Tom for the effort of posting a QotD, and about a very important (and often overlooked) issue as well - but next time, please come up with a question about what defensive programming actually is, and how we can do that in the context of databases in general and SQL Server in specific.

    Oh, but I do disagree. I see the QOD as a tool for learning more than a test of knowledge. In this case, guessing or searching out the answer is a stimulus to contemplation of the basic problem of whether it's possible to avoid errors or necessary to accept that once any system (computer program or otherwise*) reaches a certain level of complexity, it becomes more and more likely that errors will exist and that defensive measures must be taken.

    That this was recognized and studied so early in the history of electronic computers should be taken as a foundation for the discussions you propose on defensive measures. If anyone is developing an appliction or even a single program without considering strategies for reducing or containing errors, they should at least know that they're ignoring a principle that's at least six decades old.

    -----------------

    * If I were designing a data processing / info technology ciriculum, I'd be sure to include at least one course using Systemantics: How Systems Work and Especially How They Fail[/u] by John Gail. Its example cases come from a number of disciplines, but are described in plain terms, intended to reach lay readers.