I See Dead People

Posted by Christopher Smith Sun, 02 Mar 2008 19:56:00 GMT

This article amused me in the way only someone with a name like Christopher Smith can fully appreciate.

During interviews, I always hate getting the question “Why did you become a software developer?”, because to me it’s like asking, “Why did you become a heterosexual male?”. I’m sure there are factors, both genetic and environmental, but I can’t claim to have any real understanding of them. So, when I got this kind of question early on, I would fib a bit and tell people it was because my name had gotten me mixed up in who knows how many databases, and I wanted to fix that.

There is some truth to it. When I was in grade school I missed two days of school because I was sick, but because there was another boy with the same name attending school with me, all the records showed me as present, and I was called in to the Dean’s office because he had noticed I wasn’t in his class, and he assumed I was had skipped out on his class. I once had all my Physics grades disappear because they overlapped with grades for another Christopher Smith. When I was at MIT (of all places), I was the source of much drama during rush week, because frats are obligated to tell other frats if a potential pledge is with them (imagine the confusion with multiple Chris Smith’s, sometimes at the same place, sometimes at different places). My French teacher in high school had the unfortunate case of six students named Chris in a class of twenty-two. She decided to name use “Christophe Un, Christophe Duex…”, <sarcasm> which in no way made us feel like weren’t getting individual attention </sarcasm>. I remember thinking my title as “Christophe Cinq” was a likely indication of how little she liked me, particularly since “Christophe Six” had showed up a month in to the school year. When I was in boarding school, my parents arrived for the end of my first year, and my mother ran in to who she thought was my math teacher (in fact, he’d been my teacher for the first week of school before I transferred to a different class) and almost fainted when he said my impressive performance on the final exam had “really made a difference” (my mom had correctly been under the impression that I was an A math student before I took the final). When I first visited the financial aid office in university, I felt quite the ego stroke as I was mistaken for a grad student with the same name but five years my senior. While flattering, I think it took most of the first semester to straighten out my financial aid status. In a recent election, I discovered a small flaw in the voting process: my name had been crossed off for another Christopher Smith in the same precinct. I had to write up a provisional ballot, and to this day I doubt that my votes were counted. Most embarrassing was probably when I was invited to an orientation seminar for new students on campus that was clearly intended for women (if I’d been less insecure I would have realized it was a terrific opportunity to find a date, but somehow the emasculating experience of being mistaken for a female removed whatever limited confidence I had). I think my favourite one though was when I found out how much more a product manager with my name made when a notice of a raise got routed the wrong way.

I could probably drum up a half dozen more stories, but suffice it to say, it has been an adventure walking through life with name disturbingly common amongst my peer group, and I certainly have become sensitive to issues of referential integrity and unique identifiers as a consequence (my wife remembers from a recent discussion of how the grading system worked at her school ;-). I find that most databases have far more logical constraints in them than the actual system they are trying to represent. I’m sure the personal angst from this has helped me at various points, but I think the biggest lesson I’ve learned from that is how most systems tend to have cases that fall through the cracks, and the need to identify and respond to this as best one can. Reading this article, the SSA gets a big fail from me.

With something as significant as whether a person is alive or not, corrections should be trivial. Listing someone as dead should come from a death certificate, which in turn should be tied to all kinds of personal identifiers, including name, SSN, date of birth, time of death, place of birth, etc., and the identifier for the death certificate should be tied in to the transaction that lists them as “dead” (of course, that only works if your system actually collects this information, but the fact that it doesn’t strikes me as insane). If someone challenges the notion that they are dead, it ought to be as simple as comparing the data in their death certificate against other data on record, and quickly reversing the operation in the case where it doesn’t add up (even better would be if the system notified those doing the data entry of a likely error at the time of entry). Sure there are errors in death certificates too, but it is probably pretty easy to determine that there was someone else who should have been marked dead, and this person was just collateral damage. Just name, date and place of birth ought to avoid collisions except in the most exception circumstance. Only the most exceptional cases would require significant review or effort on behalf of the “deceased” party. The system should also have an additional state between “deceased” and “alive” along the lines of “under review”. Sure, you might not hand out social security cheques to folks in that state, but you probably wouldn’t throw out their tax returns either.

Honestly, given how error prone and time consuming the system is, I have to wonder at the thinking which lead the powers that be to not streamline the process as I suggest long ago. I’m sure it makes sense in some really unfortunate way, but really, this is the kind of problem that you imagine happens somewhere else.