Company
Date Published
Author
Mike McQuaid
Word count
1277
Language
English
Hacker News points
None

Summary

GitHub Enterprise has enhanced its release process by adopting what it calls "Runnable Documentation," which consists of step-by-step instructions that can be executed by anyone without specialized knowledge. This approach aims to distribute and automate knowledge, reducing the risks associated with having a single point of failure within an organization. Initially, the knowledge was concentrated in one individual but was documented into a repository, similar to an "initial commit" of legacy code. Through trial runs, GitHub refined this documentation by identifying unnecessary steps and clarifying others, while resisting the temptation to automate prematurely. Eventually, the process was optimized to reduce redundancy and combine steps where possible, though automation was only partially feasible due to the complexity of the release process. GitHub employs ChatOps to facilitate semi-automation, allowing commands to be executed in a chat application, thereby enhancing accessibility and efficiency. This methodology has improved the speed and quality of releases, enabling more team members to participate effectively in the release process.