Sunday, July 1, 2007

GPL as a Compliance Based Model

Compliance based modes of enforcing rules work by making compliance easy and useful for actors.

Most sociologists have have focused on compliance models have focused on areas like the regulation of industry. However, in looking at and thinking about the GNU GPL it seems to me that it is, totally apart from the Joomla! issue, a very powerful example of a compliance based model. It's well known in the world of people who think about these things, the the Free Software Foundation almost never ends up before a judge. How do they achieve this?

Of course, there is not one way, but several.

The GPL model is sometimes referred to as "viral" because when a program--someone's bit of code-- gets involved with a gpl program in certain ways that program needs to itself be gpl compatible (which means it must have one of the licenses approved by the FSF). The current debate within the Joomla! ecosystem is is about what kinds of involvement do or do not require the Joomla! GPL to "infect" extensions to Joomla!. Of course, the promoters of the GPL do not like this particular analogy since conventionally infection implies illness and some kind of harm and in an HIV infected world probably death. Proprietary (i.e. non GPL) developers worry about infection and so, as a result, they tend to be quite cautious about how their software interacts with GPL software. They decide to "go GPL" because they see a benefit. They may not be happy but they have done the analysis and decided that the gpl requirements which they may not like are worth adopting.

But is this--so really the main way that the GPL propogates? I tend to think not. Instead, I think that the GPL mainly spreads because it is easier. First, an awful lot of programming is started by copying existing gpl code. The GPL makes this possible by its very terms. Someone could attempt to code everything from scratch, but in the vast majority of cases the benefit of avoiding the GPL is not worth the time.

But what if you are working for yourself, coming up with something from scratch, why would you GPL? Well, the truth is, of all the software appropriate licenses it is the easiest to use. The instructions are simple and it is a known quantity. No lawyers needed, because the legal work has already been done. Your work is protected, and you get credit. No one can steal your work. The FSF is there to help you enforce it.

On top of all this, however, is a social process which is bigger. The GPL is established and widespread enough that it has become the norm as opposed to the exception. Users--developers, end users, everyone--understand it and know how to handle it, even when they don't like it. How often do people actually read the GPL? Not often, because they don't need to. Even people who hate the gpl know what it means and how to avoid it. So in that sense it is the dominant frame--frame isn't the right word and neither is paradigm-- for people writing code for distribution and for teens downloading software. Just as Americans have an idea that they know what 'the first amendment" means without reading case law or the constitution, people know what free software means. In this, the GPL has fundamentally shaped the way people, particularly people in the computer world, think about copyright and information even though they don't know it.

Fundamentally the GPL and the web more generally is about a way of thinking about ideas and inventions and what they mean.

So, the way the GPL really gets people to comply is not through force or intimidation or lawsuits. It isn't through disease models. It is through changing the patterns of thinking of embedded in the culture.

Saturday, June 30, 2007

What does voluntary compliance mean?

Voluntary compliance is a confusing term, because it means something different than the sum of the two separate words. I am going to attempt to explain what it means and some of the implications of the use of this approach.

As we all know, compliance means following the rules. If the rule says no throwing trash on the street, we comply with the rule when we put our trash in a trash can instead. In fact, most of us do this without even having to be reminded and even though the chances of us being arrested or even getting a citation are very small (In the U.S. at least). It is not fear of the criminal justice system that makes us comply. It is knowing the rules and having been taught that using the trash can is the proper thing to do. In this sense, using the trash can is voluntary. It does not happen because someone threatened us with either force or the law. Does this mean that no one throws trash on the ground? Absolutely not. There are rule breakers everywhere. There are even rule breakers in those places, like Singapore, where you really would get punished for throwing trash on the ground. Even in a voluntary compliance system like New York, there is always the threat of legal enforcement in the background. Why not always just rely on legal enforcement? Just call the police, file a law suit, or make a citizen’s arrest. There are many reasons.

