A number of years ago, in my first job in IT, I worked for a local health care cooperative automating the data gathering of an outbound call center.
That sounds nice and sophisticated. What really happened was that I worked in a group with a bunch of little old ladies –meant in the dearest sense you could mean it – they were little, and old, and ladies. Imagine working with your mom or grandma to get the picture. They made calls to new members in the various regions to inform them of the possibilities they could expect with their new membership. My job was to automate the data gathering of the department. Each telephone call was logged, categorized, and eventually summarized so the region could be billed for the work done on their behalf.
How this was done was simple: Paper, pencil, and a bunch of little hash marks: IIIII IIIII IIIII. Each hash mark represented one telephone call – which could take place in seconds, or many minutes. They were valuable hash marks.
My job – summarize it so those hash marks could be turned into money at the end of the quarter.
I was given the process, and as I sat there with a solar powered calculator adding hash marks for weeks every quarter while a $2000.00 computer sitting on my desk burned electrons, I had this strange idea that “there’s GOT to be a better way than this.” This is where the automation came in. But automating it so a bunch of little old ladies could use it – correction – would use it – was key.
I’d been told that for this data gathering project, I would not be allowed to use a database, I would have to use Microsoft’s Excel. (that’s another story for another time) And so, technically, I had to make Excel look and act like a database, but more importantly, I had to get these little old ladies (who can be mighty stubborn, I might add) to go from things they could see and feel (pencil and paper) to things they couldn’t (electrons).
One of the little old ladies was named Georgiana. She had been diagnosed with ADD, and was quite aware of it, so she worked hard, with stacks of post-it notes all over to help keep herself on track. She also was an absolute delight to work with, and would tell me any time some code I wrote didn’t make sense. Conversely, if it did make sense, and she understood it, she would let me know – and then I knew everyone else would understand it as well.
So Georgiana became my canary in the coal mine. She would not only tell me when she didn’t understand how some functionality was supposed to work, she would also tell me when the others had trouble.
And as a result, that trouble, whatever it was, would get fixed. In human terms, they’d understand it better. In business terms, their productivity would go up. In human terms, they’d have less frustration. In business terms, there’d be fewer impediments to them doing their jobs.
All because the code was written with the customer in mind.
I wrote thousands of lines of code for that project. It eventually became a distributed data repository, on two separate, totally incompatible networks, that could quite literally only communicate via email, so the calculations happened via Excel formulas, daily reporting happened via distributed Excel and Outlook macros and Novell Groupwise automation, and summarization and reporting at the end of the quarter was done with Excel macros and linking and embedding the results into Word. This took the generation of the report down from weeks to two hours, which I thought was a bit of an accomplishment – but it became very clear to me that no matter how wonderful, how exciting, how shiny, sparkly or technically brilliant the code was, if I didn’t listen to my customers – if my code didn’t solve the problems they were facing on a daily basis, then they wouldn’t use it. If it didn’t do what the customer wanted, then all the effort I put into it was a complete and utter waste of time, both mine and the user’s. I’ll tell that story some other time – but over time, I realized that more and more, the code I wrote was written with one little old lady in mind.
It’s been 15 years now, but in every line of code I write now is a little bit written for Georgiana.
(c) Tom Roush 2009