Rewarding the wrong guy

25.04.2006
Many years ago I was hired as director of data processing (nobody called it IT in those days) for a large PBS TV station. The job title sounds grand, but in reality it was only a two-person department -- me and my assistant, Jim.

Then as now, the highest priority at PBS was fundraising. In those ancient days before structured query language, we had to use custom programs to sort through the tape master file and pull out lists of contributors who fulfilled various criteria to distribute to the fundraisers. Because each request required a separate pass -- at two and a half hours per pass -- this process took forever. So I decided to develop my own little language to select multiple contributor subsets on a single pass, and then write a compiler to turn the statements into assembler, in memory. Jim thought I was nuts, but I was pretty sure that if it worked, my boss would reward me. On top of which, I was excited by the challenge.

I spec'd out the program and began writing code whenever I had time left over from my other duties. I found myself working until 9 or 10 p.m. every night, so I asked Jim to help me with a second app to send the output from my program to be printed on just about any form. He refused, explaining that if I wanted to waste my own time, it was my business, but not to expect him to help.

While I was developing the software, it was business as usual, sorting through the master once for each request. Requests got backed up. Priorities had to be assigned. Nasty fights developed over whose contributor selection was more important and should be run first. Jim and my boss scheduled meetings to sort out the mess.

After nine months, my two programs were complete, and after I cleared up a few bugs, they seemed to do quite well on my test runs. In the meantime, my boss promoted Jim to be his full-time assistant. Frankly, I was glad to get him out of my hair.

After Jim had been on his new job for a week, he brought down about 50 requests for various contributor lists to be printed on different output forms. I entered the requests onto punch cards, and after one pass through the master, we had a single tape with all the selections on it. We sorted them into various sequences and printed them out. From receipt of the request to distribution of the output, the whole process took less than a single day. Not surprisingly, the fundraising staff was astonished ' and overjoyed.