Like many other programmers, I have adapted to a rather cat-like lifestyle of intense activity followed by relative languor. This coincides with the cyclic nature of the industry: Either there is too much work or too little. At the moment, there’s too much work, so I’m tending to work around twelve-hour days, often more.
Of course, insomnia isn’t a problem; not with my copy of ‘SQL Server 2000 with XML’ on my bedside table. Two pages, and I am insensible, even if I pick it up at noon, after drinking strong coffee. Every doctor should prescribe this book. I recommend it unreservedly.
Definitely, insomnia isn’t my problem when I’m tackling a high workload. The worst problem is being hardly able to see the screen by the end of the day. Almost as bad is the fact that I carry on programming in my sleep. In this strange state of unconsciousness, I’m not entirely sure what I’m programming, or why. This is, I suppose, not far off the everyday work experience of the average developer. What is more alarming though is that, after putting in eight hours of sleep-programming, the whole lot gets lost on waking. Sometimes, I am even heard to cry out ‘Save, save!’ when being shaken awake in the morning.
I can normally remember nothing of what I’ve written in my sleep, but recently I seem to have been working out procedures in Transact SQL for zipping or ‘Huffmanising’ text. This was triggered off by my penultimate blog, on Teddy. I was hoping to entice other people in doing so, in order to munificently issue a glittering prize, but nobody took up the challenge. I don’t blame them, but I tried it myself to make sure it was possible and, despite my complete ignorance of the algorithms, I reduced the storage requirements of ASCII art down by 80%. Even ordinary text boiled down 60%. It is an idea that, for some reason I can’t leave alone, and I keep getting ideas for improving the method that I then have to tap in hurriedly after breakfast before the memory fades.
I’ve always wondered why it is that a programming problem that seemed so daunting the previous night has a simple solution when the morning comes. ‘The phrase ‘I’ll sleep on it’ could describe the strange way that the brain keeps doggedly chipping away at problems. Maybe one actually does remember the conclusions of all that unconscious programming effort. Now all I have to do is to work out a way of charging all that sleeping time to my clients.
Some programmers I know actually manage to charge hours spent asleep to their clients. One of the strange techniques one can acquire when being paid by the hour is to be able to sleep whilst giving the appearance of staring in intense concentration at the screen. I’m hopeless at this. Whenever I fall asleep whilst programming, I wake up with the neat impress of the keyboard on my forehead. Alternatively, I end up with my head flung back, mouth open, snoring loudly. Neither type of shut-eye inspires the confidence of ones employers.
There was a time in the IT industry, before laptops and Powerpoint, that salesmen used to employ slides and slide-projectors. The wonderful thing about these devices was that the room had to be plunged into darkness for the slides to be seen on the screen. Many a salesman must have wondered why there were so few questions about his splendid products, or why nobody laughed at his jokes, when he was giving his pitch to a roomful of developers. Once or twice, I have suddenly switched on the lights to be met by a scene reminiscent of the aftermath of the Hugenot Massacres. Still bodies slumped everywhere. Sales presentations seemed to be a universal trigger for sleep amongst IT staff. Ah me, the cruelty of technical progress.
To be fair, all this is the reaction to the demands made on developers to work ridiculously long hours. I suspect that, out there, there are others who have adapted in ingenious ways to the pressures of the job, and of course we’d love to hear from you.
Load comments