16 March 2009
At Google we have "story time", a regular event where a grey-beard gives a talk about events which happened in the early days of the company. It is fun to hear about old SNAFUs and it helps the rest of us to avoid repeating those mistakes.
My first employer, Ingenia Communications, did not live long enough for there to be internal story times. It cratered in the dot-bomb crash of 1998. But that doesn't mean there aren't interesting stories. And given that it has been over ten years, I figure a few of them can be told.
In 1992 Canada sent troops to Somalia in order to distribute food. During this deployment, a teen-aged Somalian looter was beaten and died while in custody. The resulting scandal resulted in the disbandment of the entire regiment, the resignation of all of Canada's the senior commanders, and contributed to the collapse of the Canadian government. As near as I can tell, it was the first time a Canadian soldier had killed anyone since the 1950s.
A report was commissioned to investigate the matter. Ingenia Communications was asked to publish the report onto the World Wide Web. Sounds simple enough: Export the document as HTML and clean it up. Then we saw the document. Two cardboard boxes arrived containing twelve bound volumes: six in English, six in French. For security reasons, the investigative board would not release an electronic copy to us (you see, such a copy might end up on the Internet or something). So we had to build one. The volumes arrived on Friday evening, the press conference was scheduled for Monday morning. It was going to be a long weekend for us.
The process involved an assembly line of employees. The first station used bread knives to slice off each page and slap it into a scanner. The second station used OCR to get a rough text version of each page, and collate the pages into a document for each chapter. The third station did proof reading to correct the OCR-generated typos. The fourth station handled restyling of the document, including rebuilding lists and inserting images. The fifth station added headers, footers, navigation links and proofed the web page against the paper copy.
As one can imagine it was a long and painful process. I set a personal record (to date unsurpassed) of 50 hours of working continuously. Our average IQ towards the end was somewhere in the 80s, but given the nature of the work, it didn't make much difference. In this state I somehow managed to write a Visual Basic application which parsed each chapter for footnotes, and added the appropriate styles and hyperlinks. This application worked well for most of the chapters, but exploded on the larger chapters when Visual Basic 3 reached its 64kb maximum string space (cumulative space for all in-memory strings). At the time I did not know Perl.
Another unusual feature was that until the press conference on Monday, this document was rated as "Level 2: Secret". The only person in the company with level 2 clearance at the time was Karen, our CEO. Therefore if we leaked the document to the media, we could not be prosecuted since we had no security clearance to break, but Karen would go to jail. As a result, Karen was unusually nice to us that weekend and made sure that there was a continuous supply of pizza available.
Our copy of the Somalia Report is still available on the Department of National Defence website. My favourite page is chapter 7: scroll down to the first list in 'Annex A' and look at the counting. Notice that the list skips from 'h' to 'j'. This bug was in the paper version of the document, and our strict instructions were that we were to produce an exact copy of everything. Checking the source code for that section reveals a comment I added:
<!-- The following typo has been faithfully recreated by the squids. -->