GitHub has become the single most trusted code repository on the Internet. People build software, they upload it to GitHub. Other people can inspect it, comment on it and, perhaps most important of all, can contribute to it. The contribution model that GitHub employs is meritocracy-based: anyone can suggest code changes, anyone can see what has been suggested, and the entire discussion around the work itself happens in the open. The same is true for reported issues, or bugs found in programs. The entire history of building and refining software projects is visible to everyone.
GitHub is based on git, which is the piece of software responsible for creating and maintaining the history of a project. Every edit, every new piece of code added to a project is dutifully tracked by git and then displayed by GitHub. Using git, any person can fork a software project, which means they can create their own, independent copy of it. A new fork copies the entire history of the parent project and can evolve in any conceivable direction, diverging away from the parent freely. If the maintainers of one project can’t maintain it any longer, anyone from the community can step up, fork it and carry the mission onwards.
GitHub has figured out that people need to share more than just complete software projects.
Gist is GitHub’s answer to quick and easy text sharing. A Gist is a simple text file that can be shared with anyone, or kept secret. The entire history of edits executed on a Gist is also visible.
GitHub pages is GitHub’s answer to quick and easy website creation. Anyone can create their own static website, and GitHub will host it, as well as hosting the code that powers it.
Finally, GitHub Wiki is GitHub’s answer to the need for sharing knowledge in a structured way. For anyone who has used Wikipedia, a GitHub Wiki page will be immediately familiar, as all the basic mechanisms are there. The familiar format is important, considering the virtual habits we’ve already developed.
GitHub is an ecosystem for sharing, displaying and contributing to software projects, online. It is distributed and blind to anything but the code itself. Every voice can join the discussion that shapes the applications of tomorrow. The tech for social good effort can find a cozy home on GitHub, a place to display the open data, and a platform to gather all contributors in one place.