The book talks about how checklists reduce major errors in surgery. Hospitals that use checklists are drastically less likely to amputate the wrong leg.
So, the takeaway for me is this: any checklist should start off verifying that what you “know” to be true is true. (Thankfully, my errors can be backed out with very little long term consequences, but I shouldn’t use this as an excuse to forego checklists.)
Before starting, ask the “Is it plugged in?” question first. What happened today was an example of when asking “Is it plugged in?” would have helped.
Today I was testing the thumbnailing of some MediaWiki code and trying to understand the
$wgLocalFileRepo variable. I copied part of an
/images/ directory over from another wiki to my test wiki. I verified that it thumbnailed correctly.
So far so good.
Then I changed the directory parameter and tested. No thumbnail. Later, I realized this is to be expected because I didn’t copy over the original images. So that is one issue.
I erased (what I thought was) the thumbnail image and tried again on the main repo. It worked again–I got a thumbnail.
I tried copying over the images directory to the new directory, but it the new thumbnailing directory structure didn’t produce a thumbnail.
I tried over and over with the same thumbnail and was confused because it kept telling me the same thing.
I added debugging statements and still got no where.
Finally, I just did an
ls on the directory to verify it was there. It was. And it had files in it.
But not the file I was trying to produce a thumbnail of.
The system that “worked” had the thumbnail, but not the original file.
So, moral of the story: Make sure that your understanding of the current state is correct. If you’re a developer trying to fix a problem, make sure that you are actually able to understand the problem first.
Maybe your perception of reality is wrong. Mine was. I was sure that the thumbnails were being generated each time until I discovered that I hadn’t deleted the thumbnails, I had deleted the original.
– 1.5 liter bottle of water
– Canned bread
– Pack of disposable toilet bags
– Foil sheet (to keep body dry/warm))