April 19, 2008

Bradley Kuhn makes a better world through software freedom

Author: Tina Gasperson

Bradley Kuhn is one of the founding team members of the Software Freedom Law Center, and a longtime advocate for the cause of Free Software. Many consider him one of the most influential voices in the worldwide FLOSS community. Kuhn, formerly the executive director of the Free Software Foundation, took some time recently to catch us up on his latest work.

Linux.com: What have you been doing lately?

Bradley Kuhn: Much of the work I focused on at the FSF related to the licensing issues around the GPL. In particular, I instituted (with the help of my colleagues, Eben Moglen and Daniel Ravicher) FSF's GPL Compliance Lab, which was the first formalized GPL enforcement team in history. The FSF went from handling about three or four GPL enforcement cases a year to between 30 and 50 each year.

It became clear, however, that there were a lot of other copyright holders and projects that needed legal assistance around the GPL and other FLOSS (Free, Libre and Open Source Software) licenses. Some needed GPL enforcement assistance (such as BusyBox); others needed more general copyright inventory help. Nearly all of them needed nonprofit organizational structure and assistance, but not everyone could join the GNU Project (which receives such organizational assistance from the FSF, and was at the time the only 501(c)(3) actively taking new projects under its auspices).

RMS, Eben, and I discussed various ways that we might provide that menu of services to the whole FLOSS world from inside the FSF. However, it became clear that the FSF needed to remain a small and agile advocacy organization; it couldn't take on such large amounts of additional work. Eben was able to secure funding to begin a new organization, which we named the Software Freedom Law Center (SFLC), to provide legal services to FLOSS projects.

SFLC was incorporated in early 2005, and I left the FSF in March 2005 to join the founding team here at SFLC, along with Eben and Dan. My role at SFLC has two components: first and foremost, I am the liaison between the lawyers and the hackers. My academic training is in computer science and not the law, but, for many years, I've had a foot in both the software development/computer science world and the legal world. I represent the halfway point between the lawyer and the hacker, and I speak both languages fluently. Therefore, I can help our lawyers at SFLC acclimate themselves to the highly political and complex world for FLOSS, and also help SFLC's clients understand where legal issues intersect with their software development projects. In essence, I'm the force inside the SFLC that keeps us rooted in the FLOSS community.

Lc: Tell me the impetus behind the creation of the Software Freedom Conservancy and some of the goals of that organization.

BK: One of the oft-overlooked areas of FLOSS project management is the organizational side. There's tremendous overhead in running a nonprofit day-to-day. Many FLOSS projects have therefore had challenges keeping their nonprofit entities going. In general, the kind of administrative skills needed are not easily found in the volunteerism that is typical in the FLOSS world. You can find excellent coders and documenters, but the volunteer administrative folks are hard to find.

When we started SFLC, this was one of the first questions we got: lots of projects were asking how they could incorporate as a 501(c)(3) and receive charitable donations to do their software development work for the public good. We hired Karen Sandler, an expert on corporate law, to research options and help us figure out how to best solve the problem.

We came up with a myriad of solutions, but the solution I think is most innovative is the Software Freedom Conservancy. It's a separate organization, with its own 501(c)(3) status, that works closely with the SFLC. The Conservancy is designed to be a nonprofit home for FLOSS projects that don't have the resources, knowledge nor the time to create their own nonprofit entity.

Member projects join the Conservancy, and then operate their project under its organizational auspices. They get the benefits of the 501(c)(3) status and nonprofit organization, but the administrative, financial, and other related work is taken care of by the Conservancy. We can aggregate that work for all the different projects, thus adding efficiencies, and taking burdens away so hackers can focus on writing the software, documentation, and other things that are their forte.

We set up each relationship so the Conservancy doesn't interfere with the technical decision-making and direction of each project; their ability to develop FLOSS is not impeded. Meanwhile, they save themselves the resource-draining effort of putting together their own board of directors, filing their own incorporation, 501(c)(3) application, and annual form 990s.

