Computer science · Economics & business

Producing Open Source Software: How to Run a Successful Free Software Project

Karl Fogel
Karl Fogel · Second edition, version 2.3300 (5 February 2023); iReadAll navigation repair v2, 29 October 2026 · English · Published 2023

A practical guide to starting and maintaining free and open-source software projects, including collaboration, community, releases, funding and project governance.

Learning stage
College introduction
Prerequisites
Basic familiarity with software development and collaborative projects.
Editorial review
2026-10-29

Contents

Choose the section you need. Listening availability is shown for each section.

  • About this iReadAll reading edition

    Read the original · Narration availability requires a section review.

  • Producing Open Source Software

    Read the original · Narration availability requires a section review.

  • Producing Open Source Software
    • Producing Open Source Software

      Read the original · Narration availability requires a section review.

    • Preface

      Read the original · Narration availability requires a section review.

    • Why Write This Book?

      Read the original · Narration availability requires a section review.

    • Who Should Read This Book?

      Read the original · Narration availability requires a section review.

    • Sources

      Read the original · Narration availability requires a section review.

    • Acknowledgements

      Read the original · Narration availability requires a section review.

    • For the first edition (2005)

      Read the original · Narration availability requires a section review.

    • For the second edition (2023)

      Read the original · Narration availability requires a section review.

    • Disclaimer

      Read the original · Narration availability requires a section review.

    • 1. Introduction

      Read the original · Narration availability requires a section review.

    • History

      Read the original · Narration availability requires a section review.

    • The Rise of Proprietary Software and Free Software

      Read the original · Narration availability requires a section review.

    • Conscious Resistance

      Read the original · Narration availability requires a section review.

    • Accidental Resistance

      Read the original · Narration availability requires a section review.

    • "Free" Versus "Open Source"

      Read the original · Narration availability requires a section review.

    • The Situation Today

      Read the original · Narration availability requires a section review.

    • 2. Getting Started

      AI listening available · Free section audio · Narration availability requires a section review. · About 7 min

      Listen to this section

      2. Getting Started

      Playback stops at the end of this section unless you choose to continue in the reader. Some content may require viewing the original.

      Published audio for this section is free to play and uses no Reader allowance.

      New AI narration uses your Reader allowance. The reader will show the available voices and generation cost before preparing audio.

    • Starting From What You Have

      Read the original · Narration availability requires a section review.

    • Choose a Good Name

      Read the original · Narration availability requires a section review.

    • Own the Name in the Important Namespaces

      Read the original · Narration availability requires a section review.

    • Have a Clear Mission Statement

      Read the original · Narration availability requires a section review.

    • State That the Project is Free

      Read the original · Narration availability requires a section review.

    • Features and Requirements List

      Read the original · Narration availability requires a section review.

    • Development Status

      Read the original · Narration availability requires a section review.

    • Development Status Should Always Reflect Reality

      Read the original · Narration availability requires a section review.

    • Downloads

      Read the original · Narration availability requires a section review.

    • Version Control and Bug Tracker Access

      Read the original · Narration availability requires a section review.

    • Communications Channels

      Read the original · Narration availability requires a section review.

    • Developer Guidelines

      Read the original · Narration availability requires a section review.

    • Documentation

      Read the original · Narration availability requires a section review.

    • Availability of Documentation

      Read the original · Narration availability requires a section review.

    • Developer Documentation

      Read the original · Narration availability requires a section review.

    • Demos, Screenshots, Videos, and Example Output

      Read the original · Narration availability requires a section review.

    • Hosting

      Read the original · Narration availability requires a section review.

    • Choosing a License and Applying It

      Read the original · Narration availability requires a section review.

    • The "Do Anything" Licenses

      Read the original · Narration availability requires a section review.

    • The GPL

      Read the original · Narration availability requires a section review.

    • How to Apply a License to Your Software

      Read the original · Narration availability requires a section review.

    • Setting the Tone

      Read the original · Narration availability requires a section review.

    • Avoid Private Discussions

      Read the original · Narration availability requires a section review.

    • Nip Rudeness in the Bud

      Read the original · Narration availability requires a section review.

    • Codes of Conduct

      Read the original · Narration availability requires a section review.

    • Practice Conspicuous Code Review

      Read the original · Narration availability requires a section review.

    • Case study

      Read the original · Narration availability requires a section review.

    • Be Open From Day One

      Read the original · Narration availability requires a section review.

    • Waiting Just Creates an Exposure Event

      Read the original · Narration availability requires a section review.

    • Opening a Formerly Closed Project

      Read the original · Narration availability requires a section review.

    • Announcing

      Read the original · Narration availability requires a section review.

    • 3. Technical Infrastructure

      Read the original · Narration availability requires a section review.

    • What a Project Needs

      Read the original · Narration availability requires a section review.

    • Web Site

      Read the original · Narration availability requires a section review.

    • Canned Hosting

      Read the original · Narration availability requires a section review.

    • Choosing a Canned Hosting Site

      Read the original · Narration availability requires a section review.

    • Hosting on Fully Open Source Infrastructure

      Read the original · Narration availability requires a section review.

    • Anonymity and Involvement

      Read the original · Narration availability requires a section review.

    • Message Forums / Mailing Lists

      Read the original · Narration availability requires a section review.

    • Choosing the Right Forum Management Software

      Read the original · Narration availability requires a section review.

    • Spam Prevention

      Read the original · Narration availability requires a section review.

    • Filtering posts

      Read the original · Narration availability requires a section review.

    • Identification and Header Management

      Read the original · Narration availability requires a section review.

    • The Great Reply-to Debate

      Read the original · Narration availability requires a section review.

    • Archiving

      Read the original · Narration availability requires a section review.

    • Mailing List / Message Forum Software

      Read the original · Narration availability requires a section review.

    • Version Control

      Read the original · Narration availability requires a section review.

    • Version Control Vocabulary

      Read the original · Narration availability requires a section review.

    • Choosing a Version Control System

      Read the original · Narration availability requires a section review.

    • Using the Version Control System

      Read the original · Narration availability requires a section review.

    • Version Everything

      Read the original · Narration availability requires a section review.

    • Browsability

      Read the original · Narration availability requires a section review.

    • Use Branches to Avoid Bottlenecks

      Read the original · Narration availability requires a section review.

    • Singularity of Information

      Read the original · Narration availability requires a section review.

    • Authorization

      Read the original · Narration availability requires a section review.

    • Receiving and Reviewing Contributions

      Read the original · Narration availability requires a section review.

    • Pull Requests / Merge Requests

      Read the original · Narration availability requires a section review.

    • Commit Notifications / Commit Emails

      Read the original · Narration availability requires a section review.

    • Bug Tracker

      Read the original · Narration availability requires a section review.

    • Interaction with Email

      Read the original · Narration availability requires a section review.

    • Pre-Filtering the Bug Tracker

      Read the original · Narration availability requires a section review.

    • Real-Time Chat Systems

      Read the original · Narration availability requires a section review.

    • Chat Rooms and Growth

      Read the original · Narration availability requires a section review.

    • Nick-Flagging and Notifications

      Read the original · Narration availability requires a section review.

    • Chat Bots

      Read the original · Narration availability requires a section review.

    • Commit Notifications in Chat

      Read the original · Narration availability requires a section review.

    • Wikis

      Read the original · Narration availability requires a section review.

    • Wikis and Spam

      Read the original · Narration availability requires a section review.

    • Choosing a Wiki

      Read the original · Narration availability requires a section review.

    • Translation Infrastructure

      Read the original · Narration availability requires a section review.

    • Social Networking Services

      Read the original · Narration availability requires a section review.

    • 4. Social and Political Infrastructure

      Read the original · Narration availability requires a section review.

    • Forkability

      Read the original · Narration availability requires a section review.

    • Benevolent Dictators

      Read the original · Narration availability requires a section review.

    • Who Can Be a Good Benevolent Dictator?

      Read the original · Narration availability requires a section review.

    • Consensus-based Democracy

      Read the original · Narration availability requires a section review.

    • Version Control Means You Can Relax

      Read the original · Narration availability requires a section review.

    • When Consensus Cannot Be Reached, Vote

      Read the original · Narration availability requires a section review.

    • When To Vote

      Read the original · Narration availability requires a section review.

    • Who Votes?

      Read the original · Narration availability requires a section review.

    • Not All Maintainers Are Coders

      Read the original · Narration availability requires a section review.

    • Adding New Maintainers

      Read the original · Narration availability requires a section review.

    • Polls Versus Votes

      Read the original · Narration availability requires a section review.

    • Vetoes

      Read the original · Narration availability requires a section review.

    • Writing It All Down

      Read the original · Narration availability requires a section review.

    • Joining or Creating a Non-Profit Organization

      Read the original · Narration availability requires a section review.

    • 5. Organizations and Money: Businesses, Non-Profits, and Governments

      Read the original · Narration availability requires a section review.

    • The Economics of Open Source

      Read the original · Narration availability requires a section review.

    • Goals of Corporate Involvement

      Read the original · Narration availability requires a section review.

    • Governments and Open Source

      Read the original · Narration availability requires a section review.

    • Being Open Source From Day One is Especially Important for Government Projects

      Read the original · Narration availability requires a section review.

    • Hire for the Long Term

      Read the original · Narration availability requires a section review.

    • Case study

      Read the original · Narration availability requires a section review.

    • Appear as Many, Not as One

      Read the original · Narration availability requires a section review.

    • Be Open About Your Motivations

      Read the original · Narration availability requires a section review.

    • Money Can't Buy You Love

      Read the original · Narration availability requires a section review.

    • Contracting

      Read the original · Narration availability requires a section review.

    • Hiring From Within the Community

      Read the original · Narration availability requires a section review.

    • Hiring From Outside The Community

      Read the original · Narration availability requires a section review.

    • Contracting and Transparency

      Read the original · Narration availability requires a section review.

    • Review and Acceptance of Changes

      Read the original · Narration availability requires a section review.

    • Case Study: the CVS Password-Authentication Protocol

      Read the original · Narration availability requires a section review.

    • Update Your RFI, RFP and Contract Language

      Read the original · Narration availability requires a section review.

    • Open Source Quality Assurance (OSQA)

      Read the original · Narration availability requires a section review.

    • Don't Surprise Your Lawyers

      Read the original · Narration availability requires a section review.

    • Funding Non-Programming Activities

      Read the original · Narration availability requires a section review.

    • Technical Quality Assurance (i.e., Professional Testing)

      Read the original · Narration availability requires a section review.

    • Legal Advice and Protection

      Read the original · Narration availability requires a section review.

    • Documentation and Usability

      Read the original · Narration availability requires a section review.

    • Funding User Experience (UX) Work

      Read the original · Narration availability requires a section review.

    • Providing Build Farms and Development Servers

      Read the original · Narration availability requires a section review.

    • Running Security Audits

      Read the original · Narration availability requires a section review.

    • Sponsoring Conferences, Hackathons, and other Developer Meetings

      Read the original · Narration availability requires a section review.

    • Marketing

      Read the original · Narration availability requires a section review.

    • Open Source and Freedom from Vendor Lock-In

      Read the original · Narration availability requires a section review.

    • Remember That You Are Being Watched

      Read the original · Narration availability requires a section review.

    • Case Study: You Can't Fake It, So Don't Try

      Read the original · Narration availability requires a section review.

    • Don't Bash Competing Vendors' Efforts

      Read the original · Narration availability requires a section review.

    • "Commercial" vs "Proprietary"

      Read the original · Narration availability requires a section review.

    • Open Source and the Organization

      Read the original · Narration availability requires a section review.

    • Dispel Myths Within Your Organization

      Read the original · Narration availability requires a section review.

    • Foster Pools of Expertise in Multiple Places

      Read the original · Narration availability requires a section review.

    • Establish Contact Early With Relevant Communities

      Read the original · Narration availability requires a section review.

    • Don't Let Publicity Events Drive Project Schedule

      Read the original · Narration availability requires a section review.

    • The Key Role of Middle Management

      Read the original · Narration availability requires a section review.

    • InnerSourcing

      Read the original · Narration availability requires a section review.

    • Hiring Open Source Developers

      Read the original · Narration availability requires a section review.

    • Hiring for Influence

      Read the original · Narration availability requires a section review.

    • Evaluating Open Source Projects

      Read the original · Narration availability requires a section review.

    • Crowdfunding and Bounties

      Read the original · Narration availability requires a section review.

    • 6. Communications

      Read the original · Narration availability requires a section review.

    • Written Culture

      Read the original · Narration availability requires a section review.

    • You Are What You Write

      Read the original · Narration availability requires a section review.

    • Structure and Formatting

      Read the original · Narration availability requires a section review.

    • Content

      Read the original · Narration availability requires a section review.

    • Tone

      Read the original · Narration availability requires a section review.

    • Recognizing Rudeness

      Read the original · Narration availability requires a section review.

    • Face

      Read the original · Narration availability requires a section review.

    • Avoiding Common Pitfalls

      Read the original · Narration availability requires a section review.

    • Don't Post Without a Purpose

      Read the original · Narration availability requires a section review.

    • Productive vs Unproductive Threads

      Read the original · Narration availability requires a section review.

    • The Smaller the Topic, the Longer the Debate

      Read the original · Narration availability requires a section review.

    • Avoid Holy Wars

      Read the original · Narration availability requires a section review.

    • The "Noisy Minority" Effect

      Read the original · Narration availability requires a section review.

    • Don't Bash Competing Open Source Products

      Read the original · Narration availability requires a section review.

    • Difficult People

      Read the original · Narration availability requires a section review.

    • Handling Difficult People

      Read the original · Narration availability requires a section review.

    • Case study

      Read the original · Narration availability requires a section review.

    • Handling Growth

      Read the original · Narration availability requires a section review.

    • Conspicuous Use of Archives

      Read the original · Narration availability requires a section review.

    • Treat All Resources Like Archives

      Read the original · Narration availability requires a section review.

    • Codifying Tradition

      Read the original · Narration availability requires a section review.

    • Choose the Right Forum

      Read the original · Narration availability requires a section review.

    • Cross-Link Between Forums

      Read the original · Narration availability requires a section review.

    • Publicity

      Read the original · Narration availability requires a section review.

    • Announcing Releases and Other Major Events

      Read the original · Narration availability requires a section review.

    • Announcing Security Vulnerabilities

      Read the original · Narration availability requires a section review.

    • Receive the Report

      Read the original · Narration availability requires a section review.

    • Develop the Fix Quietly

      Read the original · Narration availability requires a section review.

    • CVE Numbers

      Read the original · Narration availability requires a section review.

    • Common Vulnerability Scoring System (CVSS) Scores

      Read the original · Narration availability requires a section review.

    • Pre-Notification

      Read the original · Narration availability requires a section review.

    • Distribute the Fix Publicly

      Read the original · Narration availability requires a section review.

    • Further Reading on Handling Security Vulnerabilities

      Read the original · Narration availability requires a section review.

    • 7. Packaging, Releasing, and Daily Development

      Read the original · Narration availability requires a section review.

    • Release Numbering

      Read the original · Narration availability requires a section review.

    • Release Number Components

      Read the original · Narration availability requires a section review.

    • Semantic Versioning

      Read the original · Narration availability requires a section review.

    • The Even/Odd Strategy

      Read the original · Narration availability requires a section review.

    • Release Branches

      Read the original · Narration availability requires a section review.

    • Mechanics of Release Branches

      Read the original · Narration availability requires a section review.

    • Stabilizing a Release

      Read the original · Narration availability requires a section review.

    • Dictatorship by Release Owner

      Read the original · Narration availability requires a section review.

    • Voting on Changes

      Read the original · Narration availability requires a section review.

    • Managing Collaborative Release Stabilization

      Read the original · Narration availability requires a section review.

    • Release Manager

      Read the original · Narration availability requires a section review.

    • Packaging

      Read the original · Narration availability requires a section review.

    • Format

      Read the original · Narration availability requires a section review.

    • Name and Layout

      Read the original · Narration availability requires a section review.

    • To Capitalize or Not to Capitalize

      Read the original · Narration availability requires a section review.

    • Pre-Releases

      Read the original · Narration availability requires a section review.

    • Compilation and Installation

      Read the original · Narration availability requires a section review.

    • Binary Packages

      Read the original · Narration availability requires a section review.

    • Testing and Releasing

      Read the original · Narration availability requires a section review.

    • Candidate Releases

      Read the original · Narration availability requires a section review.

    • Announcing Releases

      Read the original · Narration availability requires a section review.

    • Maintaining Multiple Release Lines

      Read the original · Narration availability requires a section review.

    • Security Releases

      Read the original · Narration availability requires a section review.

    • Releases and Daily Development

      Read the original · Narration availability requires a section review.

    • Planning Releases

      Read the original · Narration availability requires a section review.

    • 8. Managing Participants

      Read the original · Narration availability requires a section review.

    • Community and Motivation

      Read the original · Narration availability requires a section review.

    • Delegation

      Read the original · Narration availability requires a section review.

    • Distinguish Clearly Between Inquiry and Assignment

      Read the original · Narration availability requires a section review.

    • Follow Up After You Delegate

      Read the original · Narration availability requires a section review.

    • Notice What People Are Interested In

      Read the original · Narration availability requires a section review.

    • Praise and Criticism

      Read the original · Narration availability requires a section review.

    • Prevent Territoriality

      Read the original · Narration availability requires a section review.

    • The Automation Ratio

      Read the original · Narration availability requires a section review.

    • Automated testing

      Read the original · Narration availability requires a section review.

    • Treat Every User as a Potential Participant

      Read the original · Narration availability requires a section review.

    • Meeting In Person: Conferences, Hackfests, Code-a-Thons, Code Sprints, Retreats

      Read the original · Narration availability requires a section review.

    • Share Management Tasks as Well as Technical Tasks

      Read the original · Narration availability requires a section review.

    • "Manager" Does Not Mean "Owner"

      Read the original · Narration availability requires a section review.

    • Patch Manager (or Pull Request Manager)

      Read the original · Narration availability requires a section review.

    • Translation Manager

      Read the original · Narration availability requires a section review.

    • Documentation Manager

      Read the original · Narration availability requires a section review.

    • Issue Manager

      Read the original · Narration availability requires a section review.

    • Transitions

      Read the original · Narration availability requires a section review.

    • Committers

      Read the original · Narration availability requires a section review.

    • Committers vs Maintainers

      Read the original · Narration availability requires a section review.

    • Choosing Committers

      Read the original · Narration availability requires a section review.

    • Revoking Commit Access

      Read the original · Narration availability requires a section review.

    • Partial Commit Access

      Read the original · Narration availability requires a section review.

    • Dormant Committers

      Read the original · Narration availability requires a section review.

    • Avoid Mystery

      Read the original · Narration availability requires a section review.

    • Credit

      Read the original · Narration availability requires a section review.

    • Forks

      Read the original · Narration availability requires a section review.

    • "Development Forks" versus "Hard Forks"

      Read the original · Narration availability requires a section review.

    • Figuring Out Whether You're the Fork

      Read the original · Narration availability requires a section review.

    • Handling a Fork

      Read the original · Narration availability requires a section review.

    • Initiating a Fork

      Read the original · Narration availability requires a section review.

    • 9. Legal Matters: Licenses, Copyrights, Trademarks and Patents

      Read the original · Narration availability requires a section review.

    • Terminology

      Read the original · Narration availability requires a section review.

    • Aspects of Licenses

      Read the original · Narration availability requires a section review.

    • The GPL and License Compatibility

      Read the original · Narration availability requires a section review.

    • Choosing a License

      Read the original · Narration availability requires a section review.

    • The GNU General Public License

      Read the original · Narration availability requires a section review.

    • The "or any later version" Option: Future-Proofing the GPL

      Read the original · Narration availability requires a section review.

    • The GNU Affero GPL: A Version of the GNU GPL for Server-Side Code

      Read the original · Narration availability requires a section review.

    • The Copyright Holder Is Special, Even In Copyleft Licenses

      Read the original · Narration availability requires a section review.

    • Is the GPL Free or Not Free?

      Read the original · Narration availability requires a section review.

    • Contributor Agreements

      Read the original · Narration availability requires a section review.

    • Doing Nothing

      Read the original · Narration availability requires a section review.

    • Contributor License Agreements

      Read the original · Narration availability requires a section review.

    • Developer Certificate of Origin (DCO): An Easier Style of CLA

      Read the original · Narration availability requires a section review.

    • Proprietary Relicensing

      Read the original · Narration availability requires a section review.

    • Problems with Proprietary Relicensing

      Read the original · Narration availability requires a section review.

    • Trademarks

      Read the original · Narration availability requires a section review.

    • Case study: Mozilla Firefox, the Debian Project, and Iceweasel

      Read the original · Narration availability requires a section review.

    • Case study: The GNOME Logo and the Fish Pedicure Shop

      Read the original · Narration availability requires a section review.

    • Patents

      Read the original · Narration availability requires a section review.

    • Further Resources

      Read the original · Narration availability requires a section review.

    • A. Copyright

      Read the original · Narration availability requires a section review.

    • Read the original · Narration availability requires a section review.

    • Attribution-ShareAlike 4.0 International

      Read the original · Narration availability requires a section review.

    • Using Creative Commons Public Licenses

      Read the original · Narration availability requires a section review.

    • Creative Commons Attribution-ShareAlike 4.0 International Public License

      Read the original · Narration availability requires a section review.

    • Section 1 -- Definitions.

      Read the original · Narration availability requires a section review.

    • Section 2 -- Scope.

      Read the original · Narration availability requires a section review.

    • Section 3 -- License Conditions.

      Read the original · Narration availability requires a section review.

    • Section 4 -- Sui Generis Database Rights.

      Read the original · Narration availability requires a section review.

    • Section 5 -- Disclaimer of Warranties and Limitation of Liability.

      Read the original · Narration availability requires a section review.

    • Section 6 -- Term and Termination.

      Read the original · Narration availability requires a section review.

    • Section 7 -- Other Terms and Conditions.

      Read the original · Narration availability requires a section review.

    • Section 8 -- Interpretation.

      Read the original · Narration availability requires a section review.

