3 ms·
Brooks, Friedman, and the banal authoritarianism of do-something punditry (2011)
- cturner 13y agoGovernment is a god-object.
- unimpressive 13y agoWould you like to support this statement? As it stands it's spam.
- cturner 13y agoThanks. There's a pattern that affects codebases, particularly when they have moved out of initial development and into maintenance. A maintenance programmer is presented with a bug or feature request. To address it, they make adjustments to existing classes to solve it, rather than refactoring the relationships between classes. Over time, functionality accumulates within one or a couple of the original architecture objects. But it's no longer really an object-oriented program. Rather, there is a 'God object' that knows about the internal state of lots of the rest of the system. A related development - the inherited data structures are stretched and stretched to meet needs of a system they're no longer suited to represent. Once a codebase crosses over into this swampland, it's very difficult to drag it out, because there's no longer any unifying principles to guide you in building a supportable application. If you throw unfamiliar programmers at it in the attempt to improve things, there's a risk you'll make the problem worse, because the key thing is to appreciate where the architecture is, and where it needs to go. New programmers won't have the context for that. Often they won't even care. I find a strong analogy with government. When a community problem presents, many people will respond, "The government should do something!" In many minds the government is a generic fix-all institution that can right all wrongs. The dynamic suits cynical politicians as much as cynical maintenance programmers. They placate people by throwing some money at the issue while it is in the media cycle. They might hire some people, or tack institutions on. This new momentum does deliver some quick results but re-enforces the dysfunction. By the time that is clear, the people who have benefited from the short-term play have moved on. Often government wasn't even an appropriate institution to be involved in addressing the problem. After a time people say, "it's impossible to [create good government|write good software]." This is completely untrue, but it's easy for that depression to set in when you let media cycles or your manager's next bonus payment drive development.
- rplacd 13y agoI was tempted to read another opinion into it - but cturner's clarification puts us in a less tired place to tread - thanks.