December 2, 2002

OFTC: A study in cooperative open source software politics

- By David 'cdlu' Graham -
Managing an open source or free software related project can be challenging, so why do it alone? This essay explains how the Open and Free Technology Community's pseudo-democratic system works to divide up power and authority and always keep fresh blood working on the project.

OFTC was created by a group of experienced members of the open source/free software community who wanted to test a new political system for projects and expand developer and support infrastructure beyond any single service.

Most projects are run by a single person or a very small group of people that does not change, and that person or small group maintains absolute control for better or for worse. In the case of OFTC, we have conceived a political system which is not entirely democratic, but removes the power from any single individual and gives it to all the volunteers and sponsors of the project. Unfortunately no practical way has been come up with to give a vote to the users of the project, but that is an ongoing problem and we are open to suggestions.

OFTC lacks the expensive and difficult backbone of a so-called "ring of trust", a system by which all members of the project have met at least one other member of the project in real life until everyone has met everyone by a provable chain of meetings. Instead, we use old fashioned trust. To insure against ballot stuffing, identity problems, and voting by people unfamiliar with what they are voting for, OFTC uses a Borda election system within its staff to select its leadership and the different roles within staff. The results are counted and enforced by our adoptive parent organisation, Software in the Public Interest.

OFTC uses two means to select its leadership which sets it apart from nearly every other project. Firstly, there are no nominations, rallies, speeches, or campaigning. Everyone on the project's staff is automatically a candidate, no matter who they are, as long as they have been with the project more than a couple of months. All staff members vote for either all or no other staff members, no matter what. Not ranking some staff members will void that section of the ballot. The system used is the "Borda" or "preferential" voting system and the result is that all staff members receiving a ranking. From there, the staff are split into groups - the Network Operations Committee, Operators, Representatives, and, in the interest of not having an infinitely growing staff, the five people at the bottom of the list cease to be staff members.

OFTC is a member project of Software in the Public Interest, which has a mandate to pull the plug on OFTC's administration in the event of any kind of political trouble. It does this by owning the project's domain names and being able to undo the project at any time if the project ceases to follow its constitution. SPI's role with OFTC goes well beyond this ability. During the last election, SPI counted the ballots and provided the results. SPI has also assigned an advisor to OFTC: former SPI vice president Martin "Joey" Schulze has attended nearly every OFTC Network Operations Committee meeting and provided invaluable advice and assistance to our project.

By using an electoral system, OFTC does not have the power struggles that dog so many projects. By giving every staff member the chance to become a member of the governing body by getting along with their peers, the environment is cooperative instead of competitive, and more progress can be made. Any user can apply to join the staff, and any staff member can be elected to any position within the staff. Poor leadership can be brutally punished in short order during the elections which take place every 6 months, or by being impeached, a constitutional provision to keep a check on power.

The biggest drawback to OFTC's system is its reliance on ranking and hierarchy. On paper, staff members are not equals, and a hierarchy exists from the top to the bottom. While the lines become blurry within hours of the election, it can still lead to bitter feelings between staff members, though mercifully, it has not yet happened.

OFTC is a 100% voluntary project, so staff members can drift away or lack sufficient time to commit to the project. This is a problem that affects many groups and is inherent in voluntary work.

OFTC is administered by weekly meetings of the Network Operations Committee. These meetings usually have full or close to full attendance by all NOC members and seldom last more than a few minutes. All decisions that do not have to be made in a hurry are made at these meetings, and they are used to discuss issues brought up by any staff members or users.

The political structure of the staff is made up in the following manner.

OFTC is a top-down structure. At the top is the Chair of the NOC. This person, in this case me, has control of the agenda, quite literally. In weekly NOC meetings, the Chair presents an agenda and chairs the meeting. In order for a policy to get through, a majority of NOC members in attendance must approve a motion, so the Chair has no unilateral power, however the influence should not be underestimated, nor treated lightly. The only unilateral power the Chair has is to appoint or remove department heads, which I will come back to.

After the Chair comes the Ombudsman. The Ombudsman is, effectively, the most powerful member of the project's staff. He can issue reprimands to staff members for violating the rights of users or the policies of the network and, by extension, is the only member of staff who can unilaterally dismiss another. The Ombudsman and the Chair can both be impeached by a vote, and the Ombudsman must discuss reprimands issued against members of the NOC at the next meeting before the reprimand sanctions can be carried out, so the abuse of this power is unlikely, but nevertheless exists.

Also on the Network Operations Committee are a minimum of four other members, though there are usually six, for a total of eight people on this committee. From these members, the Chair assigns department heads who are responsible for certain aspects of the network. While these department heads must be on the NOC, the staff of the departments can be from anywhere on staff. These department heads have ultimate responsibility for a technical aspect of the network. In the current administration, the most active department is the Coding Department, which is responsible for all aspects of our IRCd, web site, and any other relevant code. This decentralises power from the Chair, and allows people competent in a particular field to manage that field without significant obstacles.

