{33}{56}Ouch! {56}{91}[laughter] {111}{155} Geh... Let go! {545}{645}Eh, välkomna allihopa hit, till DFs föreläsning med Richard Stallman. {645}{710}Eeh, lite praktiska saker innan vi börjar. {710}{764}Eeh, man får inte lov att äta och dricka härinne {764}{796}så att det går till så. {796}{848}Eehh... {848}{987}[laughter] {987}{1036}Samma regler gäller för alla. {1036}{1066}Eehh... {1066}{1077}Japp! {1077}{1309}Eh, efteråt kommer det att, eh, säljas lite böcker och saker ute i foajen där, så att, eh, om man vill [inaudible] finns det ett bord där [inaudible] om ett litet ögonblick. {1309}{1387}Eeh, de som vill fotografera kan göra det efteråt {1387}{1431}det kommer att finnas en möjlighet för dom att göra det {1431}{1449}på slutet {1494}{1689}Det kommer inte att vara en paus, under föredraget, så att [inaudible] tills dess det är klart. Så. {1689}{1759} Eeh, very welcome, to us and... {1759}{1788}What did you say? {1788}{1842}[laughter] {1842}{1955}Eeh, welcome, and please start [inaudible] {1955}{1976}"Please start now"? {1976}{1984}Yep! {1984}{2015}[laughter] {2015}{2031}Okay. {2031}{2141}[mumbling] {3045}{3079}[sound check] {3344}{3422}Please raise your hands if you cannot hear me. {3422}{3472}[laughter] {3472}{3680}You see, if I get laughter from all around the room then I know the system is working. {3680}{3888}Now you might wonder why, uh, English law makes such a big fuss about property rights. {3888}{4039}Well, the reason is that they, they had to have proper tea rites every afternoon. {4039}{4243}[laughter] {4243}{4293}Well, {4293}{4442}I'm here to speak about the GNU project and the Free Software movement. {4442}{4696}And how we developed a free operating system that millions of people are using and nobody knows. {4696}{4916}But I should start by explaining what led me to start the free software movement. {4916}{5228}Back in the 1970's, I had the good fortune to be part of a community of hackers who shared software. {5228}{5314}We developed software and we shared it. {5314}{5535}And I was working for the MIT Artificial Intelligence Laboratory, which was the center of this community; {5535}{5776}all the software we used there was part of the community, it was a whole operating system that had been written by the lab's hackers. {5776}{5950}Uh, and when I joined in 1971, my job was to improve the system. {6079}{6424}So within this community, anytime you saw something interesting on somebody's screen, you'd say: "Hey, what it that?", and he'd say "That's the new FOOBAR program which we got from Stanford, it's in the 'FOOBAR' directory." {6424}{6554}And, in that directory you would find the executable that you could run, {6554}{6702}and the source code that you could read and study, so you could learn how they solved those problems. {6702}{6791}And you could find...oh, puh, if you, wouf, sorry. {6791}{7019}If, if in a running the program you got ideas for how to improve it you could go to the source and start adding those improvements. {7019}{7223}And perhaps even, you might want to *cut out* a part of the source code to put it into some other program you were writing. {7223}{7329}We used to call that "cannibalization". {7329}{7483}Uh. Nowadays, the academics who write about it call it "code reuse". {7483}{7566}[laughter] {7566}{7747}And, what we learned about code reuse is, the first thing you should do to encourage code reuse, is: {7747}{7889}Stop trying to prevent people from doing it. {7889}{8072}So you could use the program in, not just by running it, but in a, a whole range of ways that it could be useful. {8191}{8458}And sometimes the program was worked on by one person after another after another after another over a period of fifteen years. {8458}{8738}And so programs grew somewhat the way a city grows with, you know, one piece gets replaced, and then a year later this other piece gets replaced, and, {8738}{9094}you can look through it and see the old buildings and the new buildings, 'course you can recognize by their style, vaguely how, what eh, epoch they date from. {9094}{9242}And, sometimes even people at computer companies contributed to this community. {9242}{9413}For example, at one point we needed a cross-assembler for the PDP-11, that would run on the PDP-10. {9413}{9553}PDP-10 was a big computer, the PDP-11 was a 16 bit minicomputer. {9553}{9693}Well, we could've just written one, but to save time we looked around to find something existing. {9693}{9843}And, over at Harvard, where I was a student, I discovered that they had a cross-assembler. {9843}{9934}It was written, I think, by somebody at Digital. {9934}{10028}They had the source code, there was no copyright notice on it, {10028}{10128}so, I took it over to MIT, {10128}{10295}I ported it to *our* system, the Incompatible Timesharing System or "ITS". {10295}{10414}And, then I added more macro facilities. {10414}{10746}And, then we used it for a few years, and somebody at BBN, a, another company, wanted to have such a cross-assembler to run on *their* PDP-10 timesharing system "TENEX". {10746}{10942}So he contacted me, I sent him the source, he ported it, and he added *additional* macro facilities. {10942}{11073}Then we merged the two versions into a common version with conditionals for the two systems {11073}{11143}and, *all* of the macro facilities. {11143}{11317}And we maintained and used that together for another few years, until those computers were obsolete. {11459}{11590}And, this shows the way cooperation worked within our community. {11590}{11688}But then we got a taste of what it was, what computers were like {11688}{11727}for the rest of the world, {11727}{11808}for the people who didn't belong to a community like ours. {11808}{11899}This happened when Xerox gave MIT a laser printer. {11899}{11972}And this was a very nice gift in some ways. {11972}{12012}Uh... {12012}{12030}It was... {12030}{12143}It was actually, it was the first time anybody outside Xerox ever had a laser printer. {12143}{12214}It was actually a fast, {12214}{12335}high mo..., high end model office copier that had been modified {12335}{12423}with a computer attachment {12423}{12513}And this printer was much faster, much higher resolution, {12513}{12622}than our previous printer, and straight lines came out nice and straight, {12622}{12656}but, {12656}{12759}it was unreliable; it frequently got jams. {12759}{12813}Well, we knew what to do about that. {12813}{12989}With our previous printer, which was slow, and low resolution, and tended to make lines come out a bit wavy, {12989}{13032}uh... {13032}{13202}It was *also* unreliable; it would frequently run out of something, or jam. {13202}{13272}And since we couldn't make the *printer* better, {13272}{13404}we added features to the software to *compensate* for the problems with the printer. {13404}{13433}For example: {13433}{13462}Whenever, {13462}{13517}oh, a print job finished, {13517}{13592}the PDP-11 controlling the printer {13592}{13644}signaled the PDP-10, {13644}{13782}and the PDP-10 looked through the print queue and it displayed a message for the user who asked for that print job, {13782}{13882}saying "Your file 'FOO' is finished". {13882}{13987}So, you had to wait because the printer was slow, but you didn't have to wait extra {13987}{14032}just because of ignorance; {14032}{14123}*not knowing* when your job was finished. {14123}{14152}And, {14152}{14205}there was another feature which {14205}{14250}I added {14250}{14377}which was that anytime the printer got in trouble the PDP-11 would tell the PDP-10 {14377}{14398}which would {14398}{14544}search the print queue and display a message for *all* the users *currently waiting for printing*, {14544}{14660}saying "The printer is in trouble, go fix it.". {14660}{14714}Now, if you got that message, {14714}{14743}you would know, {14743}{14909}that probably just a few people got that message, so you wouldn't assume someone else was going to fix the problem, {14909}{14969}you would go to the printer right away. {14969}{15083}So a minute or so after the printer got in trouble, two or three people would arrive, {15083}{15184}one at least would know how to fix that problem and would teach the others. {15184}{15271}So the printer would get fixed, very quickly. {15271}{15297}In effect, {15297}{15430}we treated the *users* as part of the system and added *end-to-end feedback*, {15430}{15515}and obtained reliable operation for the whole system, {15515}{15555}even though *the printer* {15555}{15637}was still unreliable just as before. {15637}{15683}We were able to do this, {15683}{15781}because the control software for that printer was free software. {15849}{15963}*But*, when we wanted to add similar features to the new printer software, {15963}{15996}we ran into {15996}{16033}a solid wall. {16033}{16144}Because that printer was controlled by proprietary Xerox {16144}{16236}software, running on a special Xerox computer. {16236}{16292}And we couldn't make any changes in it. {16292}{16324}Even though {16324}{16416}we were about as good programmers as you could find anywhere in the world, {16416}{16476}we were completely helpless. {16476}{16546}We were *prisoners of our software*. {16546}{16645}And because of that, using this printer was always frustrating. {16645}{16675}You'd, uh, {16675}{16774}you'd type the command to print a file and it would say, a few seconds later, {16774}{16837}"Your file 'FOO' has been spooled.". {16837}{16874}Well, what else is new? {16874}{16933}It's always *spooled* in a few seconds. {16933}{16985}So then you go back to work. {16985}{17142}And a while later you notice the time, "Oh, it's been half an hour, not long enough, it's probably not printed yet. {17142}{17230}'probably spent most of that time being jammed, so I'll wait." {17230}{17262}You go back to work, {17262}{17385}and a while later you notice the time; "Oh, it's been a whole hour, maybe *now* it's printed.". {17385}{17528}So you go upstairs to the printer, and you find, that it's been jammed the whole time. {17528}{17613}So you fix the jam, you go back to work, {17613}{17702}and a while later you notice the time; "Oh, it's been another half hour.". {17702}{17827}You go back to the printer and you see that it printed two hundred pages of other people's stuff, {17827}{17874}which was three minutes of printing, {17874}{17937}and then jammed again. {17937}{18157}And at that point you'd say "*I'm going to stand here and fix this damn printer every time until my stuff comes out.*". {18157}{18241}Well, it wasn't supposed to work that way. {18241}{18300}But it did, and it was very frustrating. {18300}{18356}*Constantly* frustrating, {18356}{18492}that, the printer didn't work well and that we were being *stopped* from fixing it. {18492}{18610}We weren't asking somebody to fix it for us, *we were willing to fix it*, {18610}{18723}And Xerox was deliberately *stopping* us from fixing it. {18723}{18753}Then I heard, {18753}{18816}that somebody at Carnegie-Mellon University {18816}{18847}had a copy {18847}{18907}of that source code. {18907}{18961}Eventually I visited Pittsburgh, {18961}{19047}so I went to his office and I said, "Hi, I'm from MIT, {19047}{19079}could I have a copy {19079}{19146}of the printer source code?" {19146}{19189}And he said: {19189}{19263}"I promised not to give you a copy." {19263}{19323}[laughter] {19323}{19347}I was {19347}{19393}too shocked and angry {19393}{19484}to know what to say to him, so I turned around and just walked out. {19558}{19613}And then I thought about it. {19613}{19655}See, this was very, uh, {19732}{19784}This was very bad for... {19839}{19930}You see, he had promised to refuse to cooperate with me, {19930}{19988}me and my whole lab. {19988}{20047}But it wasn't just us; {20047}{20088}he also promised, {20088}{20181}to refuse to cooperate with *you* , {20181}{20209}most likely. {20209}{20257}[laughter] {20257}{20302}And he probably promised {20302}{20414}that he wouldn't cooperate with *you* . {20414}{20471}And in fact, {20471}{20619}He probably promised to refuse to cooperate with most of the people in this room, {20619}{20709}except a few who maybe weren't born yet in 1981. {20758}{20777}Because, {20777}{20862}he promised to refuse his cooperation, {20862}{20945}to just about everybody in the entire world. {20979}{21053}He had signed a non-disclosure agreement. {21089}{21136}And, {21136}{21202}this was my first experience {21202}{21263}with a non-disclosure agreement. {21263}{21305}I was a victim. {21305}{21355}I, and my whole lab, {21355}{21407}were the victims. {21407}{21463}This was very bad for the lab, {21463}{21541}and we never got that source code, we were never able {21541}{21602}to fix the printer. {21602}{21674}But in a paradoxical way it was very good for *me*, {21674}{21731}because it taught me a lesson. {21731}{21831}A very important lesson because most people don't learn it. {21831}{21861}And the lesson is, {21861}{22001}that non-disclosure agreements *have* victims. {22001}{22030}Most people {22030}{22128}*avoid* learning this lesson because they don't *want* to learn it. {22128}{22218}Most people first encounter a non-disclosure agreement {22218}{22294}when they are invited to sign one. {22294}{22415}And there's always some kind of goodie they're going to get if they sign, some temptation, {22415}{22509}encouraging them to overlook what is wrong. {22509}{22586}So they make excuses for themselves, like {22586}{22660}"This is the way it's done, who am I to object?" {22660}{22682}and {22682}{22829}"They're not going to get it anyway, so what difference does it make if I *help* deprive other people?" {22829}{22850}and {22850}{22908}"This is.." {22908}{23021}"If I don't do this, somebody else will." {23021}{23119}All the usual excuses and a few special ones. {23119}{23152}But when somebody {23152}{23256}offered me some nice software if I would sign a non-disclosure agreement, {23256}{23284}I remembered {23284}{23339}what it was like to be the victim, {23339}{23396}and how angry I was. {23396}{23436}And I *couldn't* {23436}{23491}do that to somebody else. {23491}{23517}Especially, {23517}{23598}since I didn't even know who I would be doing it to. {23598}{23655}If you sign a non-disclosure agreement, {23655}{23690}Then you're promising {23690}{23748}"I will screw {23748}{23777}". {23777}{23871}And the blank gets filled in later by circumstances. {23871}{24031}Maybe with somebody you hate, maybe with your best friend, maybe a stranger. {24031}{24091}You don't *know* who you're going to betray. {24091}{24123}But you're promising, {24123}{24192}to betray them. {24192}{24237}I couldn't do that. {24237}{24279}I was too angry {24279}{24368}at the person who had done it to me and my whole lab. {24368}{24415}I couldn't do the same thing {24415}{24480}to other people who were probably {24480}{24583}innocent and not deserving to be mistreated. {24583}{24709}So I said "Thank you very much for offering me this nice piece of software, {24709}{24817}but I can't in good conscience accept it on the terms you're asking for, {24817}{24880}so I'm going to do without it.". {24880}{24910}And I have never {24910}{24991}*knowingly* signed a non-disclosure agreement {24991}{25096}for generally useful technical information. {25096}{25164}There are other kinds of information. {25164}{25289}For example, if you wanted to talk with me about what was happening with your girlfriend, {25289}{25356}and you asked me "please not tell anybody", {25356}{25401}*that* I could agree to, {25401}{25463}because that information is not {25463}{25535}generally useful technical information. {25535}{25566}[laughter] {25566}{25623}It's probably not technical at *all*. {25623}{25647}[laughter] {25647}{25746}And it probably also is not generally useful. {25746}{25785}Now, {25785}{25835}there might be an exception: {25835}{25940}If you had discovered some wonderful sex position, {25940}{26025}Perhaps one could argue that I have a duty to humanity, {26025}{26083}to pass on the information {26083}{26159}to other people who could make more use of it than I could. {26159}{26226}[laughter] {26226}{26307}But, {26307}{26416}if it's just a matter of what you've been arguing about and why there's a problem and so on, {26416}{26514}thats not, there's no reason why the world would be better off if they know it, {26514}{26557}so it's OK if I {26557}{26629}keep it in confidence for you. {26629}{26771}But when it comes to generally useful technical information like software; {26771}{26915}The whole purpose of my field is to develop this information and make it available to humanity! {26915}{26963}If instead we withhold it, {26963}{27028}we are betraying the purpose of the field. {27130}{27241}So, I made this moral decision that I wasn't going to participate {27241}{27308}in that way of life. {27308}{27374}But, shortly afterward, {27374}{27461}A series of calamities fell on my community, {27461}{27516}wiping it out. {27516}{27574}And, the final stroke came, {27574}{27660}when Digital discontinued the PDP-10. {27660}{27742}Now, the Incompatible Timesharing System, {27742}{27777}was... {27777}{27912}written in assembler language for the PDP-10, it was written started in the 1960's, {27912}{27973}so what else would it be written in? {27973}{28039}So when the PDP-10 was discontinued, {28039}{28135}all the software was essentially obsolete. {28135}{28258}Uh, it's true, some hobbyists in strange places like Stockholm decided to {28258}{28344}set up PDP-10s and run it later on, but {28344}{28443}but that was clearly retrocomputing, it was no longer modern {28443}{28478}computer use. {28602}{28627}So, {28627}{28686}the result was a situation where, {28686}{28815}in order to get a modern computer of the day, 1983, {28815}{28844}and use it, {28844}{28910}you first had to get an operating system, {28910}{28998}And there were... Since *all* the operating systems were proprietary, {28998}{29068}this meant signing a non-disclosure agreement. {29068}{29108}So, {29108}{29158}My moral convictions, {29158}{29279}and the situation were coming into a head-on collision, {29279}{29350}which placed me in a moral dilemma: {29350}{29385}What would I do? {29385}{29423}How could I continue {29423}{29466}with my life {29466}{29512}in this situation? {29512}{29548}The easiest, {29548}{29605}the *obvious* alternative was {29605}{29694}to accept the way the world had changed, and many people {29694}{29755}advised me to do that. {29787}{29998}Which would mean I would start signing non-disclosure agreements, and MIT would surely have me *write* proprietary software, {29998}{30088}I realized, though, if I did this, I could have fun coding, {30088}{30169}And I could make money, especially if I went elsewhere {30169}{30210}than MIT. {30210}{30223}But, {30223}{30412}at the end I would have to look back and say "I have spent my life building walls to divide people". {30412}{30483}And I didn't want to do that. {30483}{30584}So I looked for another alternative, and there was another obvious alternative, {30584}{30641}(at least it was obvious to me, {30641}{30748}most programmers don't seem to recognize it, it exists) {30748}{30834}and that was to *leave the computer field*. {30834}{30897}Now many programmers say to me: {30897}{30978}"The people who hire programmers demand this, this, and this. {30978}{31020}If I don't do those things, {31020}{31079}I will *starve*." {31079}{31153}Literally, that's what they say. {31153}{31196}But, you know, even in the US, {31196}{31226}even today, {31226}{31261}millions of people {31261}{31295}*make a living* {31295}{31345}and *not in the software industry*. {31345}{31410}[laughter] {31410}{31500}Now, I have no other special skills, {31500}{31582}but, I'm sure I could've become a waiter. {31582}{31680}Not in a fancy restaurant, I suppose, but... {31680}{31720}but somewhere. {31720}{31735}And, {31735}{31789}being a waiter, {31789}{31939}unless you know the food eh eh is contaminated, it's, there's nothing immoral about being a waiter, {31939}{32011}it's a perfectly honest, legitimate thing to do, {32011}{32029}*and*, {32029}{32088}there's no danger of starving. {32088}{32199}[laughter] {32315}{32341}But, {32467}{32532}I, I realized I wouldn't have much fun {32532}{32569}being a waiter. {32569}{32608}And, {32608}{32651}while this would avoid {32651}{32699}*abusing* my skills, {32699}{32750}I would still be wasting them. {32750}{32870}So I decided to look for yet another alternative; was there some way I could use my skills {32870}{32929}as an operating system developer {32929}{32955}to improve {32955}{33023}the situation? {33023}{33058}And I realized that, {33058}{33158}operating system development was exactly what was needed, because, {33158}{33228}The problem was caused by the fact {33228}{33319}that all the operating systems were proprietary. {33319}{33411}If a group of operating system developers got together and wrote {33411}{33520}A new operating system, and then encouraged everyone to share it, {33520}{33619}we could get everybody away, out of this moral dilemma. {33688}{33712}So, {33712}{33776}it was obvious that this was what I should do {33776}{33812}with my skills. {33812}{33863}So I decided to launch a project {33863}{33954}to develop a free operating system. {33954}{33990}The next question was, {33990}{34056}"what should the design be?". {34056}{34117}Well I'd seen one operating system {34117}{34150}turn into... {34150}{34190}dust and blow away, {34190}{34304}because it was written for a specific kind of computer that was discontinued. {34304}{34406}I didn't want to take the risk that that would happen again, {34406}{34426}So, {34426}{34508}clearly I had to make a *portable* operating system. {34508}{34542}Well, at the time, {34542}{34632}there was just *one* portable operating system that I knew of {34632}{34681}that was a real success. {34681}{34731}And that was Unix. {34731}{34822}So, I decided I should follow the design of Unix. {34822}{34889}In addition, Unix had some good ideas, {34889}{34955}thing like pipes, and redirections, and {34955}{35036}the simple 'fork' and 'exec' system calls {35036}{35127}were superior to most systems of the time. {35127}{35206}So I figured it was a good design to follow. {35206}{35270}And what's more, I decided to make it *compatible*, {35270}{35329}*upward* compatible with Unix, {35329}{35349}because, {35349}{35444}I realized that would facilitate the acceptance of the system. {35444}{35484}You know, I could have {35484}{35672}looked at the best ideas from the systems I had worked on, and others I'd read about or used, put them together with my own favorite ideas {35672}{35757}I could've made *my dream operating system*. {35757}{35885}But I realized that if I did that and offered it to the users they would reject it, they would say: {35885}{35991}"We've already written our programs to run on Unix", or whatever, {35991}{36013}"and," {36013}{36188}"your system is incompatible, we'd have to rewrite our programs and retrain people and we're just not going to do that." {36188}{36229}Now, {36229}{36267}I didn't want {36267}{36320}to simply {36320}{36362}say {36362}{36508}in the abstract: "I've offered people a chance to have freedom and they didn't take it, so it's their fault.", no. {36508}{36614}I didn't want to just have an excuse, I wanted to really change the situation, {36614}{36666}and to do that I had to develop a system {36666}{36736}that other people would really use. {36736}{36865}And this meant I should make it easy for them to adopt it, {36865}{36947}and that meant compatibility. {36947}{37064}The design of Unix consists of a large number of various components {37064}{37127}that talk through each other through interfaces {37127}{37179}that are more or less documented. {37179}{37322}So being compatible with Unix means using the same interfaces, at least for most of them. {37322}{37357}and that makes, {37357}{37445}almost *all* of the basic design decisions right there. {37445}{37543}The remaining design decisions are internal to one component, {37543}{37608}which means they didn't have to be made at the beginning. {37608}{37723}They could be made by whoever was going to write that piece. {37723}{37754}So, {37754}{37874}that meant the design stage was almost finished, except for one thing: {37874}{37995}I decided we would not try to support 16 bit computers. {37995}{38092}And the reason is, I recognized that would be a lot of extra work. {38092}{38124}And this project was {38124}{38172}so big to begin with, {38172}{38236}that it wasn't clear we could finish it, {38236}{38311}and a lot of people said we *couldn't* finish it. {38311}{38375}Clearly we should try to make it easier. {38375}{38394}And, {38394}{38531}supporting only computers with a big enough address space that there's no problem {38531}{38583}is one way to make it easier. {38583}{38670}And I figured that by the time the system was working, {38670}{38735}thirty-two-bit computers would be common, {38735}{38786}and everyone could have them. {38786}{38863}And that's what happened. {38863}{38987}So, the design decisions were made, the next thing I needed was a name. {38987}{39019}Of course, we hackers {39019}{39061}*always* want to pick {39061}{39129}amusing, or naughty names {39129}{39225}for all the software we write, that's part of the purpose of writing the software. {39225}{39264}[laughter] {39264}{39306}So, {39306}{39424}yeah, why you write code is to give you the opportunity to use a funny name. {39424}{39469}So, {39469}{39526}there was a hacker tradition, {39526}{39540}that, {39540}{39623}when you're writing a program similar to some other program, {39623}{39787}you can give the new one a name, which is a recursive acronym, saying " is not ". {39787}{39811}For example, {39811}{39894}in the 60's and 70's there were many TECO text editors. {40000}{40144}And most of them were called this-TECO or that-TECO or whatchamacallit-TECO, {40144}{40160}but, {40160}{40255}one clever hacker called his version " TINT", {40255}{40371}which stood for " TINT Is Not TECO". {40371}{40455}The first recursive acronym. {40455}{40468}Then, {40468}{40577}in 1975, I developed the first Emacs text editor. {40577}{40655}There were many Emacs-like text editors after that, {40655}{40792}and many of them were called this-emacs or that-emacs or whoseswhatsis-emacs, {40792}{40894}But one was called "FINE" for "FINE Is Not Emacs", {40894}{40994}and there was "SINE" for "SINE Is Not Emacs", {40994}{41084}and there was "EINE" for "EINE Is Not Emacs". {41084}{41202}Then EINE was almost completely rewritten and the new version was called "ZWEI", {41202}{41257}for "ZWEI Was EINE Initially". {41257}{41397}[laughter] {41397}{41472}So I looked for a recursive acronym name, {41472}{41527}for " Is Not Unix". {41527}{41641}But there was a problem; all the obvious four-letter possibilities were, {41641}{41707}the problem was, none of them was a word. {41707}{41815}Which means there was nothing to make it particularly funny. {41815}{41853}Uhh... So, {41853}{41901}I looked a little bit further, and, {41901}{41988}I tried *other* ways of making a recursive acronym and I discovered, {41988}{42054}that if I used a contraction, {42054}{42082}I could get the, {42082}{42150}the funniest word in the English language, {42150}{42235}to be the name. And that word, of course, is "gnu", {42235}{42354}which is used for a lots of, fuh, lots of jokes, lots of funny songs, {42354}{42415}and... {42415}{42452}'course it stands for {42452}{42507}"GNU's Not Unix". {42507}{42656}Now the reason why people have fun with it that the dictionary says it's pronounced "nu". {42656}{42694}But actually, {42694}{42752}you shouldn't believe a dictionary, because {42752}{42881}the *real* pronunciation has a click sound in it, it's something like [click]nu. {42881}{42930}I'm probably not saying it right, {42930}{43001}but the British colonists didn't even try. {43001}{43032}[laughter] {43032}{43056}You know, {43056}{43094}they just said "nu", {43094}{43148}and the wrote it with a "G", meaning: {43148}{43199}"We're not pronouncing something here". {43199}{43283}[laughter] {43283}{43307}And then that, {43307}{43392}that got put in the dictionary and labeled as "correct". {43493}{43540}Anyway, {43540}{43602}when it's the name of our system, {43602}{43705}please pronounce a hard "G", pronounce it "gnu". {43705}{43828}If you speak of the "nu" operating system, you'll get people very, very confused. {43828}{43846}[laughter] {43846}{43984}Because, we've been working on it for sixteen years now, so it's not so "new" anymore. {43984}{44031}[laughter] {44031}{44068}But it still is, {44068}{44113}and it always will be, {44113}{44150}"GNU", {44150}{44211}no matter how many people call it "Linux". {44211}{44278}[laughter] {44278}{44306}So, {44306}{44340}I had a name; {44340}{44402}the next step was to look for funding. {44402}{44446}So I started {44446}{44472}asking {44472}{44554}the executives of computer manufacturers {44554}{44576}if they would {44576}{44690}have their companies contribute fifty thousand dollars each. {44690}{44726}And I said, said to them that, {44726}{44794}that were spending millions of dollars a year {44794}{44844}on Unix licenses. {44844}{44859}And, {44859}{44945}if they contributed fifty thousand dollars, {44945}{45082}then, even if there was only a one-percent chance we would succeed, {45082}{45178}the payoff would be *more* than a hundred to one *anyway*. {45178}{45257}So it was still a good bet. {45257}{45287}Now there was a... {45287}{45363}a couple of executives initially... {45363}{45406}showed some interest, but, {45406}{45486}they didn't really follow up, by offering us money. {45486}{45510}So, {45510}{45580}after a few months of that, I decided {45580}{45630}it wasn't accomplishing anything. {45630}{45679}So instead of looking for funding, {45679}{45700}I should just {45700}{45770}start writing code. {45770}{45839}I didn't want to sit around for years, {45839}{45917}hoping to get funding and getting nowhere. {45917}{45955}So, {45955}{46040}in January 1984, {46040}{46125}I quit my job at MIT, to start writing GNU. {46178}{46252}I went into... I had to quit my job. {46252}{46276}Because, {46314}{46444}aah... because MIT had already been known to take the software written by a staff, {46444}{46524}and turn it into proprietary software products. {46524}{46539}In fact, {46539}{46606}my own lab had done this. {46606}{46751}I didn't want MIT to have a chance to spoil the whole point of writing this code. {46751}{46811}The only way I could stop MIT {46811}{46846}from interfering {46846}{46866}was {46866}{46931}to quit my job. {46931}{47023}And I've never had a job since then. {47023}{47042}But, {47042}{47134}The AI lab let me keep on using their computers to do the work. {47134}{47226}So I started using a Unix machine at the AI lab, {47226}{47275}to write pieces of GNU. {47275}{47348}And this was the first time I actually used Unix. {47348}{47378}So until then, {47378}{47395}I... {47395}{47493}I'd read about Unix, but I had never seen it up close. {47493}{47564}Fortunately, when I started to see some of the deficiencies, {47564}{47634}most of them, it turns out, we were able to fix. {47634}{47692}And it ended up working reasonably well. {47779}{47833}I was never a Unix wizard, {47833}{47904}the way so many other people were, back then. {47904}{47934}I've... {47934}{48024}I've picked Unix as the system to replace, {48024}{48119}But that didn't mean I was a super-fan of Unix in particular, {48119}{48167}it was just a choice that I made. {48223}{48284}Now, at that point, I assumed, {48284}{48404}that we would write all these different components to replace the components of Unix, {48404}{48457}and when the whole system was finished, {48457}{48501}*then* we'd tell people {48501}{48554}"Come and get it, it's ready!". {48554}{48645}And then, we thought, people would start using GNU. {48645}{48703}But that's not what happened. {48703}{48751}See, in September '84, {48751}{48802}I started writing GNU Emacs. {48802}{48890}Which was my second implementation of Emacs editor. {48890}{48916}And, {48916}{49065}in early 1985 it was working well enough, I could actually do all my editing with it. {49065}{49149}Which meant I could do my editing on Unix. {49149}{49231}I had no interest at all in learning to use 'vi'. {49231}{49254}So, {49254}{49372}until that time I did my editing on other computers where there was an Emacs, {49372}{49430}and I saved the files through the network {49430}{49483}in order to test them. {49483}{49496}But, {49496}{49519}no, {49519}{49571}nn, at this point I could use {49571}{49647}GNU Emacs on Unix. {49647}{49780}And that meant, so could other people, and other people started asking me for copies of GNU Emacs, {49780}{49857}to run, on their Unix systems. {49857}{49878}Which meant, {49878}{49991}I had to work out the details, how I was going to distribute it. {49991}{50089}I had a general idea, but that was no longer enough. {50089}{50137}Well, of course I put a copy {50137}{50252}in the anonymous FTP directory, on the machine I was using. {50252}{50331}And that enabled people on the net to get copies, {50331}{50440}But in 1985, even most programmers were not on the net. {50440}{50509}So the question was what I would say to them. {50509}{50562}I could've said to them {50562}{50612}"I want to spend my time {50612}{50653}writing more GNU, {50653}{50696}not making tapes, {50696}{50776}so please don't ask me to send you a copy, {50776}{50879}find a friend who's on the net, who's willing to download it for you and, {50879}{50945}give or transfer a copy to you." {50945}{51059}And I'm sure the people who wanted it *enough* would've got copies. {51059}{51078}But, {51078}{51136}I had no job. {51136}{51202}And I was looking for some way I could make money, {51202}{51259}by working on free software. {51259}{51317}So I announced: {51317}{51427}"Send me $150, and I'll mail you a tape, of GNU Emacs.". {51461}{51540}So I started a free software business. {51540}{51619}And, orders began dribbling in, {51619}{51711}and by the middle of 1985 they were trickling in, {51711}{51786}I was getting maybe eight to ten orders a month, {51786}{51850}which was actually enough for me to live on. {51850}{51906}Because I live cheaply. {51906}{51972}I've always made a point of trying to live cheaply, {51972}{52102}because I don't want to be controlled by a need for money. {52102}{52188}I wanna be in a position where I'm not desperate {52188}{52239}to get paid for things, {52239}{52324}so I can say "no" to things. {52324}{52396}Now, most people, especially most Americans, {52396}{52418}when they get, {52418}{52580}starting making more money, they immediately look for some way they can spend that much or more. {52580}{52662}So they look, they start picking up expensive habits. {52662}{52712}Like houses and {52712}{52751}cars and {52751}{52884}paintings and stamps and adventure travel and children {52884}{52963}[laughter] {52963}{53069}All sorts of expensive things that put a big burden on the world, {53069}{53087}and, {53087}{53131}[laughter] {53131}{53305}And, and typically, you know, they become a *habit*, and the people say, you know, "I can't stop paying for this anymore.". {53305}{53402}"So I have to do exactly what the people with the money tell me to do." {53402}{53469}Basically, it's putting chains on yourself. {53469}{53502}Because, {53502}{53560}I resisted those expensive habits, {53560}{53636}*I* was able to decide what I would do with my life. {53853}{53875}So, {53875}{53935}at that point I decided it was time {53935}{54027}to make another attempt to raise funds for the project. {54087}{54101}Uh, {54101}{54207}At the, after all, now that GNU Emacs was available, people could see that {54207}{54332}the GNU project was *not* just talk, that we *could* produce useful software. {54332}{54400}And I figured they'd be more interested in supporting us. {54400}{54467}So we started the Free Software Foundation, {54467}{54521}which is a tax-exempt charity, {54521}{54591}a lot like a school or a hospital, {54591}{54646}to promote free software. {54710}{54757}I, but people say to me often, {54757}{54907}"What do you mean it's free software if it costs $150 for a tape?" {54907}{54926}Well, {54926}{55004}The English word "free" is confusing here, {55004}{55038}because, {55038}{55096}It has multiple meanings. {55096}{55226}One of them refers to freedom, and another refers to price. {55226}{55284}When I speak of "free software", {55284}{55366}it's a matter of freedom, *not* price. {55366}{55430}So think of "free speech", {55430}{55471}*not* "free beer". {55471}{55524}[laughter] {55524}{55603}In Swedish it's clearer, if you say "free" in Swedish, {55603}{55620}it's, {55620}{55693}it clearly refers to freedom and not price. {55693}{55714}So, {55714}{55808}if you want to talk about free software, say it in Swedish, {55808}{55857}not in English. {55923}{56020}Some people got their copies of Emacs through the network {56020}{56044}from me {56044}{56076}without paying me. {56076}{56166}Other people got their copies from me, on a tape, {56166}{56197}and paid me. {56197}{56308}And other people got their copies indirectly through third parties, {56308}{56346}And they didn't pay me, {56346}{56446}or, I didn't even, they didn't even deal with me. {56446}{56542}So some of them, some of them got it "gratis", and some didn't, {56542}{56598}but *all* of them had *freedom*. {56641}{56702}And that's what made it free software. {56702}{56785}So let me now give the definition of free software, {56785}{56875}by explaining the specific freedoms involved here. {56875}{56929}A program is free software, {56929}{56991}for you, a particular user, {56991}{57050}if *you* have the following freedoms: {57050}{57078}Freedom zero: {57078}{57155}Freedom to run the program for any purpose. {57155}{57187}Freedom one: {57187}{57224}Freedom to {57224}{57271}help yourself {57271}{57355}by modifying the program to suit your needs. {57355}{57383}Freedom two: {57383}{57484}The freedom to distribute copies; the freedom to help your neighbor. {57484}{57517}And freedom three: {57517}{57584}The freedom to help build your community; {57584}{57638}by publishing improved versions {57638}{57752}so other people can take advantage of your work and build on it. {57752}{57807}If you have *all* of these freedoms, {57807}{57882}the program is free software for you. {57882}{57902}Now, {57902}{57976}Free soft, freedom number zero, {57976}{58027}pretty much goes without saying. {58027}{58105}because *most* software gives you freedom zero. {58105}{58235}Any program that *doesn't* give you freedom zero is particularly restrictive. {58235}{58263}So, {58263}{58291}of course, {58291}{58351}free software has to give you freedom zero, {58351}{58374}in addition, {58374}{58416}*legally*, {58416}{58520}freedom zero is a *consequence* of freedoms one, two and three. {58520}{58604}So the *crucial* freedoms are freedoms one, two and three. {58604}{58710}Those are the freedoms that distinguish free software from *most* software. {58710}{58752}So I'll go into more {58752}{58841}explanation about why these freedoms are important and what they mean. {58884}{58911}Freedom one {58911}{58965}if the freedom to help yourself, {58965}{59063}the freedom to make the changes you want to make. {59063}{59115}This could just mean fixing bugs, {59115}{59168}it could mean adding features, {59168}{59273}or basically it means adapting the program to serve *your needs* properly. {59293}{59423}This is useful, of course, to programmers, who can make the changes themselves. {59423}{59486}But it's also useful to any business, {59486}{59512}that uses {59512}{59548}the software, {59548}{59651}If you're in business, then maybe nobody in the business is a programmer, {59651}{59775}but you can hire somebody who *is*, or make a contract with a programming company, {59775}{59854}a free software support company. {59854}{59948}And in this way, you can get the changes you want. {59948}{60110}With *non-free* software, you *can't* get the changes you want, it's impossible. {60110}{60185}But this freedom is *also* useful to other people. {60185}{60264}Who are *not* programmers, and *not* in business. {60264}{60314}Let me explain some of the reasons. {60314}{60356}One is, {60356}{60492}That, there's no, people are not divided at birth into programmers {60492}{60576}and non-programmers; we don't have a caste system. {60576}{60614}Anybody {60614}{60688}is welcome to learn some programming. {60688}{60709}And, {60709}{60903}of course, most people are not going to learn, to be be *really good* programmers, but they can learn *something*, if they have a *reason* to. {60903}{60937}So this freedom, {60937}{60971}even if it's {60971}{61137}*not immediately* useful to most people, it's *potentially* useful to them if they *care* enough. {61137}{61239}And even if you learn only a little bit you can still do *some* things. {61239}{61315}They'll still, there are *some* changes that are, that you can make, {61315}{61379}without having to become a great programmer. {61421}{61458}And finally, {61458}{61515}it's important to have the whole, {61515}{61561}the general public, {61561}{61667}looking at the program and making changes in it, if appropriate. {61667}{61699}For example, {61699}{61783}If your computer is going to be on a network, {61783}{61798}Then, {61798}{61862}If a, if a program, ih, {61862}{61888}ouf, aff, sorry, {61888}{61919}I'm getting it out of order. {61919}{61934}Basically, {61934}{62064}in order for this freedom to mean anything you have to have access to the source code. {62064}{62158}Which means you can *study* the program and, and see how it works. {62158}{62189}And nowadays, {62189}{62228}if your computer's on a network, {62228}{62326}if you install a program for which you *don't* have the source code {62326}{62376}You are *trusting* the author, {62376}{62489}*not* to have put something in that program to spy on you or mess you up. {62530}{62558}And, {62558}{62612}this has been done, even by {62612}{62701}so-called "reputable companies"; I'm told that, uh, {62701}{62768}AOL Instant Messenger has a, {62768}{62823}has code in it to *spy* on you. {62823}{62912}And that that is in fact the reason why they released the program; {62912}{62972}so people would have it on their computers, {62972}{63048}so, so basically so they could spy on their ex-customers. {63155}{63184}So, {63184}{63246}if you really want to be safe, {63246}{63315}you better be using software that, {63315}{63419}even if *you're* not reading the source code to check it, *somebody* is. {63501}{63527}So, {63603}{63652}If you don't have freedom one, {63652}{63726}practical material harm results. {63726}{63818}You're a prisoner of your software, I explained what that was like {63818}{63905}in regard to the little Xerox laser printer. {63905}{63994}But, along with that, there is a psycho-social harm, {63994}{64119}which affects people's enthusiasm for their work, people's morale. {64119}{64194}If you're really excited about the work you're doing, {64194}{64248}then you try to get a lot done. {64248}{64323}But if somebody is deliberately stopping you, {64502}{64530}then, {64530}{64617}to protect yourself from constant frustration, {64617}{64687}you tend to develop a different attitude. {64687}{64728}An attitude of {64728}{64778}"Well, I showed up for work today." {64778}{64831}"That's all I have to do." {64831}{64961}"If I can't get this work done now, I'll just read my book and get paid for that." {64961}{64988}"And, if, {64988}{65080}whenever I can start working again, then I'll start working, I don't care." {65080}{65147}"It's their problem." {65147}{65183}Now that, {65183}{65314}when that happens, it's bad for the people it happens to, and it's also bad for society. {65415}{65519}That's freedom number one, the freedom to help yourself. {65519}{65559}Freedom number two {65559}{65607}is the freedom to help your neighbor. {65607}{65689}I think it's the most important of all these freedoms. {65689}{65742}Because helping your neighbor, {65742}{65850}th, th, the spirit of good will, of *willingness* to help your neighbor, {65850}{65931}Is the most important resource of society. {65931}{66010}It's a, it, it makes the difference between a society {66010}{66056}and a dog-eat-dog jungle. {66141}{66186}Now, {66186}{66264}for beings that can learn and know things, {66264}{66390}a fundamental act of sh, of friendship is to teach each other. {66390}{66411}You can {66411}{66529}teach somebody else some knowledge without forgetting it, losing it yourself. {66529}{66594}This is the wonderful thing about knowledge. {66594}{66681}Which makes it so helpful and so useful. {66720}{66759}And this is why {66759}{66902}people recognize that teaching each other is an important form of sharing. {66902}{66968}When these beings use computers, {66968}{66986}that {66986}{67049}act of friendship takes the form {67049}{67087}of sharing software. {67136}{67238}So we're talking of one of the bonds of society here. {67238}{67314}Which non-free software tries to destroy. {67365}{67417}If a program has an "owner" {67417}{67459}who succeeds, {67459}{67530}never mind by what method, {67530}{67565}in {67565}{67640}making, in stopping users from sharing {67640}{67703}and making every user pay {67703}{67763}for permission to use the program, {67763}{67849}this sets up a financial disincentive, {67849}{67937}discouraging people from using the program. {67937}{67982}Because some people will say {67982}{68070}"All right, I'll pay", and they'll use the program. {68070}{68143}And others will say "Never mind!", {68143}{68195}and they *won't* use the program. {68195}{68279}And every time somebody says "Never mind!" {68279}{68343}the program is going partly to waste. {68387}{68548}But the work it takes to develop the program, to any given level of power and quality, is the same, {68548}{68620}regardless of the number of users. {68620}{68685}So the same work is done, {68685}{68768}But s, part of the, people who want to use it, {68768}{68828}are deliberately discouraged, {68828}{68942}discouraged by a deliberate scheme of obstructionism. {68942}{69022}So this is deliberately inflicted waste, {69022}{69109}which is practical material harm. {69109}{69187}But along with this comes psycho-social harm, {69187}{69232}in that it attacks {69232}{69313}the spirit of good will that society needs. {69313}{69354}And just as, {69354}{69415}you know, a lot of people like to pretend {69415}{69472}that we in the free software movement {69472}{69486}are {69486}{69526}against business. {69526}{69643}And you may hear people say that we are against commercial software, which is not true. {69643}{69737}We're against *non-free* software, we're not against *commercial* software, {69737}{69798}as long as it's free. {69798}{69828}Uh, {69828}{69858}but the point is, {69858}{69924}the best way to understand {69924}{69939}this {69939}{70010}is to think of the environmental movement. {70010}{70143}In the 1960's, factories used to make paper, and pour poison in the river. {70143}{70199}And people started to complain about this, {70199}{70260}and of course the factory owners said {70260}{70324}"They're communists, they're anti-business." {70324}{70361}But that was a lie, {70361}{70414}they were not against making paper, {70414}{70489}they were not against making a *profit* making paper, {70489}{70581}they were against *pouring poison in the river*. {70581}{70602}Now, {70602}{70666}in the same way, we are not against {70666}{70775}making software, and we're not against making a profit making software, {70775}{70806}we are against {70806}{70869}poisoning the spirit of good will {70869}{70926}that our society depends on. {71022}{71066}So, {71066}{71087}if {71087}{71136}if {71136}{71200}society says to people {71200}{71305}"Don't share with each other, sharing is wrong. {71305}{71392}Sharing means you're a pirate.", {71392}{71491}what does that do, what kind of society does that lead to? {71491}{71505}If, {71505}{71597}if they say that sharing with your neighbor is the moral equivalent {71597}{71651}of attacking the people on a ship? {71707}{71764}I mean, and if the government starts saying {71764}{71860}"If you share with other people we'll put you in prison for years." {71891}{71929}Do you want to live, {71929}{71998}well, how much fear is it going to take {71998}{72083}to convince people to stop sharing with their friends? {72083}{72204}Do you want to have that level of fear in your society? {72204}{72263}I don't. {72341}{72362}So, {72362}{72438}This is the psycho-social harm {72438}{72473}done {72473}{72561}when people do not have freedom number two. {72561}{72698}And this I think is the most important reason why software should be free. {72698}{72740}Dividing people, {72740}{72853}telling them they *can't* help each other, *can't* work together, {72853}{72885}is an attack against {72885}{72958}everybody's way of life. {72958}{72999}And this freedom is one {72999}{73128}that *every* computer user can take advantage of, you don't have to have special training {73128}{73198}to be able to make a copy of something for your friend. {73271}{73338}That's freedom number two; the freedom {73338}{73365}to {73365}{73400}help your neighbor. {73400}{73445}Freedom number three is to ha, {73445}{73499}freedom to help build your community, {73499}{73574}by making improved versions and publishing them. {73574}{73673}so that other people can get the benefit of your additions to the program {73673}{73752}and then add more. {73752}{73812}Now, people used to tell me, {73812}{73942}"If the software is free, that's s... Free software is a silly idea, because if the software is free, {73942}{74019}that means nobody's going to get paid to work on it, {74019}{74096}and that means nobody will work on it." {74096}{74166}Well, now, based on empirical fact, {74166}{74206}we know that *both* halves {74206}{74236}of that argument {74236}{74267}are wrong. {74267}{74347}Some people *do* get paid to work on free software, {74347}{74381}and *lots* of people {74381}{74466}write free software without getting paid. {74466}{74490}In fact, {74490}{74563}once people started *using* GNU Emacs, {74563}{74591}some of them {74591}{74639}started making changes, {74639}{74675}and sending them to me. {74675}{74728}They would send me a bug fix, {74728}{74791}or a new file adding a new feature, {74791}{74938}another bug fix, another new feature, another, another, another, another, until they were pouring in on me so fast, {74938}{75031}that it was hard work, just to make use of all their help. {75057}{75110}Microsoft doesn't have this problem. {75110}{75190}[laughter] {75190}{75336}[applause] {75427}{75446}So, {75504}{75588}this was an example of a phenomenon {75588}{75621}that has been {75621}{75677}noted, since then, {75677}{75748}that when a free program catches on, {75748}{75874}it tends to get a lot of people helping to make it more powerful and more reliable. {75923}{75953}And, {75953}{76103}in fact, there's a group of people who have focused on this particular phenomenon, {76103}{76176}as the argument for the three freedoms {76176}{76241}I'm talking about. {76241}{76275}And that group {76275}{76347}calls itself the "Open Source movement". {76407}{76488}And, the Open Source movement is, {76488}{76568}in some ways like the Free Software movement, {76568}{76644}except that they don't talk about freedom {76644}{76669}as, {76669}{76730}an important thing for, in its... {76730}{76794}as an important value in itself. {76794}{76833}They don't talk about {76833}{76905}"What can we do to have a good way of life?", {76905}{76996}they talk about *purely practical* advantages, {76996}{77020}such as {77020}{77095}"how to have powerful reliable software". {77158}{77310}I think the reason is that their strategy is to try to appeal to businessmen. {77310}{77335}And they think, {77335}{77410}their theory is that businessmen {77410}{77494}have contempt for freedom and have contempt for {77494}{77594}a way of life, kind of society; they don't care about *anything* {77594}{77677}except practical convenience and profit. {77677}{77803}And so it figure, to convince the businessmen we better talk in their language. {77803}{77946}Problem is, they're not just talking to businessmen in that language, they're talking to everybody in that language. {77946}{78000}And so they're not talking about {78000}{78052}the deeper issues at all. {78052}{78125}So that's where the Free Software movement differs {78125}{78166}from the Open Source movement. {78166}{78190}We {78190}{78344}focus on these deeper issues as the overall reason for this whole thing. {78344}{78398}But the Open Source movement {78398}{78456}a, the arguments that they offer, {78456}{78474}are {78474}{78541}good arguments, as far as they go, {78541}{78617}but they leave out the most important points, {78617}{78646}and it's {78646}{78758}very dangerous for our future if we forget them and if we don't teach them {78758}{78793}to the new users {78793}{78842}coming into our community. {78842}{78882}So I ask you, if you, {78882}{78925}if you agree with me, {78925}{78957}to please {78957}{79046}indicate your support for the Free Software movement {79046}{79126}by using the term "free software", {79126}{79303}rather than the term "open source", these are essentially ways you can wear a badge to say which group you're in. {79303}{79332}If you support {79332}{79443}the people who care about freedom as well as practical convenience, {79443}{79525}*indicate* that you stand with us. {79555}{79588}So, {79588}{79621}if {79621}{79687}you don't have freedom number three, {79687}{79713}then this, {79713}{79798}that causes practical material harm, because this {79798}{79904}phenomenon of improving the software can't happen. {79904}{79940}But, {79940}{80005}in addition it causes psycho-social harm, {80005}{80120}which affects the spirit of scientific cooperation, {80120}{80247}which used to be so strong that scientists would cooperate even when their countries were at war. {80333}{80359}I read that, {80359}{80458}US marines, landing on an island in the pacific ocean, {80458}{80517}during world war two, {80517}{80548}found a building, {80548}{80588}with a note on it. {80588}{80655}The note was to them. {80655}{80752}It said "This is a marine biology lab. {80752}{80845}We have put our specimens and our notes in order, {80845}{80895}so that American scientists {80895}{80949}can take over our work." {80949}{81036}It was written by Japanese scientists, {81036}{81110}who were working to advance human knowledge {81110}{81205}and they didn't want their work to be lost to humanity; {81205}{81331}it didn't matter who was going to finish it, the important thing was for it to get finished. {81395}{81441}But nowadays, it seems, {81441}{81511}that every little group of scientists and engineers {81511}{81549}is at *war* {81549}{81655}with every other little group, like a bunch of gangs fighting each other. {81719}{81801}And I don't see why we should tolerate that to continue. {81924}{81958}So those are the {81958}{82055}the three crucial freedoms and the reasons why they're important. {82055}{82080}If a p... {82080}{82198}If you, a particular user, have these freedoms, for a certain program, {82198}{82272}then the program is free software for you. {82272}{82328}The reason I define it that way {82328}{82357}is because, {82357}{82390}sometimes, {82390}{82475}a program can be free software for some users, {82475}{82544}and *not* free for other users. {82544}{82671}Now that might seem strange so let me show you with an example how it happens. {82671}{82691}The {82691}{82739}X Window System {82739}{82771}was {82771}{82818}developed at MIT, {82818}{82861}and released {82861}{82965}under terms which made it free software. So if you got X {82965}{82994}from MIT {82994}{83051}you got these three freedoms, {83051}{83123}and it was free software for you. {83123}{83246}But among those who got the software from MIT were a bunch of computer companies {83246}{83270}that {83270}{83318}dist... that {83318}{83401}distributed Unix systems for their computers. {83401}{83500}They made the comparatively small changes in X, {83500}{83582}now probably just a few thousand lines here and there, {83582}{83656}to get it to run on their systems, {83656}{83713}and then, {83713}{83779}they put it into their Unix system, {83779}{83825}just the binary. {83825}{83847}with the same no[n-free licence] {83879}{83935}as all the rest of Unix. {83935}{84031}And then, hundreds of thousands, maybe millions of users {84031}{84111}got their copies along with Unix. {84111}{84155}And those users got {84155}{84232}no more freedom for X than they got for Unix. {84288}{84377}And this is what produced the paradoxical situation where, {84377}{84420}if you ask the question, {84420}{84481}"Is X free software or not?" {84481}{84558}the answer would depend on where you made the measurement. {84558}{84636}If you made the measurement coming out of the developers' group, {84636}{84708}you'd say "Yes, I see all the necessary freedoms; {84708}{84747}it's free software.". {84747}{84798}But if you looked at the users, {84798}{84823}you'd have to say {84823}{84919}"On the *average*, the typical user does *not* have these freedoms; {84919}{84961}it's *not* free software.". {85055}{85100}This happened because {85100}{85177}the computer manufacturers were *allowed* {85177}{85268}to pass along the software stripping away the freedom {85317}{85406}For the developers of X, they didn't consider this a problem. {85406}{85478}Their goal was to have a big success. {85478}{85583}And they *had* a big success, the got hundreds of thousands, maybe millions of people {85583}{85629}using their software, {85629}{85707}they set a de facto standard, {85707}{85771}they felt "we had a big success". {85771}{85808}My goal was different. {85808}{85860}I was trying to create a community {85860}{85938}in which people had freedom. {85938}{85974}And, {85974}{86056}if the same thing were, that happened to X, {86056}{86124}were to happen to the GNU software, {86124}{86199}I would say it's a failure. {86199}{86294}Because if, because the users don't have the freedom. {86338}{86414}So I looked for a way I could prevent that from happening, {86414}{86484}and the way I've developed is called "copyleft". {86595}{86660}The idea of copyleft is, {86660}{86754}you can think of it as taking copyright and flipping it over. {86802}{86844}We say, first, {86844}{86902}"This program is copyrighted." {86902}{87011}Which, legally, means you're not allowed to copy or distribute it at all. {87011}{87044}But then we say {87044}{87094}"You *can* distribute it, {87094}{87141}you *can* modify it, {87141}{87222}you *can* distribute extended versions, {87222}{87293}combinations of this and other things, {87293}{87338}*but*, there *is* a condition: {87338}{87394}Whenever you distribute any such thing, {87394}{87504}you have to do it under *these* conditions, no more and no less." {87504}{87529}Which means, {87529}{87576}that you have to pass along {87576}{87627}to the people who get it from you, {87627}{87694}the *same* freedoms that you got from me. {87694}{87810}And, so, everywhere that the software goes, the freedom goes with it. {87810}{87901}Everyone who gets the software gets freedom also. {87901}{87924}In effect, {87924}{88009}we have made these freedoms into *inalienable rights* {88009}{88059}of all citizens. {88059}{88145}Unfortunately not for *all* software that's published, {88145}{88194}just for *our* software. {88194}{88228}But that least that's, {88228}{88318}at least that's a step, and it's the most that we can do on our own. {88388}{88459}The specific form of copyleft, {88459}{88512}the specific implementation, {88512}{88579}that we use for most GNU software, {88579}{88606}is called {88606}{88621}the {88621}{88686}"GNU General Public License". {88686}{88705}It's a {88705}{88739}little program, {88739}{88785}written in legalbol, {88785}{88824}[laughter] {88824}{88830}which, {88830}{88911}[laughter] {88911}{89053}which you can drop into your program in order to make your program copylefted. {89053}{89147}We also have a couple of other kinds of copyleft licenses, {89147}{89156}that