The humble MessageBox function has been a part of graphical computer programs for decades.
It’s a mostly unadorned, small, grey, pop-up, modal dialogue box that you cannot ignore – you are forced to make a choice for the program to continue. The message box has made “OK” a thing in multiple languages.
The message boxes used in classic Microsoft applications offer a few more choices for the text on their buttons, but most are, once again, either/or choices much like OK/Cancel: Yes/No, Abort/Retry, Continue/Cancel. We are dealing with computers here, remember. Computers are all about “true” and “false”. There aren’t any “kinda” or “maybe” options. Some other programming tools offer a bit more flexibility. Before it passed into programming oblivion, I taught a programming course on Oracle Forms. In Oracle Forms you could use your own text on the buttons in message boxes. The students had some laughs creating message boxes with buttons like: “Yo!”, “No way!” and “Whatever”. The functionality behind the buttons, however, was still true/false.
The messages that programmers write to display in message boxes can have serious consequences. There is a sort of urban myth among programmers about a programmer who, apparently as an attempt at humour, wrote a message box message for some obscure error in AutoCAD – a very expensive and serious engineering and design program – that began with “You idiot!”. Serious customers who had paid big bucks for AutoCAD did not find it funny and complained. The programmer was fired.
I have had my own fun – of a harmless variety – with message boxes. Many years ago a friend of mine bought a used computer and asked me to take a look at it for him. I noticed that it had Visual Basic installed so I played a little practical joke on him. I quickly created a simple little program with an input box (a close relative of the message box) that looked like a standard login screen. When the program ran the input box was displayed saying: “Please enter your name to log in”. When Todd dutifully entered his name it was saved in a variable and a message box popped up that said: “Fuck you Todd!” When I explained that it was me that had created the message and not the computer itself, we both had a laugh over it. Todd had a sense of humour.
I have to confess now, many years later, that I played a similar but practical trick on someone with absolutely no sense of humour. At the time I was working as an instructor and Lotus Notes developer at a small, independent technical college. Lotus Notes was very particular about the date format it preferred. I was having constant problems with the boss’s wife. She had gained her position, like many people in family businesses, because she was the boss’s wife. And she was constantly reminding us of the power that position commanded. She had her computer’s date format set to some obscure style that she preferred, and it was constantly crashing Lotus Notes. She, of course, kept complaining that I didn’t know what I was doing and that was why Notes wasn’t working and that she was the boss’s wife so she should be able to use any date format she wanted. She would then follow up by reminding me of the power her position commanded. Reasoning with her was fruitless. I quietly came up with a plan after doing a bit of research. I wrote a block of code that ran when Lotus Notes started on all the computers. As Notes launched it would check the default Windows date format. If it wasn’t set to the format needed by Notes, an official looking message box would pop up saying something to the effect of: “Your computer is not using the correct date format for Lotus Notes. Please correct your date format and try again.” It worked like a charm. No one else was affected, as they were all already using the correct date format, as I had instructed them. I never told anyone that I had created the message box – especially not the boss’s wife. Thinking that the computer had displayed an official message box, she dutifully changed her date format and I heard no more complaints or threats from her.
That is the power of the message box.