Revolutionaries aren’t born. Revolutions can’t be planned. Revolutions can’t be managed. Revolutions happen.
I have a theory about the meaning of life. We can, in the first chapter, explain to people what the meaning of life is. We get them hooked that way. Once they’re hooked and pay for the book, we can just fill up the rest with random crap.
Since the dawn of man there have been two lingering questions. One: “What is the meaning of life?” and Two: “What can I do with all this pocket change that accumulates at the end of the day?”
There are three things that have meaning for life. They are the motivational factors for everything in your life: The first is survival, the second is social order, and the third is entertainment. Everything in life progresses in that order. And there is nothing after entertainment. So, in a sense, the implication is that the meaning of life is to reach that third stage. And once you’ve reached the third stage, you’re done. But you have to go through the other stages first.
All technology used to do was make life easier. It was all about getting places faster, buying things cheaper, having better houses, whatever. So what’s so different about IT? what comes after the fact that everybody is connected? What more is there to do? Sure, you can connect better, but that’s not fundamentally different. So where is technology taking us? In my opinion, the next big step is entertainment.
The social part of Linux is really, really important. But Linux is also entertainment, the kind of entertainment that is very hard to buy with money. Money is a very powerful motivational factor when you’re at the level of survival, because it’s easy to buy survival. It’s very easy to barter for those kinds of things.
It was probably worth about $500, and every so often, when things got particularly tight, she would have to take the certificate to a pawn shop. I remember going with her once and feeling embarrassed about it.
But he had become something of a mysterious folk hero. While Bill Gates, everybody’s favorite nemesis, was living in splendor in his Xanadu, Linus resided with his wife and toddler daughter in a cramped Santa Clara duplex. He apparently was unconcerned about the fabulous wealth that was being raised upon the flocks of less-talented programmers. How could anyone so brilliant possibly be so uninterested in getting rich?
Most acclaimed technologists — even most of the unacclaimed ones — have this immediate desire to let you know how brilliant they are. And that they are critical players in a mission that is far more important than, say, the struggle for world peace. That wasn’t the case with Linus. In fact, his lack of ego seemed downright disarming, and made him uniquely likable amid Silicon Valley’s bombastic elite. Linus appeared to be above it all. Above the New Agers. Above the high-tech billionaires.
Come to think of it, I really hated it while I was there. But it was one of those things: After it was over it immediately became a wonderful experience.
It also gave me something to discuss with virtually any Finish male for the rest of my life. In fact, some people suggest that the major reason for the required army duty is to give Finnish men something to talk about over beer for as long as they live. They all have something miserable in common. They hated the Army, but they’re happy to talk about it afterward.
There are other traits that distinguish Finns from other members of the human species. For example, there’s this silence tradition. Nobody talks much. They just sort of stand around not saying anything.
Finns are stoic to a fault. Silent suffering and fierce determination might be what helped us survive in the face of domination by Russia, a succession of bloody wars, and weather that sucks.
Even today, if you step into a bar in any Finnish city — particularly the smaller ones — you’re likely to find stone-faced men sitting by themselves, staring off into the air. People respect each other’s privacy in Finland — that’s another big thing — so nobody would think of going up to a stranger and striking up a conversation. There’s a conundrum. Finns actually are quite friendly. But few people are ever able to find that out.
This was a big deal in my life. As I mentioned, I’ve lost track of who in my family was living where at what particular time, and a lot of other things, but the path to my second computer was something that’s hard to forget.
I added a few commands to the basic interpreter that came with the machine so that when I wanted to edit something I basically just ran my editor automatically and it was instantly there. My editor was faster than the one that came with the machine. I was particularly proud of how fast I could write characters to the screen. Normally with a machine like that, it would take so long to fill the screen with characters that you could see the text scroll. And I was pleased with the fact that with my editor, you wrote text so fast that when you scrolled quickly down you created a blur.
There’s a reason that games are always on the cutting edge, and why they often are the first types of programs that programmers create. Partly it has to do with the fact that some of the smartest programmers out there are 15 year old kids playing around in their rooms. But there’s another reason games are so pioneering: Games tend to push hardware.
If you look at computers today, they’re usually fast enough for anything. But the place you test the limits of the hardware are with action games. Fundamentally, games are one of the few things on computers where you can tell if things aren’t happening in real time. In word processing, you don’t mind a delay of a second here or a second there. But in a game, it starts to be noticeable at a sub-tenth of a second. These days, programming is actually a fairly small part of any game. There’s music, there’s the plot. If you compare it to making a movie, the programming component is just the camera work.
Soon after reading the introduction, and learning the philosophy behind Unix and what the powerful, clean, beautiful OS would be capable of doing, I decided to get a machine to run Unix on.
We were all babes in the Unix woods, with a course that was being made up as we went along. But what was obvious from this course was that there was a unique philosophy behind Unix. You grasped this in the first hour of the course. The rest was explaining the details.
What is special about Unix is the set of fundamental ideals that it strives for. It is a clean and beautiful OS. It avoids special cases. Unix has the notion of processes — a process is anything that does anything.
This simple design is what intrigued me, and most people, about Unix. Pretty much everything you do in Unix is done with only six basic operations (called “system calls,” because they are the calls you make to the OS to do things for you). And you can build up pretty much everything from those six basic system calls.
An ugly system is one in which there are special interfaces for everything you want to do. Unix is the opposite. It gives you the building blocks that are sufficient for doing everything. That’s what having a clean design is all about.
It’s the same thing with languages. The English language has 26 letters and you can build up everything from those letters. Or you have the Chinese language, in which you have one letter for every single thing you can think of. In Chinese, you start off with complexity, and you can combine complexity in limited ways. That’s more of the VMS approach, to have complex things that have interesting meanings but can’t be used in any other way. It’s also the Windows approach.
Unix, on the other hand, comes with a small-is-beautiful philosophy. It has a small set of simple basic building blocks that can be combined into something that allows for infinite complexity of expression.
This, by the way, is also how physics works. You try and find the fundamental rules that are supposed to be fairly simple. The complexity comes from the many incredible interactions you get from those simple rules, not from any inherent complexity of the rules themselves.
The simplicity of Unix did not just happen on its own. Unix, with its notion of simple building blocks, was painstakingly designed and written by Dennis Richie and Ken Thompson at AT&T’s Bell Labs. And you should absolutely not dismiss simplicity for something easy. It takes design and good taste to be simple.
Meanwhile, all the legal haggling had been instrumental in giving a new kid on the block some time to mature and spread itself. Basically, it gave Linux time to take over the market.
So I began a project to create my own terminal emulation program. I didn’t want to do the project under Minix, but instead to do it at the bare hardware level. This terminal emulation project would also be a great opportunity to learn how the 386 hardware worked. As I mentioned, it was winter in Helsinki. I had a studly computer. The most important part of the project was to just figure out what this machine did and have fun with it.
A parent shouldn’t think that is he who makes his children what they are.
Fathers and sons are unique individuals, he reasons, explaining that the act of delving into Linus’s passion would be akin to “invading his soul.”
“Now this room here. It’s a perfect room for antiques that you wouldn’t want to have damaged by the sun.” Mikke shoots me a conspiratorial glance and replies, in a mocking voice: “Oh, what a delightful way of telling us this room doesn’t get any light.”
When you see a person whose eyes glaze over when a problem presents itself or continues to bug hi or her, who then does not hear you talking, who fails to answer any simple question, who becomes totally engrossed in the activity at hand, who is ready to forego food and sleep in the process of working out a solution, and who does not give up. Ever. He—or she, of course—may be interrupted, and in the course of daily life often is, but blithely carries on later, single-mindedly. Then you know.
Linus once expressed his awe of his sister very succinctly at an early age. He might have been five or seven or whatever, when he very seriously told me: “You see. I don’t think any new thoughts. I think thoughts that other people have thought, and I rearrange them. But Sara, she thinks thoughts that never were before.”
These reminiscences may reveal that I still don’t think Linus has any “special” talent and certainly not for computers — if it weren’t that, it would be something else. In another day and age he would focus on some different challenge, and I think he will. For he is, I think motivated not by “computer,” and certainly not by fame or riches, but by honest curiosity and a wish to conquer difficulties as they arise, and to do it “the right way” because that’s the way it IS and he won’t give up.
That was the moment I knew Linus had created something wonderful. I have no problem with that — I still dominate the snooker table.
I don’t know how to really explain my fascination with programming, but I’ll try. To somebody who does it, it’s the most interesting thing in the world. It’s a game much more involved than chess, a game where you can make up your own rules and where the end result is whatever you can make of it.
And yet, to the outside, it looks like the most boring thing on Earth.
Part of the initial excitement in programming is easy to explain: just the fact that when you tell the computer to do something, it will do it. Unerringly. Forever. Without a complaint.
And that’s interesting in itself.
But blind obedience on its own, while initially fascinating, obviously does not make for a very likable companion. In fact, that part gets pretty boring fairly quickly. What makes programming so engaging is that, while you can make the computer doe what you want, you have to figure out how.
I’m personally convinced that computer science has a lot in common with physics. Both are about how the world works at a rather fundamental level. The difference, of course, is that while in physics you’re supposed to figure out how the world is made up, in computer science you create the world. Within the confines of the computer, you’re the creator. You get to ultimately control everything that happens. If you’re good enough, you can be God. On a small scale.
You get to create your own world, and the only thing that limits what you can do are the capabilities of the machine — and, more and more often these days, your own abilities.
With computers and programming you can build new worlds, and sometimes the patterns are truly beautiful.
Most of the time you’re not doing that. You’re simply writing a program to do a certain task. In that case, you’re not creating a new world but you are solving a problem within the world of the computer. The problem gets solved by thinking about it. And only a certain ind of persons is able to sit and stare at a screen and just think things through. Only a dweeby, geeky person like me.
The OS is the basis for everything else that will happen in the machine. And creating one is the ultimate challenge. When you create an OS, you’re creating the world in which all the programs running the computer live — basically, you’re making the rules of what’s acceptable and can be done and what can’t be done. Every program does that, but the OS is the most basic. It’s like creating the constitution of the land you’re creating, and all the other programs running on the computer are just common laws.
Sometimes the laws don’t make sense. But sense is what you strive for. You want to be able to look at the solution and realize that you came to the right answer in the right way.
Remember the person in school who always got the right answer? That person did it much more quickly than everybody else, and did it because he or she didn’t try to. That person didn’t learn how the problem was supposed to be done but, instead, just thought about the problem the right way. And once you heard the answer, it made perfect sense.
The same is is true in computers. You can do something the brute force way, the stupid, grind-the-problem-down-until-it’s-not-a-problem-anymore way, or you can find the right approach and suddenly the problem just goes away. You look at the problem another way, and you have this epiphany: It was only a problem because you were looking at it the wrong way.
It’s still hard to explain what can be fascinating about beating your head against the wall for three days, not knowing how to solve something the better way, the beautiful way. But once you find that way, it’s the greatest feeling in the world.
That was the point where I almost gave up, thinking it would be too much work and not worth it. But there wasn’t much else to do. I was going to classes that spring, and they weren’t especially challenging.
What I’m trying to say is that I didn’t have a heck of a lot of other interesting things going on. And the disk driver/file system driver project would be interesting.
My original goal was to create an OS that I could eventually use as a replacement for Minix. It didn’t have to do more than Minix, but it had to do the things in Minix that I cared about, and some other things I cared about, too.
That’s how the early development was done. I was reading the standards from either the Sun OS manual or various books, just piking off system calls one by one and trying to make something that worked. It was really frustrating.
Honest: I didn’t want to ever release it under the name Linux because it was too egotistical. What was the name I reserved for any eventual release? Freax. But it really didn’t matter. At that point I didn’t need a name for it because I wasn’t releasing it to anybody.
So the only real decision was, at what point am I comfortable to dare show this off to people? Or, phrased more accurately: When is it good enough that I wouldn’t have to be ashamed of it?
There’s a protocol for numbering releases. It’s psychological. When you think a version is truly ready to be released, you number it version 1.0. But before that, you number the earlier versions to indicate how much work you need to accomplish before getting to 1.0. With that in mind, the OS I posted to the ftp site was numbered version 0.01. That tells everybody it’s not ready for much.
One of the main reason I distributed the OS was to prove that it wasn’t all just hot air, that I had actually done something. On the Internet, talk is cheap. Regardless of what you do, whether it be OS or sex, soo many people are just faking it in cyberspace. So it’s nice, after talking to a lot of people about building an OS, to be able to say, “See, I actually got something done. I wasn’t stringing you along. Here’s what I’ve been doing…”
Their reaction was invariably positive, but positive in a kind of “It would be nice if it could also do this” kind of sense, or “It looks cool but it really doesn’t work on my computer at all.”
Do you pine for the days when men were men and wrote their own device drivers?
Actually, I didn’t want the money for a variety of reasons. When I originally posted Linux, I felt I was following in the footsteps of centuries of scientists and other academics who built their work on the foundations of others — on the shoulders of giants, in the words of Isaac newton. Not only was I sharing my works so that others could find it useful, I also wanted feedback (okay, and praise). It didn’t make sense to charge people who could potentially help me improve my work. I suppose I would have approached it all differently if I hadn’t been raised in Finland, where anyone exhibiting the slightest sign of greediness is viewed with suspicion, if not envy. And, yes, I undoubtedly would have approached the whole no-money thing a lot differently if I had not been brought up under the influence of a diehard academic grandfather and a diehard communist father.
Under the terms of GPL, money is not the issue. You can charge a million bucks if somebody’s willing to pay for it, but you have to make sources available. And the person you give or sell the source to has to have all the rights you have. It’s a brilliant device. But unlike many hard-core GPL freaks, who argue that every new software innovation should be opened up to the universe under the general public license, I believe it should be the right of the individual inventor to decide what to do with his or her invention.
And there are nagging fears that companies in places like China won’t honor the GPL. Practically nothing in their legal system prevents them from breaking the copyright, and in a real sense it’s not worth the trouble to go after people who would try to do something illegal. That’s what big software companies and the music industry have tried to do and it hasn’t been overwhelmingly successful. My fears are mitigated by reality. Somebody might do it for a while, but it is the people who actually honor the copyright, who feedback their changes to the kernel and have it improved, who are going to have a leg up. They’ll be a part of the process of upgrading the kernel. By contrast, people who don’t honor the GPL will not be able to take advantage of the upgrades, and their customers will leave them. I hope.
Generally speaking, I view copyrights from two perspectives. Say you have a person who earns $50 a month. Should you expect him or her to pay $250 for software? I don’t think it’s immoral for that person to illegally copy the software and spend that five months’ worth of salary on food. That kind of copyright infringement is morally okay. And it’s immoral — not to mention stupid — to go after such a “violator.” When it comes to Linux, who cares if an individual doesn’t really follow the GPL if they’re using the program for their own purposes? It’s when somebody goes in for the quick money — that’s what I find immoral, whether it happens in the US or Africa. And even then it’s a matter of degree.
The theory behind the microkernel is that OS are complicated. So you try to get some of the complexity out by modularizing it a lot. The tenet of the microkernel approach is that the kernel, which is the core of the core, should do as little as possible. Its main function is to communicate. All the different things that the computer offers are services that are available through the microkernel communication channels. In the microkernel approach, you’re supposed to split up the problem space so much that none of it is complex.
I thought this was stupid. Yes, it makes every single piece simple. But the interactions make it far more complex than it would be if many of the services were included in the kernel itself, as they are in Linux. Think of your brain. Every single piece is simple, but the interactions between the pieces make for a highly complex system. It’s the whole-is-bigger-than-the-parts problem. If you take a problem and split it in half and say that the halves are half as complicated, you’re ignoring the fact that you have to add in the complication of communication between the two halves. The theory behind the microkernel was that you split the kernel into fifty independent parts, and each of the parts is a fiftieth of the complexity. But then everybody ignores the fact that the communication among the parts is actually more complicated than the original system was — never mind the fact that the parts are still not trivial.
That’s the biggest argument against microkernels. The simplicity you try to reach is a false simplicity.
I agree that portability is a good thing: but only where it actually has some meaning. There is no idea in trying to make an OS overly portable: adhering to a portable API is good enough. The very idea of an OS is to use the hardware features, and hide them behind a layer of high-level calls. That is exactly what linux does: it just uses a bigger subset of 386 features than other kernels seem to do. Of course this makes the kernel proper unportable, but it also makes for a much simpler design. An acceptable trade-off, and one that made linux possible in the first place.
I also agree that linux takes the non-portability to an extreme: I got my 386 last January, and linux was partly a project to teach me about it. Many things should have been done more portably if it would have been a real project. I’m not making overly many excuses about it though: it was a design decision, and last April when I started the thing, I didn’t think anybody would actually want to use it. I’m happy to report I was wrong, and as my source is freely available, anybody is free to try to port it, even though it won’t be easy.
I don’t have a memory of it being a big deal for me. I really don’t think it was. It was kind of the thing I was thinking about all the time, but mainly because there was always a problem to be solved. In that sense, I was thinking about it a lot, but it was not, emotionally, a big thing. Intellectually, it was something big.
I liked the fact that there were a lot of people giving me motivation to do this project. I thought I had seen the end of it, a point where it was almost done. But that point never came because people kept giving me more reasons to continue and more brainteasers to worry about. And that kept it interesting. Otherwise, I would probably would have just moved on to another project, because that’s how I worked, and that was fun. But I suspect I worried more about my nose or something like that.
“So you didn’t even want to tell your parents and family and friends about it. And you really weren’t excited by everything that was happening?” I ask, not masking my disbelief.
He waits a few seconds before responding. “I don’t remember if I even had feelings back then.”
What was I worrying about? Just social life in general. Maybe worry is the wrong word, there was more emotional impact. Just thinking about girls, Linux wasn’t that important to me at the time. To some degree, it still isn’t. To some degree I can still ignore it.”
The things that I got really upset about, and what still makes me upset, is not the technology per se but the social interaction around it. One of the reasons I got so upset about Tanenbaum’s posting was not so much the technical issues he was raising. If it had been anybody else, I would have just blown it off. The problem was that he was posting it to the mailing list and making me… I was concerned about my social standing with those people and he was attacking it.
One of the things that made Linux good and motivational was the feedback I was getting. It meant that Linux mattered and was a sign of my being in a social group. And I was the leader of the social group. There’s no question that was important, more important than even telling my Mom and Dad what I was doing. I was more concerned about the people who were using Linux. I had created a social circle and had the respect of those people. That’s not how I thought of it at the time, and it’s still not how I think of it. But it must be the most important thing. That’s why I reacted so strongly to Tanenbaum.
Maybe a year later, when Linux was in the Netherlands for his first public speech, he made his way to the university where Tanenbaum taught, hoping to get him to autograph Linus’s copy of Operating Systems: Design and Implementation, the book that changed his life.
The speech? Well, the audience was sympathetic to the obviously frightened soul standing before them, clinging to his PowerPoint slides (thank God for Microsoft) like a life preserver, and then haltingly answering their questions.
There are few people I look up to in computers, and Kirk is one of them. It’s because he was so nice to me after that first speech.
The way the X window system works is by way of the X server, which does all the graphics. The server talks to the clients, which are the things that say “I want a window and I want it this big.” The communication goes through a layer called sockets, or, more formally, Unix Domain Sockets. It’s how you communicate internally in Unix, but you also use sockets to communicate over the Internet.
I was so confident that we could easily do it that I made a leap in the version-numbering scheme. In March 1992 I had planned to release version 0.13. Instead, with the graphical user interface in place, I felt confident that we were maybe 95 percent of the way to our goal of releasing a full-fledged, reliable operating system, and one with networking. So I named the new release version 0.95.
Boy, was I premature. Not to mention clueless.
Networking is a nasty business, and it ended up taking almost exactly two years to get it right, to a form where it could be released. When you add networking you suddenly introduce a host of new issues. There are security issues. Also, a lot of people have very different setups. With TCP/IP the networking standard, it’s difficult to get all the time-outs right. It felt as if the process would drag on forever.
With the Cabal’s monthly statistics, I could easily track the popularity of comp.os.linux. And trust me, I kept track.
I truly did not have a life. I ate. I slept. Maybe I went to university. I coded. I read a lot of email. I was kind of aware of friends getting laid more, but that was okay.
Quite frankly, most of my friends were losers, too.
I never saw the point of accepting anything other than what I thought was the best technical solution being presented. It was a way of keeping from taking sides when two or more programmers offered competing patches. Also, although I didn’t think of it this way at the time, it was a way of getting people to trust me. And the trust compounds. When people trust you, they take your advice.
Hackers are also motivated, in large part, by the esteem they can gain in the eyes of their peers by making solid contributions. It’s a significant motivating factor. Everybody wants to impress their peers, improve their reputation, elevate their social status. Open source development gives programmers the chance.
By the way, I am totally convinced that the US system of motivating employees is far more realistic, and produces better results, than the European model. In Finland if a worker is much better than his colleagues, you give him just a little more money and keep it very quiet. In America, you give him a lot more money — and it works.
His main argument was that if I wanted to get the desktop market I should come join forces with Apple. My reaction was: Why should I care? Why would I be interested in the Apple story? I didn’t think there was anything interesting in Apple. And my goal in life was not to take over the desktop market. (Sure, it’s going to happen, but it’s never been my goal.)
I distinctly remember thinking he was probably the nicest and most interesting of the high-profile people I had met in Silicon Valley.
Flash forward three years. I pick up Wired magazine only to encounter his horribly negative article about technology entitled “The Future Doesn’t Need Us.” I was kind of disappointed. Obviously, the future doesn’t need us. But he didn’t have to be so negative about it.
I don’t want to tear apart his article line by line, but I have a general belief that the saddest thing that could ever happen to humanity would be that we would just go on and on, as opposed to evolving. Bill seemed to feel that advances like genetic modification make us lose our humanity. Everybody always thinks that something different is inhuman because right now we are human. But as we continue to evolve with whatever happens, in 10,000 years we will not be human according to today’s standards. We will just be a different form of human.
In Bill’s article, he seemed afraid of that. My feeling is that it’s unnatural — and fruitless — to try and curb evolution.
The press was playing up the dichotomy between the Idealists and the Pragmatics (not my terms!) among Linux’s now hundreds of thousands of participants. Under that division, those who feared that Linux’s ideals were incompatible with the goals of capitalism were dubbed the idealists. I led the pragmatists. But I saw such analysis as journalistic nonsense — a simplistic attempt to fit everything neatly into a world of black vs. white. (I have the same problem with the way folks view the Linux phenomenon as a Linux vs. Microsoft war, when in fact it’s something else entirely, something far more wide-reaching. It’s a more organic way of spreading technology, knowledge, wealth, and having fun than the world of commerce has ever known.)
To me, it was a non-issue. Without commercial interests, how else would Linux flow into new markets? How else would it create opportunities for innovations? How else would it be able to reach the people who want an alternative — a free alternative — to the bad technology that’s out there? What more realistic way for open source to take hold than through the sponsorship of corporations? And what better way of getting some of the less interesting work accomplished, boring stuff like maintenance and support, than doing it inside companies?
Open source is about letting everybody play. Why should business, which fuels so much of society’s technological advancement, be excluded — provided that they play by the rule? Open source can do nothing but improve the technology that companies create, and maybe make them less greedy.
And even if we wanted to stop the forces of commercialism, what could we do? I was not willing to suggest we hide, go underground, refuse to talk to commercial people.
To some degree, it’s probably true that some open source folks stood to get diverted from their idealism. But while certain people saw that as a losing proposition, I felt that it simply gave us more choice. Technical people who were worried about things like feeding their kids now had an option, for example. You can still be as idealistic as you’ve always been or you can choose to be part of the new commercial breed. You don’t lose anything by having somebody else come in and give you a new option. Before, obviously you couldn’t choose anything but being pure.
By the way, I’ve never felt that I was in the idealistic camp. Sure I’ve always seen open source as a way of making the world a better place. But more than that, I see it as a way of having fun. That’s not every idealistic.
And I have always thought that idealistic people are interesting, but kind of boring and sometimes scary.
In order to hold a strong opinion, you have to exclude all the other opinions. And that means you have to become unreasonable. This is one of the problems I have with American politics vis-a-vis European politics. In the American version of the game, you draw the enemy lines and the skill rests on one side’s ability to be divisive. European politicians tend to win by demonstrating they can foster cooperation.
No, it wasn’t hypocritical to promote the wonders of open source code while collecting a salary from a company that was so closed it wouldn’t even tell people what it was doing.
Benevolent dictator? No, I’m just lazy. I try to manage by not making decisions and letting things occur naturally. That’s when you get the best results.
Would history repeal itself in the world of Linux? My answer was always that while there undoubtedly is bickering among Linux vendors, it can’t lead to the fragmentation that has kept Unix a perennial almost-been. The problem with Unix is that competing vendors wasted years implementing similar features, simply because they didn’t have access to the same source base.
This money thing is driving me crazy. Just the waiting for the lock-up period to end. It’s like having lots of money but not having lots of money. It’s on my mind constantly.
This is the place where I slip in my golden rules. Number One is: “Do unto others as you would want them do unto you.” If you follow that rule, you’ll always know how to behave in any situation. Number Two is: “Be proud of what you do.” Number Three: “And have fun doing it.”
The point about open source has never been that I’m more accessible than anybody else. It’s never been that I’m more accessible than anybody else. It’s never been that I’m more open to other people’s suggestions. That’s never been the issue. The issue is that even if I’m the blackest demon from Hell, even if I’m outright evil, people can choose to ignore me because they can just do the stuff themselves. It’s not about me being open, it’s about them having the power to ignore me. That’s important.
There’s no “official” version of Linux. There’s my version and there’s everybody else’s version. The fact is, most people trust my version and rely on it as the de facto official version because they’ve seen me work for nine years on it. I was the original guy and people generally agree that I’ve been doing a good job.
The auditorium was packed. The moment I walked out onto the stage, everybody rose to their feet and started cheering. The first words out of my mouth were the first thing that came to mind:
“I am your God.”
As a human, you’re the leader of the pack and you’re telling the dogs how they should behave. Following your orders is their passion. And they like it.
Unfortunately, that’s how humans are built, too. People want to have somebody tell them what to do. It’s in our kernel. Any social animal has to be that way.
It doesn’t mean you’re subservient. It just means that you are likely to go along with others when they tell you what to do.
Then there are people with individual ideas, folks who have convictions in certain areas to the degree that they say, “No, I won’t go along.” And these people become leaders. It’s easy to become a leader. (It has to be. I became a one, right?) Then, other people who don’t have convictions in those areas are more than happy to let these leaders make their decisions for them and tell them what to do.
To get a glimpse of those benefits, all you have to do is just look at the comparatively low standards of quality of any closed software project. The GPL and open source model allows for the creation of the best technology. It’s that simple. It also prevents the hoarding of technology and ensures that anyone with an interest in a project or technology won’t be excluded from its development.
I admire Richard from afar for a bunch of reasons. And I guess I tend to respect people, like Richard, who have very strong moral opinions. But why can’t they keep their opinions to themselves? The thing I dislike the most is when people tell me what I should or should not do. I absolutely despise people who think they have any say over my personal decisions. (Except, perhaps, my wife.)
Just as imposing morals is wrong, the next step — institutionalizing morals — is doubly wrong. I’m a big believer in individual choice, which means that I think I should make my own decisions when it comes to moral issues.
The only other thing worth ranting about: people who are too preachy. There’s just no reason for folks to evangelize, and to be self-righteous about it.
And I’m sounding just like one of them.
But it’s an easy trap when people start taking you far too seriously.
I didn’t expect it to be much fun, because I wouldn’t know many people there. I was the only one from the open source crowd invited. I expected it to be like the army — more enjoyable to talk about later. But it was actually fun.
It’s easy to find windmills if you don’t realize how hart it is.
Five years ago when people asked me if I thought Linux would be able to take over the desktop and make a dent in Microsoft, they always had a doubtful edge to their voice. I invariably told them that I thought it would. They would look skeptical. The fact is, they probably knew more than I did about the reality.
I would have been discouraged if I had known in advance just how much infrastructure would be in place to make Linux as successful as it has been. It’s not only that you have to be good. You have to be good, sure, but everything has to turn out the right way, too.
Any sane person would have gazed up at the rugged mountain-face that needed to be scaled, and would have been absolutely daunted. Just think about the technical problems of supporting PCs, which are about the most varied hardware out there. You have to support people who have bugs that you can’t reproduce on applications that you don’t even care about. But you care about Linux, so you care about helping to fix them.
It’s not that I don’t have an opinion: I have very strong opinions on the worth of intellectual property, but they end up being on both sides of the argument. I can tell you, this can be very confusing. It means that I end up arguing both sides. And I think this is because there really are two sides to intellectual property, and they share nothing but the name.
To many people, including me, intellectual property is all about human inventiveness, about the very thing that makes us humans instead of animals. And in that setting, the very name “intellectual property” is an affront. It’s not property to be sold like chattel, it’s the act of creation, it’s the greatest thing any human can ever do. It’s Art, with a capital A. It’s the Mona Lisa, but it’s also the end result of a long night of programming, and it’s an end result that you as a programmer are damned proud of. It’s something so precious that selling it isn’t even possible: It’s indelibly a part of who you are.
That kind of creativity should be sacred. The creator and the thing he or she created have a bond that cannot be severed. It’s like the bond between a mother and child. But at the same time it’s something that everybody in the whole world should be able to be part of, because it is humanity.
And then, in the other corner, weighing in at an approximately seven gadzillion billion US dollars a year, intellectual property is huge business. Human creativity got a price tag, and it turned out to be quite expensive. Creativity is rare, and as a result it is not just expensive but also extremely lucrative. Which brings in a totally different class of arguments, and totally different kinds of people. The kind of people who call the end result of human creativity “property.” Not to mention, of course, lawyers.
The basic problem with IP is starting to show itself: You as the owner of IP can effectively sell it forever, without ever losing anything yourself. You don’t risk anything, and in fact you might decide to write your license in a way that basically says that even if the property is flawed, you cannot be held responsible in any way. Sounds preposterous? You’d be surprised.
It gets worse. The copyright holder not only has the right to sell his or her property without losing it, but also the right to sue people who sell property that looks like his or hers. Clearly the copyright owner has rights over that derived work.
What makes the discussion ugly at this point is that a lot of the arguments for stronger intellectual property rights are based on the notion of giving inventors and artists more “protection.” What people don’t seem to ever realize is that giving such powerful rights to some people also ends up taking rights away from others.
Now, if you want to avoid the bother with patents, you can go for the strongest drugs of IP, trade secrets. The advantage of the trade secret is that you don’t have to worry about a Trade Secret Office or anything at all: You can just stamp your IP “secret” and be done with it. You can still tell people about it, but you have to tell them it’s a secret.
People used to do this all the time before, and that is actually why patent law was originally introduced. In order to encourage individuals and companies to expose their secrets, patent law allowed for protection in the marketplace for some time if you divulged what your secret to success was. A basic form of tit-for-tat: You tell how you do something, and we’ll give you exclusive rights for X years.
Any sane person realizes that once a secret is out, it is no longer a secret. Except in the strange and twisty passages of IP law, where secrets can continue to be secrets even after everybody knows what they are. And where the knowledge you have in your head can get you sued, if you happen to work for the wrong employer. Some IP law is downright scary.
To a large degree, finding peace in this IP war is what open source is all about. While a lot of people have their own opinions about what open source really tries to do, in many ways you can see it as a high-tech detente, a defusing of copyright as a weapon in this fight of IP.
So open source would rather use the legal weapon of copyright as an invitation to join in the fun, rather than as a weapon against others.
I’ve tried to explain why a lot of people feel that IP, and especially the strengthening of IP laws, is downright evil. Many in the open source community would like nothing better than to tear down all the nukes altogether, and totally abolish the Cold War of knowledge. Others disagree.
The other side of the picture is that yes, IP may be unfair, and yes, IP laws are largely designed to further the aims of large corporations over the rights of consumers or even the individual author or inventor. But boy is it lucrative! It concentrates the power of the powerful, and the very fact that it’s a powerful weapon makes it so effective in the marketplace. The same reason that made nuclear weapons the ultimate force in the Cold War makes IP so attractive in the war of technology. And technology sells.
And it also generates a very powerful positive-feedback cycle. Because IP is such a good source of revenue, a lot of money is being spent on creating more IP. And that fact is important. In the same ways that wars have historically always been source of invention and great leaps in engineering, the virtual war of IP rights helps feed the engine and brings never-before-seen resources into technology development. This is a good thing.
The way to survive and flourish is to make the best damn product you can. And if you can’t survive and flourish on that, then you shouldn’t. If you can’t make a good car, then you deserve to go down lik the rock that was the US auto industry in the 1970s. Success is about quality and giving folks what they want.
It’s not about trying to control people.
The trouble is, people and companies are too often motivated by pure greed. And that always causes them to lose in the long run. Greed leads to decisions governed by paranoia and a need for total control. Those are bad, short-sighted decisions that end up in disaster, or near disaster.
That’s why Microsoft’s strategy of bundling software is ultimately doomed to fail. Open source products, on the other hand, cannot possibly be used in a despotic manner because they’re free. If somebody tried to bundle things with Linux, somebody else could just unbundle it and sell it the way people really want it.
It’s doubly futile to attempt to control people through technology. In the end, it always not only hurts the company but also hinders the acceptance of the technology. A recent example is Java, which has lost a lot of the appeal it originally had. By trying to control the Java environment, Sun basically lost it. Java is still doing reasonably well, but it surely hasn’t lived up to its potential.
What Sun could have done is allow anybody to do their own Java — no string attached — while wagering that they themselves could do a better job. That’s the sign of a company that isn’t blinded by greed or by fear of competition. It’s the sign of a company that believes in itself. And doesn’t have time to hate.
Call it evolution. It’s certainly not rocket science. No business will live forever, and that is just as well.
Humans are destined to be party animals, and technology will follow.
What really matters when you talk about the future of technology is what people want. Once you’ve figured that out, the only remaining question is how quickly you can mass-produce the thing and make it cheap enough that people can get it without sacrificing anything else they want. Nothing else really matters.
A small digression is in order here. What really sells, of course, is perception, not reality. Cruise liners sell the perception of freedom, of the salty seas, of good food and romance of Love Boat proportions.
It also points out how PCs have a perception problem. Clearly the PC industry is nervous about game consoles, mainly because they are seen as nonthreatening, fun and cheap, while PC’s are mostly seen as complicated and expensive. Sometimes even inimical.
Nobody wants an OS. In fact, nobody even wants a computer. What everybody wants is this magical toy that can be used to browse the web, write term papers, play games, balance the checkbook, and so on.
The first time people hear about the open source approach, it sounds ludicrous. That’s why it has taken years for the message of its virtues to sink in. Ideology isn’t what has sold the open source model. It started gaining attention when it was obvious that open source was the best method of developing and improving the highest quality technology. And now it is winning in the marketplace, an accomplishment has brought open source its greatest acceptance. Companies were able to be created around numerous value-added services, or to use open source as a way of making a technology popular. When the money rolls in, people get convinced.
In a society where survival is more or less assured, money is not the greatest motivators. It’s been well established that folks do their best work when they are driven by a passion. When they are having fun. This is as true for playwrights and sculptors and entrepreneurs as it is for software engineers. The open source model gives people the opportunity to live their passion. To have fun. And to work with the world’s best programmers, not the few who happen to be employed by their company. Open source developers strive to earn the esteem of their peers. That’s got to be highly motivating.
People don’t quibble with the need for free speech. It is a liberty that people have defended with their lives. Freedom is always something you have to defend with you life. But it’s also not an easy choice to make initially. And the same is true of openness. You just have to make the decision to be open. It’s a difficult stance to take at first, but it actually creates more stability in the end.
Think of politics. If the logic that’s used against open source were applied to government, then we would always have one-party rule. Obviously, a single-party rule is a great deal simpler than our system of multiple parties, the open political system in which much of the world operates. With one party you don’t have to worry about getting agreement with other people. The reasoning would follow that government is too important to waste on the give-and-take of openness. For some reason people see the fallacy of this argument as it applies to politics and government, but not as it applies to business. Ironically, in business it makes people nervous.
People are frightened of change, partly because they don’t know how it is going to turn out. By sticking to the status quo, a company can make a better judgment of where it will go, and sometimes that seems more important than being hugely successful. These are companies that will be predictably successful instead of being unpredictably really, really, really successful.
It’s easy to give lip service to open source, but it can unintentionally degenerate into a two-tier society: Us vs Them. A lot of decisions get made the easy way — sitting at the cafeteria table discussing the options and developing a consensus without ever opening up the discussion to the outside.
And the same is true of Linus the person. Things change, and claiming that this isn’t so doesn’t change the facts. Linux is not the same movement it was five years ago, and Linus isn’t the same person he was back then. And part of what has made doing Linux so very interesting to me has been exactly the fact that it hasn’t been the same, and that new issues have continuously kept coming up. And they haven’t been just technological issues, but issues involving how the whole meaning of Linux changes in the face of success. Life would be boring otherwise.
So instead of using the word “spoiled,” I’d prefer to just say that commercial success has made both Linux and me “different.” I’d hesitate to say “grown up” — I think, for me, having three kids made far more of a difference that way — but simply different. Better, in many ways, but also less pure. Linux used to be just for technical people, and a safe haven for geeks. A bastion of purity, where technology mattered and little else.
On my first visit to Linus’s home, he seemed to have a typical geek-like cavalier approach to his body and physical well-being, the “my-body’s-just-there-to-carry-around-my-brilliant-mind” philosophy. Linus even seemed to take pride in the fact that he never exercised.
My theory didn’t come about while staring up at the stars, immersed in wonder over the immenseness of it all on a clear night. It came about while I was preparing for a speech. When you become well known for one thing, people just assume you can be trusted to generate brilliant insight into unrelated bodies of knowledge that have been mystifying humankind for millions of years. And they want you to share those insights before a herd of perfect strangers.
So why do societies evolve? What’s the driving factor? Is it really techology that drives society?
And I, as a technologist, know that technology drives nothing. It is society that changes technology, not the other way around. Technology just sets the boundaries for what we can do, and how cheaply we can do it.
Technology, like the devices it creates, is at least so far inherently stupid. It’s only interesting insofar as what you can do with it, and the driving force behind it is thus really human needs and interests.
Survival. Your place in the social order. And entertainment.
But it’s more than just “these are the things that motivate people.” If that were all, it wouldn’t be much of a theory of life. What makes it interesting is that the three motivational factors have an intrinsic order, an order that shows up wherever there is life. It’s not just that we’re motivated by those three things — they also hold true for forms of life other than human life, and they show up as the natural progression for any lifelike behavior.
At some stage billions of years ago, sex was probably purely a survival thing for those single-celled animals that would slowly evolve into geeks and other humans. And there’s no question that sex long a go evolved from a purely survival phenomenon into a very social phenomenon.
And what is interesting to me as a technologist is how this pattern repeats itself in the technology we create. We call the early age of modern technology the Industrial Age, but what it really should be called is the Age of Technological Survival. Technology, up until not that long ago, was almost exclusively for surviving better — being able to weave cloth better and to move goods around faster. That was some of the original impetus for it all.
Suddenly the next phase of technology becomes the big and exciting one: the social aspect of communication technology, of using technology not just to live better but as an integral part of social life.
The ultimate goal, of course, is still looming. Past the information society, the entertainment society. A place where the Internet and wireless communications 24 hours a day is taken for granted and doesn’t get any headlines anymore. A time when Cisco is the old market, and Disney Corporation owns the world. A time probably not too far in the future.
So what does this all mean? Probably not much. After all, my theory of the meaning of life doesn’t actually guide you in what you should be doing. At most, it says, “Yes, you can fight it, but in the end the ultimate goal of life is to have fun.”