Hacker News new | comments | ask | show | jobs | submit login

(Oil) Painting is a better analogy in some ways, as each project is unique, may have evolving requirements, rework, etc.

And the fact that projects are rarely "done", you just stop working on them at some point (hopefully a "good enough" point)

Mismatches include near total lack of reusability/composability, solo vs group effort, etc.

All analogies are flawed, some are useful.

I think creative writing can also be a good analogy, for the reasons you state and also it seems closer to me since we are authors of the code we write.

Stories can evolve, plots get interwoven and some cut, its never finished until publishing maybe, and even then there can always be sequels.

Anyway, we could do this all day.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact