In the software engineering literature people like to make
analogies between programming and other disciplines,
typically civil engineering (e.g. programming is like
building bridges). But these analogies don’t fit very
well. Programming seems to be ill-suited to the extensive
modelling that can be done in, civil engineering, nor does
it have the same high cost of change (you can’t move a
bridge easily). Here’s an analogy that seems to fit: film making. And I’m not just saying that so I can grow a goatee and
hang out with the cool kids (you reading, Geoff? )