InterviewUSENIX

 

L. Peter Deutsch

by Stig HackVän
<Stig@devlinux.com>
Stig HackVän is working to find the best way to fund independent developers of cooperative software. His /Dev/Linux Web site documents the results of his search.

L. Peter Deutsch, as the author of Ghostscript, has done what very few people have managed to do: he has managed to work on a project of his choosing, to release it as free software, and to do so while generating a sufficiently positive cash flow that he can now consider retirement. Peter transitions Ghostscript from cooperative software to free software, in part, by using different licenses on Ghostscript during the life cycle of each new release. Peter is president of Aladdin Enterprises.

Stig HackVän started using and hacking on freely redistributable software in college. Working in the "real world," he found himself always in contact with freely redistributable software, but often unable to take the time to contribute to it. He sought opportunities to work on free software while also being paid for his time. Most notably, he has worked on XEmacs.

Peter and Stig first met in August 1997 and talked into a tape recorder for almost two hours. They concentrated on Peter's Ghostscript business, the nuances of copyleft and intellectual property protection, their impressions of the status of the cooperative software community, and the chasm that lies between early adopters and mainstream users.

They itched for the Netscape source release before it happened, talked about the Apache Web server before it could claim to run on over half of the Web sites on the Internet, and discussed the Gimp image editor as a groundbreaking end-user application and an incredible success for cooperative software. Their conversation has been trimmed, updated, clarified, and hyperlinked for your consideration and, we hope, edification.

Stig: Hi, Peter. You have been working on free software for quite a long time. How long have you been doing it, and what influenced you to work in that direction?

Peter: I've been working actively on free software -- more precisely, what is now called freely redistributable or open-source software -- for about 10 years. The only substantial free software program that I have done is Ghostscript, and I started work on it almost exactly 11 years ago.

What motivated me to do that in the first place was really two things. Sort of the proximate one, I guess, was having known Richard Stallman for quite a long time and liking the idea of the GNU Project while at the same time recognizing that it was somewhat quixotic and that, in my opinion, you couldn't make the whole industry run on free software. But I felt that having free software -- at least free system software -- was a really good idea.

But I think the more important motivation for me was the fact that I basically grew up professionally in the 1960s. It was a world in which the commercial software market, as we understand it today, basically didn't exist. The interesting things that were being done in the 1960s were all being done by -- you should pardon the expression -- kids. People in their 20s, maybe early 30s, who were doing it because it was fun and because it fed their egos and because it was a contribution.

You've probably read Steven Levy's Hackers. And one of the things that impressed me about Hackers was that in fact he did do quite a good job of capturing what I remember as the spirit around the Tech Model Railroad Club (one seminal group of people who were developing that kind of technology in that kind of spirit in the 1960s).

So that attitude toward software -- namely that it's done by people who care about it and the way that you move things forward is by trading and cooperating -- stayed with me as what seemed to me like the best way to move software technology forward. And that, in turn, gave the GNU Project natural appeal for me. The reason that I started working on free software, at the particular time that I did, was that I had gotten very disenchanted with working at Xerox PARC over the preceding few years.

I was at PARC from 1971 to 1986. For the last five years of that period, I was working with the Smalltalk group, and we were getting pretty frustrated at Xerox's apparent inability to turn Smalltalk into any kind of product or to just release it to the world. And so I did some looking around outside Xerox in 1983 and 1984. Then, in early 1986, I decided that I'd had it with Xerox and that I wanted to get on with my life. So, I arranged for a year's leave from Xerox, starting in July of 1986, and I went to work with another startup for a few months.

My plan was to just take the remainder of my nine months off and maybe learn some new languages, write some music, and do other nontechnical things. But I had made reservations to go to the first OOPSLA up in Portland. So I went up there, and of course I saw my old buddies from Xerox, and Adele Goldberg said, "With or without Xerox's blessing, we are going to start a company and do Smalltalk." And that was the one opportunity that I was willing to let me change my plans for a leave.

But at the same time, for some reason, I knew that, because this was a time when I was making a shift in what I was doing professionally, this was a really good time to do some serious free software project as well.

Stig: Why Ghostscript?

Peter: I traded a couple of emails with Stallman. First, I proposed doing an incremental linker, and he said "No, we've already got somebody doing that. How about a free window manager for X?" I said, "No, I'm not interested in doing that. How about PostScript, because it combines language technology, which is something that I know a lot about, with 2-D graphics, which is something I only know a little bit about, but would like to learn more about?" So that's how a PostScript interpreter got chosen as the project that I was going to do.

Stig: That's interesting. I think that the general assumption is that most people who write free software are motivated strictly by a strong interest in the application(s) that they work on. You actually shopped around for a project before you began work on Ghostscript, and you were guided, in part, by Stallman?

Peter: Well, I wanted to do a free software project and there was this little bit of negotiation about which project it would be. I think I would have been just as happy to do an incremental linker or possibly several other things. And, you know, people asked me why I was doing it, and I gave them the following answers:

  1. I like the GNU free software enterprise, and I want to contribute something to it.
  2. It's an opportunity for me to explore technical challenges in an area that I don't know all that well, although it leverages what I do know.
  3. It's an opportunity for me to learn something, learn hopefully quite a bit in a domain that I don't know much about, namely, raster graphics.
  4. And it just sort of looks like it could be fun.

