Being brought up in an Irish Catholic environment in the 1960s meant that life was full of religious and moral absolutes. If you were good you’d go to heaven (with some time in purgatory a likelihood) whereas protestants would go to hell. Black babies, who never had the opportunity for redemption, would go to limbo (it was only in 2006 limbo that limbo was abolished). And I can recall the Irish missionary priests who came to school collecting for the black babies – peer group pressure meant that the 12-sided 3d coin from your pocket money was the expected contribution. (The local catholic junior school, incidentally, hadn’t been rebuilt after being bombed in the war which meant we had the upstairs classroom in a protestant school – and we had staggered breaks so we wouldn’t mix. Little did we realise in the annual ‘Wessie Road’ upper vs ‘Wessie Road’ lower grudge football matches that the the over-the-top tackles were reflecting disagreements over the Virgin birth and Papal infallibility).
Now although I have already confessed to losing my religion the Jesuits may well have been right in their views on the power of indoctrination in early years. So although I no longer believe that I must not eat meat on Fridays, I am aware of the meaning and power of the word must and can differentiate it from should.
Such an understanding is very relevant in the works of standards. If a programming language requires statements to be terminated with a “;” then you must do so, otherwise your progam with fail (or, as is often said these days, FAIL). It’s not a fuzzy choice – it works or it doesn’t. Period.
But it seems that the meaning of must is slowly being lost. This first struck me several years ago when UKOLN was involved in the development of the standards and guidelines which support the national NOF-digitise programme. We were told that the document should state that “All Web sites must be available 24×7” (or words to that effect). Our protestations were ignored – until projects reported that responses to the invitation to tender were rather over budget (to put it mildly). We then described that 24*7 availability requires duplication of servers, backup networking capacity, backup power supplies, etc. and was only likely to be required by international organisations. It subsequently turn out that the requirement was that servers should not be turned off at 5 pm on Friday evenings, as had been the case in some circumstances in the past. The document was updated with the mandatory requirement being replaced by “Projects should seek to provide maximum availability of their project Web site” – as there was a contractual requirement to implement all of the ‘musts’ in the document this was needed in order to safe the entire NOF-digi budget being used to ensure 24×7 access for a single project!
Now I recently asked the question Is The UK Government Being Too Strict? as it similarly seemed to be requiring a must in circumstances in which the evidence suggests that such strict conformance very seldom occurs.
Is this just me and my background, I wonder? When I see the word must in a standard, I think it really means must – otherwise you’ll be dammed forever in a non-interoperable hell.
But maybe I should chill out a bit? Maybe when I read must I should think of the kind friendly maths teacher I had at school who told me I should try harder, but he knew that it was sometime difficult, so he wasn’t too concerned if I gort it wrong. After all, I’ll probably find it easier in the future.
So tell me, are there policy makers and authors of standards and specifications who really do feel that must means must, whereas the developers interpret must as should? Is the problem that we have a non-interoperable mix of religions involved?