I was pretty excited to see this show up in the submissions queue, though I'll admit I'm a law and econ wonk. Regardless of what the rest of y'all think, having an FRB economist take a look at motivations behind free software is a Good Thing . There are a number of economic and organizational behavior studies (you're welcome, Siobhan <g>) into the movement. Interest is good.
Dywer's specific interest in motivations for free software is refreshing. While self-interest, enlightened or otherwise, may not be as honorable as "gift cultures" or other altruistic models, they are IMO rather more dependable. If someone can come up with a descriptive model for free software development which allows for self-interest, the movement gains credibility -- it's not dependent on an enlightened, self-sacrificing class of altruists for its continued evolution. This isn't saying that unbridled greed is good, or that this is the only reason for software development. But greed, suitable bridled, is a powerful motivator.
The point Dwyer makes about modularity being a key success factor in free software is interesting. It's one I've suggested myself, particularly in the July/August IEEE Software response to the editor:
"Open-Source Methodology: Ready for Prime Time?", Steve McConnell
"Response: Open-Source Methods: Peering Through the Clutter", Terry Bollinger, Russell Nelson, Stephen Turnbull, and Karsten Self
http://dlib.computer.org/so/books/so1999/pdf/s4006.pdf. (Subscription required)
I see free software as based on six foundations:
- A development model: the open source "Bazaar" described by Eric Raymond, which takes advantage of many eyes, tight development cycles, and continuous evolution
- A legal framework of free software licensing, including both copyleft (GNU GPL and similar) and less restrictive free licenses.
- An economic model which provides sufficient benefit to individuals or firms engaged in development of works not exclusively retained.
- A software architechture consisting of largely independent, modular design, allowing individual developers to "wrap their minds" around a given problem, and for code to be readily shareable among different projects.
- A widespread, very low cost distribution network. The Internet.
- Ready access to reasonably powerful computers with development tools.
Dwyer is focussing on the third point, and it's one that needs to be addressed. I'm largely dissatisfied with existing treatments, particularly ESR's, of free software development incentives. However, the other points should be addressed as well to come up with a comprehensive model of why free software development works .
The methodology question has IMO been suitably addressed. I see it as largely an outgrowth of some 30 years of software development methodology best practices, one reason for the dialog with Steve McConnell, who's also authored Code Complete, one of the best and most complete books on the topic.
The legal model is understood, but subject to change with both the legal and computing landscapes, particularly changes in law, and shifts toward either embedded or server-based applications.
The architecture, distribution, and capability prerequisites are also fairly self-explanetory, but also go a way toward explaining why free software exploded when it did, and more to the point didn't explode in the 1980s either in the US, where some level of networking existed, but end-user development was discouraged; or the USSR, where many users were developers, but networking capabilities were limited.
Dwyer's section three somewhat begs the question that most free software development isn't doen for direct compensation. I beg to differ. While compensation may not be directly tied to a piece of free software, I suspect (but don't have the research to prove) that there are at least very strong indirect benefits of development, and that much of it takes place in the context of an enterprise or task which benefits from the results of development.
The argument that independent development may be more efficient than firm-based development is interesting. One of my own speculations is that a large body of free software makes a "free agency" mode of software development more tractable. A good programmer can work on the same code whether paid by firm A or B, and is thus more freely able to choose among job offers, without sacrificing personal enjoyment of time vested in a project. This is a counterargument to the "GPL is bad for programmers" argument made by Brett Glass (and less vociforously by others, including Stig Hackvan's DevLinux).
It's also interesting to see a technical economic justification -- Nash equilibrium -- for the stupid tax .
Among examples of similarly constructed "products", Dwyer might do well to consider both language ("collectively" developed, with little direct economic gain) and law, in which both legislation and litigation are not securable private property, but are instead "produced" at considerable expense by trained, skilled, practitioners of the arts. Both examples appear in Bob Young's writings in Open Sources (Ockman, Charles, DiBona, Stone, et al), and his own Under the Radar.
A nit I'll pick. Dwyer's definition of free software is inaccurate, though somewhat benignly so. The point bothers me particularly as we've just had a wonderful instance of a straw-man argument based largely in a redefinition of free as referring to price, not liberty. Treated twice here at K5 (1, 2). Though Dwyer is careful to avoid Meyer's error, he still changes terms as laid out by RMS by defining "free software" as "licensed under the GNU GPL". Though something of a technicality, this bothers me on several points.
- For starters, it excludes the software licensed under the GNU LGPL.
- Stallman's own definition is of the four freedoms of software, number
0-3, as found on http://www.gnu.org/philosophy/free-sw.html:
``Free software'' refers to the users' freedom to run, copy, distribute, study, change and improve the software. More precisely, it refers to four kinds of freedom, for the users of the software
I have to admit that the distinction between free and open is fairly fine -- I'm inclined to say that "free" is that which meets the four freedoms definition, whereas "open" is that which has been formally approved by the Open Source Initiative's board. While theoretically
different, I'm not aware of any OSI compliant licenses which fail the FSF four freedoms test.
Also, in exploring the relative viabilities of free and proprietary software,
pp 11 and 12, there appears to be a typo in the last paragraph p11:
Conversely, the more divergent the difference in programmers' marginal benefits and costs of writing various parts of the software, the more likely is open source development.
By my scan, "less" is "more", or "open" is "closed".
For everyone who's complained about PDF -- with the exception of the encryption (never bothered me, BTW), PDF is a reasonably good document format. Contrary to popular belief, there are open tools for generating same (though not with all the features of Adobe's own products). It's a good format for distributing drafts of documents as layout, pagination, and location are identical across copies of documents. It's fairly commonly used in technical papers. Unlike PostScript docs, PDFs are generally searchable as well.
 One reason I get so heated about this topic is that I spent much of my first year and a half of "playing" with Linux trying to figure out if it would be a worthwhile career move, a large portion of that question being "is this sustainable?" and "is there money in it?".
 No, the the best of my knowledge I didn't make up the term, but a Google search on "free software" "stupid tax" turns up this as the only relevant result.
Karsten M. Self
SCO -- backgrounder on Caldera/SCO vs IBM
Support the EFF!!
There is no K5 cabal.