This article has covered the use and abuse of TODO
. In some cases, it is
redundant; in others inadequate; in others misleading; and in yet others it
could more usefully be replaced by code. TODO
is sometimes a note written in
some personal shorthand, which, like many such notes, is in danger of becoming
meaningless to even its originator.
I have no major problem with any of these uses, though personally I avoid
them. It's the times when TODO
(or FIXME
or HACK
) gets roped in to defer
the proper treatment of a defect which make it suspect.
In Overload 68, Alan Griffiths writes:
The worst thing that can be done on encountering a problem is to ignore it on the basis that "someone else" should deal with it. The next worst thing is to bury it in a write-only "issues list" in the hope that one day someone will deal with it. If everyone behaves like that then nobody deals with anything.
Griffiths is talking about problems in a wider sense, perhaps, than this
article, but he expresses my frustration with TODO
perfectly. A search
through code for TODO
s is all too likely to reveal a "write only issues
list". Too often, FIXME
silently marks a place where we know something is
wrong, but we haven't bothered to do anything about it. Worst of all, HACK
gets deployed when we know something is wrong and we fear we might have
made it worse.
Copyright © 2004-2006 Thomas Guest |