Also, something that I already knew in 1986 was that some day I wanted to have my own software business. I had seen the internal process at Xerox being really screwed up and -- well, I had seen the internal process being screwed up at every company I had ever worked for.

Stig: By bureaucracy?

Peter: A combination of things. I worked for Adele at ParcPlace for five years, and I was chief scientist there. I was one of the three or four key people that got their product working. Even at the end of those five years, I started to see process dysfunction at ParcPlace as well.

At that point, my intention was to go off to do the commercial Ghostscript business full time.

Stig: So, for the first five years that you worked on Ghostscript, you were also...

Peter: I was also working at ParcPlace. My hire letter at ParcPlace explicitly said that I was allowed to work on Ghostscript on my own time and on my own equipment and ParcPlace had no claim on it.

Stig: Ghostscript started out as an evening project?

Peter: Yes, that's right. It was actually closer to the first six and a half years that it was an evening project. From ParcPlace, I actually went to a full-time job at Sun for about a year and a half.

Stig: What was the personal cost?

Peter: It didn't seem like that much of a sacrifice, but it meant that I didn't have much of a social life. At that time, it didn't matter very much to me.

Stig: In hindsight, would you have liked to have had more of a social life? Or are you entirely happy with the way that things have worked out?

Peter: You know, I tended to be a fairly solitary person. I have been in a relationship now for pushing ten years, but my partner and I don't even live together and that seems to be the way it works best for me.

So no, I can't say that during very much of that time I was feeling there was a personal cost associated with what I was doing.

Stig: Did you flirt with burnout during any of those ten years?

Peter: I can remember being close to burnout three times. One was at Sun, where I was burning out not because I was working too hard but because I felt like I was flailing around in a vacuum. Sun's dysfunction, at least from my point of view, was not that there was too much bureaucracy, but that they didn't give me any support. That is in terms of person to person; the equipment and the money at Sun were fine.

The other two times were both since I've been doing the Ghostscript commercial business full time. They were both basically caused by the business growing to the point where I could no longer do the things that had to be done and it took me just a little bit too long to recognize that I had to hire somebody to do them. During the process of creating Ghostscript, I don't remember ever feeling that I was flirting with burnout.

Stig: Why did you originally choose to license Ghostscript with the GNU General Public License (GPL)? Was it because of Stallman's influence?

Peter: Well, I believed in the GNU Project then, and I still do today. I think the GNU Project is a fine idea. And the thing that appeals to me about the GPL is the notion of carving out an area where software will remain free.

Stig: Did you carefully analyze the GPL before you chose to use it?

Peter: I did not. At the time, 1986, there weren't a lot of alternatives. And, in fact, there's something important that I was about to say and this is a good time to say. When I started working on Ghostscript, I said to Stallman, "I want to keep the copyright on this code because someday I may want to license it commercially. I will release it with the GNU license, but I won't transfer the copyright. I'll keep the right to license it in other ways if I want to." And Stallman was not happy about this, but he basically said, "We would rather have it this way than not have it."

And I did something which in retrospect I wish I hadn't done. Which was that I promised Stallman in writing that all future versions of Ghostscript would be released with the GPL. And now I sort of regret that. I don't feel I can go back on my word, and I've done something which I'm sure Stallman doesn't like, which dilutes that a little bit. I was very unsophisticated about free software at that time.

Stig: Unsophisticated how? About licensing? About intellectual property?

Peter: With respect to licensing, I didn't realize there were other options for drawing the lines about permitted commercial uses, and I didn't appreciate the existence of the GPL's "free rider" problem.

I also was not as experienced as I am now about intellectual property. I had run into patent protection issues when I was at Xerox and I thought that a good deal of those issues were silly. At the same time, I understood the value of code copyright. I guess it's harder for me to give up the notion of code copyright being valuable than the notion of patenting being valuable, but there are wild men like John Perry Barlow who don't even really believe in copyright.

I guess the position that I've come to take is that I find it easier to justify protection of the copying of artifacts than protection of the copying of ideas. But at the time I began work on Ghostscript, I hadn't really thought about these issues in any concerted way.

Stig: I tend to unfavorably describe intellectual property as a "legislative distortion of reality" because it tries to make ideas and their expressions "ownable." Is it fair to say that intellectual property is a reality distortion, and do you think it's justified?

Peter: I guess there are many realities. The reality that justifies what is called intellectual property protection is that creators should be rewarded for their creations. I think that argument has a real basis.

I think that certainly the current patent system and some aspects of the current copyright system are damn poor ways of doing it, but I think that the desire to do that is legitimate.

Stig: I agree. Still, do we have the right social contract for intellectual property? Let me rephrase that last question:

The reality is that there is no incremental cost for making a copy of software or of anything else that is essentially just information. And so we have created a legal fiction that artificially increases the cost of making copies, that creates economics of scarcity where we might otherwise have abundance.

