In my latest podcast (MP3), I read my essay "IBM PC Compatible": how adversarial interoperability saved PCs from monopolization, published today on EFF's Deeplinks; it's another installment in my series about "adversarial interoperability," and the role it has historically played in keeping tech open and competitive. This time, I relate the origin story of the "PC compatible" computer, with help from Tom Jennings (inventor of FidoNet!) who played a key role in the story.
All that changed in 1981, when IBM entered the PC market with its first personal computer, which quickly became the de facto standard for PC hardware. There are many reasons that IBM came to dominate the fragmented PC market: they had the name recognition ("No one ever got fired for buying IBM," as the saying went) and the manufacturing experience to produce reliable products.
Equally important was IBM's departure from its usual business practice of pursuing advantage by manufacturing entire systems, down to the subcomponents. Instead, IBM decided to go with an "open" design that incorporated the same commodity parts that the existing PC vendors were using, including MS-DOS and Intel's 8086 chip. To accompany this open hardware, IBM published exhaustive technical documentation that covered every pin on every chip, every way that programmers could interact with IBM's firmware (analogous to today's "APIs"), as well as all the non-standard specifications for its proprietary ROM chip, which included things like the addresses where IBM had stored the fonts it bundled with the system.
Once IBM's PC became the standard, rival hardware manufacturers realized that they had to create systems that were compatible with IBM's systems. The software vendors were tired of supporting a lot of idiosyncratic hardware configurations, and IT managers didn't want to have to juggle multiple versions of the software they relied on. Unless non-IBM PCs could run software optimized for IBM's systems, the market for those systems would dwindle and wither.