Home > Articles > Operating Systems, Server > Linux/UNIX/Open Source

  • Print
  • + Share This
From the author of

What and How Will You Communicate About Your Code?

People will want to know whether yours is an open source and collaborative project, or a project that has released its code with an open source license. Motivations must clear to prevent public relations problems. No one wants to feel like they are wasting their time trying to contribute to a project that doesn’t want outside contributions. At the same time, there may be developers ready to scratch a personal itch, coding a feature or two to help a project they use and want to improve.

You must communicate clearly whether decisions on the project are to be made by a specific individual or company, or whether anyone contributing will have a voice in the project’s focus, goals, and direction. Who decides whether a feature should be included? Any answer is appropriate, but it needs to be clearly stated up front.

If you allow outside contributions, you should create a set of developer guidelines that includes code reviews, merging of these contributions into the whole, and what, if any, requirements will exist before outside coders will be allowed to contribute code. Will you ever allow anyone outside of the company or other than a certain individual or group to have commit access, or must others submit patches?

There needs to be a clear way for community members to communicate with internal developers. Publicly accessible bug reporting and tracking will be vital. This is where we also need to consider a community/developer mailing list that is available to the public.

Make a web page or site to tell anyone interested who you are, what your code does and contains, how to download and use the code, how to submit bugs and ask questions, and so on. You will likely want to include a list of frequently asked questions somewhere on this site once things get going. This is where you will post a list of current features and future plans. A list of system requirements for installation and use as well the release number and status of the project (pre-alpha, alpha, beta, release candidate, etc.) will complete your list with one important exception: where to download the code.

  • + Share This
  • 🔖 Save To Your Account