Pages tagged analogy:

Writing Software is Like ... Writing
http://www.artima.com/weblogs/viewpost.jsp?thread=255898

But to the stakeholders -- managers, CEOs, customers, shareholders, etc. -- software development is a mystery. They don't want to know everything about it, but they want to know enough to be able to predict the behavior of software development, at least approximately.
Why do we need an analogy? We know what we do. We program computers, with all that entails. And we know what that means, because we do it. But to the stakeholders -- managers, CEOs, customers, shareholders, etc. -- software development is a mystery. They don't want to know everything about it, but they want to know enough to be able to predict the behavior of software development, at least approximately.
t replace a programmer with just any other programmer and get similar results. It also suggests that you should evaluate what kind of project you're creating when you decide who your team should be, and how it will run. The creation of mysteries and young adult fiction and so-called "bodice rippers" and the vast sea of nonfiction books all have their own particular structure and constraints (you'd be surprised at how rigid and controlling publishers are about these things, as if they are manufacturing some kind of basic commodity -- "the murder has to happen in the first 10 pages" etc.). None of these are the mass-market bestsellers ("killer apps") that are sold by the author's voice and style (few of which I find readable). The mass-market bestsellers usually don't coincide with the great writers, since most people don't have the patience to read these meta-craftsmen, just as most programmers don't read the source code for compilers.
Agreed. Interesting comments, too. I write one-liners, short stories and novels in Python. I have many unfinished novels.