Comment Re:His analogy doesn't work (Score 1) 748
The bridge analogy is not that great, but the house analogy holds better. Even so, I can imagine bridge failures far less catastrophic than falling down -- for instance, connecting 100 feet to the left of where it was supposed to connect.
"Readability" actually does have an analog to the house -- the blueprint needs to be readable so the other architects can quickly get in and make the desired changes. In fact, generally, the source code is far more analogous to the blueprint than to the constructed house.
Suppose you had a requirement that every bedroom on the second story have a door that opens onto the balcony, but externally a balcony is only spec'd for the front of the house. If the rear bedroom has a door that opens onto space, that's a pretty major bug. "Oh, yeah, it crashes if you click that button."
The issues of beauty being raised in the article are mostly not specifically about formatting style or the like; the beauty is in the design, and the source needs to express that beauty. The issues are also not quantifiable, and there is a grey area where reasonable disagreements can occur about whether the code in question qualifies as beautiful or not. Coders with a lot of experience, pride in their work, and a sense of esthetics will quickly see the ugly parts (or the "smelly" parts, as Martin Fowler dubbed them in Refactoring).
If you're in a situation like mine, the ugly code is all there is, and every change you attempt for the better is a grave personal insult to the project manager and other old-timers. 'cause, you know, it works and all.
"Readability" actually does have an analog to the house -- the blueprint needs to be readable so the other architects can quickly get in and make the desired changes. In fact, generally, the source code is far more analogous to the blueprint than to the constructed house.
Suppose you had a requirement that every bedroom on the second story have a door that opens onto the balcony, but externally a balcony is only spec'd for the front of the house. If the rear bedroom has a door that opens onto space, that's a pretty major bug. "Oh, yeah, it crashes if you click that button."
The issues of beauty being raised in the article are mostly not specifically about formatting style or the like; the beauty is in the design, and the source needs to express that beauty. The issues are also not quantifiable, and there is a grey area where reasonable disagreements can occur about whether the code in question qualifies as beautiful or not. Coders with a lot of experience, pride in their work, and a sense of esthetics will quickly see the ugly parts (or the "smelly" parts, as Martin Fowler dubbed them in Refactoring).
If you're in a situation like mine, the ugly code is all there is, and every change you attempt for the better is a grave personal insult to the project manager and other old-timers. 'cause, you know, it works and all.