Additional Materials

Here we give you links to other materials that you may want to read. These will teach you a lot about how to work on large distributed teams of free software developers, and about good programming style in general.

  • Producing Open Source Software, by Karl Fogel. This is a truly excellent book of good practices that free software projects should follow. This is about social aspects of the project: how to treat contributors, how to organize and moderate communication, how to deal with non-profit foundations. If you ask yourself at any time, "how should I deal with $human_situation in the project?", this book may provide the answer.

  • GNU Coding Standards. This is an old document, but it still has lots of excellent advice. It talks about C coding style, issues when dealing with plug-in systems, common option names for command-line programs, conventions for Makefiles, and some very GNU-ish details like using Texinfo for documentation.

  • Linux Kernel Coding Style. Explains the rationale for "big indentation", brace placement, concise but unambiguous naming, and centralized exit of functions.