Rob Landley's blog thing for 2009. (2025)

When I fire up totem and tell it to play a podcast, it says ithasn't got the plugin and offers to search for it. It comes upwith a window that says "GStreamer ffmpeg video plugin" and"GStreamer plugins for mms, wavpack, quicktime, musepack". Ok,fine. There's the pointless step of clicking checkboxes to selectthem, which pops up a dialog about legal disclaimers (clicking acheckbox should not pop up a dialog, that's horrible UI design),and then I tell it install, it grinds for a bit, and then says"Software installation failed". It won't tell me what the problemwas, and there's no way to get extra information. The threebuttons are "retry", "add/remove more software", and "close".

Oh, and did I mention it won't tell me the package _names_,just the description fields? If I want to do this from thecommand line (and thus have at least a _chance_ of better errormessages), I have to figure out that "GStreamer ffmpeg videoplugin" is _probably_ the "gstreamer0.10-ffmpeg" package.I still have no idea what the _second_ package is.

You could write a "user friendliness fail howto" out of this.Automation that completely hides how the underlying thing worksis not useful if it means your car runs out of gas and itrefuses to say so (or even that gas is a thing it might everneed).

May 23, 2009

A little while ago I promised to explain:

So if open source used to be the norm back in the 1960's and 70's, how didthis _change_? Where did proprietary software come from, and when, and how?How did Richard Stallman's little utopia at the MIT AI lab crumble and forcehim out into the wilderness to try to rebuild it?

Two things changed in the early 80's: the exponentially growing installedbase of microcomputer hardware reached critical mass around 1980, and a legaldecision altered copyright law to cover binaries in 1983.

Increasing volume: The microprocessor creates millions of identical computers

The shortage of customers was changed by the microcomputer, which wasbased on the microprocessor. Intel invented the microprocessor around1971 (largely by accident; here are interviews with the engineer whodesigned it,the one who implemented,the customerthey did it for, and their boss at the time who is most widely known for havinga law named after him),but it took Intel three revisions (4004, 8008, 8080) to comeup with a usable chip, which was at the heart of the MITS Altair, the firstmicrocomputer (and the original home of the S/100 bus and CP/M operatingsystem so widely cloned later, including somewhat indirectly by theIBM PC).

The first computer to sell 1 million units was Comodore'sVic 20, introduced in 1981 andbeating the Apple II to the million unit mark by a few months. So withinfive years of the Apple II's introduction, you could potentially sell a millioncopies of the same software. This allowed the concept of "shrinkwrapped"software to emerge, which you could write once and then sell many identicalcopies of without even recompiling. Initially this supported small companiesconsisting of a programmer and perhaps a small support staff (WordStar,Richard Gariott's "Alkabeth"), but exponential growth in the hardware marketled to matching growth in the potential software market.

The first "killer app" (a software program compelling enough to drive salesof the system it runs on) was Visicalc, the first spreadsheet. It wasproduced by a two person company, Dan Bricklin and Bob Frankston, operatingout of Bob's attic. The first version shippedin October 1979, and was the main reason that Apple's less than 50k unitsits first two years were followed by a million more. (Another funquote in that article, by Bob Frankston: "it's worth notingthat back in 1979 people viewed the keyboard as an impediment to usingcomputers. After all, only secretaries could type...") Oddly enough thebook "On the Edge",which is about commodore, gives great behind the scenes informationon early Apple and Visicalc stuff. The fact commodore bought thecompany that made the processor inside early Apple machines has a littleto do with it, but mostly it was a darn small industry at the timeand everybody knew everybody else...

So the reason something like Visicalc couldn't happen before 1980 is therewas no customer base to sell shrinkwrapped software to, not even enough tosupport individual programmers operating out of their bedrooms unless theyhad a day job doing something else. You could make a living as aconsultant writing bespoke software on commission, but your customers told_you_ what to write, and owned the result which of course included the sourcecode.

The other thing about microprocessors is they were more uniform. Theold "wire up a breadboard" computers weren't just produced in lower volume,they were more easily modified at a fundamental level.

The MIT AI lab where Richard Stallman learned to program was started in the1950's with a pair of prototype computers, built by a recent graduate named KenOlsen when he interned at Lincon Labs in Boston. Both were unique, each theonly one of their kind ever built. The first was the MTC (Memory TestComputer), which only had only four instructions and was built for a singlepurpose: to stress test early "core memory" and prove it could work reliablyunder load. The second was the TX-0 (Transistor Experiment 0), Ken Olsen's petproject to prove that transistors could be made reliable enough to builda computer and memory out of them. (Early transistors were so sensitive tostatic they were even less reliable than vacuum tubes, Olsen came up with away to buffer them so they could survive normal handling and operation.)Both prototypes were heavily modified and upgraded by the students at MIT,because although they weren't very powerful theyweren't shared, either. Each belonged entirely to the AI lab 24/7, so thestudents there didn't have to make an appointment to use it or get permissionto modify it.)

Olsen went on to found Digital Equipment Corporation to commercialize hisnew transistor memory, and hired a bunch of his fellow MIT graduates to do so,finding the most useful ones came from the AI lab that had received hiscast-off prototypes. (The book "Hackers" by Steven Levy covers the foundingof the MIT AI lab. This marvelousinterviewwith Ken Olsen covers the TX-0 from the Lincoln Labs end, plus earlytransistor memory experiments, and goes on to chronicle the rise of DEC.)The TX-0 was the only one of its kind, and when Olsenfounded DEC he hired a bunch of MIT graduates and sent one of the first PDP-1systems to the MIT guys to train future graduates so he could hire them too.(The MIT guys soon wrote the first shoot-em-up video game, "spacewar" for thePDP-1, which became DEC's main sales tool for showing off the new system.DEC eventually sold around 50 PDP-1 systems.)

When DEC built its first mainframe (the PDP-6, they which shipped a total of36 machines in its entire production run), MIT of course got one. When DECupgraded the PDP-6 to the more powerful PDP-10 (about 700 total ever made),MIT's system was upgraded. That PDP-10 was the machine Richard Stallmandid all his work on at MIT.

All of these systems, from the TX-0 to the PDP-10, were heavily modified bythe MIT guys, to add new instructions and capabilities. The fact that MITnot only wrote its own operating system from scratch but customized itscomputer hardware to add extra instructions and registers, really wasn'tthat unusual under the circumstances; everybody did it back then. Thecomputers were made by wiring together individual diodes and resistors andsuch on a bread board. Wiring in a few more wasn't a big deal. But itmeant that programs written for a single machine ran _only_ on that machine,or perhaps one or two others that had been similarly hand-modified.

Microprocessors were different in that you couldn't customize theircircuitry the way you could a breadboard full of chips and wires. Thereweren't just more of them but they were also more uniform, thus softwaredidn't need to be ported between different machines of the same model,it could run out of the box. That was something new.

Only with the arrival of millions of identical microcomputers, based onmass-produced microprocessors instead of expensive hand-wired breadboards,(see the books "Soul of a New Machine" and "A few good men from Univac" formore descriptions of that era) could you write a program once and then sell theexact same program to lots of different people without porting (or evenrecompiling) it for each one of them. That's why the software in the 1960'sand 1970's was either custom stuff individually comissioned from consultants,or it was produced by hardware manufacturers in an attempt to sell theirhardware, or it was produced by the people who had thecomputers for their own use, and shared through user groups like DECUSand the CP/M UsersGroup Northwest. All this stuff came with source code.

But in 1980 Apple Inc. had a record-breaking IPO (the largest in historyat the time) based entirely on sales of the Apple II. This triggered IBM torush out its own microcomputer (the IBM PC) in hopes of squashing Applebefore it grew too big to contain. (That's an interesting story in itsown right, but a side track to the rise of proprietary software. RobertCringely's book about it, "Accidental Empires", is fairly accessible andwas made into an even more accessable PBS documentary called "Triumph of theNerds".) In 1982, "The PersonalComputer" was Time Magazine's Man of the Year. Exponential growththat continues long enough shakes the entire world.

Changing the law: Apple v Franklin extends copyright to cover compiled/assembled binaries instead of just source code.

The copyright issue changed in 1983, when theApple v Franklin rulingextended copyright protections to binary code. (The writing was on the wallin that case over a year earlier, but the decision had to be upheld on appealbefore commercial interests could seriously act on it.) Before that decision,source code was copyrightable but binaries weren't, so companies shipped sourcecode to _increase_ their ownership of the code in the eyes of the law. Ifyou just shipped precompiled binaries, you had no rights the law wouldrecognize.

The first real "voice in the wilderness" about proprietarysoftware was a kid named Bill Gates, with his 1976 "letter to hobbyists".Except that nobody took it seriously. (Richard Stallmanclaims not to have even heardabout it at the time.) People only listened at the time because MITSpaid to run the letter in a dozen magazines, and he wrote the letter becausethe world _wasn't_ like he was describing, like he wanted it to be so hecould profit from it.

William H. Gates III ("Trey" to his friends) was a rich kid and the son ofa lawyer who dropped out of Harvard (pre-law) to start a software company witha techie friend of his (Paul Allen). Gates's Micro-soft was founded (in 1975)in hopes of not merely selling software to the emerging microcomputer market,but explicitly cornering that market. Except that their tiny company couldonly afford starvation wages, to the point that both of its co-founders,Paul Allen and Bill Gates,tookday jobs at their main client, MITS for the first few years of thecompany, and their third employee (the guy their "letter to hobbyists"credits with actually writing Altair BASIC, although their official historynow differs), was a part-timer they had to lay off.

They referred to their strategy companies as "riding the bear", attachingthemselves like a remora onto one dominant hardware manufacturer after another,grabbing the software crumbs falling from that hardware market and switchingto the next when it lost its position. First they rode the Altair'smanufacturer MITS, then switched to Tandy as their meal ticket when MITS wentunder. Finally they landed a lucrative contract with IBM (because Gates'mother was on the board of directors of the Red Cross with IBM's CEO andthus IBM could do business with "Mary's Boy" even though IBM wouldn'tordinarily approve such a tiny company as a vendor because it might notstay in business long enough to complete the contract; see the book "BigBlues" for details). Along the way, they sold their software (mostly BASIC)to Commodore and eery other company that would buy it.

Ironically, the first software product of micro-soft was Basic (a languagedeveloped at Dartmouth college in 1964 and freely appropriated by micro-soft).Because it was the only high level programming language MITS offered forthe Altair, it quickly became the lingua franca of early 8-bit microcomputers,starting with the Altair clones from companies like Imsai but spreading tothe Comodore 64 and Apple II and even IBM's PC. The thing about Basic isit was an interpreted language, where the source code _was_ the programand you ran it directly. Books and magazines distributed BASIC programsby printing source code could type into your own computer. Again, allcode written in early 8-bit BASIC was open source, because _not_ being opensiply wasn't an option. The language itself enforced it.

Gates was the type of person to not only see a market opportunity inbottled water, but then consider drinkable tap water as a threat to hisbusiness and respond by trying to make tap water undrinkable.

In his 1976 letter to hobbyists, Gates was incensed that microcomputer usersmostly wrote their own software, and shared their programs freely with others.Users saw Gates as the type of person to not only see a market opportunity inbottled water, but then consider drinkable tap water as a threat to hisbusiness and complain about it. Back in 1976, he wasn't laughed off thestage: he was completely ignored.

It's a bit like the recent Time magazine article about how newspapers must startcharging for online content by a guy named Walter Isaacson. It'sconsidered a laughable idea today,when the norm for internet content is free access. But if that changes,Isaacson will look like a prophet.

What users didn't expect in 1976 was that Gates and others like him wouldrespond not only with FUD (such as "shrinkwrap licenses" which were laughablyunenforceable at the time) but by trying to change the law. Apple's 1980 IPOattracted Wall Street's attention to the booming computer industry, thesharks smelled money in the water, and proprietary interests have lobbiedcontinuously to change the law for their own financial gain ever since.(Note it's still ongoing: the software patents blowup happened in the 1990's,and the Digital Millenium Copyright Act at least claimedto make shrinkwrap licenses enforceable in 1999.Today Rupert Murdoch (owner of Faux News)is trying to implement Isaacson's ideas.)

The thing about Gates is repeated failure didn't discourage him.Here's a 1980 phone interview with a young Bill Gates (audio,transcript,context)who was incensed that a recently published book about TRS-80 programming hadprinted an annotated dissassembly of the TRS-80 ROMs, so hobbyists couldunderstand their machines better. Gates insisted those roms were his property,and nobody else had the right to look at them (let alone print out annotateddisassembly and sell it for profit), and he lobbied congress to that effect.The entire interview is Gates talking about his attempts to change copyrightlaw, back in 1980, into what he wanted it to be.

Similarly, when Microsoft belatedly noticed the internet in 1995, it triedto replace it with MSN, the Microsoft Network. (Remember that in Windows 95,the "unremovable" icon wasn't Internet Explorer, it was MSN. When that strategy didn't work, they boughta browser called Spyglass and renamed it Internet Explorer and made_that_ the unremovable icon, in a second slightly more successful effort toat least partially de-commoditize the internet.)

But back in the early 80's, it wasn't Microsoft that succeeded in changingthe law, it was Apple. The Apple v Franklin lawsuit was Apple's response to acompany (which became Franklin Ace, makers of the Speak-N-Spell) that clonedthe Apple II. Franklin's computers ran Apple software, and they used Apple'sROM code verbatim in their competing product in order to do that. The courtsdecided that Franklin had gone too far, and that copyright must extend tocover binary code to prevent that sort of thing.

Part of the reason AT&T agreed to be broken up in 1983 (implemented in1984, but agreed to in 1983) was to get out from under the antitrust regulationimposed on it by a 1956 consent decree, forbidding it from entering any otherbusiness beyond its telecommunications monopoly. It nominally owned Unix, bythen a widely used operating system, but couldn't enter the booming computerindustry as a heavily regulated telephone monopoly. When Unix first leakedout of Bell Labs in 1973, there was nothing to commercialize because therewas no market. In between, the computer industry _changed_. Unix wasopen source from day 1, and developed a vibrant community in the 1970's basedon this. (It didn't have a name for open source because it didn't need one,there wasn't any non-open-source software to speak of. When copyrightfirst became an issue for software, the term commonly used for unencumberedsoftware was "public domain".) When AT&T suddenlystarted enforcing its newly acquired copyrights, and charging _extra_for source code, it was an enormous shocking change.

AT&T wasn't alone in this, of course. IBM'sObject Code Only (OCO) policy was announced February 8, 1983(more on this), butsoftware predating that commonly came with source code, and often even thatsource wasn't copyrighted. This is why the Hercules S/370 emulator hasplenty of old public domain softwareto run, including things like the MVS operating system (see also here). Yes, even IBM's mainframe operating systemsworked by different rules back in the 1970's.

RMS tells his own story (in his own words, or biographical version) about a Xerox printer he couldn't get thedriver source to. This came as a shock to him because previously, givingsource code to any software was a matter of course. The world was changingunder him, and he didn't like change.

So when Richard Stallman founded the FSF in 1983, the same year DOS 3.0came out, he was reacting to the recent and ongoing rise of proprietarysoftware. Microprocessors created an exponentially growing hardware market,the Apple vs Franklin decision gave software authors vastly expanded copyrightpowers, and a gold rush ensued (similar to the dot-com boom of the 90's)that hired away all the "hackers" from the MIT AI lab to work in a pair ofstart-up companies attempting to commercialize LISP. While his fellow studentsgraduated and took jobs out in the booming commercial computer industry,Stallman stayed in academia as a perpetual grad student, and hid away fromthe problem as long as he could.

Kicked out of the nest: cancellation of the Jupiter project obsoletes the PDP-10 at the heart of the MIT AI lab.

The big change that forced Stallman out of his comfortable nest at the MITAI lab was the obsolescence of the operating system he used, which was tiedto specific hardware that was discontinued.

Over the course of three decades (1950's, 60's, and 70's), the MIT AI labupgraded from the tiny Memory Test Computer all the way to a PDP-10 mainframe,keeping ahead of Moore's Law (which Gordon Moore first documented in1965). Just asthe PDP-6 became obsolete and was upgraded into the PDP-10,the PDP-10 itself was over a decade old by 1980, and ripe for replacement.

To replace it, DEC prototyped a new machine called the "Jupiter project",which was roughly compatible and would thus allow PDP-10 software to be easilyported to the new system. But there were only 700 PDP-10 systems eversold, and their newest computer (the VAX, an upgrade to the PDP-11) was sellingthousands of systems per _week_.

The VAX was completely incompatible with the PDP-10. The PDP-10 (like thePDP-6 before it) was a 36-bit machine with 6 bit bytes, the VAX (like thePDP-11 before it) was a 16 bit machine with 8-bit bytes. Porting assemblysoftware from one to the other essentially required a complete from-scratchrewrite.

By 1980, Ken Olsen's DEC had now been producing and selling its owncomputers for 2 decades, and could hire programmersfamiliar with them from anywhere, so he no longer needed the MIT AI labas a source of labor. The industry was standardizing on 8 bit systems andleaving 6 bit systems behind, and the 700 customers with PDP-10 systems werealready a rounding error compared to the 600,000 PDP-11 systems eventuallysold, and the VAX looked to be even more successful. Thus DEC decided to focuson 16-bit systems, told its PDP-10 customers to migrade to a VAX instead, andcancelled the Jupiter project in 1983.

With the cancellation of Jupiter, the operating system the MIT guyshad written over the years, a giant pile of hand-coded assembly proudly namedthe "Incompatible Timesharing System" (which gives you a good idea of theAI lab's "hacker" culture), was now tied to a dying hardware architecture whichwould not be upgraded. The writing had been on the wall for years; no newstudents had bothered to learn the obsolete ITS or PDP-10 programming fora while, and the booming computer industry in Boston hired away the graduateswho had been maintaining ITS, until eventually Richard Stallman was thelast holdout clinging to the old ways as a perpetual grad student. When MITannounced they were retiring the now-obsolete and unmaintainable PDP-10/ITSsystem, Stallman's carefully insulated little bubble of ivory tower academiapopped, forcing him to respond.

Richard Stallman is not and never was a visionary. He's a reactionaryconservative trying to cling to the past, and when the rug was finally yankedout from under him he set about rebuilding that past as best he could.Some of the things he fought to preserve were indeed worth preserving, butlooking at him as any sort of guide to the future is ludicrous. He's neverbeen about the future, except to warn against it.

There are of course more questions (why would an ITS guy switch to Unix,why was the FSF as successful as it was, how do lisp and microkernels showthe dude is totally totally not a visionary, who _else_ was doing this,and where did it all go wrong), but again they'll have to wait becausethis is already long enough.

Rob Landley's blog thing for 2009. (2025)
Top Articles
Latest Posts
Recommended Articles
Article information

Author: Sen. Ignacio Ratke

Last Updated:

Views: 5948

Rating: 4.6 / 5 (56 voted)

Reviews: 95% of readers found this page helpful

Author information

Name: Sen. Ignacio Ratke

Birthday: 1999-05-27

Address: Apt. 171 8116 Bailey Via, Roberthaven, GA 58289

Phone: +2585395768220

Job: Lead Liaison

Hobby: Lockpicking, LARPing, Lego building, Lapidary, Macrame, Book restoration, Bodybuilding

Introduction: My name is Sen. Ignacio Ratke, I am a adventurous, zealous, outstanding, agreeable, precious, excited, gifted person who loves writing and wants to share my knowledge and understanding with you.