{0}{63}Oh, uh... {63}{114}OK, I can see it winking at me. {114}{165}[laughter] {165}{244}So there is copylefted free software, {244}{287}most GNU software, {287}{322}and others. {322}{477}There's also *non*-copylefted free software such as X, and BSD. {477}{522}They're *both* free software. {522}{607}It, it's a difference of strategy. {607}{664}*Those* people are saying that they, {664}{746}they're not going to say no to anybody. {746}{829}So *they're* not going to take away your freedom, {829}{987}However, they're not going to actively fight to stop somebody else from taking away your freedom. {987}{1049}So they're not doing anything *wrong*, {1049}{1117}but they're not doing as much as they *could*, {1117}{1162}to defend freedom. {1162}{1192}I would rather {1192}{1241}do the most possible {1241}{1276}to defend freedom. {1276}{1433}So that, I, I, the idea of copyleft is it sets up a system whereby we can defend *each other's* freedom, {1433}{1461}so that, {1461}{1538}it makes the community as a whole stronger. {1538}{1601}It's a disagreement over strategy, {1601}{1632}I wouldn't say {1632}{1671}that those people are, {1671}{1756}in X and BSD, that they're doing something *wrong*, {1756}{1821}but I would say that they are doing *less* {1821}{1855}than they *could* {1916}{1952}to defend freedom. {1952}{2038}In any case, the software they write *is* free software, {2038}{2079}and we *can* use it {2079}{2128}in free operating systems. {2219}{2246}So, {2351}{2382}Now that I've {2382}{2433}explained all these different, {2433}{2488}these philosophical issues and these {2488}{2505}different {2505}{2535}kinds of, {2535}{2597}different ways of doing free software, {2597}{2705}I should go back to explaining the history of things, I left off {2705}{2762}in 1985, when we {2762}{2821}formed the Free Software Foundation. {2821}{2891}The purpose of the foundation is to raise funds {2891}{2921}to pay people {2921}{2983}to work on promoting free software. {2983}{3116}Typically, um, we've paid them to write software and write manuals. {3116}{3152}And this is one way {3152}{3249}that we develop parts of GNU. {3249}{3266}But {3266}{3362}most of the work is actually done by volunteers. {3362}{3435}And there are some *full-time* volunteers. {3435}{3490}I'm a full-time volunteer for GNU, {3490}{3561}'cause I'm not getting paid by the FSF. {3561}{3602}And why is that? {3602}{3720}Well as the president of the FSF, it's my job to decide how to spend the money. {3720}{3780}And I have to spend it in the most effective way. {3780}{3798}[laughter] {3798}{3821}Now, {3821}{3907}I reali, when we had enough money to pay one person, {3907}{3935}I realized {3935}{4039}that, if we paid it to Stallman it would be like throwing the money away, {4039}{4096}because we could get Stallman to work for nothing. {4096}{4204}[laughter] {4204}{4234}So, {4234}{4299}I decided we would *not* pay Stallman. {4362}{4490}So we don't pay Stallman a salary, and we also don't pay for his travel. {4490}{4562}And the reason for that is, well, I realized that {4562}{4624}if the FSF were paying me {4624}{4694}to travel around the world all the time, {4694}{4726}then {4726}{4909}that's a lot of fun in some ways, so it would be a, it would be pretty much a mockery to say that the FSF wasn't paying me. {4909}{4999}So we have a rule, the FSF never pays for my travel {4999}{5089}except *maybe* a taxi across town to an appointment, {5089}{5141}if that's necessary. {5141}{5200}Um, {5200}{5228}so, {5228}{5341}in those respects I always have to get *myself* funded. {5341}{5361}And, {5361}{5423}there are *other* full-time volunteers too. {5423}{5544}Mostly, those people are being paid by somebody else {5544}{5638}so the people who work for the various free software companies, like {5638}{5677}Cygnus, {5677}{5717}uh, Cyclic, {5717}{5771}uh, {5771}{5853}I think there's one here called "Cendio", {5853}{5908}uh, {5908}{5941}so the {5941}{5960}uh, {5960}{6059}and others are working at universities, and working on free software. {6059}{6109}So there are various ways {6109}{6218}There, there are also people who have individual consulting businesses where they {6218}{6284}develop improvements to free software {6284}{6349}and contribute those to the community. {6349}{6384}They too {6384}{6402}are {6402}{6474}full-time volunteers, you might say. {6474}{6634}If they're, if they're working on GNU software then they're full-time volunteers for GNU. {6634}{6815}But there are lots and lots of *part-time* volunteers, who are doing work, and not getting paid for it at all. {6815}{6831}Uh, {6831}{6942}a lot of programmers, it turns out, want to work on free software. {6942}{7016}Even people who have full-time jobs {7016}{7044}working on {7044}{7099}other software {7099}{7203}want to work on free software in their spare time. {7203}{7275}And there are various reasons for this. {7275}{7373}Uh, one reason why people work on free software is, {7373}{7574}well, you have to do a certai, you have to get a job done, so you write a program to do it, and then you might as well share it with people. {7574}{7628}Another reason is, {7628}{7647}Uh, {7647}{7735}for pride or reputation, you know, the, if {7735}{7832}hundreds of thousands of people are using a program you wrote, {7832}{7887}they will really admire you, {7887}{7931}assuming they *like* the program. {7931}{7938}But, {7938}{7955}[laughter] {7955}{8033}if they're using it by their own choice they probably like it, {8033}{8082}or they wouldn't use it. {8082}{8120}So, you can {8120}{8228}really feel good with so many people using your software. {8228}{8300}Uh, another reason {8300}{8332}is, uh, {8332}{8375}political {8375}{8407}idealism. {8407}{8439}That's my reason {8439}{8453}for, {8453}{8538}that's why I wrote the various pieces of GNU that I wrote. {8538}{8571}'cause I want {8571}{8615}to change {8615}{8661}to, to build this {8661}{8730}alternative community {8730}{8882}so we could escape from the proprietary software way of life. {8882}{8951}And another reason is, {8951}{8968}uh, {8968}{9096}to share with your friends, you know, once you start feeling that you're part of a community, {9096}{9193}it starts to feel very natural to contribute to that community. {9193}{9311}Sometimes, so you'll think "Oh, I can write a free program to do this, and {9311}{9437}and people will like it, and I'll be sharing with the other people who have shared with me." {9437}{9497}And another reason is that it's fun. {9566}{9606}For some people, {9606}{9672}and especially some very good programmers, {9672}{9755}writing software is tremendous fun. {9755}{9881}And, even if they are working on software all day, {9881}{9970}the, it, at work maybe somebody's *telling* them what to do, {9970}{10011}then they can go home and {10011}{10139}write something and decide for themselves exactly what to do and how to do it, {10139}{10165}which means {10165}{10185}that they can, {10185}{10235}that it can be a lot more fun. {10366}{10486}So there are many reasons why people write free software and many reasons why some of them {10486}{10554}are volunteering for GNU. {10554}{10589}I hope that, uh, {10589}{10632}if you have used {10632}{10706}the GNU system or some GNU software {10706}{10749}that *you* will contribute {10749}{10795}to our community too, {10795}{10896}by writing free software or writing free manuals. {10896}{10959}Those are things we need very much. {10959}{11043}We also need help in other ways. {11043}{11075}At the moment, {11075}{11131}we have a project to {11131}{11233}to make a directory of free software, {11233}{11292}which is basically a database, {11292}{11341}with, {11341}{11468}with an entry for every free software package that's worth using. {11468}{11531}Now this is a big job. {11531}{11605}We've hired one person to do this, {11605}{11717}but that person is going to need help from a lot of volunteers. {11717}{11814}This is something which you can help with even if you're not a programmer. {11814}{11887}So if you're interested in helping with this, send mail, {11887}{11940}wi, helping in any of these ways, {11940}{12025}send mail to gnu@gnu.org. {12129}{12180}So during the 1980's, {12180}{12298}we were developing replacements for one piece after another of Unix. {12298}{12390}'Course, we didn't develop them in any particular order, {12390}{12457}you know, which I wou, whenever there, it seemed like {12457}{12543}good to replace a certain piece we worked on that piece {12543}{12615}or when somebody was inspired to do it. {12615}{12648}Because after all, {12648}{12805}we had to have them *all*, so it didn't matter which one we did first and which one we did last, {12805}{12948}The important thing was to be, to do one after another after another after another after another. {12948}{13032}In some cases, other people developed packages that {13032}{13079}did a part of the job. {13079}{13124}They had their own reasons, {13124}{13222}they weren't doing this to produce a free operating system, {13222}{13250}but, {13250}{13317}it didn't matter what their reasons were, after all, {13317}{13371}if some other person or project {13371}{13472}released a free program that did a job in the system, {13472}{13533}we could use it. {13533}{13556}The project {13556}{13696}being so large that many people said it was impossible, we had to be looking for shortcuts. {13696}{13771}So anytime there was a suitable package available, {13771}{13859}I would decide "OK, let's use that.". {13859}{13970}And that's why we didn't try to develop a window system for GNU. {13970}{14059}Now Unix in 1984 didn't have a window system, {14059}{14136}but I had done work on window systems already, {14136}{14180}on other computers, {14180}{14288}and I decided that we should offer people a window system. {14288}{14364}But fortunately X became available, {14364}{14426}and, although it wasn't done by people, {14426}{14508}it wasn't done for *our* sort of reasons, {14508}{14571}it *was* available as free software, {14571}{14633}it *was* fit for the purpose. {14633}{14697}So I decided we would use X, {14697}{14754}and we wouldn't develop our own window system. {14754}{14822}Good, that's one big job we saved. {14822}{14899}But there were still a lot of work to be done, {14899}{14926}and so, {14926}{14973}we were replacing {14973}{15000}there were, there were many {15000}{15076}pieces of the system that we had to replace {15076}{15180}that, that we didn't get from anybody else. {15180}{15205}And so, {15205}{15240}as we replaced them, {15240}{15271}one after another, {15271}{15311}eventually it was useful {15311}{15386}to make a list of what was still missing. {15386}{15405}So, {15405}{15485}I sat down with a Unix wizard, {15485}{15551}and we made a list, and that became {15551}{15617}the GNU task list. {15617}{15685}'Course I added to it a bunch of other things {15685}{15796}that I thought would be nice to have in a system which Unix didn't have. {15796}{15842}Nowadays, {15842}{15923}all those jobs of replacing pieces of Unix {15923}{15968}are done. {15968}{16098}But there are lots of things still in the task list if you're looking for something that might be useful to do. {16212}{16235}Then, {16235}{16296}by 1991, {16296}{16371}the job was almost finished. {16371}{16473}There was only one essential component that we didn't have, {16473}{16520}and that was the kernel. {16520}{16582}And we were working on a kernel. {16582}{16692}But we chose a design that I *thought* would help us get it done faster, {16692}{16767}but actually it had the opposite effect. {16767}{16872}Uh, I chose to use an existing microkernel called "Mach" {16872}{16929}as the basis, the lowest layer, {16929}{17014}and on top of that write user programs {17014}{17054}that, uh, {17054}{17151}would implement the a, the features of the Unix kernel. {17151}{17266}I, I should say, I chose to do this but I wasn't the one working on it myself, {17266}{17383}uh, it was staff of the Free Software Foundation that were, were working on it. {17383}{17409}But in any case, {17409}{17561}it turned out that debugging these multi-threaded asynchronous programs sending messages to each other {17561}{17605}was very difficult. {17605}{17621}And, {17621}{17692}the bootstrap environment was bad too, and, {17692}{17744}there were lots of problems. {17744}{17772}So, {17833}{17905}the, it, it took many years, {17905}{17967}to get the kernel to work at all. {17967}{18026}*But*, fortunately, {18026}{18084}people didn't have to wait for that, {18084}{18169}because in 1991, Linus Torvalds wrote {18169}{18188}a {18188}{18252}a free kernel, well, he wrote a kernel, {18252}{18324}using the tried and true monolithic {18324}{18352}design. {18352}{18440}And then he decided to release it as free software. {18440}{18491}And this, {18491}{18520}this meant, {18520}{18597}that a kernel was available. {18597}{18656}Now, we didn't know about this at first, {18656}{18735}because he didn't contact us. {18735}{18862}When he, and he called, oh, he called his kernel "Linux". {18862}{18984}So, so, we didn't know about it, but he did announce it to other groups of people, {18984}{19023}and they {19023}{19097}of course were interested in seeing if they could make {19097}{19121}a complete {19121}{19179}system. {19179}{19215}So they looked around {19215}{19310}to see what else was available to put into that system. {19310}{19434}And lo and behold, everything they needed was already there. {19434}{19494}"What good fortune!" they thought. {19588}{19614}So, {19614}{19655}they then proceeded {19655}{19712}to put Linux, the kernel, {19712}{19734}into {19734}{19833}the kernel-shaped *gap* in the GNU system. {19833}{19912}But they didn't realize that that's what they were doing. {19912}{20094}*They* thought they were taking all these different pieces of the system and putting them together *around Linux*. {20094}{20200}They didn't realize, you see, that it was the GNU system that they were getting, {20200}{20232}so they {20232}{20328}called the result a "Linux system". {20328}{20352}And so, {20352}{20415}ironically, {20415}{20510}the GNU system's goal was achieved, {20510}{20586}and yet, at the same time, {20586}{20670}a disaster happened. {20670}{20839}The availability of Linux was a tremendous step forward because it made possible a complete free system, {20839}{20865}which was {20865}{20926}our goal, so our goal had been reached. {20926}{20980}It was at that point possible, {20980}{21030}to get a modern computer {21030}{21122}and put on a free operating system and use the computer {21122}{21190}without letting anyone put chains on you, {21190}{21272}so the goal of the GNU project was achieved. {21272}{21314}But, at the same time, {21314}{21397}the fact that they *called* this system "Linux", {21397}{21468}when really it was basically the GNU system, {21468}{21534}was devastating for the GNU project, {21534}{21560}because {21560}{21617}*that* is when {21617}{21654}the users {21654}{21702}began to lose sight {21702}{21776}of the connection between us and our work. {21825}{21881}Until that time, {21881}{21971}we had software, and we had our philosophy. {21971}{22073}And the software called people's attention to the philosophy, {22073}{22113}and the philosophy {22113}{22200}encouraged people to contribute to the software. {22200}{22230}So the two {22230}{22306}tog, were promoting each other. {22306}{22397}When people started calling the GNU system "Linux", {22397}{22452}that broke this link. {22452}{22476}So it, {22476}{22598}the philosophy still encouraged people to develop free software, {22598}{22693}but the, when people were using the free software, they didn't think {22693}{22778}"I'm using GNU", they thought "I'm using Linux". {22778}{22858}Essentially the focused all their attention on the kernel, {22858}{22906}and lost sight of {22906}{22957}the whole part we had done. {22957}{23026}So, at this point the system began {23026}{23088}encouraging a *different* philosophy, {23088}{23165}which is the philosophy of Linus Torvalds, {23165}{23246}who is basically an apolitical engineer; {23246}{23301}he likes to work on what's cool. {23301}{23330}He, {23330}{23395}he enjoys having free software, {23395}{23460}but he doesn't think it's a moral issue. {23460}{23512}He doesn't encourage people {23512}{23530}to {23530}{23598}stand up and fight for their freedom. {23598}{23646}And, {23646}{23783}while it's true that that encourages some people to work on free software in some ways, {23783}{23809}it doesn't s, {23809}{23851}it doesn't spread, {23851}{23953}*determination* to preserve your freedom. {23953}{24025}Linus even writes some non-free software, {24025}{24079}and says so in public. {24079}{24103}So, {24103}{24156}his philosophy is that that's OK. {24217}{24241}Now, {24326}{24384}sometimes people give me the advice, {24384}{24445}they say, {24445}{24512}"Why worry about who gets the credit, {24512}{24589}whether it's Linus or the GNU project? {24589}{24626}After all, {24626}{24717}the important thing is that the job gets done. {24717}{24745}So isn't, {24745}{24761}it, {24761}{24798}since the system, {24798}{24908}isn't the important thing that the system exists?" {24908}{24946}Well, {24946}{24989}that advice is, {24989}{25083}it's basically a wise principle, but it's based on {25083}{25143}one mistaken assumption. {25143}{25236}The important thing is *not* that the system exists {25236}{25270}today, {25270}{25313}it's what's going to happen {25313}{25376}five or ten years from now, {25376}{25420}whether we will continue {25420}{25445}to have {25445}{25551}a free operating system we can use on modern computers; {25551}{25618}*that* is *not* assured. {25618}{25647}It depends {25647}{25720}on our doing hard work. {25720}{25795}There are many challenges in our future. {25795}{25850}We *can't* relax and say {25850}{25959}"The job has been done, we can't lose anymore, we don't have to worry, {25959}{26077}let's just relax and let things take their course." {26077}{26202}In fact, freedom is *never* guaranteed, it *always* faces threats. {26202}{26269}And people can *never* hold on to their freedom {26269}{26366}unless they're *thinking* about it. {26366}{26443}So what are some of these challenges that we face? {26545}{26586}One of them is how to drink tea. {26586}{26629}Uh, {26629}{26664}but anyway, {26785}{26895}Been carrying a backpack too much in the past few days, {26895}{26928}all knotted up. {27038}{27108}Hardware doesn't stand still. {27108}{27227}New hardware products are developed, and old ones are discontinued. {27227}{27284}And sometimes the new products {27284}{27319}don't come {27319}{27363}with specifications. {27363}{27450}They'll sell you the hardware, and they won't tell you how to use it. {27450}{27548}And, to me, that seems like a shocking, outrageous idea, {27548}{27591}but it's not unusual, {27591}{27732}and most people seem to be willing to accept it. {27732}{27769}Unfortunately, {27769}{27829}if the specs are not available, {27829}{27949}it's hard to write free software to use that hardware. {27949}{27975}So, {27975}{28148}the question is, you know, "How are we going to ever get free software to support the new hardware devices?" {28148}{28250}Well, there are two ways we can try to bring this about. {28250}{28346}One of them is through reverse engineering. {28346}{28447}A couple of the, uh, you know, it, a few programmers {28447}{28526}can do a, a *lot* of work to figure out {28526}{28621}how some *non*-free program is running that hardware, {28621}{28758}and then they, having figured it out, they can write a free program to do the job. {28758}{28817}But this is so much work, {28817}{28957}that we can't count on people to do it unless they value the freedom that they will get. {28957}{28985}You see, {28985}{29007}these {29007}{29107}hardware devices with secret specifications often, {29107}{29246}although there's no *free* software to run them, often there is a *proprietary* driver to run them. {29246}{29353}And if people think that a proprietary program is good enough, {29353}{29462}why would they go to the trouble of making a free program? {29462}{29525}You see, {29525}{29629}our future ability to support these pieces of hardware {29629}{29725}depends on what we value. {29725}{29834}Well, it only takes a few people to do the work of reverse engineering, {29834}{29935}but the rest of us can do something else that is a lot easier, {29935}{30140}namely, we can refuse to buy that hardware until it's supported by free software; we can apply market pressure. {30140}{30191}If there are 20 million of us, {30191}{30274}we should have a lot of market pressure to apply, {30274}{30298}*if* {30298}{30359}we were organized to use it, {30359}{30461}and *aware of the need* to use it. {30461}{30511}But, most of us are not; {30511}{30623}*most* of the, of these users have not been *exposed* to the idea {30623}{30726}that we should insist on having a one hundred per cent free system; {30726}{30784}most of them are perfectly happy, they, {30784}{30892}they get the non-free driver and they say "It works, it's OK.". {30892}{30947}So we fail to use {30947}{31020}the power that we have. {31020}{31064}So once again, {31064}{31203}the future of our community depends on what we value. {31203}{31285}This is not the only place where we face problems. {31285}{31312}Uh, {31312}{31342}nowadays, {31342}{31498}a lot of people are adding non-free software to the system. {31498}{31545}In fact, {31545}{31663}nowadays you can find the combined GNU/Linux system - {31663}{31744}the GNU system with Linux as the kernel, that is, - {31744}{31842}you can find CD-ROMs in software stores {31842}{31894}which have this system, {31894}{32035}but those CD-ROMs almost always have some non-free software also. {32035}{32085}The companies that package them, {32085}{32180}have added this non-free software "to make it better", {32180}{32231}they say. {32231}{32277}And when they say that, {32277}{32388}they're telling you that non-free software is OK. {32388}{32537}There are lots of magazines about the comb, the GNU/Linux operating system, {32537}{32597}'course, most of them call it "Linux", {32597}{32674}and most of them are full of advertisements {32674}{32767}for non-free software. {32767}{32865}Now those advertisements are for many different products, {32865}{32927}but there's one message that they *all* have, {32927}{32976}and that is: {32976}{33059}"Non-free software is good for you. {33059}{33196}It's so good for you, you might even *pay* to get a copy." {33196}{33286}And they call these things "value-added packages". {33286}{33302}Which {33302}{33372}makes a statement about values, it says: {33372}{33418}"Practical convenience {33418}{33503}is more important than your freedom." {33503}{33542}I have different values, {33542}{33576}so *I* call them {33576}{33634}"freedom-subtracted packages" {33634}{33665}[laughter] {33665}{33699}because {33699}{33898}once you've installed a free operating system and you are enjoying the freedom that we have worked for many years to give you, {33898}{34000}you now have the opportunity to buckle on some chains {34000}{34083}by installing these freedom-subtracted packages. {34161}{34223}And, {34223}{34308}and all of these companies and magazines, {34308}{34432}they all support the "Open Source" movement, which doesn't *talk* about these issues. {34432}{34465}Doesn't s, {34465}{34498}doesn't say {34498}{34604}"Non-free software is bad because it's putting chains on you.", {34604}{34690}it just talks about whether it's convenient or not. {34690}{34789}And they may convin, they *do* in fact convince a lot of people {34789}{34882}t, to switch to using *some* free software, {34882}{34949}because it's practical and convenient, {34949}{35039}But when a p, when people have chosen free software for those {35039}{35101}purely practical reasons, {35101}{35253}they can easily switch back to non-free software any time *that* is more convenient. {35253}{35340}And, you know, the people who work on non-free software, {35340}{35386}they're not all stupid, {35386}{35434}they're not all incompetent, {35434}{35503}sometimes they can do a good job, {35503}{35547}if you judge in a limited, {35547}{35606}purely technical sense, {35606}{35660}they can offer you programs that are {35660}{35724}practical and convenient {35724}{35766}and subjugate you. {35766}{35809}But if you don't *care* {35809}{35850}about the last part, {35850}{35941}you might use them, you might even think it's good. {35941}{35969}So, {35969}{36017}the support we have gained, {36017}{36080}we can lose it just as fast, {36080}{36211}anytime the non-free software developers get ahead of us. {36211}{36240}And there's a r, {36240}{36374}a very spec, there's a specific reason that might help them get ahead of us. {36374}{36399}And that {36399}{36476}has to do with software patents. {36476}{36513}Now software patents {36513}{36583}are especially a problem in the US, {36583}{36703}but the problem is beginning to some extent in Europe as well. {36703}{36743}The danger is that {36743}{36774}techniques {36774}{36828}of programming, {36828}{36864}algorithms, {36864}{36893}features, {36893}{37009}techniques of communicating over the network, all these things can be patented, {37009}{37059}and when they're patented, it means {37059}{37181}that some person or company has a monopoly on using them. {37181}{37289}And we are not allowed to implement them. {37289}{37309}Now, {37309}{37468}the US patent office is totally incompetent, and they issue patents on trivial ideas every day. {37468}{37640}But, even if you imagine a patent office that was smarter and where they did a "good job", so to speak, {37640}{37762}suppose they *only* patented techniques that *really* are new. {37762}{37842}Imagine if free software was not allowed {37842}{37919}to use any technique or feature {37919}{38043}that was *actually new* within the past 20 years. {38043}{38208}So we were limited to writing the kinds of software that were in use 20 years ago. {38208}{38242}How much {38242}{38344}could we satisfy the users' needs that way? {38344}{38436}Twenty years is a long time in software. {38436}{38534}The *only* way free software has a chance, is if we {38534}{38553}*block* {38553}{38595}software patents. {38595}{38636}Now there *is* an effort {38636}{38661}to block {38661}{38696}software patents {38696}{38736}in Europe. {38736}{38848}Uh, you should read about ww..., you should read the site {38848}{38915}www.freepatents.org {38915}{38929}www.freepatents.org {38929}{38995}www.freepatents.org {38995}{39035}And, {39035}{39066}get involved, {39066}{39127}form an organization, {39127}{39188}organize small companies in Europe, {39188}{39252}and *not* just free software companies, 'cause {39252}{39382}a *lot* of small software companies see that software patents are dangerous for them, {39382}{39479}'cause when you're writing a program that's a hundred thousand lines, {39479}{39541}that means a lot of different things, {39541}{39634}that somebody else might have patented already. {39634}{39750}A lot of different points where you are vulnerable to being attacked. {39750}{39772}It's also {39772}{39791}a good c, {39791}{39829}to compare it with {39829}{39896}trying to cross a mine field. {39896}{39922}Because, {39922}{40050}at each step, chances are you will *not* step on a mine. {40050}{40148}But your chances of getting across the whole mine field {40148}{40229}without once stepping on a mine {40229}{40282}get to be smaller and smaller {40282}{40357}the bigger the thing is. {40357}{40400}So, {40400}{40442}this is very important, {40442}{40521}*please* follow up on it. {40521}{40569}So what happens, then, {40569}{40592}if {40592}{40697}there are certain nice features that free software can't have, {40697}{40769}but the non-free software can? {40769}{40807}Well, what does the, {40807}{40890}the Free Software movement say about this? We say {40890}{40969}"The software patents are an outrage because they're {40969}{41041}interfering with our freedom." {41041}{41116}What does the Open Source movement say? {41116}{41151}They say {41151}{41341}"Well, we told you that Open Source software was going to be more powerful and convenient, I guess we were wrong." {41341}{41389}See, when people {41389}{41546}start doing these things purely for the practical reasons offered by the Open Source movement, {41546}{41622}they interpret the consequences of patents {41622}{41647}as saying, {41647}{41733}well, "they should go back to the non-free software.". {41733}{41764}When people {41764}{41872}support the Free Software movement, that is, when people want freedom for, {41872}{41994}because they value freedom independently of practical convenience, {41994}{42040}*then* the people will fight, {42040}{42057}to {42057}{42122}put an end to the software patents, they won't, {42122}{42306}they won't take the patents as a reason why the whole idea of free software was a mistake. {42306}{42453}So it's a real problem that, right now, most of the companies and magazines are supporting the fr, {42453}{42509}the Open Source movement. {42509}{42520}It's {42520}{42580}going to up to us individuals {42580}{42669}to spread the word about the Free Software movement, {42669}{42707}if we want {42707}{42775}to teach the people who are using a system {42775}{42813}to value the freedom {42813}{42892}which was the reason why the system exists. {42975}{43061}Now, a further kind of problem happens {43061}{43101}when people accept {43101}{43148}a non-free program {43148}{43252}as if it were an essential part of the system. {43252}{43316}And this problem shows its worst form {43316}{43465}when the non-free program is used as the basis for developing other software. {43465}{43523}For example, if it's a library, {43523}{43591}or if it implements a new programming language. {43934}{43948}In, {43948}{44011}in fact it's happened several times {44011}{44027}that {44027}{44082}some non-free program {44082}{44136}was conveniently available, {44136}{44236}and many people started using it as the basis to develop {44236}{44294}free software, {44294}{44371}and, in effect, they were falling into a trap, {44371}{44440}because although their own software was free, {44440}{44510}it was impossible to use that software {44510}{44587}without the non-free program it was based on. {44587}{44659}And that meant that this program, while free, {44659}{44727}was useless for any free operating system. {44727}{44768}We couldn't use it, {44768}{44821}because we couldn't use the non-free {44821}{44861}library {44861}{44904}underneath it. {44904}{44979}This first happened with "Motif" {44979}{45058}back at, around 1989 or so. {45058}{45092}Uh, {45092}{45137}Motif {45137}{45165}was a, {45165}{45243}a GUI toolkit {45243}{45301}and it was, it's, {45301}{45375}it wasn't and still isn't free software, {45375}{45477}but it was conveniently available to a lot of people. {45477}{45560}And so they started basing their free software on it. {45560}{45648}And I tried asking them "No, please don't use Motif.", {45648}{45701}and occasionally I succeeded, but, {45701}{45758}more often I failed. {45758}{45858}So people started working on a free replacement for Motif, {45858}{45922}which is called "Lesstif". {45922}{45956}And, {45956}{46067}a, it was about a couple of years ago that Lesstif got to the point {46067}{46191}where it actually made most Motif applications run. {46191}{46217}So, {46217}{46338}that problem is solved after eight or nine years. {46338}{46510}And then, a few years later, another such problem developed, which is the QT library, {46510}{46665}which was not free software, but it was available "gratis" for certain purposes. {46665}{46715}And people started {46715}{46866}using it as the basis for a large free software project, called KDE, {46866}{46894}so, {46894}{46920}in effect, {46920}{47000}K, oh, KDE was doing something very important, {47000}{47061}developing a desktop, {47061}{47109}and, {47109}{47212}having made the decision to use QT, {47212}{47381}they didn't want to, to decide that that was a mistake, so they had to convince themselves it was OK. {47381}{47502}And so they started telling everybody else it was OK, and inviting more people to join them, {47502}{47577}and make more software based on QT, {47577}{47712}all of which could not be included in a completely free system. {47712}{47865}But the danger was that that software would become a good desktop, and everybody would treat it as {47865}{47946}an absolute essential for the system, {47946}{47976}which would mean {47976}{48112}pressure for everybody to use the non-free program QT. {48112}{48137}So this {48137}{48172}was {48172}{48277}a very big problem and getting worse every week. {48277}{48344}To address the problem, {48344}{48427}the GNU project started two {48427}{48471}activities, {48471}{48560}two forms of counter-attack. {48560}{48592}One {48592}{48695}is we started developing a free replacement for QT, {48695}{48744}called Harmony, {48744}{48781}and the other is, {48781}{48828}we started developing {48828}{48854}a, {48854}{48916}an alternative desktop. {48916}{49011}And the reason we started using *both* approaches at once {49011}{49107}is that this problem was so dangerous {49107}{49231}that we had to maximize the chance that we would solve it. {49231}{49311}Every free software project {49311}{49387}is uncertain, you know, it may succeed, it may not, {49387}{49412}it may just {49412}{49498}get only half done and never be finished. {49498}{49560}By having two parallel projects, {49560}{49693}we increased the chance that one or the other would succeed in solving the problem. {49693}{49728}As it happened, {49728}{49780}the desktop Gnome {49780}{49833}has become a success, {49833}{49949}Harmony has not become a success yet. {49949}{50041}Uh, people are still working on it. {50041}{50141}About a, about half a year ago {50141}{50274}QT was re-released under a new license that makes it free software. {50274}{50351}I am convinced, although they don't say so, {50351}{50426}that this was in response to the success {50426}{50551}of our defensive actions. {50551}{50647}Because QT is available as free software, {50647}{50740}KDE now *can* be used in a free system. {50740}{50768}So, {50768}{50895}we managed to get them out of the trap that they were in, {50895}{51010}even though *they* weren't trying to get out of the trap. {51010}{51058}But, you know, it's much easier {51058}{51148}to recognize these traps and stay out of them, {51148}{51227}than to get out of them once you're in them. {51227}{51298}And so it's really important to spread the word {51298}{51338}that this is an issue {51338}{51398}so that people will have their eyes open, {51398}{51463}and not walk into these traps. {51463}{51569}The most recent trap of this kind was Java. {51569}{51663}When Java became available, it was so sexy, {51663}{51717}that a lot of programmers started {51717}{51770}working on Java, {51770}{51841}and writing their free software in Java, {51841}{51884}ignoring the fact {51884}{51960}that this meant that their software couldn't run {51960}{52005}on a free operating system, {52005}{52082}because Sun's implementation of Java {52082}{52122}was not free. {52122}{52165}You know, it was *available*, {52165}{52306}You could *run* Sun's Java implementation *on* GNU/Linux, {52306}{52378}but that means you no longer have a free operating system {52378}{52452}because Sun's Java is not free. {52452}{52506}And likewise, Blackdown, {52506}{52615}which is *currently* the popular port of Sun's Java software {52615}{52668}*to* GNU/Linux, {52668}{52767}that is *not* free software, you shouldn't be using it. {52767}{52839}Now, {52839}{52863}of course, {52863}{52914}in, the only thing we could do, {52914}{52931}was {52931}{53034}try to dig a ramp to get people out of this trap. {53034}{53083}And so, we're developing {53083}{53143}free software support Java. {53143}{53175}This includes {53175}{53237}the virtual machine "Kaffe", {53237}{53289}the compiler "Kopi" {53289}{53373}and GNU Classpath, providing libraries. {53593}{53630}But, {53630}{53786}we still don't have *all* of the, the library facilities that Sun provides. {53786}{53860}So if you want to develop a Java program, {53860}{53919}and you want to make it useful {53919}{53976}for the free world {53976}{54012}you should {54012}{54031}use {54031}{54118}free software as the platform to develop it. {54118}{54291}That way, you will make sure you use only the facilities available in free software. {54291}{54324}Otherwise, {54324}{54365}you are liable to {54365}{54435}accidentally, without even thinking about it {54435}{54505}use some library we don't have. {54505}{54582}And then your program won't run on a free system. {54582}{54756}And your program will serve as pressure for users to install the non-free Java implementation. {54756}{54786}So think about that, {54786}{54835}every Java program {54835}{54917}that uses the non-free facilities {54917}{54936}is a {54936}{54985}pressure on users {54985}{55138}to install the non-free pr, software to support Java. {55138}{55248}So what you do has effects on other people. {55248}{55297}And once again, {55297}{55386}the future of our community depends on our values. {55475}{55559}Finally, we're going to have to work politically, {55559}{55604}to convince governments {55604}{55734}*not* to pass laws *prohibiting* free software. {55734}{55780}We've shown {55780}{55832}what people did not believe, {55832}{55980}we're capable of developing free software for a wide spectrum of uses, {55980}{56065}but we can't do it if governments prohibit it. {56065}{56086}So if {56086}{56111}governments {56111}{56170}adopt software patents, and {56170}{56266}various different features become off-limits to us, {56266}{56322}we can't do them. {56322}{56423}Or, there, there are other threats, there are other reasons why governments are {56423}{56521}proposing to prohibit us from doing certain jobs. {56521}{56563}For example, {56563}{56609}playing DVDs. {56678}{56806}DVDs come with data encoded in a secret format. {56806}{56886}The reason it was kept a secret was {56886}{56917}so that {56917}{57040}all the, everyone who wanted to make a DVD pla, player, {57040}{57106}could be forced to promise {57106}{57252}to build certain restrictions into those DVDs, to restrict the users. {57344}{57534}And in particular, one thing that they're *not* allowed to do is release the source code for the player. {57534}{57591}So, {57591}{57660}the result is, {57660}{57766}that, uh, there was no way to play a DVD {57766}{57854}with free software. {57854}{58020}Then a few people in Europe got together and *figured out* the format and *wrote* a free program. {58020}{58094}One of them is Jon Johansen {58094}{58136}in Norway {58136}{58177}a sixteen-year-old {58177}{58228}wizard {58228}{58303}uh, who did a part of the job. {58303}{58350}Then, {58350}{58379}so, OK, so they, {58379}{58426}the free software was released, {58426}{58459}and immediately, {58459}{58560}the movie companies started threatening everybody who published it, {58560}{58617}and suing people who published it. {58617}{58658}And not only that, {58658}{58759}but they even managed to pressure the Norwegian government {58759}{58783}into {58783}{58886}threatening Jon Johansen with imprisonment. {58886}{58946}He's been accused of a crime {58946}{58986}of telling us {58986}{59116}how to play our DVDs. {59116}{59228}Now this shows the kind of threat we face, in the future, {59228}{59274}and we have to meet it, {59274}{59320}very vigorously. {59320}{59370}Because of this, I have some {59370}{59438}handouts here {59438}{59497}about this problem {59497}{59529}and I hope that, {59529}{59634}well, I, it's probably better if, if somebody takes these to the back, {59634}{59691}so that when people leave, {59691}{59709}uh, {59709}{59762}they can pick them up, is that feasible? {59762}{59800}Yeah. {59800}{59830}What should we do? {59830}{59861}We have a table, outside. {59861}{59945}You have a table. So, so these should be taken to the table, {59945}{59955}Yeah. {59955}{60034}where they can be given out. {60034}{60064}So would you do that? {60064}{60083}Yeah. {60155}{60243}Now, one of these describes the situation, {60243}{60308}one of them is a sample letter, {60308}{60380}which has been written in Swedish. {60380}{60478}And, it's best if you write your own letter, {60478}{60543}in your own words, {60543}{60599}saying what you think about the issue. {60599}{60617}But, {60617}{60717}if you don't do that, it's still good for something if you sign {60717}{60783}the letter we've written. {60783}{60837}So please do one or the other. {60837}{60908}It's a letter to the prime minister of Norway, {60908}{61007}saying that the charges against Jon Johansen should be dropped, {61007}{61061}and he should be given an award {61061}{61096}for public service. {61096}{61131}[laughter] {61131}{61304}[applause] {61384}{61457}And if you have friends in Norway, {61457}{61511}ask them to write, too. {61631}{61670}So, {61670}{61741}Increasingly we are going to have to fight {61741}{61813}in the traditional political arena {61813}{61877}to preserve our freedom. {61877}{61936}And it's going to be hard work. {61936}{62024}People who are only thinking about practical convenience {62024}{62086}are not going to bother. {62086}{62108}So, {62108}{62137}once again, {62137}{62229}our community's future depends on what we value. {62229}{62253}I hope {62253}{62279}that you will {62279}{62349}stand up for the Free Software movement, {62349}{62416}and spread the word about freedom. {62416}{62455}And, also, you know, {62455}{62491}if you refer to {62491}{62547}the operating system we developed as {62547}{62615}"GNU/Linux" {62615}{62721}and correct other people if they call it just "Linux". {62721}{62785}By calling attention to the GNU project, {62785}{62901}you will lead more people to see what we say about freedom. {62901}{62951}And that way you'll contribute to, {62951}{63045}to the activities of defending freedom. {63045}{63110}So at this point {63110}{63172}I should introduce my alter ego. {63793}{63851}[laughter] {63851}{64066}[applause] {64066}{64114}I'm Saint IGNUcius {64114}{64156}of the Church of Emacs. {64156}{64202}[laughter] {64202}{64269}I bless your computer, my child. {64269}{64334}[laughter] {64334}{64402}I should explain {64402}{64461}that {64461}{64533}Emacs was initially a text editor {64533}{64655}which became a way of life, and a religion. {64655}{64780}And so, as any religion should, it now has a schism, {64780}{64869}and, it also has saints. {64869}{64923}No gods, yet, fortunately. {64923}{65017}[laughter] {65017}{65076}In the Church of Emacs, {65076}{65201}well, one advantage of the Church of Emacs, why you might consider joining, is {65201}{65313}that being a saint in the Church of Emacs does *not* require celibacy. {65313}{65394}[laughter] {65394}{65456}So for some of you that make a difference. {65456}{65581}[laughter] {65581}{65649}Some of us are involuntarily celibate. {65649}{65695}[laughter] {65695}{65788}Uh, {65788}{65927}but it *does* require a moral commitment to live a life of purity. {65927}{65990}You have to make a commitment {65990}{66032}to exorcize {66032}{66153}the evil proprietary system from your computer {66153}{66194}and then, install {66194}{66260}a wholly free operating system, {66260}{66300}[laughter] {66300}{66391}where "wholly" could be spelled H O L Y or {66391}{66498}W H O L L Y, {66498}{66543}and then only install {66543}{66650}free software on top of that. {66650}{66721}If you make that commitment and live by it, {66721}{66748}Then you too {66748}{66787}are a saint {66787}{66851}and you may eventually have a halo. {66851}{66912}[laughter] {66912}{67087}And by the way, please don't ask me any questions about what kind of disk this came from or what data was on it, {67087}{67125}'cause I don't know. {67125}{67178}However, I can assure you that, {67178}{67260}no non-free software is accessible on it today. {67260}{67442}[laughter] {67442}{67539}So at this point... {67539}{67619}It's hard work, actually, wearing the halo. {67619}{67648}At this point, {67648}{67687}I should ask for questions. {67794}{67868}If you had a refrigerator, or a car, {67868}{67924}I'm sorry, I can't hear you. What did you say? {67924}{68043}If you had a VCR, or if, eh, car, or a {68043}{68071}Or a what? {68071}{68145}Have, having software in it, {68145}{68206}how can you make sure if it's not free? {68206}{68232}Ah. {68232}{68249}OK. {68249}{68297}I, I had to think about {68297}{68342}where to draw the line {68342}{68414}between what counts as a computer {68414}{68453}and which things {68453}{68545}inside pieces of hardware I can ignore. {68545}{68596}And I came to the conclusion {68596}{68613}that {68613}{68742}if you can install software on it, if you can load software into it, {68742}{68829}or, if you *should* be able to load software into it {68829}{68934}except that somebody else deliberately tried to stop you, {68934}{68955}*then* {68955}{69008}it counts as a real computer, {69008}{69101}and I should insist on only using it with free software. {69101}{69140}But if it's a sort of {69140}{69208}one chip which contains a ROM, {69208}{69304}a kind of thing that might be inside a watch or a microwave oven, {69304}{69347}then, I figured, {69347}{69492}for *me* it's not acting like a computer and so I don't have to consider it as one. {69492}{69563}So that's where I decided to draw the line. {69563}{69594}Now, {69594}{69772}one of the things about making moral judgments about the world is that you're constantly coming across gray areas. {69772}{69872}Gray areas are not something to be afraid of, they're normal, {69872}{69954}but you have to co, you have to deal with them somehow. {69954}{70038}And this is how I've dealt with that particular gray area. {70138}{70297}Have you had any problems with people not, or companies not, not upholding the copyleft? {70297}{70341}Yes, we have, in fact, {70341}{70391}several times a year {70391}{70471}we find people disobeying the license, {70471}{70512}and, so far, {70512}{70595}they have all come into compliance {70595}{70737}after either I had a discussion with them, or we had our lawyers send them a couple of letters. {70737}{70770}[laughter] {70770}{70865}So, so far, it has never been necessary to sue them. {70928}{70974}[unintelligible] {70974}{71068}As the author of GCC, how do you view the future of C, {71068}{71095}in view of modern, {71095}{71183}or more modern, languages like C++ or Java? {71183}{71245}Well, C++ is a lousy language. {71245}{71279}[laughter] {71279}{71298}It's {71298}{71426}a lousy job of language design; sloppy job of language design. {71426}{71530}[applause] {71530}{71609}Its grammar is ambiguous! {71609}{71685}And, you know, has, these just various different constructs {71685}{71829}that end up looking syntactically identical. So you just have to arbitrarily heuristically say, you know, {71829}{71908}"We're going to interpret it *this* way instead of *that* way.". {71908}{71923}And it's {71923}{72026}it has gratuitous, trivial, incompatibilities with C. {72026}{72102}Now, if you're going to make an improved version of C, {72102}{72210}the most obvious thing is, you should, you should aim for upward compatibility, {72210}{72237}unless {72237}{72282}there is some {72282}{72387}major reason why you can't do that. {72387}{72439}And yet in C++ you find these {72439}{72533}trivial changes that are of no *great* benefit, {72533}{72611}Y'know, maybe they were slightly better, but the point is, {72611}{72687}compatibility is more important than that. {72687}{72729}So... {72729}{72786}And it has *so* many features. {72786}{72852}And it's focused *primarily* {72852}{72886}on {72886}{72976}making things convenient and optimized in the case {72976}{73110}where you *know* the type of... ...every way to work with various types to be defined by the user. {73110}{73171}Well, of course, C++ *can* do that, {73171}{73183}But its {73183}{73264}*mainly aimed* at the ca, at the *other* case, {73264}{73348}at the case where you *do* know all the types at compile time. {73348}{73390}So, it was based on, {73390}{73465}I think, a mistake in emphasis. {73465}{73603}Uh, so because of this I don't really *recommend* that people should *use* C++. {73603}{73630}Now, {73630}{73738}I would *expect* that Java is probably better, I've never learned it. {73861}{73911}Uh, what language is Hurd written in? {73911}{73976}The Hurd is written in C. {73976}{74032}If I want to write something {74032}{74094}and I think that Lisp is not suitable {74094}{74109}'cause it {74109}{74117}[laughter] {74117}{74159}needs more speed {74159}{74243}Then I'm going to write in C. {74243}{74307}If I want a powerful language, well, {74307}{74395}all those others are not as powerful as Lisp. {74395}{74409}In the m, {74409}{74430}the mo, {74430}{74457}you start up {74457}{74567}Lisp, and it starts doing a read-eval-print loop. {74567}{74711}Well, here we have three *basic* facilities, 'read', 'eval', and 'print', {74711}{74786}and those other languages don't have *any* of them. {74786}{74891}They don't have anything *like* them, they don't even have the *concept*. {74891}{74907}You know, {74907}{74979}in Java, is there a, is there 'read'? {74979}{75016}Is there 'eval'? {75016}{75047}Is there 'print'? {75047}{75089}I don't think so. {75089}{75112}There's no {75112}{75209}representation for a Java program as data, {75209}{75267}it's just *text*. {75267}{75378}So there's no meaning for a 'read' function. {75378}{75396}You know, {75396}{75493}and people have known these things since 1960! {75493}{75577}And, and yet people keep designing new language which don't have them. {75723}{75822}We have heard the story about how you came up with the GNU project, {75822}{75889}but is there a story behind the copyleft? {75889}{75908}Either that or... {75908}{75934}Well, {75934}{76051}the *idea* of copyleft I was thinking about for a couple of years {76051}{76167}before I started GNU, I was looking for some way that the community {76167}{76290}could defend itself against being abused and taken advantage of, {76290}{76377}a way that the community could avoid being a doormat. {76377}{76480}'Cause it, it's discouraging to feel that you're a doormat, and I felt that {76480}{76508}if we were {76508}{76602}doormats, if we had no way to defend ourselves, {76602}{76632}then {76632}{76728}it would feel too discouraging and we wouldn't get enough people {76728}{76767}to succeed. {76767}{76823}But the *word* "copyleft" {76823}{76931}I got from a, a letter that was sent to me, {76931}{77026}I think it was by Don Hopkins, {77026}{77094}uh, {77094}{77160}and, {77160}{77224}he, he wrote a letter to me, and *on* the letter, {77224}{77306}*on the envelope*, he wrote all sorts of funny things. {77306}{77349}And one of them was {77349}{77412}"Copyleft - all rights reversed". {77412}{77502}[laughter] {77502}{77622}And I saw that word "copyleft", and I thought "This is exactly the right name for {77622}{77708}what I've been thinking of.". {77708}{77731}And so, {77731}{77753}because {77753}{77872}You know, I, I would rather have it "Copyleft - all *wrongs* reversed". {77872}{78021}[laughter] {78021}{78142}Uh, the diff, the different distributions of Linux, {78142}{78217}uh, has lots of [unintelligible] {78217}{78327}products, but, uh, the creation of, well, [unintelligible] {78327}{78408}and, and, does your speak of that {78408}{78485}As I know there's only *one* distribution of Linux. {78485}{78522}Yes, but... {78522}{78571}That's released by, the one that {78571}{78624}Linus and Alan Cox release {78624}{78682}is *the* distribution of Linux, right? {78682}{78765}Yes, I was talking [unintelligible] {78765}{78805}I'm sorry, you're talking about, {78805}{78916}oh, you're talking about the different versions of the GNU/Linux operating system... {78916}{78973}[laughter] {78973}{79051}[applause] {79051}{79092}Please don't call {79092}{79131}that system "Linux". {79131}{79210}[unintelligible] {79210}{79261}Is there any {79261}{79293}thoughts of {79293}{79355}uh, creating a distribution {79355}{79377}for the, {79377}{79410}Free Software Foundation {79410}{79476}that ha, has a name {79476}{79526}more, uh... {79526}{79551}No. {79551}{79606}And let me explain why. {79606}{79631}First of all, {79631}{79753}we don't want to develop another GNU/Linux distribution, {79753}{79929}because it would be a substantial amount of work, and it's not clear that there's any technical reason to do it. {79929}{79974}Uh, {79974}{80042}there's already a distribution which {80042}{80084}*almost* {80084}{80102}fits {80102}{80120}our {80120}{80139}ethical {80139}{80172}goals, {80172}{80220}and that is Debian. {80220}{80244}So, {80244}{80288}which, by the way, also {80288}{80415}recognizes that it's a distribution of GNU/Linux. {80415}{80609}Uh, so instead, d, instead of making yet another one, I'd rather approach it by cooperating with the Debian developers, {80609}{80677}and asking them to make small changes {80677}{80761}so that it becomes suitable for us to use. {80761}{80807}The other thing is, {80807}{80966}sometimes people ask me "Why not make *one* distribution, and *call* it 'GNU/Linux'?" {80966}{80986}Well, {80986}{81037}if I did *that*, {81037}{81105}then people would have the other, the impression, {81105}{81254}that all the *others* are *not* GNU/Linux. I want people to know that *all* of these distributions {81254}{81313}are versions of the combined {81313}{81378}GNU/Linux system. {81378}{81520}"GNU/Linux" means it's the combination of GNU and Linux; that's what the slash is for. {81520}{81656}You, you could use a plus sign if you prefer, that would also be appropriate. {81656}{81746}Are you dropping development of the Unix, uh, {81746}{81781}GNU kernel ? {81781}{81833}"Of the Unix-GNU"? I don't understand. {81833}{81858}...the kernel that you work... {81858}{81877}No, {81877}{81970}people are still working on the GNU Hurd, {81970}{82039}but not tremendously actively. {82039}{82074}However, it does {82074}{82128}run, more or less, and {82128}{82242}there are apparently an increasing number of people starting to play with it, {82242}{82376}and building more packages to run on it, so you c, at this point you can get a fairly complete {82376}{82446}GNU/Hurd system. {82446}{82469}And {82469}{82523}but the thing is, what you'll see is that it's {82523}{82599}basically the same as GNU/Linux, {82599}{82668}unless you want to actually play with the {82668}{82758}extra features of the kernel. {82758}{82830}Like, you know, one of the advantages of the Hurd is that {82830}{82880}in effect, you have, you can, {82880}{82958}write your own file systems. {82958}{83068}Because each file system is just another separate user program {83068}{83120}that communicates with messages. {83120}{83176}You know, the system comes with some of them, {83176}{83288}But you can write your own and the system will happily use yours as well. {83288}{83400}So, there are some interesting technical advances in the kernel, {83400}{83526}If you don't use them, it's basically the same as running GNU/Linux, {83526}{83567}as long as it doesn't crash. {83567}{83637}[laughter] {83668}{83722}Yeah, I kind of have two questions for you. {83722}{83761}The first one, when I started {83761}{83780}using {83780}{83870}GNU Emacs, about ten years ago, I was told that it's for {83870}{83926}"Eight Megabytes And Constantly Swapping". {83926}{83954}Is that correct? {83954}{83983}Yeah. {83983}{84102}But you know, computer memory is getting bigger and bigger and cheaper and cheaper so who cares? {84102}{84140}[laughter] {84140}{84183}It's amaze... {84183}{84275}It also stands for "Emacs Makes All Computing Simple". {84275}{84371}And it stands for maybe ten or 20 other things as well. {84371}{84483}And I think that Emacs comes with a list of some of them. {84483}{84497}But, {84497}{84536}this, I haven't [unintelligible] {84536}{84585}more, uh, {84585}{84603}uh, {84603}{84630}[unintelligible], i guess, {84630}{84721}you, you're talking about your General Public License, {84721}{84802}but you also have a lesser, you know, public license. {84802}{84839}Can you explain the occurrence of that... {84839}{84909}The Lesser General Public License {84909}{84951}gives permission {84951}{84995}to link the program {84995}{85063}with non-free software. {85063}{85150}The ordinary, the GNU General Public License, {85150}{85225}does *not* give permission for that. {85225}{85343}Now, why do we sometimes use the Lesser GPL? {85343}{85429}It's basically a strategic compromise. {85429}{85476}That is, in a few cases, {85476}{85511}it looks like {85511}{85528}we will {85528}{85542}have {85542}{85640}better *overall* success for the Free Software movement, {85640}{85670}if we {85670}{85764}make a concession of a very *localized* nature, {85764}{85787}permitting {85787}{85856}linking a *particular* package {85856}{85923}into non-free software. {85923}{86027}So we do that by releasing *that package* under the Lesser GPL. {86156}{86265}Uh, what's your opinion about software that is closed source for a certain limited time, {86265}{86281}Well, {86281}{86298}...released to... {86298}{86384}I don't want to use the term "closed source", because again, {86384}{86407}...no big deal... {86407}{86527}that basi, gives your all, allegiance to the Open Source movement, and {86527}{86604}I don't want to wear their badge, because {86604}{86743}these day, you know, the Free Software movement has to *struggle* to be heard at all. {86743}{86807}And so, by using the term so, you know, if you, {86807}{86954}if you use terms like "open source" or "closed source" you are essentially supporting the Open Source movement. {86954}{87060}If you use the terms "free" and "non-free" you're supporting the Free Software movement. {87060}{87128}Now, you, of course, have a choice, which you want to do, {87128}{87208}but *I* have to make it clear which one *I'm* doing. {87208}{87284}So, I'm gonna support the Free Software movement, so I can, {87284}{87335}i can't answer *that* question, but {87335}{87370}if you ask the question of {87370}{87476}"What do I think of a program that's released as non-free temporarily, {87476}{87545}and *then* gets made free?", {87545}{87563}well, {87563}{87612}first of all, the most important, {87612}{87712}*assuming* that the period of time is *short enough*, {87712}{87788}like, not much more than a year, {87788}{87819}then {87819}{87961}I think that this *does* effectively and usefully contribute to the free software world, {87961}{88058}because we can *afford* to wait a year or so. {88058}{88189}'Course, those of us who only want to use free software, we will *not* use the newer version. {88189}{88295}We will wait, we will use the year-old free version. {88295}{88374}But a year is not that long a period of time, so {88374}{88442}the fact that we get these contributions {88442}{88500}delayed by a period of one year, {88500}{88560}it's *still* a useful contribution. {88560}{88613}So I encourage people, if they're n, {88613}{88724}if people are *unwilling* to release the new versions as free software {88724}{88780}I sometimes encourage them {88780}{88816}to use that {88816}{88972}delayed-release approach, because it's better for us than no contribution at all. {88972}{89072}On the other hand, if they were going to wait *three* years, {89072}{89129}that's such a long time, it's, {89129}{89209}basically destroys the whole point. {89209}{89320}So it, it has to be a short enough period of time that, {89320}{89375}that the old version is, is, {89375}{89421}is reasonable to use. {89485}{89558}You know, it feels like it's, it's one, one of the ways to keep, uh, {89558}{89580}the software, {89580}{89618}software patents away, {89618}{89686}to keep your source for yourself for a certain amount of time. {89686}{89739}Well, it doesn't, unfortunately. {89739}{89774}No, it doesn't help. {89774}{89842}*Nothing* is going to help against software patents. {89842}{89929}Except to make sure they don't happen. {89929}{89970}Uh, the problem is that, {89970}{89995}you know, {89995}{90085}yeah, you might put it off for a year that way, {90085}{90220}but eve, you know, they might be able to tell just from *running* your program that it infringes the patent. {90220}{90365}Oh, for a lot of patents, it's totally obvious, you know, there are patents covering user-visible features. {90365}{90420}You don't need the source code to see {90420}{90499}that *those* patents are being infringed. {90499}{90578}But instead of patenting the software, you delay the release... {90578}{90630}There's no "instead". {90630}{90773}It's a mistake to think that it's a choice of one or the other. {90773}{90808}No, {90808}{90899}the, this temporary delayed release {90899}{90915}is {90915}{91038}an alternative to keeping the software *proprietary* forever. {91038}{91052}And, {91052}{91075}for that, {91075}{91102}in that {91102}{91165}way, it serves a purpose. {91165}{91227}Sometimes I convince companies {91227}{91256}that *were* {91256}{91317}making their software proprietary {91317}{91397}to release it as free software *after a delay*, {91397}{91461}and that's a big step forward. {91461}{91598}However, it has nothing to do with the issue of software patents, those are separate issues. {91598}{91641}This will *not* protect us {91641}{91698}from software patents, it will not help {91698}{91727}in any way {91727}{91784}with the problem of software patents.