And this is one possible incarnation of a social contract or a pact between authors and consumers that says, in essence, "you did this work, we didn't pay you while you were doing it and we are not going to stiff you as we use the fruits of your labor." What kind of fallout is there from the way that our society has chosen to reward authors? This is an overly broad question.

Peter: No, it's a very philosophical question.

Stig: There's a fine line between a philosophy and a business strategy.

Peter: Yes! Although it's a pretty blurry line these days.

I guess I would answer the question the following way: there is a fine line between discovery and invention. In my opinion, that line is fuzzy enough that it doesn't seem to be appropriate to have a social contract which says that invention should be owned. I can't justify, on any basis of principle, providing monopoly protection on something that is discovered and that has no cost of replication.

Stig: This is patent law?

Peter: Right, this is patent law. And that, basically, is the philosophical basis on which I oppose patents, certainly for software. And maybe for many other things as well but that's a discussion I don't want to get into right now.

My position on patents, I think, is fairly well thought out and I am prepared to defend it. My position on copyrights is self-contradictory. I don't quite know where it's going to lead.

With respect to copyright, the thing is that constructed artifacts have a larger cost of creation. a larger cost of creating the artifact in the first place.

Stig: What is a constructed artifact?

Peter: A program is a constructed artifact. It's not something that you discover, and it's not something that you invent. You can invent a way of doing something, but in order to reduce it to practice, there is quite a lot of work involved.

Stig: Yes, implementation.

Peter: Design and implementation. Design sort of straddles implementation and invention. So, if we are going to imagine changing the social contract about software so that software is considered to be a social entity rather than a privately owned entity, there is still the question of how you pay for its creation because its creation isn't cheap.

And that's the reason that I'm now straddling the fence on software copyright. That's also the reason why I created the Aladdin Free Public License (AFPL). I'd like to talk for a bit about licensing and what one hopes to accomplish with licensing. And then we can talk in more general terms about cooperative software processes.

I'm going to compare the the GNU license and the Aladdin license in a way that is a little unfair to the GNU license. The GPL takes the point of view that it rewards cooperation by making the work done cooperatively available freely to anyone who is willing to play by those rules, but it does not draw a hard line that prevents that work from also being used in a way that makes money for other people who weren't involved in its creation.

Stig: I'd like to point out that I think "cooperative" is the key word here. I prefer to describe software that is freely distributed in source form over the net as cooperative software and not as free software. I really like to make a distinction between free software and cooperative software.

Peter: Yeah, yeah. Cooperative software, I think, is a much better word because I think that it's the essence of what is valuable about the GPL. That's right.

Stig: Though the manifesto portion of the GPL stresses that "free" refers to freedom, the terms of the GPL also lean heavily in the direction of gratis redistribution. Consequently, I think of free software as the software that has either been donated -- as a gift, as a write-off, or as a loss leader -- or that has been somehow "paid for in full" and transferred to the public sphere.

Cooperative software, in contrast, is all of the software that is being developed in the particularly open and non-proprietary way that is now becoming common on the Internet. Once cooperatively developed software (or even proprietary software) has been paid for, then it can (or should) become "free."

Peter: You know, I think this is very much in the spirit of the original intent of the US copyright system. The article in the Constitution that authorizes a copyright system says the system should grant a monopoly only for a limited time and specifically for the purpose of encouraging progress in the useful arts, or something like that. By implication, copyrightable things would naturally be in the public domain if it weren't for this trade-off.

One interesting way to slice the issue of getting software paid for is payment in advance versus payment after it's done. For payment in advance, I think both providers and buyers in the commercial world today don't have much trouble accepting the idea of "paid in full." It's payment after completion that brings up all the controversy about what kind of charging is legitimate. So it seems to me that the way to get software to be created more cooperatively, and to get it to be paid off more readily, is to find mechanisms to get it paid for in advance. Maybe just better mechanisms for getting groups of advance funders together with authors would be enough.

That would still leave the problem of taking responsibility for the software after it's written. This is a big problem with free software that outfits like Cygnus only partly solve. I think the GNU people sort of understand the issue about paying in advance versus paying afterwards, but I also think the way they present it turns people off.

Stig: The GPL doesn't address the issue of making money for people who create and maintain GPLed works. It's just that, de facto, if you hold the copyright, then you don't have to use the GPL, and that's what you've done with Ghostscript.

Peter: That's correct. And as far as I know, I am the first person, and so far perhaps the only substantial person, who has taken advantage of that. As you recall, I promised Stallman that I would continue to distribute Ghostscript with the GNU license. But I saw a number of companies bundling Ghostscript with commercial products while just barely complying with the letter of the GNU license, so I decided that I did not want to make Ghostscript as available for commercial distribution as it would be with the GNU license.

And so I am now continuing to distribute Ghostscript with the GNU license, but about two revisions back from the version with the Aladdin license. The latest version is now always called Aladdin Ghostscript instead of GNU Ghostscript and is released with the Aladdin Free Public License.

Stig: I gather that some people, perhaps even many people, are disappointed by your decision to stop using the GPL for all versions of Ghostscript.

