

Brooks, Friedman, and the banal authoritarianism of do-something punditry (2011) - a5seo
http://reason.com/archives/2011/11/22/the-simpletons

======
cturner
Government is a god-object.

~~~
unimpressive
Would you like to support this statement? As it stands it's spam.

~~~
cturner
Thanks. 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.

