• Tag Archives technology
  • ‘IBM PC Compatible’: How Adversarial Interoperability Saved PCs From Monopolization

    Adversarial interoperability is what happens when someone makes a new product or service that works with a dominant product or service, against the wishes of the dominant business.

    Though there are examples of adversarial interoperability going back to early phonograms and even before, the computer industry has always especially relied on adversarial interoperability to keep markets competitive and innovative. This used to be especially true for personal computers.

    From 1969 to 1982, IBM was locked in battle with the US Department of Justice over whether it had a monopoly over mainframe computers; but even before the DOJ dropped the suit in 1982, the computing market had moved on, with mainframes dwindling in importance and personal computers rising to take their place.

    The PC revolution owes much to Intel’s 8080 chip, a cheap processor that originally found a market in embedded controllers but eventually became the basis for early personal computers, often built by hobbyists. As Intel progressed to 16-bit chips like the 8086 and 8088, 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.

    IBM’s success prompted multiple manufacturers to the market, creating a whole ecosystem of Intel-based personal computers that competed with IBM.

    In theory, all of these computers could run MS-DOS, the Microsoft operating system adapted from 86-DOS, which it acquired from Seattle Computer Products, but, in practice, getting MS-DOS to run on a given computer required quite a bit of tweaking, thanks to differences in controllers and other components.

    When a computer company created a new system and wanted to make sure it could run MS-DOS, Microsoft would refer the manufacturer to Phoenix Software (now Phoenix Technologies), Microsoft’s preferred integration partner, where a young software-hardware wizard named Tom Jennings (creator of the pioneering networked BBS software FidoNet) would work with Microsoft’s MS-DOS source code to create a custom build of MS-DOS that would run on the new system.

    While this worked, it meant that major software packages like Visicalc and Lotus 1-2-3 would have to release different “PC-compatible” versions, one for each manufacturer’s system. All of this was cumbersome, error-prone, and expensive, and it meant, for example, that retailers would have to stock multiple, slightly different versions of each major software program (this was in the days when software was sold from physical retail locations, on floppy disks packaged in plastic bags or shrink-wrapped boxes).

    The PC marked a departure for IBM 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.

    As IBM’s PC became the standard, rival hardware manufacturers realized that they would have 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.

    Phoenix had an answer. They asked Jennings to create a detailed specification that included the full suite of functions on IBM’s ROMs, including the non-standard features that IBM had documented but didn’t guarantee in future versions of the ROM. Then Phoenix hired a “clean-room team” of programmers who had never written Intel code and had never interacted with an IBM PC (they were programmers who specialized in developing software for the Texas Instruments 9900 chip). These programmers turned Jennings’s spec into the software for a new, IBM-PC-compatible ROM that Phoenix created and began to sell to IBM’s rivals.

    These rivals could now configure systems with the same commodity components that IBM used, and, thanks to Phoenix’s ROMs, could also support the same version of MS-DOS and the same application programs that ran on the IBM PC.

    So it was that IBM, a company that had demonstrated its expertise in cornering and dominating computing markets, was not able to monopolize the PC. Instead, dozens of manufacturers competed with it, extending the basic IBM architecture in novel and innovative ways, competing to find ways to drive down prices, and, eventually, giving us the modern computing landscape.

    Phoenix’s adversarial interoperability meant that IBM couldn’t exclude competitors from the market, even though it had more capital, name recognition and distribution than any rival. Instead, IBM was constantly challenged and disciplined by rivals who nipped at its heels, or even pulled ahead of it.

    Today, computing is dominated by a handful of players, and in many classes of devices, only one vendor is able to make compatible systems. If you want to run iPhone apps, you need to buy a device from Apple, a company that is larger and more powerful than IBM was at its peak.

    Why have we not seen an adversarial interoperability incursion into these dominant players’ markets? Why are there no iPhone-compatible devices that replicate Apple’s APIs and run their code?

    In the years since the PC wars, adversarial interoperability has been continuously eroded.

    • In 1986, Congress passed the Computer Fraud and Abuse Act, a sweeping “anti-hacking” law that Facebook and other companies have abused to obtain massive damages based on nothing more than terms-of-service violations.
    • In 1998, Congress adopted the Digital Millennium Copyright Act, whose Section 1201 threatens those who bypass “access controls” for copyrighted works (including software) with both criminal and civil sanctions; this has become a go-to legal regime for threatening anyone who expands the functionality of locked devices, from cable boxes to mobile phones.
    • Software patents were almost unheard of in the 1980s; in recent years, the US Patent and Trademark Office’s laissez-faire attitude to granting software patents has created a patent thicket around the most trivial of technological innovations.

    Add to these other doctrines like “tortious interference with contract” (which lets incumbents threaten competitors whose customers use new products to get out of onerous restrictions and terms of service), and it’s hard to see how a company like Phoenix could make a compatible ROM today.

    Such an effort would have to contend with clickthrough agreements; encrypted software that couldn’t be decompiled without risking DMCA 1201 liability; bushels of low-quality (but expensive to litigate) software patents, and other threats that would scare off investors and partners.

    And things are getting worse, not better: Oracle has convinced an appeals court to ban API reimplementations, which would have stopped Phoenix’s ROM project dead in its tracks.

    Concentration in the tech-sector is the result of many factors, including out-of-control mergers, but as we contemplate ways to decentralize our tech world, let’s not forget adversarial interoperability. Historically, adversarial interoperability has been one of the most reliable tools for fighting monopoly, and there’s no reason it couldn’t play that role again, if only we’d enact the legal reforms needed to clear the way for tomorrow’s Phoenix Computers and Tom Jenningses.

    Images below: IBM PC Technical Reference, courtesy of Tom Jennings, licensed CC0.

    Source: ‘IBM PC Compatible’: How Adversarial Interoperability Saved PCs From Monopolization | Electronic Frontier Foundation

  • Apropos Technology (1984)


    Source: Commander – June 1984

    I used to love looking at these hardware ads. Today when you buy a computer, it has just about every interface that most people would need (everything is mostly USB anyway). But in the 1980s, you needed some sort of interface add-on for just about everything. Want a printer? Make sure you get the right interface. A modem? Might need an additional interface for that too. Then there were all those non-standard RAM expansions…

    In this ad from the June 1984 issue of Commander magazine, you can see just a few of the multitude of hardware expansions available for Commodore 8-bit computers. For example, for the VIC-20 you could get ~27K of memory for only $80! Then there were more obscure things like a cartridge switcher for the Commodore 64.

    Then there are those printers. I can’t believe how much a printer used to cost. What is essentially a typewriter modified to work automatically with a computer cost $600 to $700 and that was a lot more money in 1984 than it is now. If you wanted something designed from the ground up to be a printer and that could print at more than a few characters per second, expect to spend more…at least in the early 1980s.

    I am not at all familiar with Apropos Technology but there were probably thousands of small hardware and software dealers like this one advertising in magazines throughout the 1980s. Most of them didn’t last very long (like this one as far as I know) but some would become well known.

  • The Internet Revolutionized Communications, But That’s Just the Beginning

    Because of the Internet, our lives are significantly different. Writings on any topic, no matter how obscure, can be found with a quick Google search. Citizens can challenge powerful authority figures such as the police by publishing videos of their misdeeds. Remote workers can participate fully in company life, and relatives can video chat each other cheaply from nearly anywhere in the world.

    Yet, these innovations are only a fraction of what the adopters of the early Internet hoped to accomplish. Google searches and blog posts are innovations of a particular type: innovations in communication. That is, the rise of the Internet has revolutionized publishing. Anyone can be a creator and distributor of content, and anyone can access and read it. However, a subset of early Internet adopters (who go by many names: cypherpunks, crypto anarchists, and Internet Exceptionalists, to name a few) thought the Internet would go further. They thought we would have an Internet revolution in economics and in law.

    Instead of relying on government-issued money, we would have digital cash, the ability to pay any person on the Internet instantly and anonymously. Instead of being regulated by our brick-and-mortar governments, we, the new settlers of the Electronic Frontier, would make our own rules.

    These were the expectations of the Internet as of 1994 or so. What happened? Life has changed, certainly, but in the United States, we still use US dollars and US law. Perhaps these ideas were only fantasies.

    But maybe these ideas were merely ahead of their time. By building on advances in cryptography and distributed systems, blockchain technology promises a future with globally available digital cash, tamper-proof property records, auto-enforced commitments, and even private law. In this piece, I’ll explore these hopes for the Internet, the attempts that failed, and the future possibilities of blockchain technology.

    Crypto Anarchists Declare the Independence of Cyberspace

    In 1996, John Perry Barlow, co-founder of the Electronic Frontier Foundation and lyricist for the Grateful Dead, wrote a grandiose declaration of independence. “Governments of the Industrial World,” he wrote, “you weary giants of flesh and steel, I come from Cyberspace, the new home of Mind.”

    He argued that cyberspace represents a new frontier, a place separate from where our bodies live. Moreover, on the Internet, geographic borders (the usual markers of where government power begins and ends) don’t exist. In Barlow’s view, the citizens of cyberspace are subject to “increasingly hostile and colonial measures [that] place us in the same position as those previous lovers of freedom and self-determination who had to reject the authorities of distant, uninformed powers.” His solution? “We will create a civilization of the Mind in Cyberspace,” he proclaimed. “May it be more humane and fair than the world your governments have made before.”

    Barlow’s declaration had its detractors. As David Bennahum put it, “I’m wondering what it means to form a social contract in cyberspace, one with the kind of authenticity and authority of a constitution. It sounds great in theory, but I don’t actually live in cyberspace: I live in New York City, in the state of New York, in the United States of America. I guess I’m taking things too literally. Apparently my mind lives in cyberspace, and that’s what counts. It’s my vestigial meat package, also known as my body, that lives in New York. Government, geography, my body: all are obsolete now thanks to ‘cyberspace, that new home of mind’