Vviewpoints
DOI: 10.1145/1897816.1897833
Article development led by
queue.acm.org
Kode Vicious
Forest for the Trees
Dear KV,
I’ve noticed that you comment a great
deal on the cleanliness of people’s
code, comments, version numbers,
and other coding habits, but you’ve
never mentioned one of my pet peeves:
people who can’t seem to name their
source trees correctly. Don’t people
who tell you, “Oh, that file is in ~my-name/project-foobar” annoy you? I
can’t imagine that they don’t.
frustrated by the trees
Dear frustrated,
There are so many things that frustrate
me—as these columns have pretty
clearly indicated—and so, yes, you are
correct. People who don’t store their
checkouts neatly and in some reasonable fashion annoy me.
GENERATIVE ILLUSTRATION BY LEANDER HERZOG
I often think that many programmers see their checkouts as they saw
their rooms as children: a private domain in which they could do as they
pleased until a parent told them to
clean things up. With the amount of
disk space available to the modern programmer, and the lack of parental supervision in most workplaces, the time
to “clean your room!” never comes.
Thus, their checkouts grow and accrete
files they call temporary but that really
should have been given a good home,
or removed, long ago.
What happens next is that you’re
in a meeting or talking with said programmer and you ask, “Hey, where’s
the source data that you made that
graph from?” or “Did you check in that
useful script you wrote last month?”
These people will invariably say, “Oh, I
meant to, but it’s just not that impor-
tant. You can just go copy it from my
tree. It’s somewhere in my home direc-
tory under my-latest-work- 17.” “ 17” is
their attempt at a version number, but
don’t expect them to have any directo-
ries labeled 1 to 16—really, just don’t.
Now you have to find the file, which you
get to do via the excellent, and often
slow, find( 1) command. Hopefully
they remembered the name of the file
or you’ll get to do multiple searches,
which is never fun. The only thing that
makes this kind of sloppiness worse is
when it is done completely in public, in
open source projects.