On Not Going All the Way

As I have written before, part of my career has been spent working for a human service organization with a proportionately large education program. Part of being an education program is filtering out questionable materials from the Internet. Part of being a human service organization is offering a recreation program for our former students who are now adults. We called that program, appropriately enough, "Adult Education". We had a very good time one afternoon trying to rename that program so that our filtering software didn't block our own "Adult Education" Web pages. For fun, I encourage you to try to rename it.

I tell the above story as I decided to keep my working title for today's story as the final title. It could be interpreted as being a bit provacative, but sadly for those who might think it's substantive in this regard, today's story is as harmless as all the rest. I just thought there might be a little filter fun to be had with the working title.

What this story is really about is Richard Stallman, who I do not know. From what I do know, RMS, as he is commonly known, is an interesting character who has exceptionally strong convictions about what freedom means with regard to software. He is the founder of the GNU project, which has since the mid-1980s striven to develop a completely free implementation of the UNIX operating system. GNU has managed to create virtually all of the necessary components, save for the operating system kernel, which Linus Torvalds has nicely provided through the GNU project.

In my last column I made brief mention of RMS by saying something to the effect that I could not follow him all the way to his logical conclusion, but that his direction was certainly right. Given that RMS is a huge and somewhat polarizing figure in the whole free software discussion, I felt that some may desire a clarification on what I meant by this statement. This column will, therefore, focus on what I mean by "not going all the way".

Over the past fifteen years there has been a significant switch in the provision of services to people with developmental disabilities. Whereas decades ago we had large institutions, we now have smaller home-like residences that have overwhelmingly replaced the institutions. This movement to a "community-based" model has taken place as a result of strong and sustained advocacy by a significant number of interested persons.

The human organization for which I have worked has employed a number of such individuals, but there was one in particular that was particularly instrumental in fulfilling the movement to the better models. This individual held a very strong belief that people with disabilities should be completely and invisibly integrated with the larger community. That is, the world should not view or treat people with disabilities any differently than it would anyone else.

As such, this individual wished to change a lot of the service delivery system, which tended to provide services to groups of people with individuals. Such groups would work together, recreate together, and live together. My colleague, and friend, dreamt of a day when we would achieve a world in which the differences resulting from disabilities would simply fold into the backdrop of regular community life.

Such dreams were founded in the best and purest of intentions, but I could not buy the vision lock, stock, and barrel. My primary objection was that there was no such thing as "the" community and that as a society we had grown to a model where "the" community was actually multiple overlapping communities, each with their own interests and norms. Furthermore, I argued that groups of people with disabilities who recreated together did not represent a failure of the system, as my friend thought, as I had long recognized that many, but certainly not all, people with disabilities preferred the company of other people with disabilities. I viewed such groups as a valid choice while my friend saw systemic failure.

Despite our differences of opinion at this philosophical level, there was no debating the correctness of his general direction, nor with his results. The smaller, more person-centered services that he helped give substance to in the service delivery system are vastly better than the institutional types of services they have largely supplanted. If nothing else, getting the service delivery system to simply consider the validity of an individual's goals, desires and dreams were a major accomplishment.

Every organization needs such dreamers who go beyond the point of reasonableness, but who are properly motivated and headed in the right direction. Having such people on board helps push organizations forward by challenging their thinking and their behavior. While my human service organization no longer has my friend to push us forward, the free software movement still has RMS, who, I think, serves a similar purpose.

RMS did not generally invent the ideals the ideals of the free software movement. Rather, he gave them structure and language. In a sense, I would argue that he gave form and substance to principles that he saw elsewhere. The importance of this gift cannot be overstated. People need contexts in which they can create, and RMS provided this context for thousands of people around the world. The implications are still playing out.

Perhaps just as importantly, though, RMS has remained a guiding and unwavering light in the movement. His notion of what constitutes freedom in software is well-defined and unchanging. It is codified explicitly in the GPL, or General Public License, under which a lot of software is now licensed.

I would argue that the GPL seeks to protect users from repression, if I can borrow a term from last week's story. Such repression comes from not having access to source code, which is a written specification of precisely how a computer program works. Not having source code means one is not able to fix problems such as bugs, software that fails to work on newer versions of operating systems, and the inability of use software on new or alternative hardware platforms. With knowledge and access to source code, all of the above can be remedied. RMS believes that all software should be available under a license such as the GPL and that software that fails to meet that license's criteria in whole is unacceptable. For example, the leading alternative to the GPL is the BSD license, which provides for source availability at no cost, but allows commercial vendors to modify the code and keep the modifications private. The GPL, on the other hand, forces distributed modifications to be given back to the community.

There is a sometimes heated debate between advocates of different software licenses. GPL adherents deplore that modifications of BSD code can be kept private while BSD supporters consider their license to be more free since it has fewer restrictions on its use.

Personally, I don't have strong convictions one way or the other as I can see where both licenses have been successful. For the Linux kernel, the GPL has worked magnificently well by keeping the competing hardware vendors from crippling the system from fragmenting into incompatible versions with proprietary "enhancements", as happened with UNIX. Likewise, for infrastructure software on which other applications are build, such as databases, I would argue that the BSD license works better. MySQL's use of the GPL provides less flexibility that PostgreSQL's BSD license for software developers building solutions on top of these systems. Thus, I would argue that each license has its place and they're both free enough for me.

The issue for me with the view that every license should conform to the principles of the GPL is that while it ensures the freedom of the user, it reduces the freedom of the developer, the individual who is doing the work. Indeed, battlelines have been drawn over this very issue. On one end of the spectrum are media corporations and our lawmakers, who are moving in the direction of extending intellectual property rights in perpetuity. On the other end are those who argue that all media seek to be free. I've even heard arguments that musicians should give away recordings, since the marginal cost of distributing music has become essentially zero, and that they should earn their keep through live performances.

As usual, neither extreme is correct, and, surprisingly, I am convinced that over two-hundred years ago the Founding Fathers essentially had this issue correctly worked out. The Founding Fathers sought, and basically achieved, balance between two competing truths. The first is that the public good was broadened by intellectual works migrating into the public domain. Simply, such migrations enriched the intellectual welfare of society through there ultimately being no restrictions on the use of such property. The other is that intellectual works don't just happen. They result from the combination of innate talent, practice, inspiration, hard work, and, sometimes, a little bit of luck. Furthermore, for society to be enriched by such works, creators need to be willing to give them to the public at large.

This is where I digress from RMS. In my mind, the developer comes first and the user gets to make choices. As the developer of Windows, Microsoft has every right to choose to keep its source code private and to sell binaries to users. Likewise, Linus was free to unleash his kernel to the world under the GPL as, essentially, a gift. She who creates chooses if and how to distribute. If you love UNIX, but can't stand that its source is private, then you are free to create an alternative, as RMS did. However, I never want to live in a world where I am mandated to either GPL the software I write or to sell binaries only as I keep my source to myself. Freedom for me, as a developer, and a writer, and a musician, is the ability to choose what works I release, when I release them, and how I manage such releases.

Ultimately my works will pass into the public domain, as they should. In the short-term, though, I retain both control of my works and the right to earn a return on the personal and financial investment I may have made in order to create them. Once again, the Founding Fathers struck the right balance between public and personal needs. And, once again, our current leaders lack the strength of individual convictions and enlightenment regarding the need to invest in the public good.

RMS has been a critical voice in the software world for two decades now. And, as laid out above, although I am not inclined to follow his thinking to his conclusion, his direction is right and I am happy to meet him well beyond halfway. Let us all hope that he continues challenging and compelling us for the decades to come.