Writing
Essays, talks, and notes about engineering leadership, product development, and the craft of writing software.
September 16, 2022
SoCraTes Day 2022
Highlights from my first SoCraTes unconference and the session I hosted on evolving legacy systems.
June 5, 2016
On handling security issues
Security work is less about secret knowledge and more about building habits that keep awareness high.
September 15, 2014
Web components for the skeptic
Slides from an internal session on why web components matter and how to introduce them safely.
August 28, 2014
Purpose in UX
Let the interface know why it is being used so it can respond with the right affordances.
April 24, 2014
Clarity
Choose clarity as the north star and the rest of your coding decisions get easier.
March 24, 2014
Better or worse
When in doubt, compare the code before and after the change and let that verdict guide you.
December 6, 2013
In favour of behaviours
Reframing how we teach OOP by focusing on behaviours and collaboration over taxonomies.
November 5, 2013
Web development for humans
Write code for the people who will read it next, not just for the machine.
October 14, 2013
Frontend performance for the craftsmen
My first conference talk—why performance work is ultimately about caring for people.