A theory about organizations, inspired by OpenBoot.

As a company grows, which capitalism says it must, jobs change from something someone needs to do from time to time, to something a person is hired to do, to something a whole organization does. There are countless examples, but OpenBoot serves as an illustration. Like some others on this list, I'm sure, I've written a number of boot ROMs over the years, in the service of a project for which a bootable system was a prerequisite. Not hard, a day or two's work followed by some maintenance. So when I first saw a major software project in the form of a boot ROM, which may well have been my first taste of OpenBoot (it was a Sun thing, I'm pretty sure) I was bemused.

But over time I've come to understand. As Sun grew (if I have the wrong company, I apologize, but it's endemic in any industry, and if I have the details of OpenBoot wrong, ditto), for various reasons the maintenance of the boot ROM became more time consuming, until eventually it became someone's full job, and then the boot ROM department's job. But allocating people's time to tasks is an inexact process, plus once one's full focus becomes boot ROMs, one's head fills with ideas. If one works on boot ROMs, every problem one thinks about becomes one the boot ROM can solve or at least help. (This particular disease is a major infection for compiler teams.) And so the boot ROM grows and grows and grows, accumulating features that are fun for the team to work on, but in the high-altitude view not really worth it. As I said, though, it's really about allocating people's time. "I have nothing to do at the moment, why don't I put a FORTH interpreter into the boot ROM? And then I'll make it an industry standard. Anyway it's my job to do boot ROMs so what else should I do now?" But you wouldn't have done that if the boot ROM stayed at the level of the stack it should have, doing the minimum necessary to get the operating system up and running to let it do the heavy lifting. I never needed a FORTH interpreter in my boot ROM. Maybe some thought they did but did they really? And was it the right use of resources to put it there?

This is what happens in organizations. Employee performance evaluation at Google followed this same arc until the need to keep the organization responsible busy generated a process that placed a staggeringly expensive tax on the rest of the company, to the point that a secondary tax was paid in trying to figure out how to deal with the primary tax.

This then is my theory of capitalism: Things grow until they break into pieces that must each be fed individually, triggering more growth that eventually become tumors that sap the strength of the organization. Small companies can do well because they haven't grown big enough yet to face this problem. Not an original observation, but perhaps no one has used OpenBoot as its exemplar before.

Happy New Year.