We also provide fiscal oversight, making sure that the funds each project has in its earmarked account are spent in a way fitting the nonprofit mission of advancing FLOSS and the public good.

Lc: Is SFC achieving those goals? Can you give an example?

BK: I think the Conservancy is very much on target. One of the best examples is how much organizational burden is taken off the shoulders of lead developers.

The same story repeats over and over with FLOSS projects: they get popular, and lots of developers start contributing. A single leader or team of leaders continues to shepherd the project in great directions. Eventually, for-profit businesses get interested in it, and begin to use and rely on the software. These businesses want to show their appreciation, and the easiest way for a company to do that is with a financial donation.

Well, this puts the project founders and leaders in a tough position. They don't want to take the money for themselves, because they know that the work is only possible with the great collaboration among the many developers. They usually have heard about doing a nonprofit, but don't have time for the work.

Time and time again, I've seen the Conservancy solve this problem for projects. Once they join, they have an easy place to route donors, and the donations usually start flowing in quickly. The Conservancy keeps each projects' directed donations earmarked, and allows the project to spend the money in any way that fits with the overall nonprofit mission.

Since our inception, we've coordinated donations of funds that have then, in turn, reimbursed developers' for travel to conferences and meetings. We've handled the funds for member projects' conferences, such as the BoostCon 2008 that is coming up. We've made sure that Web hosting facilities fees are paid. We even helped one project pay a translator so that a key piece of academic research written in German could be available to English-speaking developers.

These things that organization infrastructure provides are admittedly boring, but they are really essential and missed terribly when they aren't taken care of well. The Conservancy is trying to eliminate this work by aggregating it together for many projects and giving developers a "no fuss" way to get these things done.

Lc: Do you see your work with the SFLC and now the SFC as an extension of the work you did with FSF, or is it a different direction?

I wholeheartedly see my work today as an extension and expansion of what I did at the FSF. The services that the SFLC and the Conservancy provide to the FLOSS world as a whole are very similar to what the FSF was doing internally for the GNU project. On the SFLC front, we're providing copyright provenance assistance, nonprofit corporate governance assistance, legal policy analysis, GPL enforcement, and other legal services. On the Conservancy front, we're providing fiscal and administrative management and asset stewardship. These were all the things that Dan, Eben, and I helped do for the GNU project through the FSF; now we're helping do this for everyone we can, FSF and GNU included.

I think that the GNU project is one of the most important and influential Free Software projects ever undertaken. That's due in a large part to the organizational backing of the FSF, which made sure that the GNU project had the best legal advice and organizational oversight possible. I see my current work as extending that benefit out to the larger FLOSS world, while still providing a good amount of support to the FSF itself (as the FSF remains an important client of the SFLC for legal services).

Lc: It's interesting that the organizations you are associated with now use the phrase "Software Freedom." Is that different than "Free Software"?

BK: I actually coined the phrase "software freedom" while I was at the FSF, and I was using it quite regularly from around late 2002 on. I think the term is different in only one area: it completely avoids the confusion about "free as in freedom" vs. "free as in price": that age-old and annoying debate of our community. Indeed, that issue was the main argument by those who coined the term "Open Source" of why we shouldn't say "Free Software" anymore.

Meanwhile, I think that the term "Open Source" has just as much ambiguity as "Free Software," but in a different direction. Namely, if you just get the source code to something (i.e., "the source is open"), it doesn't necessarily mean you get the rights to copy, share, modify, and redistribute that source. Microsoft, for example, realized this early, and ever since Jason Matasow's "Shared Source is Open Source" campaign back in 2002, Microsoft has often promulgated licenses that let you see the source but give you no freedoms other than the freedom to study.

Thus, I prefer the term "software freedom" -- particularly in names of organizations -- because it's the only unambiguous English term I've ever come up with that describes our community accurately.