Peter: Then perhaps the act is not properly understood. I put a lot of thought into what I saw as the flaw in the GNU license when formulating the Aladdin license. The essence of the Aladdin license I can describe in one sentence, and it is very much about social contracts.

Namely, if you are willing to play by what I think are the 1960s rules, then the Aladdin license gives you exactly the same rights and benefits as the GPL: it's free to use, it's free to copy, and you are free to modify it. All of those things. In a nutshell, I see the 1960s rules, or the cooperative rules, this way: "everybody contributes, so everybody benefits."

Unlike the GPL, I make a very solid distinction between distribution as part of a commercial endeavor and distribution not as part of a commercial endeavor. Distribution not as part of a commercial endeavor is covered by essentially the GPL rules, while distribution in any commercial endeavor is not permitted by the Aladdin free license.

The philosophical weight of this is that if you want to play by cooperative rules, you get the benefits of Aladdin's work within the context of those rules. If you are not playing by the cooperative rules, then it's going to cost you something to have the rights to get the value from Aladdin software.

Stig: The name of your license changed. It used to be the Aladdin Ghostscript Free Public License, right?

Peter: Right. It's now simply called the Aladdin Free Public License because a couple of other people have used it and I rewrote it to take out specific references to Ghostscript.

Stig: Who else uses it?

Peter: I think Russ Nelson at Crynwr was speaking of using it for packet drivers for network controllers: software designed to interface to specific hardware. A few other people have asked me for copies, but I don't remember who they are now.

Stig: Okay. Well, as I understand the Aladdin license, permission is granted to include Ghostscript in its original or derivative form on any media for sale that doesn't include any software whose noncommercial redistribution is restricted, such as commercial software, right?

Peter: Correct.

Stig: Then the Red Hat box set cannot include Aladdin Ghostscript (the 5.x versions) under the terms of the AFPL because the distribution medium also contains licensed proprietary software: Metro-X, BRU2000, and the RealAudio player and server.

But Red Hat could distribute Aladdin Ghostscript on their Power Tools CD-ROM without violating the AFPL terms if everything else packaged together with Ghostscript is "redistributable for noncommercial purposes without charge."

Peter: That's right. Red Hat could also offer to throw some money at me to license Aladdin Ghostscript for their box set, and I probably wouldn't charge them very much because most of the stuff that they distribute is free and because they are providing value to people who are working in the cooperative arena.

Stig: How much are you personally involved with the licensing of Ghostscript? The Ghostscript Web page directs licensing inquiries to Artifex Software.

Peter: I set up Artifex as a separate entity so that I could be as free as possible from the day-to-day operations of the business. At first, they were simply a licensing agent for me. Now they provide support and are developing (with my cooperation) some additional software products, some of which will not be distributed with the AFPL or GPL. They recently hired a really excellent VP of engineering, so it won't be long until I reach my goal of being able to walk away from the Ghostscript business if I want to.

Miles Jones, president of Artifex, and I got to know each other over a period of many years before I hired him, and he understands pretty well my feelings about cooperative software. He understands the value that he is getting from continuing to release Ghostscript with cooperative licenses. In particular, he understands that the noncommercial releases benefit Artifex by bringing in an incredible amount of free testing and bug reporting. In some cases, they even get (through Aladdin) significant additions or improvements to the code. By significant, I mean more than just a few lines of code. If, for example, somebody sends me a new driver, what they typically do is they just copy the copyright notice from the existing drivers, which says "copyright Aladdin Enterprises."

For contributors where I think there might be an issue, I explain to them that they are welcome to leave their own copyright on their work or to put an FSF copyright on it, but if their distribution terms are more restrictive than the Aladdin distribution terms, then I'm not willing to distribute their software because I just don't want to do the bookkeeping. In that case, I am still willing to put the reference to their software in the Aladdin documentation.

Stig: That makes the barrier to using those enhancements so great that most people won't ever find them.

Peter: Well, actually, I put references to them in the second file that any new Ghostscript user would read (after the README). I'm happy to put those references there. And as it's turned out, the only such things that I can't distribute are a few device drivers.

But generally I've said, "I would like you to transfer the copyright to Aladdin. I promise that your code will continue to be distributed under the Aladdin license, so you and everyone else will continue to have access to it in source form. But by doing this, you do give me the right to license it commercially." So far, nobody has objected.

Stig:This reminds me of the way that the Free Software Foundation (FSF) requires a copyright assignment for all contributions to FSF-maintained packages, like Emacs or GCC.

[Post-interview note: Stallman's rationale for this is that the FSF may be unable to enforce the GPL in court if the ownership of the copyright is in question or if a copyright holder doesn't have the time or resources to enforce the GPL license terms. Personally, I would prefer to see FSF work toward a recognition of the copyleft concept within the court system. Anyone should be allowed to demand adherence to a copyleft-style license when a breach is detected.]

Peter: Now, I don't require a copyright assignment, but it does make things simpler. Anything that has a GPL on it I am willing to distribute with GNU Ghostscript. I don't care whose copyright it is.

Stig:There are two branches of Emacs development, and I used to work on the non-FSF branch, XEmacs. A lot of us -- I've spent a lot of time working on XEmacs -- rejected the notion that we ought to assign our copyrights to the FSF: we felt that releasing our work licensed with the GPL should have been sufficient.

