Is your bug a smoker, or non-smoker?

In the spirit of the daily wtf I wanted to share this little gem with you all. Once upon a time I knew a programmer who was doing some maintenance work on a “classic” ASP issue tracking system his company had written. All of the developers who originally “wrote” [1] the system were long gone. The system apparently had a complicated UI, was quite confusing to use, and had a number of other qirks. Because it sort-of worked management were reluctant to scrap it for something better, and said programmer was charged from time to time with making enhancements to it, and fixing bugs. In spite of the “classic” ASP spagetti code he managed to craft some new features on to it, and fix some bugs, but unfortunately many times when changes were deployed they caused probelms and had to be rolled back. When I asked him (OK, it was a him) about this he explained how the code had morphed and atrophied over time. Because nobody had really understood how things worked, and becuase the thing seemed so fragile things were never removed. As an example he showed me the “Issue” table which had a number of fairly non-sensical fields for an issue tracking system, including one bit field called “smoker” (or something similar - I can’t remember the exact name). Apparently the system’s database had been “refactored” from a patient care system database and the “smoker/non-smoker” field had never been removed, so to this day in the crufty issue tracking system each issue sill had a field for recording this.

[1] perhaps “wrote” is too kind a word for what they did…