The release process is complex and beyond one person. Releasing is an intricate dance that we haven’t been sufficiently capturing. Knowledge siloed in heads needs to be committed to public, institutional memory. The upcoming 4.5 release is an opportunity to capture every step of the dance so that we can iterate process, automate away lingering drudgery, and improve our cognitive net for the stressful task of releasing to 25%. I like using checklists in this cognitive net. They relieve anxiety, make process transparent, and help teams flow during stress. We already have a couple release checklists. We can build on those while adopting a little checklist culture in a manner empathetic to developers and flow. Pitch:
Checklist cool tricks
- distribute power.
- push power of decision making to the periphery.
- provide a cognitive net.
- make the minimum necessary steps explicit.
- make sure simple steps are not missed.
- make sure people talk.
- capture and shape real flow.
- inspire flow in emergencies and sustain it through the quotidian.
- capture flow between teams.
- encourage a shared culture around flow.
- accessibly capture institutional memory in the context of flow.
Attributes of a good checklist
What makes a good checklist? Checklist shouldn’t be about just checking boxes. Instead of being a chore and an admonishing finger, checklists should fit and assist real flow. The Checklist Manifesto offers these suggestions. Ideally, checklists…
- are not lengthy.
- have clear, concise objectives.
- define a clear pause point at which the checklist is supposed to be used.
- have fewer than ten items per pause point.
- fit the flow of the work.
- continually update as living documents.
See this checklist for checklists and this example checklist for more.
Stuff to checklist
The major release checklist attempts to use pause points and follow the suggestions above. The major and minor release checklists are pretty rough and incomplete and overlap with each other. These and the things to keep in mind list need love and unification with help from developers who are in the release flow and handling controls on the release train.
about.php is…quite the process. It needs the oxygenating powers of a checklist.
Checklist Feature plugin merges.
Checklist bundled theme releases so stuff like this makes it into institutional memory.
Beta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. and RC One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). releases.
Plenty of other stuff. 🙂
Start by capturing. As we walk 4.5 release flows, capture.
Selected quotes from The Checklist Manifesto
Checklists supply a set of checks to ensure the stupid but critical stuff is not overlooked, and they supply another set of checks to ensure people talk and coordinate and accept responsibility while nonetheless being left the power to manage the nuances and unpredictabilities the best they know how.