▲ | brap 2 days ago | |
One thing that’s missing: programs are mutable. A good programmer writes programs that are easy to maintain and extend. | ||
▲ | alserio 2 days ago | parent | next [-] | |
Also, programs that are easy to extend will be extended until they are not. I don't remember the name of this Law. | ||
▲ | billy-ilograph 2 days ago | parent | prev | next [-] | |
Agreed, a sign of good programming is that the program feels easy and natural to extend. But there is a corollary, I think. A sign of good software development is that the program hasn't been extended in "unnatural" ways. That speaks to the developer's discipline and vision to create something that was fundamentally relevant to begin with. | ||
▲ | andrewflnr 2 days ago | parent | prev [-] | |
Arguably, that's implicit in "large". A large program has most likely been extended several times, through its various stages of growth (the alternative being that it was written in a single pass, unlikely). This is tied to the author's point about managing complexity: complexity is the main enemy of maintainability. |