As organizations grow, it gets increasingly difficult to enforce process. The CEO cannot realistically check every mistake on his own and must rely on others to enforce standards. This gets expensive and explains why middle management exists.

Software helps to bridge this divide. It's arguably the biggest category of it.

Take Atlassian as an example. Just about everybody in corporate america has used Jira at some point. And just about everybody hates it. The reason it persists, despite its clunky interface, is because it enforces procedure. [0] Management can require JIRA tickets to have certain fields for documentation, to link important source code contributions, to be chained up to track deployments, and much more. This Swiss army knife of process control is extremely valuable to management. Consequently, its propelled Atlassian's stock price.

It's not just non-technical management either. GitHub Actions serves much the same for developers. You can link in tools like Code Coverage or linting to enforce testing or style changes. Because it happens in one place, everybody can see it. You can protect branches to ensure these standards are met before a code merge happens. This, again, enforces procedure.

These have the side effect of making such software extremely valuable. Imagine if you had to manually fill out some paper form or submit some lengthy canned email as part of a regular process. That would be a nightmare. It likely would be full of mistakes too. Software helps prevent this Brazil-like reality.

These types of problems will almost certainly never go away. Administrative spend never seem to shrink in size. I don't know if they ever will. As a result, software that aids in bureaucratic functions will always exist.

Part of the evergreen nature of this stems from how bureaucracies operate. By their nature, whatever efficiency they gain will be spent somewhere else. As a general rule, it is never spent on downsizing the workforce. The incentives are such that software here will always be needed.

It helps explain why software always seems to need a redesign too. The process changes. We need new windows, new forms, new workflows. The accounting software built for a 1976 DEC PDP-11 is not gonna cut it for the 1986 or 2017 Tax reforms. It will need to be rewritten. Fully internal processes are no better: no company policy ever seems to last more than a few years.

When building a new feature or new piece of software, is it making the process more standardized? Is it letting things stay status quo?

Or is it introducing new possibilities for error?

Never be in the latter bucket


[0]: And its clunky interface probably sticks around because people who actually use it for this purpose really don't like it when things change.