blog: Make it easy to try again
This commit is contained in:
parent
60efe133eb
commit
d65c101dc8
1 changed files with 41 additions and 0 deletions
41
src/content/blog/2024-03-23-try-again.md
Normal file
41
src/content/blog/2024-03-23-try-again.md
Normal file
|
|
@ -0,0 +1,41 @@
|
||||||
|
---
|
||||||
|
title: Make it easy to just try again
|
||||||
|
date: 2024-03-23T07:39:22.173Z
|
||||||
|
slug: 2024-03-23-try-again
|
||||||
|
author: Thomas Wilson
|
||||||
|
|
||||||
|
---
|
||||||
|
Something I know about myself is that I learn best when I make lots of quick
|
||||||
|
attempts at something. This works better for me than spending longer on each
|
||||||
|
individual step. Like when I learned to make clothes: I had an _awful_ lot of
|
||||||
|
unwearable garments.
|
||||||
|
|
||||||
|
I think it's fun that other people (including my partner) learn best by paying
|
||||||
|
monumental attention each (sub-)step of their first attempt, wanting to get it
|
||||||
|
perfect.
|
||||||
|
|
||||||
|
You learn how you learn, in more ways than one.
|
||||||
|
|
||||||
|
Something that John Ousterhout recommends in [their books on software
|
||||||
|
design](https://www.amazon.co.uk/Philosophy-Software-Design-John-Ousterhout/dp/1732102201)
|
||||||
|
is designing something twice, because you probably won't get it right the first
|
||||||
|
time, even if think you _definitely should get it right the first time_.
|
||||||
|
|
||||||
|
This past week I've made lots of little tweaks to software. A few "oh, when
|
||||||
|
you do X, could we make sure Y happens" or "oh, wouldn't it be nice if B was
|
||||||
|
automatically calculated when you put in A?".
|
||||||
|
|
||||||
|
I have found myself, more than ever, relying on the ability to completely undo
|
||||||
|
all changes to file(s), and take another run at it.
|
||||||
|
|
||||||
|
Sometimes it's because the footprint of a "simple" change spirals, other times
|
||||||
|
it just "feels" wrong, other times it just breaks.
|
||||||
|
|
||||||
|
If I was a clever man, maybe I'd be able to foresee which approaches are likely
|
||||||
|
to be chaotic and messy. But, too often, something doesn't work the way you'd
|
||||||
|
expect, or some of your own code isn't quite flexible enough yet (and now isn't
|
||||||
|
the time to make it flex).
|
||||||
|
|
||||||
|
Making it easy to hit the eject button, and feeling happy doing it, feels like
|
||||||
|
a close second - and something that I think lets me ship higher quality
|
||||||
|
software quicker.
|
||||||
Loading…
Reference in a new issue