Feeds

Verity Stob - programming's funniest memoir

DOS was hell. Then came Windows

  • alert
  • submit to reddit

Security for virtualized datacentres

Review As anyone who's ever done it professionally knows, programming computers isn't as glamorous as they make out in the movies. Take for example, Independence Day, where the hero lashes together a program in 30 minutes and conjures up a piece of code that saves the world. Have you ever seen anyone do in that real life? And did you bill them for the full hour?

Or take another glamorous example of the mercurial codesmith-as-shamen. In Po Bronson's Nudist On The Late Shift - one of many books of the dot.com era that tried to persuade us work was simply another form of leisure, the eponymous hero is a programmer so dedicated to his task that he forgets to put his clothes on. And he's so vital to the organization, no one minds.

But if this was really happening - what would you think? You'd ask yourself, what would drive a man to toil over a computer, in a deserted building, stark naked? Just what would possess a man to lose his dignity like that? The lonely soul must have been tearing his heart out. About, what exactly?

Well, what was probably going through the mind of the nudist at that very moment can be found on page 203 of this marvelous book, by Verity Stob. He was probably thinking something like this.

Once upon a time there were three special COM string types: BSTR, _bstr_t and CComBST. BSTR was the most straightforward: it was a typedef for a pointer to a wchar_t, and w_char_t was a typedef_ of a 16-bit Unicode character. Therefore BSTR was a Unicode equivalent of LPSTR [which is what Microsoft called strings in Win32].

Ha! Got you there. BSTR was no simple null-terminated string; rather it had a secret length count and extra null terminator, and was allocated and freed with special functions. One was not supposed to know the format of its contents, and it was not obvious how you were supposed to make conversions to /proper/ strings. [Which in any case, would break the 'make no assumptions about content' rule].

But why manipulate BSTRs as pointers? The answer was "Yes, of course it was a natural for a class", which was two were supplied, "A _bstr_t object," said MSDN in its _bstr_t page, "encapsulates the BSTR data type," whereas the entry for CCombSTR began "the CComBSTR class is a wrapper for BSTRs".

Both ignore Bruce McKinney's MSDN-bundled, and therefore officially sanctioned 1996 article "Strings the OLE Way" where he proposed a BSTR wrapping class of its own, called ermmm, String.

Well, when run time error hilarity ensues, do you wonder why a programmer would rip his clothes off - wouldn't you?

Here then is the grim reality of the code face, once the marketeers and consultants have taken their colored UML diagrams down and departed. Somebody has to keep our machines running.

For 17 years a mysterious English lady called Verity Stob has been chronicling the dilemmas of people who do on a monthly basis - with amazing felicity, wit and patience, and here are her columns in one place for the first time, in a real paper book.

Verity Stob is to computer programming what the BOFH is to network administration. Both are so acutely well observed, and so well written, that like The Office, enjoying them causes anguish as well as giggles. Both are consistently funny, truthful and inventive not just occasionally, but year in and year out.

But there, the similarities end. Verity Stob's humor is in the stoic British tradition of a Tony Hancock, fiercely moral but utterly non-judgemental. (With only one exception). Faced with libraries, languages, frameworks and tools that don't make sense, often accompanied (as we see above) by documentation that doesn't exist or really shouldn't have in the first place.

Systems programming has its own folklore, in the Jargon File. But for Windows programming - the grim toil undertaken by the rest of the programming world? Verity Stob is its Queen and its chronicler.

There are great flights of fancy, such as Brunel applying for a C++ job, or a sentient Google cluster, or a superdense history of computing - the funniest ever written. Or her Beaufort Scale of PC Decay, which is so well observed that anyone who's used a post-Windows 3.0 PC will recognize each stage.

Cruft Force 1: "New" ... "The mouse does the poltergeist trick where, with the actual mouse stationary, it drifts three inches due east and then stops. For no reason at all..."

... Cruft Force 3: "Lived In" ... "One time in seven when the user starts word or other Office 2000 app, instead of running it pretends it is installing itself for the first time and starts a setup program" ...

... Cruft Force 8: "Decrepit": "...The SETI screensaver overnight creates 312 copies of itself in an impressively expanded system tray that fills half the screen"...

We recommended this to Apple to use instead of their silly "Twitch Over From Windows" campaign, but really it should be etched onto the side of space probes to warn advanced extra-terrestial civilizations that if they get any closer to Earth, they face asymmetric warfare.

