This conversation has been published by Dr Dobb's Journal on their "Programmers
at Work" CD-ROM. This was first printed in the October 1998 issue of
the USENIX association's monthly
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 cooperatively developed software to free software, in part, by using different licenses on Ghostscript during the life cycle of each new release.
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. Currently, he is working to find the the best way to fund independent developers of cooperative software. His dev/Linux web site documents the results of his search.
Stig's first book will focus on the selection of a licensing model to meet a given set of business and social objectives and it will be published by O'Reilly later this year. Stig's current pick for the book's title is "License Matters! -- A Guide to Building Community Through Software Licensing." The question addressed by the book will be "Why this license and not that one?" Besides the obviously-interested Linux hacker community, Stig hopes to write a book that will to sell well to thinkers and business-types. It's likely to wind up with a less wordy title like "Cooperative Software Licensing," "Community Source Licensing," or "Open Source Licensing". Stig wants the book to be a short one so that people will read it all the way through without getting bored.
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 websites on the internet, and discussed the Gimp image editor as a ground-breaking almost-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|| Sure. Well, I've been working actively on free software--more
precisely, what is now called freely-redistributable
or open-source software -- for about ten 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 twenties, maybe early thirties, 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.
|STIG|| That's when I graduated high school, by the way...
|PETER|| There you go.
So, I worked part-time at another company 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 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.
|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?"
|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. So that's how a PostScript interpreter got
chosen as the project that I was going to do.
And you know, people asked me why I was doing it and I gave them the following answers:
Also, something that
|STIG|| By bureaucracy? By...
|PETER|| A combination of things. I now have two large companies that I can
talk about, Xerox and Sun.
I was working 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
|PETER|| I was also working at ParcPlace. |
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, we're talking about things that were happening between
five and ten years ago. It's very hard to say.
|STIG|| Hindsight isn't really 20/20...
|PETER|| No, it's not. And 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.
Writing Ghostscript didn't threaten burnout, but the day jobs and running the commercial licensing business did.
|STIG|| Did you flirt with burnout during any of those ten years?
|PETER|| Let me think... 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.
|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
|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.
|PETER|| I've lost the train of thought. Could you repeat the question?
|STIG|| I'll rephrase it a bit:
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.
|PETER|| Yes! Although it's a pretty blurry line these days.
|PETER|| I guess I would answer the question the following way: There is
another 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.
|STIG|| Okay. Back to the software industry, then.
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.
Now, 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 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.
I really like to make a distinction between free software and cooperative software...
|STIG|| The essence of what is valuable about it.
|PETER|| Yes. In particular 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
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 U.S. 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
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
|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
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.
|STIG|| For what? He does some work on Qmail.
|PETER|| No, he was doing work on 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
non-commercial redistribution is restricted, such as commercial
|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 & 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 non-commercial 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 non-commercial 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."
|PETER|| 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 towards 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
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 good will 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
[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?
|PETER|| 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 which, 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
|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. |
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...
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
|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
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.
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?
[Post-interview note: Since this interview took place, Open Source(tm) 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's social contractand 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(tm)" label. Read the definition and also read Stallman's criticisms. The AFPL does not fit the guidelines in the Open Source Definition.
The service mark for "Open Source" is actually pending, and its ownership is also in dispute. "Open Source(tm)" is registered to Software in the Public Interest (SPI), but Eric Raymond and the Open Source Initiative, who produce and control the open source website, expect that the title of the service mark should be transferred to them. (They'll work it out, I'm sure...)]
|PETER|| The free rider problem is when someone is allowed to package free
software in non-free 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 non-monetary 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
|PETER|| Fine with me. I will go out and do something else.
|PETER|| As a matter of fact.... Wait. Let me be quite clear about this.
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.
Ghostscript's commercial value is as an OEM component, so perhaps AFPL doesn't address the general case.
|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
|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|| No, 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|| The Gimp is the Photoshop-like image-editing application that I
mentioned before. 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 plug-in 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
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|| Right. Right.
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
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?
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.
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: In the time since this conversation took place, Netscape has released the source to their browser. See http://www.mozilla.org/ for details. The license is less restrictive than GPL and meets the terms of the Open Source Definition, but Stallman has criticisms, some of which are valid.]
|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 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.
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
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
dev/Linux is devoted to building stronger non-virtual community among
Linux hackers and finding ways to tangibly reward the design, authorship,
and testing of software that makes its way to usefulness outside the
hacker community... Free software is good, but money is another useful
form freedom that the community has been ignoring for too long.
Linux hackers have found a new way of doing useful work. I want to find
ways to reward this distributed productive compulsion that don't
require everyone to be working for one big software vendor...even if it's
Red Hat instead of Microsoft. If the means of productivity are
distributed, then the means of rewarding that productivity need to be
In Swedish and Norwegian, "Stig" means "Path" and "Hackvän,"
pronounced Hahk'vehn, means "Friend of Hacking." More precisely,
the Swedish name suffix vän means "friend of", "used to",
"experienced in/with", or "accustomed to." Stig is not Scandinavian and
the hackvan.com domain name preceeded
Stig's discovery that Hackvän made for a nom de plume that was
strikingly well-aligned with his ideals.
Send him a note to share
your thoughts on the "conceptual smell" of his writing...
Read more about Stig and what he thinks...
Peter Deutsch gets top billing in Steven
Peter Deutsch Bad in sports, brilliant at math, Peter was still in
short pants when he stumbled on the TX-O at MIT--and hacked it along with
Dr. L. Peter Deutsch received the Ph.D. in Computer Science from U.C.
Berkeley in 1973. Prior to the Ph.D. he was one of the key designers and
implementors of the SDS 940 time-sharing system, the first commercial,
general-purpose time-sharing system using paging hardware. In his
subsequent 13 years at Xerox PARC, where he attained the position of
Research Fellow, he was one of the key designers and implementors of the
Interlisp-D, Cedar Mesa, and Smalltalk-80 programming systems. From 1986 to
1991, Dr. Deutsch was Chief Scientist at ParcPlace Systems (now
ObjectShare), where he was a principal designer of a high-performance
Smalltalk implementation that is also highly portable across processors,
operating systems, and window systems. From 1991 to early 1993, Dr. Deutsch
held the position of Sun Fellow at Sun Microsystems, where he helped define
future corporate strategy and technology in a variety of areas.
Since 1986, Dr. Deutsch has been President of Aladdin Enterprises, a small
consulting and software development business. Aladdin's principal product,
Ghostscript, is a high-quality interpreter for the PostScript language and
PDF document format that has been licensed by a number of well-known
printer, plotter, fax, and desktop software companies: it is one of the few
industrial-strength software products that is distributed both with a
license that allows broad free end-user use and redistribution, and with a
different commercial OEM license that supports a successful and fast-growing
Dr. Deutsch was a co-recipient of the ACM Software System Award in 1993, and
in 1993 was also named a Distinguished Alumnus of the U.C. Berkeley Computer
Science program. Dr. Deutsch is a member of ACM, IEEE, CPSR, and the League
for Programming Freedom.
Stig hopes to do any future interviews via email. Working from two hours
of noisy tape was lots of work.
Stig would like to thank Pat Brody for doing the initial transcription
from tape and his mother, Mary Lynn Richardson, for helping with the
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.
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.
dev/Linux is devoted to building stronger non-virtual community among Linux hackers and finding ways to tangibly reward the design, authorship, and testing of software that makes its way to usefulness outside the hacker community... Free software is good, but money is another useful form freedom that the community has been ignoring for too long.
Linux hackers have found a new way of doing useful work. I want to find ways to reward this distributed productive compulsion that don't require everyone to be working for one big software vendor...even if it's Red Hat instead of Microsoft. If the means of productivity are distributed, then the means of rewarding that productivity need to be equally distributed.
In Swedish and Norwegian, "Stig" means "Path" and "Hackvän," pronounced Hahk'vehn, means "Friend of Hacking." More precisely, the Swedish name suffix vän means "friend of", "used to", "experienced in/with", or "accustomed to." Stig is not Scandinavian and the hackvan.com domain name preceeded Stig's discovery that Hackvän made for a nom de plume that was strikingly well-aligned with his ideals.
Send him a note to share your thoughts on the "conceptual smell" of his writing...
Read more about Stig and what he thinks...
Peter Deutsch gets top billing in Steven
Peter Deutsch Bad in sports, brilliant at math, Peter was still in short pants when he stumbled on the TX-O at MIT--and hacked it along with the masters.
Dr. L. Peter Deutsch received the Ph.D. in Computer Science from U.C. Berkeley in 1973. Prior to the Ph.D. he was one of the key designers and implementors of the SDS 940 time-sharing system, the first commercial, general-purpose time-sharing system using paging hardware. In his subsequent 13 years at Xerox PARC, where he attained the position of Research Fellow, he was one of the key designers and implementors of the Interlisp-D, Cedar Mesa, and Smalltalk-80 programming systems. From 1986 to 1991, Dr. Deutsch was Chief Scientist at ParcPlace Systems (now ObjectShare), where he was a principal designer of a high-performance Smalltalk implementation that is also highly portable across processors, operating systems, and window systems. From 1991 to early 1993, Dr. Deutsch held the position of Sun Fellow at Sun Microsystems, where he helped define future corporate strategy and technology in a variety of areas.
Since 1986, Dr. Deutsch has been President of Aladdin Enterprises, a small consulting and software development business. Aladdin's principal product, Ghostscript, is a high-quality interpreter for the PostScript language and PDF document format that has been licensed by a number of well-known printer, plotter, fax, and desktop software companies: it is one of the few industrial-strength software products that is distributed both with a license that allows broad free end-user use and redistribution, and with a different commercial OEM license that supports a successful and fast-growing software company.
Dr. Deutsch was a co-recipient of the ACM Software System Award in 1993, and in 1993 was also named a Distinguished Alumnus of the U.C. Berkeley Computer Science program. Dr. Deutsch is a member of ACM, IEEE, CPSR, and the League for Programming Freedom.
Stig hopes to do any future interviews via email. Working from two hours of noisy tape was lots of work.
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 task.