Reference · 44 terms
Glossary
Every short form used across the series. Inside a lesson, hover or tap any dotted term to see the same entry in place.
Thinking
- assumptionAssumption
- Something you believe is true but have not checked. Good thinkers say their assumptions out loud.Lesson 0 →
- proof of conceptProof of concept (PoC)
- A small version that shows an idea can work. It is not production code.Lesson 0 →
- reversible decisionReversible and hard-to-reverse decisions
- A reversible decision is cheap to undo. A hard-to-reverse one (database, public API, core language) deserves more thinking.Lesson 0 →
- spikeSpike
- A short, time-limited experiment to learn something. You can throw the code away afterwards.Lesson 0 →
- trade-offTrade-off
- You get one good thing by giving up another. Faster to build, but harder to change later.Lesson 0 →
Packages
- bus factorBus factor
- How many people can leave before the project is in trouble. A bus factor of one is a risk.Lesson 1 →
- decision recordDecision record (ADR)
- A short note with title, status, context, decision and consequences. It saves the 'why' for people who join later.Lesson 1 →
- dependencyDependency
- Code written by someone else that your project needs, like an npm package. A transitive dependency is one your dependency brings.Lesson 1 →
- maintenanceMaintenance
- The work to keep something working after release: updates, fixes and security patches.Lesson 1 →
- transitive dependencyTransitive dependency
- A package that one of your dependencies needs. You did not add it, but you carry its risk.Lesson 1 →
Languages and decisions
- innovation tokenInnovation tokens
- A small budget of new, unproven technologies a team can afford. Spend one only where it gives a real advantage.Lesson 2 →
Delivery
- nitNit (review comment)
- A small, optional review remark. Marking it 'Nit:' tells the author they do not have to fix it in this change.Lesson 3 →
- refactoringRefactoring
- Changing the inside of code to make it easier to understand without changing what it does.Lesson 6 →
- SLOSLO (service level objective)
- A target for how well a service should work, such as '99.9% of requests succeed'. An SLI is the measure it uses.Lesson 6 →
- technical debtTechnical debt
- A shortcut that saves time now and costs time later, like a loan with interest.Lesson 3 →
People and incidents
- DORADORA metrics
- Four delivery measures: deployment frequency, lead time for changes, change failure rate and time to recover.Lesson 4 →
- postmortemPostmortem
- A written review after an incident. Blameless means it looks for causes in the system and process, not a person to punish.Lesson 4 →
Writing and decisions
- design docDesign doc / RFC
- A short written plan shared before you build: problem, goals and non-goals, proposal, alternatives, risks and rollout.Lesson 5 →
- non-goalsNon-goals
- Things the plan will not do, written down so the discussion stays focused.Lesson 5 →
Laws and biases
- bikesheddingBikeshedding (Law of Triviality)
- Groups spend too much time on small easy topics and too little on big hard ones.Lesson 7 →
- Brooks's LawBrooks's Law
- Adding people to a late project tends to make it later.Lesson 7 →
- Chesterton's FenceChesterton's Fence
- Do not remove or change something until you understand why it exists.Lesson 7 →
- Conway's LawConway's Law
- A system's structure tends to mirror the communication structure of the organisation that builds it.Lesson 7 →
- Gall's LawGall's Law
- Complex working systems grow from simpler working systems; a complex system designed from scratch tends not to work.Lesson 7 →
- Goodhart's LawGoodhart's Law
- When a measure becomes a target, it stops being a good measure.Lesson 7 →
- Hyrum's LawHyrum's Law
- With enough users, every observable behaviour of an API will be depended on by someone.Lesson 7 →
People
- 1:11:1
- A regular private meeting between a lead and one person. It is the person's time, not a status meeting.Lesson 8 →
- disagree and commitDisagree and commit
- Say your view clearly before a decision; once it is made, support it fully even if you would have chosen differently.Lesson 8 →
- nemawashiNemawashi
- Quietly building support for a change with the people affected before you propose it formally.Lesson 10 →
- onboardingOnboarding
- The first weeks of a new person: setup, learning the system, meeting people and doing a first real task.Lesson 9 →
- stakeholderStakeholder
- A person or group who cares about the result or is affected by it: product, design, support, management, users.Lesson 10 →
Strategy and growth
- career ladderCareer ladder
- A company's description of levels and what is expected at each.Lesson 13 →
- roadmapRoadmap
- A plan of bets over time. Dates are best shown as ranges.Lesson 12 →
- sponsorshipSponsorship
- Using your influence to open doors for someone. It differs from mentorship, which gives advice.Lesson 13 →
- technical strategyTechnical strategy
- A short written diagnosis of the problem and the chosen approach and actions, not a wish list.Lesson 12 →
Security
- SECURITY.mdSECURITY.md
- A file in a repository that says how to report a security problem.Lesson 14 →
- threat modelThreat model
- A short exercise to list what could go wrong and what you will do about it.Lesson 14 →
Teams
- blamelessBlameless review
- A review that asks how the system and process allowed an event, assuming people did their best with what they knew.Lesson 17 →
- inverse Conway manoeuvreInverse Conway manoeuvre
- Design the teams to match the software you want, instead of letting team shape decide the architecture.Lesson 16 →
- psychological safetyPsychological safety
- People believe they can ask, admit mistakes or disagree without being punished or mocked.Lesson 17 →
- retrospectiveRetrospective
- A regular meeting where a team looks at how things went and chooses one to three changes.Lesson 17 →
- runbookRunbook
- A short document with the steps to handle a known problem or alert.Lesson 16 →
- service catalogueService catalogue
- A list of services with their owner, purpose, docs, dashboard and on-call contact.Lesson 16 →
- toilToil
- Repetitive manual work that grows with the service and could be automated.Lesson 16 →