Sun User's Group 10th Anniversary Keynote Address Michael Tiemann President Cygnus Support December 9, 1992 +---------------------------------------+ | | | | | A D M I T O N E | | | | >>>>> F R E E <<<<< | | | | T O T H E F U T U R E | | | | | +---------------------------------------+ INTRODUCTION Good afternoon, and welcome to the 10th Sun Users Group conference. It give me great pleasure to address you today, not just because it means a free lunch for me, but because, as a fellow Sun user, I have a chance to thank you all for playing a part in this revolution called Open Systems. Not only have you helped me by pushing Sun to build better products (which give me a chance to buy new and exciting machines each year) but you have also taken advantage of improving hardware to deliver your services and manage your business in a more efficient manner, which means lower cost and greater benefit to me as well. So thank you -- all of you-- for being a player in this win-win game. I'm here to talk to you about the future -- Open Systems in the next 10 years. To make things interesting, I've decided to give you all a chance to determine -- today -- whether I speak the truth or not. I've handed out some Free Admission Passes -- passes which will admit you to the future. Let's see if they work --- it seems we have indeed moved into the future, so I think mine's working -- is anybody still living in the past? Or is everybody with me? Ok -- some legalese about these passes. You may copy and redistribute these passes to anybody you like. Each card offers a perpetual admission to the future. They cannot be deactivated, they do not expire, and (this may be classified as a bug) you cannot go back to the present or the past, not matter how much you dislike the future. Sorry about that. What value do these cards really have? Their value is little without a proper understanding of their potential. Hopefully this keynote will provide that understanding, and hence make your free pass worth a lot more than you paid for it. In the advanced course, you will realize that these cards can take you as far into the future as you are ready to go. For those of you not ready for 10 years at once, relax. We'll proceed slowly. There's an old saying that ``History does not repeat itself. Historians merely repeat each other.'' Because most people seem far more easily convinced of the realities of the past than the realities of the future, I'm going to spend a little time looking at past events which suggest future trends. I'm also going to look at present conditions which seem unlikely to change, and hence will remain in force in the future. I will conclude this talk by giving my view of the future, a view which I hope you find as exciting and challenging and as real as the vision that the Sun founders presented in 1982, the vision you helped make a reality in these past 10 years. OPEN SYSTEMS: THE NEXT 10 YEARS In 1992, open systems pioneer Sun Microsystems celebrated its 10th anniversary. Sun was in the right place at the right time to capitalize on the growing unrest among users who were locked in to their proprietary environments. Times have changed, and now every vendor offers their version of ``Open Systems.'' Is this where history ends, or will there be another revolution? I believe that there will be another revolution, and that this revolution is already well underway. The rallying cry of the new revolution is ``Freedom!'', and the sooner vendors understand what freedom means--and how to deliver it--the better the chances that this will be a bloodless revolution, and one which is a net victory for both the would-be leaders and the populace. THE NATURE OF LAWS Sir Francis Bacon once said ``in order to be commanded, nature must first be obeyed''. One of the most dramatic examples of this insight is power we have achieved by understanding the nature of physics and applying this understanding to the development of semiconductor devices. Starting from a device which contained one transistor on a silicon substrate, we have developed devices which pack millions of transistors onto fingernail-sized chips. While the functionality and performance of today's microprocessors and memory chips is amazing, what's even more amazing is that we know with some accuracy what is possible given our current understanding of physics, and we can predict with considerable precision what will be possible next year, the year after that, in 5 years, and even 10 years from today. While chip densities (and thus to a large extent, performance) have been doubling every year for the past 20 years, prices have been been going down by roughly a factor of 2 each year as well. If this were translated to automobile performance, cars would get 10 million miles per gallon, run at speeds approaching 1/10th the speed of light, and would cost less than a penny. There are two reasons that silicon price/performance has so far outstripped that of the automobile: the first is that the physics of silicon devices permits performance which leaves behind even what we have today; the second is that the scientists, engineers and entrepreneurs cooperated in a way to exploit this potential. Would we have achieved these results if they had ignored physics, and instead expected the devices to mature simply by enrolling them in strategic alliances, increasing their advertising budgets, asking Congress to legislate performance and cost figures, or simply making wild claims which the devices were expected to fulfill themselves? Of course not. When we compare the progress we've made in semiconductors to the progress we've made in software, we see a stark contrast. Instead of getting faster and cheaper, software gets bigger and more expensive. I claim that the reason for this is not that software is harder to do than silicon, but rather that people doing software are attacking the problem in the wrong way. I claim that if we study the problem, understand the issues, and put our efforts into solving the problems that are revealed through this investigation, software progress will leave silicon in the sand. PROPRIETARY SYSTEMS The free market has a natural tendency to find the most efficient way to do things, just as a physical system has a tendency to find the lowest energy state. (While this sounds almost rhetorical, we still award the Nobel prize to the economist who demonstrates it in the most novel and scientific way.) Natural barriers, artificial barriers, and entropy make economic systems and physical systems seem all the more analogous (and thus ripe for would-be Nobel laureats). Before the Open Systems revolution, proprietary systems did a brisk business by finding niches where computers could help users realize gains in efficiency and delivering the machines to do so. In those days, computers were so new that they didn't compete with each other, they were competing with pencil and (tons of) paper. As proprietary vendors became established, they began protecting their interests by making it more difficult for competitors to enter the markets they had created. The Japanese have taught us the painful lesson that in the commodity market, if you are competitive with respect to price and quality, you've got the market sewn up. In the days of proprietary systems, computers were so new, the opportunities so vast, that price and quality were less important than availability and support. Before computers were a commodity product, vendors could protect their turf by keeping interfaces secret and suing those who tried to reverse engineer them. In order for a proprietary technology to last in the marketplace, it has to be the case that barriers used to limit access to the technology affect potential competitors much more than potential customers. Over time this critical balance shifted, and as it did, proprietary system vendors found themselves fighting a war on two fronts: the competition was getting better a breaking down or getting around the barriers and the customers became increasingly aware of how the barriers limited their options. OPEN SYSTEMS -- THE PAST 10 YEARS What the founders of Sun Microsystems discovered was that the market was looking for a more efficient solution to their computer problems, and that by throwing away some of the baggage of the proprietary model, the benefits of treating users more fairly would more than outweigh the downside of being more open to competition. $10 billion dollars later, I think it's safe to say that they were correct. OPEN SYSTEMS -- TODAY Today the Open Systems Market has gone from Mad Science to Mainstream. The model has shifted from monopolistic competition to free market economics. OPEN SYSTEMS -- THE NEXT 10 YEARS For the past 10 years, a vanguard even more farseeing than Sun's founders have been telling the world how to build systems, deliver them and support them more efficiently than even the Open Systems model. Fundamentally, what we are talking about is empowerment--power to the users and power to the developers. Imagine a computing environment where the only limits you had to deal with were physical limits: a 19'' color monitor (or maybe a 12'' supertwist); a 50 (or maybe a 500) MIPS processor; a 64MB (or maybe a 4 GB) memory unit; a 2GB (or maybe 2 TB) disk system. etc. But once you were done with the physics, you could control everything else. That's the promise that software offers -- it runs outside the constraints of physics. Sure we have the Halting Problem, undecidability, NP-completeness, and other problems we don't know how to solve. BUT! In the domain where we do have solutions -- operating systems, drivers, compilers, debuggers, application builders, etc. What's to stop this stuff from becoming almost infinitely useful? Software can be copied, modified, massaged, reimplemented, shared, used, you name it, unlike almost any other thing we've ever known. The ability of the computer to translate this abstract expression into concrete results, be they financial reports or weather reports, is what has brought us into the Information Age. But we have not begun to tap this potential. Physics tells us that every system is in some form of equilibrium, and that every equilibrium is merely a set of related (often opposing) forces. As the utility of software has become more widely recognized, the free market forces have created many differt ways to exploit this value. There are good ways of exploiting software, and there are bad ways. It all depends on who writes your paychecks. I'm not going to tell you what I think is bad or good -- I'm just going to note that there's a significant trend in what users are asking for, and since users are the force that drives the computer market, I'm going to assume that what they want is what they are going to get. In 1984, one user named Richard Stallman decided that he'd had enough of proprietary systems, once and for all. Anybody who's been burned by proprietary software has their story to tell. The one I'm going to tell you is about a printer. Back when all software was free (it was given away with the hardware), MIT received a printer with some very minimal driver software. The most common complaint about the driver was that you couldn't tell when the printer was out of paper, and because it was a shared resource, you couldn't tell if the tray you filled at 9 o'clock would still be full at 10 or not. There was hardware detection of the ``out-of-paper'' condition, but no support for it in software. Some people at the MIT AI lab rewrote the driver so that when the printer ran out of paper, it would notify just the person who was printing (if they were still logged in), and otherwise it would notify all the other users who were logged in. This worked great until they got a new printer, a new driver, and no source code. The company would not provide the sources, saying that they were proprietary and could not be released. However the sources were at another university. The other university had signed an agreement which prohibited them from sharing the sources, and so this great hack which made the printer a better product was lost. After the nth time this sort of thing happened, Stallman started a project to provide a complete implementation of a UNIX-like environment (complete with a compiler, a debugger, and an editor -- those things were bundled back then) and to make this thing freely redistributable. The project was named GNU, and in addition to writing lots of really neat software (anybody check out GCC for Solaris yet?), they opened some new doors as well. HOW SCIENCE WORKS When Stallman made his proclamation, most of the people who knew him thought he had finally lost his mind. How was a single programmer going to take on the rest of the world by himself? Well if it were just RMS (his user id) against the world, that would have been crazy (even if he did win a McArthur Foundation Fellowship, the Adm Grace Hopper Award, and lots of other recognition for being one of the most talented programmers of this generation). But Stallman believed that others who felt the way he did -- who felt the need to break new ground because the proprietary ground was so contaminated, so treacherous -- that they would join his effort. When you look at how science has worked for the past 500 years, we see that his thinking is not so crazy after all. The problem of science, which is basically answering the question ``how does the universe work?'', makes the GNU project seem like a gnat in comparison. There is a universally accepted way of gaining recognition in the field of scientific study: you publish. If you made a finding in 1972 and you keep that finding secret, when the next person makes that finding, two, ten or twenty years later, their publication of that finding gives them the credit. In fact, not only does the scientific community seek to encourage disclosure (through rules of recognition) but the patent office encourages this as well, by granting special privileges to inventors in exchange for making the invention public, and ultimately part of the public domain. The reason we have seen so much progress in science is because the scientific process -- observation, hypothesis, confirmation, independent evaluation -- works very well, in a wide range of specific applications. And because information is treated like information, not property. We'd be nowhere if we had to license integrals to calculate device physics equations, or if we had to license algebraic formulae to simplify our equations, or if certain numbers, like 67 or 3, had to be paid royalties every time they showed up in some calculation. The reason the stealth bomber is so expensive has much less to do with the cost of materials and a lot more to do with the cost of doing science the wrong way (i.e., in secret). WHY GNU HAS BEEN SUCCESSFUL Stallman's somewhat purist approach to software proved to be very effective. The GNU project has produced de facto industry standards: GNU Emacs, GNU C/C++, the GNU Debugger, and a host of other programs which operate on virtually every commercially viable 32-bit UNIX-like system (and quite a few embedded systems as well). Though the GNU project has yet to release a kernel (mostly because volunteers have been so busy building all the programs you need in order to build an operating system), I believe the market acceptance of GNU software is an unqualified success. Just to prove I'm not too GNU-centric, I'll give you another example where free software stole the show. Before I identify the product, I want to tell you--this didn't have to be such a bad thing. If Sun had taken the aggressive approach they forced their competitors to take, the world would have a better window system. If NeWS was released as free software, we'd have bought at least as many Sun workstations as we have to date, and we'd all be better off. But the X consortium released X as free software, NeWS remained proprietary, and no amount of marketing could heal that Open Wound. So free does not always mean better, but it almost always means better accepted. That's what this speech is about: raising the possibility that the next 10 years of Open Systems is going to be Open Done Right. It's going to mean treating software like information. The value of gold is derived from its scarcity. What is NeWS worth today? What is X worth today? What's going to happen if we stop building fences and start farming the land? THREATS ON THE HORIZON Every sermon has to raise the spectre of the devil, and here, at least, I will be conventional. The greatest threat to open systems in the next ten years is coming from the lawyers: user-interface copyright (UIC) and software patents (SP). To keep this speech short, I will direct people who are interested in the gruesome details to contact the League for Programming Freedom (LPF). To maintain continuity, I have to mention why UIC and SP are so dangerous. The argument for UIC -- why Apple claims they should be able to copyright a window system that offers pull-down menus -- is because they claim to need the ability to recover their investment. Let's forget about the fact that Apple merely copied the user-interface they saw running in the labs at Xerox PARC, and accept on faith that they've invested tens or even hundreds of millions of dollars developing it. The fact is that users have invested tens of billions buying hardware, learning to interface, and adapting their way of doing business around it. Who deserves the protection? Well, in case you just woke up, the revolution that brought us to where we are today -- Open Systems -- is the revolution that's about NEVER BEING LOCKED INTO SOMEBODY'S PROPRIETARY WORLD AGAIN! UIC means that companies can try to create interface stds which then function as proprietary locks. We see this coming. We won't be fooled. We are going to say no. And so now we are living in a DMZ. Users refuse to play dumb, and vendors won't reach out without some proprietary control. Nobody's happy. Why is our software so clunky? Why does it take forever to get a decent UI for our databases? Why don't we have cheap, readily available software like we do in the PC market? It's because the Open Systems revolution stopped short. It's because Open Systems was adopted as a paradigm for hardware but it has not been understood -- in fact, with UIC, it may be illegal -- for software. If you don't believe me, here are some amazing facts: text and numerical processing in the same window -- protected by IBM; if you use Emacs, you could be sued. Scrolling text in 2 windows simultaneously -- patented by Paul Hechel; you cannot legally build a freely redistributable clone of Hypercard for X windows. Client-server computing--patented by a company that builds computerized gambling machines for Las Vegas; they sued (and won) a case against a company that made a bingo game program for churches. The next time you use NFS and you say "I'll _bet_ what I'm looking for is in this file" you may wind up in court. So, who wants to go back to the dark ages? Who wants to give up everything they've gained from the Open Systems revolution? Were you better off 10 years ago? Speak up, and we'll be happy to send you back home right now! LEGAL CODES VS COMPUTER CODES Seriously, we are facing a real problem. We are also facing a momentous opportunity. Software freedom -- the freedom to use, modify, and distribute software to anybody, and the freedom to grant that freedom transitively -- is a reality. We are building a suite of software that is complete enough, robust enough, and powerful enough to leave the proprietary meglomaniacs behind. There's only one group of people standing in our way, the lawyers, and I know just how to deal with them. To test the fairness of a contract (and hence to some extent, its validity) you can test how the contract reads when the parties switch sides. I claim that We The People got a raw deal with respect to how copyrights and patents apply to software. Not only do they impede progress rather than promote it (as required, or at least suggested by the Constitution), but they are so obviously bogus that they apply only to us, and not to lawyers. Suppose we put the proverbial ball in the lawyer's court. For example, if you wanted to use some legal code for a project, you had to license it from the lawyer or law school or law firm that developed it. What would society be like if First Amendment rights were only available to those who could afford to license them? I'm sure such a society would not last a day in America. But this is what we are facing today in the computing society. Common law is free code for all the people. If you wish to use the Roe vs. Wade decision in your court case, you are free to do so. There are advantages to hiring a professional who is familiar with the code, but if you cannot afford a professional (or feel you are better qualified), you can try to argue for yourself. Why do lawyers get full access to free software in their domain, and then chase down software companies and tell them ``hey--you need intellectual property if you want to survive''. Where's the symmetry? Where's the fairness? Lawyers, as a whole, make far more money than programmers. Who's got the better business plan? Isn't it time we got a clue? CLOSING Before you return to the conference, I want you to take stock of the current situation, and decide what role you are going to play in the next 10 years. You have already been a part of one of the most stunning revolutions in history. But you cannot rest of you laurels. If you stand still, the freedoms you enjoy today will be stripped away. Those are the rules in the zero-sum game. I urge you, as a computer professional, to take a public stand against software patents and user-interface copyright. No matter how you write software, those are the two biggest problems you are going to face in the future. If you press on -- if you demand freedom, if you buy freedom, if you check the label and it says ``This Code is Free Software'', if you ask the vendor ``but is it free?'' you will carry this revolution forward and hopefully in another 10 years somebody will be able to address a group ten times this size and talk about how in the past ten years we have finally cracked the problem that has caused software to lag so embarrassingly far behind hardware. We will talk about what can be done with software when you obey the laws that govern the science of software, rather than the laws that control it, confine it, and limit the very way in which it can work. To paraphrase FDR, ``we have nothing to free but freedom itself''. Let's get going!