This weekend I went hiking with a few of my friends. Our original destination turned out to be off limits due to a forest fire, so we decided to try a trail we had noticed earlier along the way. The signage to this trail, however, turned out to be mostly missing, and so we ended up wandering around logging trails for a while.
After coming to yet another dead end, we decided to see if we could get to a particular outcropping. It didn't look that far away, but there wasn't a trail to it either. No matter; we are all seasoned cross-country hikers (ha!) and so we started on our way.
Note to self: glacier-carved hills and mountains are much steeper than they appear!
The incline we had set ourselves was rather steep, and our path crossed various bits of mostly unnavigable landscape. We traversed several rockfalls, where we discovered that even though many of the rocks sported coats of moss the rocks weren't all that stable. We also climbed sections of ground where the groundcover didn't provide much in the way of handholds. All of us stumbled a time or two, but none of us slid more than a few feet before catching ourselves.
At first I crossed the way my friends did - more-or-less upright and simply striding around, but they seemed to be much more stable than I was and to slide much less. Eventually I discovered that by lowering myself to the ground in a spread eagle position I was much more stable and could go much faster.
This has distinct parallels to software development and testing:
- Things are often more difficult than they appear.
- Small things can be the cause of big problems. Each of my slightly terrifying slides were a result of stumbling over a tree root I didn't see, or a rock not being as solid as it appeared.
- Small things aren't visible from far away, only when you get up close. When we started out we saw a wooded mountainside with grassy bits. It wasn't until we got close up that we could see the tree roots and loose rocks and not-a-good-handhold ground cover.
- Even though you know the small things are there, they are easy to ignore. Until they trip you up. <g/>
- What works for someone else isn't necessarily what will work for you. The best way for me to climb (and de-climb, to invent a word) this mountain was very different than for my friends. Each of us took a different route up to the peak and back down.
- Giving yourself more points of contact with the problem makes it easier to solve. Once I took up the low and wide spread eagled stance, I was extremely stable on the slopes, even though the ground didn't provide much purchase and the individual rocks in the rockfalls were rather unstable.
- Going slowly ultimately lets you go faster. Every time I tried to speed across a chunk of ground I stumbled or slid or fell. When I went slowly and carefully picked my handholds and cross points, I didn't.
- Achieving your goal likely will require changing your tactics and approach. The path we planned out at the beginning was not the path we ended up taking. We had to reevaluate and change our plan every step of the way.
- Be sure your destination is worth it. Ours definitely was! We wouldn't have seen Stuart Peak (the large mountain in the picture above) otherwise.