How to Run a Successful Free Software Project

How to Run a Successful Free Software Project

Producing Open Source Software How to Run a Successful Free Software Project Karl Fogel Producing Open Source Software: How to Run a Successful Free Software Project by Karl Fogel Copyright © 2005-2021 Karl Fogel, under the CreativeCommons Attribution-ShareAlike (4.0) license. Version: 2.3214 Home site: https://producingoss.com/ Dedication This book is dedicated to two dear friends without whom it would not have been possible: Karen Underhill and Jim Blandy. i Table of Contents Preface ........................................................................................................................................................... vi Why Write This Book? ............................................................................................................................. vi Who Should Read This Book? ................................................................................................................... vi Sources .................................................................................................................................................. vii Acknowledgements ................................................................................................................................. viii For the first edition (2005) .............................................................................................................. viii For the second edition (2021) ............................................................................................................ ix Disclaimer .............................................................................................................................................. xi 1. Introduction .................................................................................................................................................. 1 History .................................................................................................................................................... 3 The Rise of Proprietary Software and Free Software ............................................................................... 3 "Free" Versus "Open Source" ............................................................................................................. 6 The Situation Today .................................................................................................................................. 8 2. Getting Started .............................................................................................................................................. 9 Starting From What You Have .................................................................................................................. 10 Choose a Good Name ...................................................................................................................... 11 Have a Clear Mission Statement ........................................................................................................ 12 State That the Project is Free ............................................................................................................ 12 Features and Requirements List ......................................................................................................... 13 Development Status ......................................................................................................................... 13 Downloads ..................................................................................................................................... 14 Version Control and Bug Tracker Access ............................................................................................ 15 Communications Channels ................................................................................................................ 15 Developer Guidelines ....................................................................................................................... 16 Documentation ................................................................................................................................ 16 Demos, Screenshots, Videos, and Example Output ................................................................................ 18 Hosting .......................................................................................................................................... 19 Choosing a License and Applying It ........................................................................................................... 19 The "Do Anything" Licenses ............................................................................................................. 20 The GPL ........................................................................................................................................ 20 How to Apply a License to Your Software .......................................................................................... 20 Setting the Tone ..................................................................................................................................... 21 Avoid Private Discussions ................................................................................................................ 22 Nip Rudeness in the Bud .................................................................................................................. 23 Practice Conspicuous Code Review .................................................................................................... 24 Be Open From Day One .................................................................................................................. 25 Opening a Formerly Closed Project ............................................................................................................ 27 Announcing ............................................................................................................................................ 28 3. Technical Infrastructure ................................................................................................................................ 30 What a Project Needs .............................................................................................................................. 31 Web Site ................................................................................................................................................ 31 Canned Hosting .............................................................................................................................. 32 Message Forums / Mailing Lists ................................................................................................................ 35 Choosing the Right Forum Management Software ................................................................................ 36 Version Control ...................................................................................................................................... 43 Version Control Vocabulary .............................................................................................................. 43 Choosing a Version Control System ................................................................................................... 46 Using the Version Control System ..................................................................................................... 46 Receiving and Reviewing Contributions .............................................................................................. 49 Bug Tracker ........................................................................................................................................... 51 Interaction with Email ...................................................................................................................... 53 Pre-Filtering the Bug Tracker ............................................................................................................ 53 IRC / Real-Time Chat Systems .................................................................................................................. 54 IRC Bots ....................................................................................................................................... 55 Archiving IRC ................................................................................................................................ 56 ii Producing Open Source Software Wikis .................................................................................................................................................... 56 Wikis and Spam ............................................................................................................................. 57 Choosing a Wiki ............................................................................................................................. 57 Q&A Forums ......................................................................................................................................... 57 Translation Infrastructure .......................................................................................................................... 58 Social Networking Services ...................................................................................................................... 58 4. Social and Political Infrastructure ..................................................................................................................

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    189 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us