1. Sometimes there are so many potential law breakers that it is simply not possible to watch them all full time.
2. Sometimes people honestly do not know the rules. Punishing them severely may be unjust.
3. Putting people in prison is expensive. Most likely a cost/benefit analysis would not show imprisoning people to have a good payoff in terms of future crime prevented.
4. Involvement the court system often stigmatizes people, which in turn can lead to more antisocial behavior in the future.
5. Punishing individuals can have negative effects on their families such as removing a parent from a home.
6. Punishment doesn’t happen until after the wrong act has occurred, it would be better to stop the lawbreaking from happening than to focus on responding after the fact.

In the Joomla! universe we can see similar processes in action. Why would OSM not immediately seek to enforce the GPL by filing a law suit?

1. There are so many proprietary developers, it might not be fair to single out one. Further there are probably many that we don’t even know about. Although it might scare the others, this effect is likely to be temporary.
2. It may be that some proprietary developers really have not carefully studied the GPL or understood its implications.
3. Suing might be expensive and not worth it if other alternatives are available.
4. Someone who is sued would probably not want to work with Joomla! in a positive way in the future.
5. Suing a developer might harm his or her customers or employees.
6. Suing a developer as a strategy doesn’t take place until after a violation has occurred; it would be better to focus on preventing violations before they happen.

So how, besides teaching children, do we get people to follow the rules? In fact, there are many, many rules that are enforced primarily by voluntary compliance and their approaches can be classified in various ways. For example, “situational crime prevention” proposes 25 types of approaches. Although license violation is not a crime, these ideas can still apply. Here are some examples.

“Remove the excuses” by among other things: setting rules; posting instructions, assisting compliance, and alerting the conscience. “Reduce provocations” by, among other things, reducing peer pressure for wrongful behavior and discouraging imitation of wrongful behavior by others. Other categories of approaches include increasing the effort involved in violating the rules, increasing the negative consequences associated with violation (negative consequences include many consequences that are well short of taking legal action, starting with embarrassment), and reducing the rewards.

Many in the U.S. are surprised to learn that the Internal Revenue Service relies primarily on a system of voluntary compliance. This shows just how successful voluntary compliance can be. Here is the definition of voluntary tax compliance from the GAO:

Voluntary Compliance; A system of compliance that relies on individual citizens to report their income freely and voluntarily, calculate their tax liability correctly, and file a tax return on time. (GAO-05-1009SP)


A recent General Accountability Office report (GAO-07-391T) on how to increase compliance notes that there is currently “high, sustained levels of taxpayer compliance” but points out ways in which this could be even higher. For example, the report argues that “providing quality services to taxpayers also is a necessary foundation for voluntary compliance.” That is, one of the best ways to encourage people to follow the rules is to give them clear, understandable and accurate information about what the rules are and how they apply to their particular situations. Similarly another report said

Some experts believe that simplicity and transparency can contribute to compliance, as voluntary compliance is likely to increase if taxpayers are less likely to make errors on their tax returns and have fewer opportunities to evade taxes. (GAO-05-1009SP)

So, what does all this have to do with Joomla!? First, people are wondering whether there will be legal actions (i.e. law suits) against developers who do not immediately comply with the GPL. In adopting the voluntary compliance approach, the core team and OSM are saying that legal actions will be the very last resort, only after strong efforts (reflecting variety of approaches) to achieve compliance have failed. These efforts start with making clear what the terms of the license are and why they are so. This effort has already started. Now is the time to begin other efforts. They might include some of the following items.
• Education about what GPL does and does not require and the difference between commercial and proprietary;
• Showing the community the benefits of having commercial extensions licensed under GPL;
• Helping developers think about their business models;
• Helping developers understand the risks that both OSM and they face from original copyright holders if there is non compliance with the GPL;
• Helping developers understand ways in which there may (or may not) be code based solutions that could be compliant;
• Working to change community norms so that, for example, Joomla! end users understand why downloading unmodified code from warez sites rather than purchasing commercial GPL from the developers can be risky and harmful.