Stob saves plenty of scorn for middle management and the schemes they introduce to justify their positions.

Especially memorable is the "code review" - a fad in the early 1990s, where Verity is upbraided for failing to record the return value of a printf() statement, but flirts her way out of trouble. And any Microsoft Certified Professional will recognize the BSY or "Bill Says Yup!" examination. Or level 2, BSYI, the "Bill Says Yes Indeedy" exam. The ISO 9000 program gets repeated attention, too.

Verity's BFG is the literary parody, and we've praised the History of the Borlandites epic here before, faithly capturing the rhythms of the King James I Bible. There are many more here, but the pomes are probably the best. These are incredibly hard to do well. Auden's Night Mail is note-perfect, and you can imagine Verity's excitement when she discovered that Longfellow's Song of Haiwatha borrowed its meter from the Finnish national epic Kaleva.

Finnish, you say? Away she goes.

In a city called Helsinki
Capital of icy Finland
Where the days are dark in winter
Where the nights are bright in summer
Where no mother's son drops litter
(Finns are very down on litter)
Dwelt a Swedish-speaking youngster
By the name of Linus Torvalds
"Linus" being Shulz for blanket
"Torvalds" simply meaning Torvalds

Although Verity says she wants to rebuff, in advance, any suggestions that the collected columns resemble a social history of computing, it's still an amazing potted history of man's inhumanity to man in the name of programming. If the lady could curate a computer museum, what a place it would be. And section two, "1995-1999: The Rasp of The Modem", could give it its name. Modern historians forget what a gruesome task programming the x86 segmented architecture using MS-DOS interrupts really was. And then how good that suddenly looked when Microsoft introduced OLE and COM. Stob finds an article in the Microsoft-published Developer Network magazine (MSDN) that begins, "I love COM. COM is good. Like a fine pilsner or ale, COM never disappoints. In fact, the more I look at COM, the more I like it.”

(And here it is. And look, the lunatic who wrote it is still causing mayhem - only he now works for Microsoft!)

Years later, after Microsoft discontinues OLE and COM, Verity finally encounters an example that works.

"I for one still feel a thrill of excitement and surprise when Word does what I asked it to, often followed by a second thrill, of a different kind, when it abruptly stops doing so.

For a long time the big problem with Automation, in my opinion, was the lack of robust and realistic examples showing what it could do—especially where Outlook was concerned. Happily this shortcoming has in recent times been addressed, and addressed in spades.

Of all the script viruses, “I Love You” is still my preferred source of useful snippets for manipulating the Outlook address book, even if its author does insist on spelling mail “male.” By the way, ILY also contains some good stuff demonstrating the VB file system object - I would lobby for its inclusion in MSDN, but I suppose it is too late now.

Lovely. And true.

About Verity herself, little is known - except that she has an older sister, Parity Stob. But this might well the funniest book written about computing, and you should treat yourselves without delay. ®

Buy this book at Reg Books

New hybrid storage solutions

More from The Register

next story
Every billionaire needs a PANZER TANK, right? STOP THERE, Paul Allen
Angry Microsoftie hauls auctioneers to court over stalled Pzkw. IV 'deal'
Apple's Mr Havisham: Tim Cook says dead Steve Jobs' office has remained untouched
'I literally think about him every day' says biz baron's old friend
Flaming drone batteries ground commercial flight before takeoff
Passenger had Something To Declare, instead fiddled while plane burned
Cops apologise for leaving EXPLOSIVES in suitcase at airport
'Canine training exercise' SNAFU sees woman take home booming baggage
WRISTJOB LOVE BONANZA: justWatch sex app promises blind date hookups
Mankind shuffles into the future, five fingers at a time
Jony Ive: Apple iWatch will SCREW UP Switzerland's economy
Apple's chief designer forgot one crucial point about overpriced bling
prev story

Whitepapers

Secure remote control for conventional and virtual desktops
Balancing user privacy and privileged access, in accordance with compliance frameworks and legislation. Evaluating any potential remote control choice.
Saudi Petroleum chooses Tegile storage solution
A storage solution that addresses company growth and performance for business-critical applications of caseware archive and search along with other key operational systems.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.
Providing a secure and efficient Helpdesk
A single remote control platform for user support is be key to providing an efficient helpdesk. Retain full control over the way in which screen and keystroke data is transmitted.