There are technical reasons and personality reasons for the split between the two camps of Emacs developers, but an unwillingness to assign copyrights to FSF has definitely contributed to the divergence. I'm glad to see that you take the XEmacs-camp mentality of trusting the licenses of other developers at face value.

Peter: Yes, for distribution with Aladdin Ghostscript, I am willing to distribute anything whose redistribution terms are at least as liberal as those of the Aladdin license. I do take the licenses applied by other developers seriously, just as I do my own.

But taking licenses seriously means being prepared to defend them when necessary. One of the benefits of having the goodwill of an enormous user community is that people tell me when they see what appears to be copyright abuse -- either Aladdin or GNU Ghostscript in a commercial product, usually a CD-ROM in the back of a book. I've enforced the copyrights on both versions by writing to publishers, getting them to change what they publish, and in some cases getting retroactive royalties as well.

Stig: It's interesting to note that AFPLed code and GPLed code are immiscible. This is because your license terms are slightly more restrictive than those of the GPL.

Peter: Yes, my terms are more restrictive than those of the GPL. I can't distribute GPLed software as a part of Aladdin Ghostscript because the GPL forbids it to be distributed with anything that has a more restrictive license.

[Post-interview note: Linking Aladdin Ghostscript against libraries covered under the library version of the GPL (LGPL) would not be a problem, though.]

Stig: This means, then, that Aladdin Ghostscript and the GV front end to Ghostscript cannot be integrated into a single application.

Peter: That's right. The GPL says that they can be "aggregated on a storage medium," but they cannot be commingled.

I don't think that the distinction drawn by the GPL is a very defensible one. When you start talking about APIs and dynamically loadable libraries, then I think the line between when something is "aggregated" and when it becomes a part of another program becomes quite blurry. I don't want to have a similar exception in the Aladdin license simply because I don't think that it can be defended in court.

But aggregation and commingling are not an issue with software that has very liberal redistribution terms. Such code can be readily incorporated into either GPLed code or into Aladdin Ghostscript. The IJG JPEG library, zlib, and the PNG library are examples.

Stig: Let's get back to the state of cooperative software in general.

Peter: We agree that when people are able to work and contribute cooperatively to the evolution of the piece of software, I think everybody benefits. To me, the difficult question is basically, how are the people going to get paid?

The FSF answer is that the way to do this is by providing services and I don't . . .

Stig: But the initial authorship of the software is a service. It's work, and it is of value, but the FSF seems to expect that the world's software developers ought to write software for free and then make their money some other way.

Peter: Right. And that is a part of the FSF argument that I just don't buy.

But there is an aspect of the FSF argument that, in fact, responds to what you just said. Namely, is there enough of the right kind of demand that people could be paid for writing software and basically paid once for their work?

Stig: Sort of like working as a contractor, but paid after the fact.

Peter: Right. At this point a noticeable, though perhaps not significant, part of my income comes from doing paid enhancements. I make it very clear up front that I will do paid enhancements to Ghostscript only if I own the copyright and I get to distribute the enhancements on exactly the same terms as the rest of Ghostscript, including free distribution. So far, nobody has objected to those terms.

Stig: That's very different from the terms that most people have in their employment contracts, where everything they do is deemed to be the intellectual property of the employer.

Peter: Yes, that's right. I have lots of leverage when I work to enhance Ghostscript, particularly since most of that work is paid for by those who are already licensing Ghostscript commercially.

Stig: Okay. We've been talking about licensing, philosophy, copyright, and social contracts for a while. Let's talk about the status of the cooperative software world right now. I want to get your impressions of who is doing the work and what they are getting out of it.

Peter: I am sort of out on a spur of the free software world. I am not really in the middle of it.

Stig: Everybody uses Ghostscript.

Peter: Yes, but I'm still not really very much a part of the world of cooperative software. As I said earlier, I am a somewhat solitary person. So, for example, I didn't know about the Apache Group's development process, which you pointed out to me. I knew that Apache was the leading HTTP server, but I didn't realize that it had such a fascinating social process behind its evolution. I think it's fabulous.

So I can only give you, in general terms, my impressions of the people that I know who have contributed various bits of free or free-ish software. Those people have not seemed to be motivated by a grand social goal. Like me, they simply seem to feel that the people whom they know -- the software development community, and to some degree the software user community -- are better off if software is done this way. They feel that better software gets produced in a more timely way, and it becomes more available to people.

I also think that some people contribute free software to enhance their professional reputations and perhaps to further their careers in the profit-seeking world.

Stig: Okay. What's your impression of the demographics of the cooperative software developer community? I'll give you my impression first.

From my time spent working on XEmacs and watching the mailing lists of other freely redistributable software projects, I've come up with a sense of the demographics of who hacks on cooperative software. My numbers aren't well-documented, so let me bounce them off of you.

I think that about 60% of the hacking, beta-testing, and bug-hunting in the freely redistributable software world comes from university environments and is done mostly by undergrads and grad students.