Lc: Do you think there's more of an enterprise focus on the label "Open Source" than on "Free Software"?

BK: I think the phrase "Open Source" has indeed been adopted by for-profit enterprises as the term they prefer for what we do. I'm not terribly surprised; the second agenda item (after "price" vs. "freedom" confusion) of the original proponents of the "Open Source" terminology was to market FLOSS to businesses that were threatened by freedom. They designed the term "Open Source" with an eye to business-friendliness.

However, I never thought that pandering to businesses was particularly important, and, anyway, the world has changed so much since the term "Open Source" was coined over a decade ago. I certainly don't think now that most businesses are going to be scared away merely because of the word you use for FLOSS. Some clueless ones will, but all of the key for-profit innovators are already heavily invested in FLOSS now; they aren't going to run screaming when they hear that their customers "get freedom with their software".

You'll note that I usually write the term "FLOSS" when referring to the software itself. That term was coined by Rishab Ghosh, who is probably the most important socioeconomics researcher in our community. I like "FLOSS" because it treats all "camps" of our community equally, and also has "libre" in the name. "Libre" is the word often used outside of the USA to describe "software freedom," and I feel that many of the most important things happening for software freedom occur outside the USA. I therefore give a nod to the international nature of our community by saying "FLOSS".

Anyway, having said all that, I must point out that I'm not terribly concerned with what people call things. I'm more concerned about what people do to advance the cause of software freedom than the words they use to describe what they do.

Lc: Are you fulfilled in these roles that are, at least in some part, executive?

BK: I've grown into executive work, somewhat by fire, and got a liking for it. With the support and training of the Board of Directors of the FSF at the time (in particular Henri Poole and Eben), I was able to acclimate myself to the position and I eventually became pretty good at management and executive work. One of my happiest moments was when I was addressing a concern an employee had about FSF policy, and we stayed late and worked it out, and at the end of it, he said: "You know, I've been thinking for the last hour, bkuhn is an awesome boss." That was probably my proudest moment as a manager. I was glad to make the FSF a good place to work where people could help the Free Software community in their day jobs rather than merely as volunteers. I think Peter Brown has done an excellent job continuing that tradition that I started.

But the important thing to understand about me is that often, what I actually work on and my current title or job description are but a means to an end. My lifelong goal is to help build a world where people are treated fairly and justly, and in particular, I've chosen to focus on one specific part of that: to help make a world where all users have the inalienable right and freedom to copy, share and modify the software that they use. I do whatever is asked of me at any given time to help advance that primary goal. Anything else I do are merely discardable tactics.

When I was at the FSF, the Movement needed me to be a good manager, fundraiser, public speaker, and executive, so I learned how to do those things well. At the Conservancy, the Movement again requires that I be a good executive, administrator and organizational coordinator, so I transitioned my FSF experience for that. At the SFLC, the Movement requires a translator between hacker-ese and lawyer-ese, who helps the lawyers understand the FLOSS community, and who teaches the FLOSS community how to value and use good legal advice, so I do that, too.

The details of what I do all day are not constant; I do what the Movement needs from me right now. I go to bed each night satisfied if I feel I've done everything I can that day to advance the cause of software freedom, and I have trouble getting to sleep if I feel I've failed some way in that goal. What's fulfilling is knowing that I've made a positive impact on the cause of software freedom, not whether or not I got to work on what interested me most. The latter seems selfish to me, and I try to avoid it.

Lc: Do you still get to just be a hacker?

BK: The other half of my SFLC role is Technology Director; I'm the executive in charge of all software and technological decisions from an operational perspective. In the for-profit world, this would be called the CTO. I firmly believe that FLOSS nonprofits should "eat our own dog food" and use FLOSS for all our operations. The Technology Director part of my role helps make it possible for SFLC to use only FLOSS in our operations.

