A Model for Leadership: Canyons and Declarative Programming
One of many canyons in Tolmezzo, Italia
There are two general type of functional programming that can be implemented: imperative and declarative. A declarative function tells the computer “what to do”. An imperative function tells it "what to do and how to do it”. In non-tech speak, think “make me a peanut-butter banana sandwich” (declarative) vs. “start with a piece of bread, spread a layer of peanut butter on the bread, slice a banana, place banana slices on the peanut butter, cover with another piece of bread” (imperative). The concepts of declarative and imperative, don’t just apply to software or the deliciousness of the PB&B - they can also shed light on leadership.
Leadership as tracing a path for others to follow (Imperative):
I was in the wild Bieszczada Mountains of Poland this past winter. This winter was an exceptionally snowy one in Poland, and the Bieszczadas were no exception. One day three new friends and I set off for a day long hike (ended up being day and night because the sun sets around 3:30PM in December). There was at least a meter of snow on the ground - that is, snow up to our hips.
Step by step, we had to plow our way through. We approached this by having one person lead the way and the others follow in their footsteps. While it was necessary in the situation, the flaws of this strategy quickly revealed themselves: *some could trace the steps just fine, but others would collapse in the snow. Some could reach the next foothole, but others (with shorter legs, for example) essentially had to plow their own path.
This approach seemed necessary in this particular situation, but it was far from ideal. It was not sustainable in the long run - both for the person up front, and the people following his steps. One exact path isn’t going to work for all people.
Leadership as limitations and goals (Declarative)
So, if tracing a path is not ideal leadership, then what could be better? Providing the tools for each ‘follower’ to create his/her own path, not the template. The leader, in this case sets the general direction, he provides helpful information on how to use the tool, and on how to troubleshoot, but it is still up to the followers to place their feet themselves.
I experienced this type of leadership on another recent adventure - canyoning in the Italian Alps this past June. Canyoning is a beautiful combination of the things I most love in nature - mountains, hiking, water, adventure. A natural playground in every sense of the word. But a dangerous one at the same time. Each trek is comprised of four basic maneuvers: traverse, rapel, jump, and toboggan (think natural water slide). You walk through the water-filled canyon (traverse) and when the conditions call for it, you need to make use of one of the other three options - rapel, jump, or toboggan. On our trip we had three experienced canyoners. Two would generally stay towards the front and lead the group, while the third served as anchor and verified that everything looked okay from the back of the pack.
As we made our way through each canyon, our leaders provided general guidelines - “go to the left of this rock, not the right,” “don’t jump from higher than that ledge,” etc. and support (from front and back).
In essence, they provided the limitations and set the goals that we could then, respectively, freely act under, and strive towards. All the limitations were ‘optional’ in a sense, but they came highly recommended. While I theoretically could have jumped from a higher ledge, could have gone right instead of left, and could have ignored all the other limitations proposed by the leaders in the canyon, ignoring this advice would serve no good purpose. I would most likely hurt myself and endanger others. The limitations are there for a reason. As humans, we operate within boundaries, so not all limitations are a bad thing, it is just about setting the optimal size of said limitations.
In the Bieszczadas, our “limitations” were 5x10 inch holes created by the leader’s foot. In the Italian canyons, the limitations, were at least an order of magnitude greater (well at least depending on the width of the canyon, cause in some parts it got pretty tight ;))
From the follower’s perspective
To be fair, it was perhaps a lot easier (at least in theory) to follow the leader in the Bieszczada mountains, but it was a lot more rewarding to follow in the canyons. There was no way we could place our feet in exactly the same way as those leading the group (especially given the fact that they had specific canyoning shoes and were hopping from rock to rock like Alpine mountain goats).
Take the jumps for example - the fourth (and my personal favorite) element of canyoning. When you’re standing at a 10+ meter ledge (think 32+ feet), and the leader jumps, he is not going to pull you down with him. He can encourage you, he can tell you it’s safe, that there’s nothing to be afraid of, but in the end, it may still seem unnatural to you. You have to make your own decision. You have to face yourself. You have to face the fact that your previous decisions, your decision to follow this person has led you to this situation. Are you okay with that? Is this a place you want to be? If so, then jump! If not, then reconsider who or what it is exactly, that you are following. Either way, this is the time when you decide.
The Active Follower
In an ideal leadership model, the follower is really leading as well. Similar to the external leader, this ‘internal leader’ is also setting limitations - just on himself, not others. He is narrowing the options of possible action, until eventually, one remains.
Should I go left or right? Should I jump from the limit pointed out by the leader or lower? His internal leadership mirrors that of the external. Same limitations will likely be proposed, just on a finer scale.
I jumped every time.
Does that make me a blind follower or does that make me a good follower? Or does that just mean that I’m an adrenaline junky? I like to think it’s the middle option. I jumped because I knew what I was following. I understood the target and my own abilities, trusted the leader, and acted within the limitations he proposed. While I generally reached the same conclusions as the leader (jump from the highest point YAHOOO), I was an active follower, not a passive one.
A follower not just being led, but leading. A software program, not just executing what it is told, but approaching the problem in the best way it sees fit. Following, therefore, is not about blind submission. It is, funny enough, about leadership. It is about learning to lead yourself.