Some people who I respect have recently been surprised and frustrated by the extreme responses they’ve encountered in the wild outer badlands of various free software forums. They thought it would be a good idea to provide an introduction for others, so this doesn’t come as a shock. This is my first draft. It’s still too wordy, it should be phrased more diplomatically, and it should emphasize the positive. You may also find the GNOME Code of Conduct interesting, which I also created.
By its nature it will be flamed in the comments section. Maybe that can serve as an appendix.
Update: The improved version is here.
Dealing with Zealots in Open Source Communities
The world of Open Source and Free Software is like the Internet. It is big and full of variety. It has what you need, but sometimes it has so much that things become confusing. People on the Internet sometimes organize themselves into opposing tribes.
This should not detract from the great opportunities and advantages of open source software and its development methods.
You will certainly encounter people with strong opinions. Sometimes their opinions will seem unusual, and sometimes they will speak with such conviction that you’d be forgiven for thinking they are the law. But most people represent only themselves. As with any information on the Internet, you must assess the accuracy and authority of the information that you find.
Specifically, you are likely to encounter the following points of view in public forums, among the more positive responses:
- All commercial software is wrong, meaning that it is immoral to earn money by writing software or even providing services.
- All proprietary software is wrong, meaning that it is immoral to provide executables without all of their source code.
- All open source software or free software is wrong, often based on simplistic economic reasoning.
- All use of proprietary software is wrong. Thus, you may be attacked as immoral for using third-party hardware requiring closed-source drivers while otherwise open sourcing your entire development platform. It is immoral to use your company’s proprietary email system, even if you have no control over it.
- All use of proprietary formats is wrong, meaning it is immoral to even support interoperability with proprietary or patented systems such as FAT32, NTFS, Samba, MP3, WMV, etc.
- All compliance with software patent law is wrong, meaning that it is immoral to allow people to use software that would be illegal in their country if not paid for under a proprietary license. Likewise, it is correct and moral to allow people to unknowingly break the laws of their governments, regardless of the legal or financial consequences for individuals and the companies that make this possible.
- Use of certain words is wrong. For instance, Linux-based systems must be called GNU/Linux systems, or vice-versa. Open Source must be called Free Software, or vice-versa.
- Acceptance of alternative opinions is wrong. Thus, it is immoral to mention projects or opinions which do not fully agree with certain aims, because condemnation must be total.
- Various user interfaces are wrong. For instance, it is immoral to choose a simple default environment for a user, or it is immoral to deemphasize the details of how a system works, even if those details are not interesting to your target users and are in fact available to those who are interested.
- All demands must be met simultaneously, regardless of your priorities or resources.
- Change is wrong.
- Change must happen.
These are opinions, though the people expressing them may be convinced that their logic makes them absolute facts. It’s best to let them have the last word, unless you wish to continue until you accept their indisputable logic.
You can safely ignore most of these conversations unless an actual copyright holder is telling you what they would like you to do. You are free to have your own opinions and free to take part in these conversations only if they interest you personally. You do not need to tolerate offensive or aggressive behavior. If you do not choose to take part, these people will happily argue amongst themselves. Because the majority have learned to ignore these conversations, you should not assume that these conversations represent the majority.
You are not at the command of every random person who expresses an opinion regardless of whether you find that opinion personally convincing. You are free to decide what is best for you, your business, and your customers.
You’ll find that most actual project maintainers and developers speak more clearly and recognize that people with slightly differing priorities can work together. They may try to convince you of their opinions, but they will do so with understanding. Where a copyright holder has a very strong opinion about exactly what you should do with his/her software, he/she will choose a license that makes that clear. Of course, you need to have good relations with your fellow developers, so do try to comply with the spirit of licenses rather than just the exact legal interpretation. In general, open source licenses provide mutual advantages.
This article is also an opinion. You are free to ignore it.