Wednesday, September 24, 2008

How to fix everything.

There's a saying in the software engineering world: "You can make a system so simple that there are obviously no flaws, or so complex that there are no obvious flaws." Right now, our banking and economic systems are solidly, and obviously, in the second category. The financial crisis that we are facing today can be blamed on Wall St. bogeymen, on greed, on deregulation, on the monetary system, or a dozen other causes, but in my view, these boil down to essentially two causes: complexity, and the excessive concentration of power. It is clear that our current means of regulating our financial systems have failed, so now is the time to discuss radical new ideas. Here's mine:

Companies could be limited to having some standard maximum number of employees.

There are a few obvious effects that such a regulatory prescription would have. The first is that it would cause assets to become much less centralized, simply because on the largest scale the management of assets takes a huge amount of manpower. The influence of any given company on the economy would be naturally limited by the amount of work the employees of that company could perform. Forcing corporations to split up into modular units would cause the distribution of both capital and influence to be much broader within society and would encourage competition and efficiency.

In any large system, modularity and information hiding are the keys to limiting complexity. Placing an upper limit on the size of companies would have the effect of making our whole economy significantly more modular; if one company providing a service were to fail, there would be numerous others to take its place. It would require companies to become highly specialized, and there would be a whole industry of coordinator companies that would be born to manage interactions of cooperatives when taking on jobs too large for a single entity. With this specialization would come greater efficiency, as well; the more that any group can dedicate itself entirely to a single goal, the more effective it can be at optimizing its business practices in pursuit of that limited set of objectives.

So, how would such a scheme be implemented? The cap on company size is obviously a value that would need to be fine-tuned over time; in the near term, the caps would be set high enough that only the largest corporations would be required to break up, but over time the cap could be lowered gradually and fine-tuned based on empirical results. This is, of course, not an unprecedented idea; trustbusting goes back to the industrial revolution, but what I am proposing would go far beyond breaking up monopolists; the goal would be gradually, perhaps over a period of decades, to lower the cap to a point where companies might be able to have say five hundred or a thousand employees, or maybe even fewer depending upon the results. It would be possible to issue a waiver for the cap to a given company for a limited period of time so that it could grow sufficiently to healthily split into smaller organizations, which would enable growth by repeated cycles of diversification followed by specialization.

There are still other benefits. Smaller organizations tend to be not only more efficient, but internally more meritocratic and more readily able to adapt rapidly to change. Furthermore, relationships between management and workers in small organizations are often more personal, which can improve working conditions.

The largest problem that this system would have to cope with would of course be how to enable projects that are too large for a single company to handle to go forward. The natural solution is to allow cooperatives to form, with a caveat - that the interaction between members of the cooperative be matters of public record. This would allow regulators to monitor such cooperatives effectively, without requiring intrusive and complex auditing of a given company's internals. If such internal auditing became necessary (say because something appeared amiss among its public transactions), the limited size of the organization would greatly simplify such an effort. Today, effectively regulating a large financial institution is all but impossible given the degree of internal complexity; with a company of 500, such complexity would be all but abolished by necessity.

In software, when a system gets too big and complex, it's time to refactor. The time to refactor our economy has come.

No comments:

Post a Comment