These efforts are much more likely to be successful and cost effective than any legal filing against a single extension by a single developer would be. Success in the case of this issues means, in my opinion, achieving two things:1. compliance with the GPL and 2. retaining (and growing) the commercial developer community as an important part of the Joomla! ecosystem. Law suits and other quick, dramtic actions are unlikely to achieve these goals.


Crime Reduction 20 July 2004 “Situational Crime Prevention Techniques.” http://www.crimereduction.gov.uk/learningzone/scptechniques.htm

Government Accountability Office. January 23, 2007 “Tax Compliance: Multiple Approaches Are Needed to Reduce the Tax Gap” GAO-07-391T http://www.gao.gov/docsearch/abstract.php?rptno=GAO-07-391T


Government Accountability Office September 13, 2005. “Understanding the Tax Reform Debate: Background, Criteria, & Questions” GAO-05-1009SP
http://www.gao.gov/htext/d051009sp.html

Wednesday, June 27, 2007

Joomla! Background

The background to a number of the comments I will be making is the recent announcement by the Joomla! core team that the next release of Joomla! will be under the open source license known as GNU GPL without any modifications. This announcement followed months of discussion in the Joomla! public forums and within the Core Team. The announcement resulted in all kinds of reactions, positive, negative, worried, happy. Threats of a fork, withdrawal from the "community," accusations of all kinds. In this blog I will be discussing various aspects of this process from a sociological perspective.

A few definitions

Open source software

Software that you can look at and modify. Sometimes software is distributed so that you can't read the "code." That is closed source. Closed source is generally intended to achieve three things. First, to keep the user from making or installing additional copies. Second, to prevent the user from modifying or improving the program. Open source software
allows both of these actions by the user. Both approaches maintain the copyright of the program's author, but they differ in the licensing.

Core Team

In an open source project the core team is the group of developers who control the project.

Fork

Because users are allowed to modify an open source program they can create a new program, with a new name and new features (as long as the original license and credits are left in place). This is called a fork.

Sunday, June 24, 2007

Open Source World

Some background

About two years ago I accidently became involvedi n the world of open source software.

What happened was that I had a website that I was running for my children's school. At some point it all became a bit much to manage, and the staff could never really understand how to add content. It happened that my web host at the time added a feature called Fantastico, and Fantastico made it easy to install something called a content management system.

Everything Fantastico offers is "free open source software." I had heard of open source before, but more because of the "philosphical" claims from Richard Stallman about information wanting to be free. Okay, I had also been forced to learn emacs, but honestly for me that was not particularly a strong argument in favor of the philosophy since that was painful, though I suppose a huge improvement over the cards I learned fortran and SPSS on in college.

So, I looked at the various options and read about them online, and eventually decided to use Mambo.

I quickly discovered a huge community of users and developers who would answer my questions and provide me--for free--with everything I needed to make a site that was not only a million times easier to run, but that was also looked a lot better and didn't break everytime someone breathed.

Of course, I didn't turn off my sociological eye while doing this, and I started to notice a lot of similarities between the Mambo world and other (for lack of a better word) communities I have studied over the years. Trust, belief, exchange, reputation and organization--all issues that have been central to my work--playing out right there on public forums, in private messages and other virtual venues and there I was, participant as observer in the classic sense, even though that usage has fallen out of favor.

I'm not much in general a practitioner who puts a lot of personal into the sociological, but I often love the work of people who do. As the drama of Mambo and Joomla! (more about that later) has played out over the last two years, I have not been able to put aside the idea that what was happening could be understood in sociological terms as well as personal ones. I've thought of writing about this for a while, but without being sure of in what way. Did I want to do go do systematic interviewing? No, not really. An analysis of posting patterns and themes? Again, interesting but to what end? So I thought I'd start this and see what I came up with. So here I am. We'll see if anything comes of it.