After seven years in nonprofit management, I've got a real and clear sense of what FLOSS is needed to make a nonprofit run, technologically speaking. I give a few hours a week to this problem, and I'm mentoring a few Google Summer of Code projects through the Conservancy to help build some software that I think nonprofits need. Everyone keeps reinventing the wheel for nonprofit management software, and I'd like to help in the creation of a system that can last and serve the needs of more than just one organization.

Also in this vein, I served as the project manager and co-designer (with Orion Montoya) of the system called stet that was used to collect comments on the GPLv3 drafts (deployed at http://gplv3.fsf.org/comments/). We've had interest from multiple US Congressional offices about using stet for participatory government via public legislative comment. Sadly, no funding is coming from the federal government at the moment for it, and stet doesn't run easily "out of the box" (which is what Congressional staffers are looking for), but it's clear there is ongoing interest in this type of interactive network software. Stet also has the unique distinction of being the only software in history to be meta-licensed -- that is, it was used as a tool in the production of its own license. It helped produce the AGPLv3, and stet was the first software to be officially released under the AGPLv3.

By the way, while I continue to believe the AGPLv3 is a major and essential component for the freedom of network services, it's not a panacea for this problem and there are other issues to consider. Lots of users now rely heavily on network services that don't contain any FLOSS code anyway (they are written from scratch by the network service company). Such systems are the equivalent of large proprietary operating systems, and have the same exact threat that RMS identified back in the 1980s. In fact, it's actually worse because not only is your software completely controlled by someone else, but your data often is as well. I urge users to avoid using network services that lock up their data and their software with someone else.

Finally, I also end up doing any of the harder-core sysadmin things around the office at SFLC. We don't have any sysadmin team here, so I sometimes have to get my hands dirty just like the old days. Good nonprofits are that way -- everyone pitches in to do what needs to be done. We leave strict hierarchy for the for-profit and military types.

Oh, and I suppose I should mention my hobby (of sorts) since it now relates tangentially to FLOSS development. I've been an avid poker player for even longer than I've been into software freedom. Lately I've merged my FLOSS interest and my poker interest by helping Loic Dachary, a dear friend of mine, who has been working for the last few years on a system called pokersource. I've mostly been doing some grunt work for the project when I'm too tired to do anything else at the end of the day -- writing test coverage for the poker-network code. (Writing tests is great TV-watching work, for those who are looking for a way to contribute to FLOSS while watching their favorite shows.) It's not glorious hacking, but I'm glad to be learning some Python and Twisted. (Twisted is, in an amusing link-up to my day job, a member of the Conservancy!)

Lc: What do you see yourself doing over the next several years?

BK: I'm going to work on whatever I perceive as the most urgent need for the advancement of software freedom. It's hard to know what that will be several years from now. I'm doing what I'm doing now because there aren't enough providers of organizational infrastructure for FLOSS projects, so my work at Conservancy is serving an urgent need. The FLOSS community has legal questions that need answers, and both the legal and FLOSS communities need better communication between them, so SFLC is serving an urgent need. Network services are the biggest threat to the freedom of users today, so the FSF Network Services committee and AGPLv3 are urgent needs. And few people are working on good FLOSS software for nonprofit management, so writing or improving such software is an urgent need.

If all of these needs get filled or solved in the next several years, I can imagine I'll be looking to see where I can put my talents to work for whatever seems most urgent for software freedom. Beyond that, I plan to remain agile and open-minded about what I do.

I suppose the only part that I'm pretty strongly decided on is this: I believe that the most positive and central impact for software freedom happens in the nonprofit, not the for-profit, space. Ultimately, all for-profit entities are going to favor their bottom line over the advancement of software freedom. Therefore, I doubt that I could ever work a full-time job again in the for-profit computer industry; I've considered "selling out" a few times and never been able to go through with it. I'm pretty sure that I'm a 501(c)(3) guy, through and through. Our Movement (and our society in general) needs all types of people, so I'm glad that there are FLOSS business people out there. It's just not who I am.


  • Community
  • Advocacy