4 ms·
I have told the above story to different audiences. Programmers, as a rule, are delighted by it, and managers, invariably, get more and more annoyed as the stor
by Dove 14y ago
I have told the above story to different audiences. Programmers, as a rule, are delighted by it, and managers, invariably, get more and more annoyed as the story progresses; true mathematicians, however, fail to see the point.
If I may venture an explanation for that, it is that the different groups identify with different people in the story.
Managers identify with the cost-cutter. It is a story about the futility and difficulty of doing their jobs, particularly in the midst of unpredictable technical problems. Above all, it is about engineers' failure to just get things right the first time. It is a tragedy.
Engineers identify with the shunting-yard folks and especially with the final brilliant solution. It is a heroic story, a story about succeeding against unreasonable demands, dominating an unkind and unfair world with a simple idea.
Mathematicians identify with no one in the story. It is a mundane story about an uninteresting and unnecessary practical problem, self-inflicted and then solved in an elementary way. The problem is not general, the solution is not interesting, and no one in the story is very smart.
- lotharbot 14y agoFor a mathematician, the problem would be much more interesting if it began "consider a train of infinite length in n dimensions", laid out requirements for spacing of m different amenities contained in disjoint cars, and ended with theorems about optimal construction of minimum-sized tiles.
- deleted 14y ago[deleted]
- pash 14y agoI wonder. And I'm curious what other readers think Dijkstra meant by that. I think, as far as the part about mathematicians goes, that the point is that once the problem is stated sufficiently abstractly and sufficiently precisely, there is no problem. Forget all the nonsense about trains and toilets and rail yards and whatnot. You start with a single linear, symmetric object, and you don't have a problem. Then you break it into two sub-objects, one of them asymmetric ... |-T-| = |-| + |T-| ... and now you have a problem. If you want the problem to go away, just un-break apart the pieces. QED. (As Dewey said, "A problem well posed is half-solved." And sometimes doesn't even exist.)
- dunham 14y agoMy take on the situation, from a mathematician point of view (M.S. in math, but very rusty): They started out with a toilet on each car and ended with a toilet on each car, the cars just happened to be twice as long in the end.