When we talk about devops we often focus on tools, processes and the 'how' of engineering practice. What's missing is the 'why'. Why do we use a particular tool? Why do we share techniques across fields of specialty? Why do we do what we do as engineers? I suggest that the engine driving devops practice is human potential, and discuss 'people-first' approaches that improve the quality of our work and teams.
11. “The ability to understand and share the
feelings of another”
12. Empathy is a central motivator for the best
engineers and the best engineering
practice
13. Patterns towards empathy in practice:
Give autonomy to implementers
Use the Socratic method
When there’s debate, let the passionate lead
Say “I trust you”
14. Patterns towards empathy in implementation:
Empathize with your future self
At the CLI, self-documentation
In code, ‘repo-first’ architecture
Give your system ‘tree’ a discoverable ‘trunk’
starting point
26. Patterns for naming:
Name things what they are
Be mnemonic
AA (avoid acronyms)
Descriptive/long flags, class names, variables, etc.
(Remember, empathy!)
34. Patterns towards simplicity:
Embrace simple tools
Mimic natural systems
Invest now in simplicity, get flexibility later
Watch Rich Hickey’s “Simple Made Easy” talk
36. Patterns for handling complexity:
Accept the Bazaar as you learn
Iterate towards task-specific Cathedrals
Your future Bazaar project can be
populated by Cathedrals
43. Patterns towards humility:
Make systems user-interruptible
Study how we use knobs & levers and then
automate
Let machines do repetitive tasks
Let people make choices
44. Patterns towards humble leadership:
If you’re leading, be extraordinarily humble
Embrace compromise
Embrace experimentation