After the department heads are the NOC members who are not department heads. These people attend NOC meetings and participate in departments, but do not have a specific responsibility except to be a part of the upkeep of the network. All NOC members have the physical ability to change any aspect of the project from the configuration of the servers to the addresses in our DNS, and all NOC members are entrusted with the ability to reset passwords and manage channels that request assistance.

After the NOC, we have Advisors, who are invited to attend NOC meetings at their leisure and respond to points brought up during meetings, but Advisors do not have a vote either on policy matters or in elections. The Advisor's role is to advise, and the two advisors currently on our staff do a magnificent job.

We have three more levels of staff. The Network Operators are entrusted with O:lines, or administrative access, and are responsible for technical matters and matters of public order. Network Operators play an important role on the project and help keep the project together.

Network Representatives do not have any special privileges, but are often called upon to provide advice, report problems, resolve disputes, and help users. Their role is no less important than that of any other staff member, and their support is invaluable in maintaining a friendly environment within the project.

Sponsors are the backbone of the project - literally. These people provide the project with the infrastructure on which we run, and no aspect of the project could survive without them. Many of them are entirely hands-off and only communicate with the rest of the staff if they have an announcement, happy in the knowledge that they are providing something back to the community which perpetuates itself.

All the staff members listed above with the exception of the Advisors have the right to vote during the project's general elections. Votes are not weighted differently for anyone and this provides an important power to all staff members.

Political struggles between staff members are extremely rare. Disruptive or uncooperative staff have been ejected in the past without much ceremony and nearly all staff get along very well. If a staff member is not making an effort to get along with the project, or is being deliberately disruptive, the Ombudsman can issue a reprimand. The reprimand system provides for a one week suspension from the staff. Two reprimands extend the suspension to an entire month, and three reprimands will cause a staff member to be ejected from the project. All reprimands can be appealed to the NOC through the Chair. With the frequency of the elections, staff members who hold their grudges take them out on those who they begrudge during the election by voting them down. It is a strangely satisfactory way to get even without offending anyone.

The project continues to run smoothly with the help of the 27 staff members on the project keeping an eye on every aspect of the project. If someone who does not have the physical power to fix something detects something broken, fetching someone who can fix it is usually a fairly simple matter. Most of the NOC members have cellular phones with SMS capability as do many other staff members, so decisions can be fixed and problems remedied, even if the person supposed to make the decision isn't close to a computer, and with the use of SMS, which country a particular person is in is more or less irrelevant.

What if the staff were to all jump ship at once? In the unlikely event that a large part of the staff were to quit at once, the project would most likely be destabilised and could even collapse. A project without a staff is a dream, and the loss of the staff of any project would certainly end the project.

User requests are handled either by the department head that the request involves, or by the NOC as a whole when the weekly meeting comes along. We do the best we can to inform the users who made a request of the decision reached on it and we try to act on it to the best of our abilities.

If a user wants to make a request, comment, suggestion, or to contact the staff for whatever reason, there are a number of ways for them to do that. We have a subscribable mailing list,, which can be subscribed to by sending an email to with the subject "subscribe oftc-user". We have a public staff channel, #oftc, which usually has a number of staff members present, if not particularly active, where help can be requested, or for more confidential information, an email can be sent to the NOC at, or to an individual staff member from the addresses provided on the staff page. The Chair can be emailed at, and complaints can be filed to the Ombudsman at

OFTC is still a relatively young project and has been fortunate enough to avoid many of the juvenile attacks that have become the hallmark of IRC. However, some still do come and it is up to our staff members to react as quickly as we can to stop whatever deliberate problems do arise. To this end, we also employ a variety of security tools to keep this not particularly enjoyable work to a minimum.

Trolls, on the other hand, are a nuisance not easily purged by automation, and require a great deal of patience more than anything to deal with. As the expression goes, don't feed the trolls. Most people who come to troll eventually leave when they realise no-one cares about their silly antics.

If you are thinking about leading a project in the public interest, there are a couple of things I would suggest you think about before diving in, and while you are there.

The most important thing to remember is that a leader is not someone who stands around with a whip and tells people what to do and how to do it. A leader is someone who builds a consensus and listens to the ideas and proposals of all those he leads. When you are leading, making a decision is what you do only if you cannot build consensus and a decision needs to be made. Never act unilaterally, you will cease to be a leader, even if you still have the title.

OFTC has a great future to look forward to. We are currently working on a content management system for our web-site which will allow users and channel owners to log in, modify their preferences, and send and receive memos from the web without necessarily logging into the IRC network. This is merely the first stage in a full-scale integration plan we have in the works.

Ultimately what OFTC would like to do is provide projects with an integrated IRC channel, web space, mailing list, and other services, such as NNTP, all controlled from any of the interfaces and all capable of communicating with each-other.

To do this, we need more manpower, and if you think you have anything at all to offer, feel free to sign up. We have an application form, but as long as your application is realistic there is generally no problem with being accepted into the staff of the project.


  • Open Source
Click Here!