Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
Aim Small, Miss Small: Writing Correct Programs
- Slides from May 2018
We have tons of tools and practices to help us write correct programs, including:
- red squiggly underlines
- type systems
- automated tests
- generative testing
- agile methods
- test-driven development
- humane error messages
- step debuggers
Net result so far: We invest a lot of time and money, and our programs are still full of bugs.
I don't have a silver bullet to offer, nor do I plan to denigrate any of the ideas listed above. But I will say this: I regularly watch programmers aim too large and miss by miles.
To aim small is to:
- plan ahead and catch misconceptions early before they ramify
- make small things, at every level
and then plan to miss anyway:
- expect failures and make them more evident
- divide and conquer when things go wrong
This talk will show you how.