Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Congratulations on taking the first steps to becoming an open source enterprise! This course will be your companion as you explore and develop the resources necessary to ramp up your teams and transform your organization's culture. Through a series of issues and pull requests, you'll create an open source kit: a repository that will house all resources for an open source program.
Throughout the course, you'll be prompted to have offline conversations with departments, teams, and individuals across your organization. To get the most out of this course, consider pausing as the bot prompts you to have these conversations and returning when you're ready. At the end of this course you'll have a fully functional repository with a trove of templates and guides you can use to kickstart your program.
Complete the self assessment
As we begin our journey into preparing for open source, let's start with a few self assessments of where your open source program stands today.
Establish program goals
After completing the self assessment, the next step is to establish a clear set of goals for your open source program. Use the following matrix to guide the discussion:
Levels within each dimension
Ad-hoc - a new or undocumented process is uncontrolled, reactive and unpredictable, typically driven by individuals without coordination or communication. Success depends on individual heroics.
Managed - a process is partially documented, possibly leading to consistent results. Success depends on discipline.
Defined - a process is documented, standardized, and integrated into other processes. Success depends on automation.
Measured - the process is quantitatively managed. Success depends on measuring metrics against business goals.
Optimized - the process is continually and reliably improving through both incremental and innovative changes. Success depends on reducing the risk of change.
Step 1: Establish preliminary goals
The goals you set here are preliminary, you'll have an opportunity to formalize them later.