I've often heard (and said) why can't we build software the way we build bridges? People building bridges don't have the kind of disasters that we have in software. (Note: Joel on Software's blog's logo is a bridge...)
Building software is just really really hard and for some reason no matter how smart and experienced we are, projects still can easily run themselves into the ground.
"Number two, you hired programmers before you designed the
thing. Because the only thing harder than trying to design software is
trying to design software as a team...."
"I can’t tell you how many times I’ve been in a meeting with even one
or two other programmers, trying to figure out how something should
work, and we’re just not getting anywhere."
"What kills me is the teams who get into the bad habit of holding meetings
every time they need to figure out how something is going to work."
"Did you ever try to write poetry in a committee meeting? It’s like a
bunch of fat construction guys trying to write an opera while sitting
on the couch watching Baywatch. The more fat construction guys
you add to the couch, the less likely you are to get opera out of it."