Introduction
Open-source software programs have enjoyed major success for decades. Although there are different flavors of open-source licenses, they all share similar principles of transparency and inclusiveness that have produced some of the most powerful projects ever.
Suppose you're a leader at a company that has developed some substantial software projects. These projects have been proprietary since inception, but now you're investigating the possibility of open-sourcing one or more of them. You then try to determine which candidates would be best to publish. Now, you begin to realize that running a successful program is more than just uploading source code to a public repository. It requires careful collaboration with stakeholders from across the company. It also introduces a new mindset for exposing intellectual property in a way that might be entirely new for the company. Lastly, it involves lots of work to set up and maintain; but for some projects, you know it's worth it.
In this module, you'll learn how to create a successful open-source program by establishing contributor guidance, following proven processes, and by using community standards.
Learning objectives
In this module, you'll:
- Assess your organization's existing open-source efforts.
- Establish the goals of an open-source program.
- Create a repository for your open-source program, complete with contributing and communication guidelines, codes of conduct, templates, and maintainer guides.
- Abide by existing open-source licenses.
- Choose a license for releasing an open-source project.
Prerequisites
- A GitHub account
- Ability to navigate and edit files in GitHub
- Familiarity with pull requests
This module builds on the concepts described in Manage an InnerSource program by using GitHub. It assumes you've already completed that module first.