Probably about 25% of the hacking gets done by people who are in workaholic mode. They have another computer job, and hacking free software isn't it. They may have less of a discernible "life" because their hobby is so closely aligned with their day job. This group may generate more useful lines of code because of greater experience, or it may generate fewer because these people have (theoretically) less free time.

Next, I would say that about 10% work at companies that have chosen to use and support freely redistributable software in some peripheral way. They have other job responsibilities, but they are responsible for supporting a tool because it's used internally. Their work will often result in improvements which become available on the Internet or may result in supporting other users of the same tool at other companies.

And then the final 5% of the people who actually work on freely redistributable software are supported entirely by the budding cooperative software industry. This would include most of the people working for companies like Cygnus Support and Red Hat Software.

What's your take on this?

Peter: I have a slightly different take, but it's because I slice the world a little differently. I think in terms of people who are generating lines of code.

Your assessment may be right in terms of time spent, but I think that if you ask the same question about people who are evolving and maintaining and shepherding the free software that has stood the test of time and that is of sufficiently high quality that people actually use it, then the breakdown will be substantially different.

Partly it's because students eventually graduate. If their software continues to be out there, then it's quite likely that they will continue to be heavily involved with it, even as they move on to something else as a primary commitment.

Stig: Only if they have the time...

Peter: Well, yes, if they have time.

Also, I think that your estimate of the proportion who are being supported by free software is probably lower than 5%, and I don't have any theory on what proportion of the non-University people are classifiable as workaholics.

Stig: Well, I apply that label from my own experience. That's how I got started. Maybe workaholism is a bad word. Sometimes I also call it productive compulsion and the phenomenon on a large scale with stone-soup results is distributed productive compulsion.

Peter: I see.

Stig: I believe that the FSF has tried to establish the GPL as the de facto license for cooperative software. While the GPL is certainly very popular and is perhaps the most popular, I see lots of license fragmentation within the community. There has long been heated debate between those who favor BSD-style licenses and those who favor the GNU GPL, but recently, there have been a number of new source-available packages -- notably, Troll Tech's Qt GUI Toolkit -- with newer and more restrictive licenses that have served to fragment the community further.

The reason that we're seeing this happen now is because the GPL makes it difficult to charge money for large but incremental changes to someone else's code. This licensing fragmentation seems likely to continue until we settle on a license which addresses the economic needs of developers.

