The Long View on Linux
I met Phil in 1990, not long after I met my wife, Joyce. It was kind of a package deal. Joyce collected interesting friends, and Phil was near the top of her list. She had met him earlier in Seattle while she was dating another UNIX geek. Both shared the curse of knowing they were smarter than pretty much everybody else (although Joyce is a bit more modest about it), along with a raft of common interests including travel, business, food and constant repartee spiced with affectionate insults.
Phil Hughes has been around computing longer than most humans have been on earth. He also knows a significant trend when he sees one, which is why he turned his attention to Linux before most of the world even noticed the Net.
In '93 and '94, he flattered me by including my e-mail address in a list that explored the idea of doing a free-software magazine. I followed as best I could (for a geek who was definitely not in the same caste as the other listees). But we were all surprised when Phil suddenly decided to do a magazine on Linux. What the hell was Linux? Phil knew.
In '94, when the 1.0 kernel came out, so did Linux Journal. I was amazed to see how steadily it grew, and how (as usual) Phil seemed to be right about Linux's inevitable triumph in the marketplace. Even though it was free, business would find it more useful than most of the costly stuff it competed with, he said, just like it did with the Net. And, as with the Net, commercial development was inevitable.
In early '99, Phil showed me StarOffice running on a Linux laptop with KDE. It looked like such a Windows killer that the possibilities blew my mind. Then he asked me to join Linux Journal to expand coverage of business issues, so I did. (This was right around the same time I started co-writing The Cluetrain Manifesto, which was kind of a double-whammy career move for me.)
Last August, Red Hat went public. Cobalt, VA Linux and Andover followed. Billions of dollars in new Linux wealth was created in less than two seasons. And then, it melted like snow at the end of winter. The mainstream press, especially the old PC rags, began tarring Linux as last year's fad. But, as Phil is quick to point out, the sum of Linux companies together adds up to a lot more value now than they did a year before. Again, the long view. Since we're both 52, it's one I understand.
Doc Searls: You were an old hand at UNIX when Linus was still a kid messing around with a Commodore VIC-20. What can you tell us about UNIX that seems to be forgotten as the Linux industry moves into enterprises where the most familiar computing worlds are Microsoft NT and Windows?
Phil: My first UNIX exposure was in 1980, when I convinced the company I worked for that a UNIX system and the C language would solve all our problems. This was with an engineering-based company that manufactured semiconductor test equipment.
What we needed was a software development environment where a handful of engineers and programmers were writing code to control the equipment we were designing. UNIX was the right choice, because we needed a cooperative environment where multiple users could share files; we needed compilers and assemblers; and we needed the building blocks to put together some support tools, such as programs that could reformat and download code into the machines we were building.
Someone, possibly Dennis Ritchie, described UNIX as a toolbox full of tools. When you were presented with a problem, you would divide it up into a set of smaller problems and then see if there were tools available to solve each smaller problem. It wasn't uncommon to write a little C code, maybe an awk or sed script, and a few calls to utilities such as sort and uniq and glue the whole thing together with a shell script.
This is much different from today's GUI approach, where you find one huge monolithic program and try to coax it into doing what you want. Maybe you can—but if you can't, you are at a dead end.
Doc: This is the stuff I learned (which might be an exaggeration, but let's pretend) in the excellent “Intro to Linux” class I took at SGI (http://www.sgi.com/support/) a few weeks ago. What amazed me was that the toolbox nature of UNIX made both creating tools and solving problems extremely easy. Sure, you can do sophisticated searches with the GUI Find command in KDE, GNOME and the PC operating systems, but the speed, flexibility and innate sophistication just aren't there. And they're slow.
Phil: This is always an issue when we hire new people. They can be productive sooner if we hand them StarOffice, but investing in them and teaching them shell commands, vi, troff and such makes them much more productive in the long run. The best example is in editorial, where everyone uses vi to prepare articles for layout. It would take so much longer if they used a word processor instead of vi. People like Darcy Whitman (Managing Editor of Linux Journal) who have been with us a long time are proof of this.
Doc: So GUI computing is secondary at Linux Journal. For the most part, the company runs in command-line mode.
Phil: Yes, but I'm not saying GUI computing is bad, just that it isn't always the solution. My big concern is that it is changing the way people think. Rather than looking at a problem and logically addressing it, I see people deciding that a spreadsheet is the solution to every problem because all they understand is spreadsheets.
Or, to go back to a common analogy, everything looks like a nail if the only tool you have is a hammer. You can keep adding features to your hammer, but you still have a hammer.
Doc: I see it as something like auto mechanics. You can do so much more if you know how the computer really works. And too few people do, just as too few people know how a car works. I think a UNIX jock looks at the OS in the same way a mechanically inclined driver looks at a car. If problems develop, chances are they're exposed and fixable.
Phil: It's exactly the same thing. You can even continue down this same line with the car. You don't have to understand physics to drive a car, but if you do, you will be better prepared to deal with situations such as when you are driving on slick pavement.
Doc: One of the virtues of a Linux box running a GUI such as KDE or GNOME is that you can go into terminal mode and work in the command line. You can't do that with Windows. And you can't do that with a Macintosh, although the next version of the Mac GUI will sit on open-source BSD with a mach kernel and command-line access. If you want, you can open a shell, get in there and do real computing stuff. I'll be interested in seeing if that makes any difference in the marketplace. Apple is already quietly running some of its heavy web servers on the new OS. This may be the result of Steve Jobs spending ten years in the UNIX world at NeXT.
Phil: You can get a shell on a Windows box, but there are many fewer capabilities and a lot less sophistication than with Linux. I seldom use Windows, but every time I do, the first thing I do is bring up a shell in case I want to do anything real, which I define as removing a file, moving a file, copying a file...you get the idea. Note that the most common thing I end up doing is copying files to floppy disks so I can take them to a Linux system and use tools such as sed and awk to work on them. vi isn't a problem; I always put vi on Windows boxes.
Doc: I remember Linux Journal growing out of an e-mail conversation—which I was improbably part of—about starting a free-software magazine. A couple of questions here: 1) who else was in that original group? and 2) what exactly happened?
Phil: In 1993, I had an idea to do a free-software magazine. While SSC was doing pocket references for UNIX and UNIX-related programs, I decided I wanted to do this magazine independent of SSC. There were six or seven of us involved in talking about the original idea. Early players included Arnold Robbins, author of some of SSC's products; Laurie Tucker, a friend in Atlanta; Gerry Hammons, a longtime friend and co-worker from years before; David Keppel, a UW computer science grad student; and Melinda McBride, another co-worker from a previous job.
I had set up a mailing list so we could all keep in touch. One day, I realized that to do a good free-software magazine, you would have to be like Consumer Reports and have no advertising. I did a little arithmetic, and realized we were about $9,999,900 US short of the $10 million I estimated it would take to start the magazine. I posted to our list what I initially thought was a joke: why don't we just cover Linux?
Everyone thought it was a great idea. So, I decided to think seriously about it, and agreed. It had balance: it wouldn't cost much to do, but there wasn't much market, either. Not sure if that was good balance, but it was balance.
I posted some questions on comp.os.linux, the only Linux Usenet newsgroup at the time, and received very favorable responses. Thus, it looked like we had an audience, so I set the wheels in motion.
Things looked pretty good, and we were almost ready to dive in full-force when some disasters struck. The most significant was that my friend Gerry died. He was doing some programming for the infrastructure we needed, plus he was going to invest. It was obvious that we needed to put the project on hold, and I made another Usenet post to let people know there was a very large bump in the road.
At the time, Bob Young had started a publication called New York UNIX. Someone saw the post about our problems, and gave it to Bob. Bob contacted me, and suggested that he could be publisher if I could take on the task of editor. We decided to go for it.
After two issues, it was clear to both Bob and me that this wasn't the right relationship. We split the responsibilities, with him assuming the debt for printing already done, and I took the subscription obligation—the 926 readers who had paid for 10 to 12 more issues of the magazine. I rolled Linux Journal into SSC, and we ran with it.
Doc: So it's true you gave Bob Young his start with Linux?
Doc: That checks out. When I talked to Bob a couple weeks ago, he gave you all kinds of credit for getting his Linux career started. When I told him “Phil says he taught you how to spell Linux”, he said, “It's true! I owe a lot to Phil. He even gave me one of my favorite metaphors: that closed source is like a car with the hood welded shut.”
Phil: While he gives me credit for the hood metaphor, I really don't remember using it. But, I do like it.
Doc: One of the most interesting things to me about Linux Journal is how it seems to be written, to a large extent, like Linux itself. Many of the features and columns come from readers—members of the Linux community. And most of these are people solving real problems. I get a sense with both Linux and Linux Journal that we're all working together to raise a barn.
Phil: It has exactly that feeling. In the early days, many authors were surprised that we actually paid them to write for us. Some just donated the money to the Free Software Foundation or other projects.
Doc: Y'know, the e-world is full of all these new acronyms around commerce: B2B for business-to-business, B2C for business-to-consumer, B2E for business-to-enterprise. So I have an acronym for Linux Journal: G2G for geek-to-geek. Because that's the model that is making the new world, and the great irony is that the New Economy folks haven't got a clue about it. Which makes it that much more subversive.
Phil: This isn't new. Remember, UNIX was born because 30 years ago, a couple of geeks wanted to play a computer game. I wonder if 30 years from now, most people will not even know that Linux was a student project. Actually, I wonder how many don't know that now.
Doc: How do you see the free/open movement today? How has it changed? Is it for the better?
Phil: There are two things here: open and free. We had open and free software on mainframes in the '60s and '70s. If you bought a mainframe, it came with an operating system complete with source code. When you were shelling out millions of dollars for the computer, or more commonly, leasing a multi-million-dollar computer system, why not give you the code? It wasn't like you would go to Radio Shack, buy another computer and copy the OS.
A combination of the price drop in hardware, generic hardware and Amdahl Corporation forced a change. First, Gene Amdahl, who had designed IBM's mainframes, started his own company to make machines like the IBM mainframes. By “like”, I mean they had the same instruction set and could, therefore, run the same operating system. IBM now had to unbundle and charge for copies of the OS so they could make money off the sales to Amdahl users.
Doc: I've never heard this analysis before. It's really fascinating. What you're saying is that, historically at least, software really did want to be free. And Bill Gates invented an industry that didn't need to be there. This is what Neal Stephenson suggests in his great little book, In the Beginning Was the Command Line.
Phil: Yes. The OS was something the computer manufacturer had to include with their hardware. Without it, they couldn't sell the hardware.
Doc: You think IBM is going back in that direction with Linux? They're communicating rather clearly that they don't much give a shit anymore about selling OSes, maybe because that was never the idea in the first place. They sell iron. Why not sell iron that's easier to deploy because it runs a universal OS?
Phil: Yes, I do. IBM abandoned their web server in favor of Apache. I think they know people don't want to buy an OS—they want to buy a solution. Actually, I think they knew this when the PC came out. I feel that Microsoft managed to confuse the issue, and IBM fell for it for a while.
The first cheap and generic computer was the IBM PC. Other manufacturers jumped on the bandwagon to make inexpensive clones. That meant the OS cost, again, could not be bundled with the hardware cost. Besides the end of “free” in terms of price, the openness of the past was gone because there was direct competition.
The GPL is an attempt to force freedom back into the mix. It is only one example, with the BSD license being another. Each has its advantages and disadvantages; my point is that we used to have this freedom, but because hardware changed, we now had to do something different in order to get free—both in terms of price and freedom—back into computing.
Explaining the BSD license to a businessperson is fairly easy. They will remain skeptical, but it is easy to tell them you can get something for free, do whatever you want with it and then sell it.
Doc: Because you have to credit only the originator.
Phil: Exactly. You can build a proprietary product, and don't have to pass along your additions or improvements. The GPL is a lot harder. They don't understand why it makes sense to make the changes and then give them away. Or that they are expected to give away whatever changes they make. In other words, not to act like they own it exclusively.
Context is the issue. It's the same as IBM giving you the OS with the hardware; you need to show that businessperson how giving away the OS will sell something else. Sorta like giving away a keychain at the car dealer, and then hoping you buy a car to go with it.
As each new vendor enters the Linux space, you need to educate them. You need to show them success stories. Eventually, they will get it.
Doc: I remember when the Net first became obvious to business, right after Netscape released the next incarnation of Mosaic. Nobody knew what to do with it, because no company owned it. The thing was as free and open as air. Now, it seems like every business on earth has .com after their name, and the Net has utterly changed the context of their work. Are we seeing the same thing happening with Linux? It seems to me that the Net and Linux are two aspects of the same thing—a new world that works for three reasons: 1) nobody owns it, 2) everybody can use it, and 3) anybody can improve on it. This turns out to be great for business, as long as the business doesn't try to throttle this public goose that lays golden eggs.
Phil: There is certainly a similar evolution. That is, Linux was ignored by many for a long time, even though it really was viable. A few years ago, SCO did a fax spam about how you could get a $50 trade-in on your Linux distribution to “upgrade” to SCO UNIX. Well, anyone using Linux at the time was aware that Linux was a better product than SCO UNIX. It's pretty obvious this effort didn't work, as we can tell by SCO's market share.
So, yeah, Linux is a tool that can make money for a lot of different people, because it is open and free. Many companies have played along very well to help the goose continue to produce the eggs. The one company I believe got off track for a while was Red Hat. They seemed to want to make their name mean Linux. It wasn't that they did not continue to give back to the Linux community; the problem was their marketing wasn't showing Red Hat consumers that there was a lot more to the Linux community than Red Hat. Sorta like Microsoft trying to make people think that they were the only game in town.
At this point, I think the situation has corrected itself. You see books on SuSE, Caldera, Debian and other flavors of Linux in the stores. That means the distributions can compete on how well they fit the needs of each consumer, rather than on a visibility issue.
Is this change for the better? If you believe Linux should grow in market share, yes. We used to be a bunch of geeks doing what we want. Today, Linux is business, and to keep it growing, we need to keep getting more businesspeople on board. It is just that along the way, there will be various frustrations. The most common is when a vendor doesn't understand the point of open, and finds a way to get around licensing such as the GPL.
Doc: I've found it very hard to talk rationally about Microsoft inside the Linux world. Too many distinctions get collapsed. For example, the literal distinctions between open and closed source get collapsed with moral distinctions between right and wrong, and with qualitative distinctions between good and bad software. Eric Raymond is fond of saying he just likes software that doesn't suck. But a lot of the world likes closed-source software for which there are no alternatives, whether that software sucks or not. And most Microsoft users, on the whole, don't think Office sucks.
Phil: I think two things happened here. First, for many people, the first word processor they used was Microsoft Word. They learned it, and see anything different as something new they have to learn. So, whether MS Word is sucky or not, they know how to use it. When I was learning vi, I had been using ned, a screen-oriented editor on UNIX, but then ned wasn't available for the new computer SSC had bought. I hated vi and loved ned. What happened, however, was in about two weeks, while I still hated vi, I realized I was editing faster than had ever been possible with ned.
The second is the charm of the GUI. Microsoft had the “in” that allowed it to produce the best GUI-based editor, because they had the inside track on the GUI. For the casual user—someone who might write a letter a day—Word was adequate, and easier to remember how to use. Even I can use Word; it's just that I can get more work done in vi.
The person I started SSC with, Irene Pasternack, left to “get a life” that included raising a family—something you don't want to do when you are starting a company. Irene has consulted at Microsoft for close to 15 years doing tech writing. A year or so after she went to work for Microsoft, her boss told her that she did eight times as much work as his other employees and asked if she had any idea why. She said, “they use Microsoft Word, I use vi.”
Doc: A friend of mine used to program for a familiar dot-com company that runs on Windows NT. He said he constantly had to deal with memory leaks in that OS, and added, “we're putting up 60-story buildings and we don't know if there's rebar in the concrete.” Then he added, “Actually, we know there isn't rebar in the concrete, and we're going ahead anyway, knowing we just have to fix problems constantly.” Open-source software doesn't put geeks out of business; it just gives them more room to do their business. And gradually, Linux is proving that. Which is why I think that in five or ten years, the software and construction businesses will look very similar, with many more builders, architects and designers. Plus many more suppliers. The main difference will be that no one pre-fab supplier will control the business anymore.
Phil: The UNIX community grew up as computer capabilities grew up. The 30-year history of UNIX means there were people making those buildings without foundations, because there wasn't any room for the foundation. But they recognized the problem, and when room became available, they added as much foundation as would fit. Thus, the best possible building was produced at each step along the way, and we built a workforce of people who understood how to grow with industry changes.
On the other hand, the Microsoft community knew the foundation was missing and there was nothing they could do about it, so they realized the whole building was disposable. Of course, being disposable means you can sell the new product next year. I think I am beginning to realize that the mess being created was not a plot—just circumstance.
Doc: You've probably watched the climbing Linux adoption curve closer than anybody. Why is Linux finding universal adoption where other free UNIX systems (such as the BSDs) did not?
Phil: As much as Richard Stallman and others would like to credit this adoption with the difference between the GPL and the other software licenses, I just don't think it is the case. Linux got out there, and it worked. While the various BSD camps were fighting over which was the one true BSD, people were using Linux and seeing that it was a solution.
Once Linux had the inertia (and Linux Journal certainly helped build that inertia), Linux would continue to roll along. I also have to give a lot of credit to Linus' management skills. Getting hundreds, possibly thousands, of programmers around the world all to cooperate on the development was an amazing effort. Getting them all to do it for free was way beyond amazing.
Even before I met Linus, I was impressed by his maturity and sobriety. The guy just seemed to have this highly informed and calm perspective, like a judge. Not your average 20-something dude; not your average geek, either. Made me wonder what would have happened, say, if Bill Joy had stayed with Berkeley UNIX. Instead, Bill is doing fun stuff, but it's all stuff that's owned by Sun. Java. Gini. Solaris. Sun is a good company, but in their own way, they're as closed as Microsoft.
Linus has introduced a new model to the computer industry. Or, maybe I should say that Richard Stallman proposed a new model, and Linus was the right man to successfully implement it. In any case, it has worked, and that may help convince companies such as Sun to at least move in the direction of more openness.
Doc: When did you meet Linus?
Phil: I first met Linus in 1994. It was at a Linux-related party in suburban Washington, DC. When I got there, Linus was there along with a few others. They were talking about some technical Linux-related issues. What I saw was a person who could participate in the conversation, rather than act as the boss. At this point, I understood why Linux was moving forward so rapidly.
Doc: Linux has spread like wildfire, and Linux Journal has grown right along with it. How have both Linux and Linux Journal changed since both came out at v.1.0? And are you happy with all those changes?
Phil: The short answer is that today we are both better products. But, more importantly, our focuses have changed. Linux went from a geek OS to a major contender in the business and commercial market. As that was happening, LJ went from being a developer magazine to offering a lot more that would appeal to the commercial user.
Over the years, we have received letters from readers who credit LJ with convincing their bosses that Linux was real. At times, I felt LJ was portraying a more professional image than Linux itself; at other times, I felt it was the other way around.
I can't say I am happy with all the changes, but I also realize they needed to happen. While it used to be more fun to play with Linux than to publish a magazine, I also realize that for Linux to move forward, it is necessary for it to become more commercial. We would not be seeing drivers for all the new hardware if we didn't have the kind of growth we have.
Doc: In the last year, Linux has become a very hot topic. It seems to me this was for two reasons. One was the popularity of the OS itself. The other was the popularity of new Linux companies in the stock market. These are two very separate concerns that were covered by the mainstream press as if they were one—at least while Linux stocks were hot. Now we're seeing the topics start to separate a bit, now that dot-coms of all kinds (including Linux stocks) are dropping from the sky like a plague of frogs. Linux stocks were especially hard hit. It hardly seems fair.
Phil: The growth in the popularity of the OS has been amazing. Here, I think the U.S. Department of Justice and Microsoft both get some credit. The DOJ antitrust suit against Microsoft brought the concept of an operating system into the minds of much of the public. Prior to the DOJ action, most people only understood “computer” and “program” together, where “program” was commonly spelled Microsoft Word. They bought a computer, and added Microsoft Word or Microsoft Office in order to make it do things. That's all very different today.
The Microsoft credit has to do with NT/Windows 2000. A lot of companies were betting on NT or Windows 2000 offering the server side of their computing. The harder people look at these products now, the more they seem to realize there are alternatives such as Linux, and quite bluntly, Linux has proven to be a better choice.
Windows 2000 is finally out there, but people are sick of waiting. If Windows 2000 works, fine. But if not, they are likely to pick an alternative, and Linux seems to be at the top of that list.
Doc: Here at Linux Journal we use Debian, which is the largest noncommercial distribution. Are we doing it for agnostic reasons (not wanting to favor any particular advertiser), because it's better, or both?
Phil: Note that we used to use Slackware. I like the idea that Debian seemed to be the best fit for us, because we can then be agnostic, but we chose it mostly because it was a better solution. Debian has always had a good dependency system, plus it was designed so you could upgrade without a reboot. While Debian development might fall behind the commercial distributions, I am not a fan of upgrades without a reason, so it has tended to keep up with our needs.
Doc: What do you run personally?
Phil: On my personal systems, I run a whole bunch of different distributions for various reasons. For example, I have SuSE on one laptop and Caldera on another.
Linux, the kernel and hundreds of utility programs are virtually the same in all the distributions. Sure, SuSE will release a new distribution this week with a newer kernel than Red Hat. And next week, Caldera will be ahead, and so on. But they are mostly the same.
What they add to all this GPLed software is a combination of additional programs, such as an evaluation copy of some commercial software, and an installation method. All the distributions I have seen differentiate between GPLed software and commercial software, so I don't see this as a serious issue. As for the installation methods, most distributions have GPLed this code as well.
Doc: Let's talk about Linux on the desktop. Today, there still isn't a single non-proprietary desktop application suite to compete with Microsoft Office. Enterprise-customer types tell me Linux won't make it on the desktop until it has a truly competitive (and compatible) office suite. What will break the logjam here?
Phil: StarOffice, while not open source, is free and is forcing the issue of compatibility. Sun, the owner of StarOffice, needs a generic and compatible office suite in order to restrict Microsoft's ability to rewrite the standard every year or two. If StarOffice is successful in preventing the standards rewrite, then I expect other packages will appear. The good news is that StarOffice is available for MS Windows; and, as I understand it, e-machines is shipping it on their boxes. This should help market penetration.
Doc: If you see Sun as the only player with the clout to really compete with Microsoft in office suites, what do you make of Applix's and Corel's chances? And do you think it's possible that some group of open-source developers, KDE for example, will come up with a practical open-source office suite?
Phil: Corel doesn't have a complete suite yet, and I don't think they will until after the issue has been forced anyway. Applix has had an office suite out there for a long time, but I don't think they have the clout needed. Sun wins on image.
Linux will creep into the office desktop on a company-by-company basis. Take a bank, for example. While there are lots of computers in banks, they don't do a lot of different tasks. Armed with a word processor, a spreadsheet and some program to access their proprietary software running on a server, you could quickly convert a bank over to Linux desktops. This will happen because of cost issues.
Doc: This is what lots of people want to see with Linux appliances. Should be interesting to see how that goes.
Phil: Besides cost, the ease with which you can add things to Linux and the fact that Linux for an appliance can be made really small are two more pluses in favor of Linux in this market. As much as BeOS is a great OS, I think it is going to be hard for Be, Inc. in this market because of Linux.
Doc: Do you give Be much of a chance in any case? How about if they open source the OS?
Phil: I think they bailed out of the desktop at the wrong time. For some high-end IAs, they may have a market, but I don't see them getting any significant percentage. Qt without X (this is new) makes Linux more viable here.
Doc: Let's talk about loves & hates. Why do you hate Perl and love Python? Why do you hate Emacs and love vi? These are often religious issues, but I'm interested in what makes for wise and forward choices.
Phil: They generally are religious issues. In the days of less-powerful computers, you could make the argument that vi is small and Emacs is a pig, but today it doesn't matter. I learned vi in 1983. I don't even think about which keys to hit to do a task—it is just magic now. I have no reason to change.
A newcomer should try both. Some people, for example, really can't handle a moded editor like vi. Others see the advantage of fewer keystrokes. Yes, we have an office full of vi users, but I expect some places have offices full of Emacs users.
Perl vs. Python is different. Historically, Perl evolved from UNIX commands such as sed and awk, whereas Python was designed. Python was designed to be an object-oriented language, whereas OOP features were tacked on to Perl. If you are an old UNIX programmer, then Perl may make sense to you; but for a non-UNIX person, I can't see it.