I was blessed — or cursed, I suppose, depending on your point of view — to have my first “real” programming job in the medical field. I wrote software which managed the processing of human tissue (knees, fascia lata, femurs, etc.) for implantation into human patients. I was very young and very stupid at the time — thank God — so I only barely understood the importance of what I was doing.
Thirteen years later I have a much greater respect for human life and its frailty and value… much, much more than I could possibly have had then. All I really knew at the time was that mistakes could not be tolerated, because human lives were at stake. (No pressure for a kid just out of college that spent most of his off hours drunk and playing MTV Snowboarding on a Playstation.) It’s a damn good thing I didn’t know then what I know now or I never would have been able to handle the crushing responsibility.
If you lived in the United States and received a new anterior cruciate ligament, or a femur, or any piece of human tissue, really, between about 1996 and 2000, there is a very, very good chance that my software played a role in your surgery. (Yes, as a matter of fact, that does include Stephen King. When his jaw was shattered by a collision with a van in Maine, surgeons used human tissue from my company in Florida to rebuild his face.) On more than one occasion the software I developed was reviewed in Atlanta by FDA officials. Every time I wrote a new function, or changed the color of a button, or re-sorted a column in a report, I had to have the revision analyzed and debated and get fourteen signatures before I could move the change into production. Every time I renamed a column in a database table, someone’s life was at stake.
So I try to write pretty good software.
There was no room for error. There was no such thing as “a mistake”. If a ten-year old girl is sitting on an operating table having a new tibia implanted because cancer has ravaged hers, it would have seriously sucked to get a call from a nurse saying that the surgery had to be canceled because a measurement was off by two-tenths of a millimeter because I allowed someone to enter the wrong value in the screen of one of my programs, or because my software had a mathematical error. Perfection was not a goal; it was the only option.
These days the programs I design and manage are far less dangerous. Mainly I produce video games and websites for little kids who want to kill each other or call each other “douchebag” on the Internet. Or, more often than not, who want to get a date. The long-term impact of these things is non-existent. Most of them will be forgotten before the next episode of House airs on FOX.
But I still loathe errors. I cringe when I see a typo or when a dinosaur is ten pixels taller than he should be. I get insanely upset if a form allows a user to enter a credit card expiration date which has already passed. I don’t understand what allows programmers to release software which they know has a bug… or even if they simply suspect that it might have a bug. And it bothers me when other people don’t care as much as I do.
There are two little holes in the plastic lid that they put on your cup at Starbucks. One of the holes is an air-release aperture which lets you sip without glugging. The other, larger hole is the one you put against your lips to drink your coffee. Every Starbucks paper cup has a seam running vertically along the side. If the big hole is within a centimeter or two of that seam, then — more often than not — when you sip, it will produce a drip. That drip will invariably land on your shirt or your pants. This is a bug in the cup, as far as I’m concerned. It’s a design flaw which shouldn’t exist.
It can be avoided, though. All you have to do is make sure that the big hole is not aligned with the seam. It’s incredibly simple to check that the hole is not over the seam, and every barista should be aware of this every time they serve a cup of coffee. But most of them don’t. As far as I can tell, most of them have no idea that this design flaw exists.
So I tell them. Every time. Every single time I get a cup of coffee from Starbucks, if the big hole is over the seam I make a point to say, “Excuse me,” while removing the lid and replacing it so it won’t drip on my shirt. “Just so you know, you can’t put the hole over the seam. Otherwise it will drip sometimes and get coffee on your shirt.” I say this as sweetly and non-confrontationally as possible. I’m not trying to be rude or be a jerk or be a problem customer. I’m trying to make sure that the next customer — or the fortieth customer in line — doesn’t spend a day in the office with a coffee stain on his shirt.
Most of the baristas say, “Oh, I didn’t know that,” which I think is a tragedy. (This should be something they teach on Day One of Starbucks Barista Training!) Most of the baristas are happy to learn something new which will make them better at their job. But every now and then a barista will just look at me blankly, as if I’ve just told them that the square root of two is an irrational number. They will not thank me or even acknowledge me, just move to the next customer.
That’s fine.
Sometimes, however, they will argue with me.
“They don’t teach us that,” they’ll say. Or, worse, “That’s not part of my job.” They say these things as if either of those responses absolves them completely of any responsibility to care.
The worst response I ever received, though, was, “Yes, I usually do it that way.” That one left me speechless.
I have never claimed to be perfect. I screw up constantly. But never, ever, never do I not do my best.
Vince Lombardi said, “Winning is not a sometime thing; it’s an all the time thing. You don’t win once in a while. You don’t do things right once in a while. You do them right all the time. Winning is a habit.”
That’s how I try to live.
first, what a beautiful reflective essay. second, i’m with you on this one. and it’s one of the reasons you’re a pleasure to work with.