[Post-interview note: Recently, Open Source(R) has been coined as an umbrella name for all licenses which meet the Open Source definition. The definition is a spin-off of the Debian Project and has been an important step toward making some sense out of all the different licenses presently in use. Richard Stallman, however, has issued a well-considered statement criticizing the "Open Source(R)" label. Read the definition and also read Stallman's criticisms. The AFPL does not fit the guidelines in the Open Source definition.]

While the AFPL's terms are better than those of Troll Tech's Qt, and you've still managed to use the AFPL to generate income by clamping down on the "free rider problem" to some extent. Can you talk about that?

Peter: The free rider problem is when someone is allowed to package free software in nonfree or less-free bundles, and that's precisely the area of the GPL that I thought I needed to do something about in making the Aladdin license, so the AFPL originally prohibited all commercial distribution on removable computer media.

After the AFPL had been out for about a year or two, I added an exemption for collections consisting entirely of freely redistributable software. I did this because I felt that even though people doing free software distributions were making a business of distributing my work, their business was close enough to being participation in the nonmonetary cooperative sphere that I felt it was consistent with what I wanted to do. So the AFPL now permits them to sell such collections without a commercial license.

But that's where I have drawn the line.

Stig: Well, what would happen if your approach were taken to an extreme? What would happen if all software were distributed according to the terms of the AFPL, which permit gratis redistribution? You would no longer be paid.

Peter: Fine with me. I will go out and do something else. Let me be quite clear about this. At this point, I have made enough money from commercial Ghostscript licensing that I can retire.

But let me give you a more serious answer for Ghostscript.

Remember that at the beginning of our discussion we talked about how a large part of what makes the whole consideration of free software even thinkable is the fact that the cost of replicating software is essentially zero. The place where Ghostscript is commercially licensed, and is currently making most of my money, is incorporated into things with a cost of replication that is inherently fairly large. Mainly printers.

I can tell you that the number of companies making hardcopy output devices that have licensed Ghostscript is more than ten and less than a hundred. I don't even know the whole list any more because my licensing business handles that, but I can tell you that at least two quite well-known companies license Ghostscript, or other freely redistributable technology from Aladdin, for incorporation into hardcopy output devices.

Stig: You're in a unique position because your software has such a compelling tie to the hardware world. That's how you make your money.

Peter: I'd say that what makes Ghostscript's position unique is that Ghostscript's commercial value is as an OEM component. The hardware tie-in is just the most important instance of this. The printer and controller industries are used to paying license fees for the embedded software, so it's an easy sell. I guess Russ Nelson found something similar with his work on packet drivers, although his work is freely redistributable from the start. That is, as far as I know, he only charges for development, not per unit license fees.

Stallman has proposed that software development be funded by a tax on hardware manufacturers. What I do isn't quite the same, but I could make the argument that I am essentially supporting the development of a largely freely redistributable piece of software with a surcharge on larger products of which the software is a component. Most of these products are physical entities because that's where the money is.

Stig: Unfortunately, that doesn't work very well in the general case for other authors of freely redistributable software.

Peter: That's right. It doesn't. And,in fact,I believe that if you look around at what successful freely redistributable software is actually out there, as far as I can tell, there are no widely used end-user applications that were developed to be freely redistributable.

Stig: There is Gimp.

Peter: What is Gimp?

Stig: Gimp is a Photoshop-like image-editing application. Gimp has an incredibly dedicated following and its growth has been truly a delight to watch. I consider it to be a flagship project in the cooperative software world, at least equal in importance to Apache.

Two students at Berkeley wrote the vast majority of the Gimp's core. As is the case for Photoshop, much of Gimp's functionality resides in plugin modules. That makes it relatively easy for lots of different hackers to develop smaller bits of the Gimp without having to learn the whole body of Gimp's source code. Gimp is also extensible in scheme, and it's been called the XEmacs of image editors.

Peter: Well, I have to say that puts a dent in one of my theories about the evolution of free software.

Stig: It's frustrating, though, to see the primary Gimp authors, Peter Mattis and Spencer Kimball, leave the cooperative software community to take "real jobs" because we don't yet have an economic model capable of enticing them to stay.

I think that we really need a license and/or mechanism that addresses the general case, that encourages both openness and cooperation while also striving to reward all contributors. Doing cool stuff should be rewarded in a tangible way. It ought to be the difference between eating sushi or eating Taco Bell, the ability to take vacations, buy a home, retire.

Really, I think it boils down to optional spending. How do we get people to value the work done by those who make their lives better. How can we do that in an environment where they don't have to and they don't necessarily get bombarded with price tags and invoices?

Peter: There is evidence right now that people are willing to pay for software. People do pay for software. And a good deal of it isn't very good.

It seems evident that if we understand how to structure the world, then there is quite a bit of money around to pay for software creation. What people actually are paying for commercial software now might be considered an upper bound on the amount that society is willing to pay to make software happen.

Stig: Right. People do pay $600 for Photoshop.

Peter: I can think of several reasons why someone would choose a commercial package over a free package: one is presentation content -- the menus, the icons, all of the nice little touches, the polish -- and making a piece of software that has all of those qualities is a lot more work than making a piece of software that "just sort of does the job."

Even if the part of the job that the software does, it does well, the polished package is a lot more work. Testing a piece of software thoroughly is a lot of work. Documenting it well is a lot of work. Supporting it is a lot of work.

And I think that in order for people to trust a piece of software to do something that they need (or very much want) it to do, then the perception that cooperative software or free software doesn't have those qualities needs to be changed.

As a corollary to this, the model of free software which says that you just pay people for the time that they spend on development is just not sufficient. A model is needed that allows people to be paid to do all of the things that I just enumerated: develop the basic functionality, develop the broad scope of functionality, develop the presentation content, develop the documentation, do the support.

I think actually that has a lot to do with why I didn't think that any polished end-user redistributable applications existed, and now you tell me that there is Gimp.

Stig: Well, Gimp's not entirely polished, but it's also not entirely done. It is getting lots of testing from the early users, and it has some very good user-contributed tutorials and documentation on the Web.

Peter: So when something gets very close, then at that point, I think it becomes much easier to recruit people to help. And also I think, maybe paradoxically, at the beginning it's easy to recruit people to help to build up the functional mass. It's that big piece of work in the middle between something that "sort of works" and something that almost works really well.

Stig: This gap in developer interest is very similar to an end-user marketing problem for high-tech products. The phenomenon in the marketing world is explored in great detail by Geoffrey Moore in his book, Crossing the Chasm.

In the life cycle of a technology product, there is an initial burst of excitement as the technophiles and early adopters flock to the product. That stage is followed by a problematic gap in the growth of the product's user base, where nobody buys it because it's still not good enough for the general public and there are no more early adopters to serve as crash-test dummies and pay for the privilege.

That gap is called the chasm.

That's the point where start-up companies often need unanticipated additional rounds of investment to stay afloat. If more money is invested, then employee stock options become worthless, and the founders generally lose control of their companies. This is where vulture capitalists earn their bad reputations.

In the world of cooperatively developed software, I guess the chasm is that big gap between "It does what I want it to do" for the initial developer(s) and "It does what we want it to do" for everyone else.

Peter: I didn't have that conceptualization before. It's interesting that someone has identified it and given it a name. But that chasm is why I didn't think that good, freely redistributable end-user applications would be developed.

Stig: What do you think would happen if cooperatively developed software were the norm in the software industry, instead of the exception?

Peter: It seems obvious to me that if a lot more software were developed cooperatively, then there would be a lot fewer people supported by the software industry.

I consider this to be a matter of arithmetic. Right now -- as you and I have more or less agreed -- the total amount of money that is being paid for software is much too high.

Stig: I don't think so. I think that the money spent on software is an indication of the value that society places on software. It's neither too high nor too low: it just is.

But I do think that a lot of people aren't getting the level of quality or the level of service that they ought to get. And I think that there is too much unnecessary replication of effort in the software industry. By having less wasted effort, there wouldn't be fewer people supported by the software industry, but there would be better software.

Peter: But this is not incompatible with the notion that far fewer people can be supported by producing what we now think of as software. While the same amount may be spent by society on computer-related services, they're likely to be different kinds of services.

Right now, as we've agreed, the current methods of producing software are inefficient. There are costs for adding things that people don't want. There are costs accompanying the sale. There are costs for overlapping development. I would argue that there are unnecessary marketing costs. But that money is all going somewhere.

Stig: Much of the competition in the software world is not to the benefit of the end-user. Only Microsoft and Netscape like the browser war, for instance. People hate it. And Netscape is losing right now.

Peter: Yes, I agree. However, I believe that if Netscape had not chosen to compete with Microsoft . . .

Stig:They would be toast.

Peter: They would be toast sooner. Desktop software is really anomalous economically, because Microsoft has such incredible power in that arena that they can do things that throw traditional economic reasoning out the window.

Stig: What do you think would happen if Netscape took the source code to their browser and released it to the public?

[Post-interview note: Since this conversation took place, Netscape has released the source to their browser. See <http://www.mozilla.org/> for details. Netscape's Mozilla Public License strives to incorporate the best aspects of BSD-style licenses and the GPL. It is less restrictive than GPL and meets the terms of the Open Source definition.]

Peter: It would win. If they released on relatively free redistribution terms, I think that the resulting browser would win.

I was asking myself this morning, Why is it that I don't hear a lot about cooperative or freely source redistributable browsers?

Stig: It's because they've been playing catch-up. Mnemonic <http://mnemonic.browser.org/> is being built from scratch by students, mostly students in Europe. And Yggdrasil is funding development of some of Arena <http://www.yggdrasil.com/Products/Arena/> now, but they are paying somebody in India to do the work because they won't (or can't) pay Silicon Valley wages for the work. Mnemonic is in its infancy, and Arena is hardly mature.

Peter: To get back to the probable outcome of a source release of Netscape's browser. I get a feeling that there are qualitatively new and different net exploration ideas that aren't being worked on now because if they were to be worked on, they would have to be worked on within the bowels of either Netscape or Microsoft.

What I would hope is that if the sources for an existing commercial-quality browser were released, that there would be some chance of something better coming out of the cooperative software world than from either of the commercial browsers. That would be my hope, simply because there would be the ideas of so many more people to draw upon. I think that must be part of the reason for Apache's success.

Stig: Yes and no. I don't think that Apache is always doing the latest and coolest things. But I also don't think that all of the latest and coolest features are ones which people really need. In an effort to differentiate themselves from the competition, Microsoft and Netscape add a lot of extra features that perhaps people don't really care about. New features in Apache are added because people really need them, while new features in the commercial browsers are often driven by marketing.

Sometimes this is good for the public, and sometimes this is bad. It's bad when the resulting new "features" serve to twist the arms of the user-base. Use Microsoft's Word 6.0, for example, and it will quietly start to change the file format of all your documents so that you can no longer use older versions of Word to edit those files. They're basically "corrupted."

I think that Apache is successful because it avoids these kinds of problems and because its features are user-driven and not marketing-driven.

Peter: Right.

Stig: Let's wrap up. I have some final questions. First, where do do you think that free and/or cooperative software stands now?

Peter: All right. I can give you a very short answer to where I think that free software stands now.

I think free software's star is rising. I think that a few very visible success stories -- like Apache, maybe like Gimp, to some extent like GCC -- are establishing free software as a credible alternative to commercial software. I would hope that, as that credibility rises, companies will be willing to start paying to fund the development of that kind of software. More willing than they are now.

Stig: What is the one meme that you would most like to propagate within the cooperative software community?

Peter: I would like a lot more people in the community to be aware of the cost, the difficulty, and the perceived value of having polished software: software that is well tested, well documented, and well supported. To understand that making software that crosses the chasm does take a lot more effort, and that it's by having the software that has crossed the chasm that you're going to attract a lot of people to an alternative way to getting nice software produced. Because I think that is really where UNIX lost out. I think that is why Microsoft now pretty much owns the desktop. UNIX hackers, who have the best system technology, never really made a mental connection with the world of the user. If cooperative software development and free software distribution are going to continue to expand and to start creating a change in mind-set, then there has to be a lot more awareness of that chasm and what it takes to cross it. That's the one point I'd really like to get across.

Stig: Great! It's been a pleasure talking to you.

Peter: Well it has. It's been way too much of a pleasure.

Editor's Note: This conversation took place during August of 1997 and was later revised and updated in April of 1998.

Stig would like to thank Pat Brody for doing the initial transcription from tape, and his mother, Mary Lynn Richardson, for helping with the editing.

References:
<ghost@aladdin.com>
<http://www.ghostscript.com/>
<http://www.cs.wisc.edu/~ghost/index.html>

 

?Need help? Use our Contacts page.
First posted: 13th November 1998 jr
Last changed: 29 Dec 1998 jr
Issue index
;login: index
USENIX home