3 ms·
"The "worse" system (Unix) did indeed do "the right thing" eventually, even if it didn't at first. "Worse is better" systems incrementally improve by responding
by gwern 7y ago
"The "worse" system (Unix) did indeed do "the right thing" eventually, even if it didn't at first. "Worse is better" systems incrementally improve by responding to user needs. Since users got tired of checking for EINTR, the "worse" system added the functionality for addressing this pain point.
The whole thing did leave a rather large wart, though"
Which of course is exactly what RPG predicts about 'worse' systems: after a lot of pain, they will gradually evolve into doing the right thing, but probably never as well as if they had been correctly conceived from the start.
- klodolph 7y agoAnd the “better” systems don’t get a chance to evolve into the right thing, because while you can kludge together a fix for something that’s broken, it’s much harder to remove an unnecessary or extraneous feature. That, and the “worse” systems have been on the market for nine months by the time the better systems are available. I try to err on the side of underengineering systems, as long as there are no lives on the line.
- c256 7y agoI think I understand what you’re trying to say, it the UNIX/New Jersey approach came much later than the MIT/ITS approach. The conversation happened (if I recall correctly) because the ITS approach required more architecture-specific changes (to revert/restore state), while the later UNIX approach was quickly ported to new architectures. The ITS people were effectively asking “how’d you manage to handle this gnarly thing so quickly, so often.”, and the UNIX people’s response was “we punted”.