Sources and permissions

The author and publisher remain the source of this textbook. Permission information applies to the specific files in this edition.

Author, publisher, and discovery sources

Authors: Karl Fogel
Publisher: Karl Fogel

  • Discovered through Open Textbook Library: Source record · Checked 2026-10-29
  • Discovered through Open Textbook Library: Source record · Checked 2026-10-29
CC BY-SA 4.0 except separately credited components

Producing Open Source Software: How to Run a Successful Free Software Project, Second Edition, Karl Fogel, version 2.3300 (5 February 2023), copyright 2005–2023, CC BY-SA 4.0. This iReadAll adaptation repairs two publisher navigation defects. All original teaching text, the complete license appendix, citations and credits remain unchanged. Adaptation and extracted text are distributed under CC BY-SA 4.0. No earlier derivative with an incorrect source-hash notice is approved.

Read the license

Original publication

Changes: Explicitly labelled iReadAll adaptation: normalized_mimetype; restored_anchor; repaired_anchor. Original teaching prose is retained; no endorsement or automatic audio approval.

Checked 2026-10-29

More actions
Download original EPUB

Producing Open Source Software: How to Run a Successful Free Software Project — Second edition, version 2.3300 (5 February 2023); iReadAll navigation repair v2, 29 October 2026 | iReadAll