Just as important as the work we are committing to…
The legend goes that Warren Buffett was asked for advice on completing professional and personal goals by his pilot. The advice for achieving his goals was three simple steps, they and the story can be summarised as:
- Write a list of your top 25 goals (or as many as you can).
- Study the list with great care, select a top 5, and write them on a new “goals” list.
- Copy the remaining 20 goals onto another, these will be your “avoid at all costs list”.
You have likely heard this tale before, widely attributed to Warren Buffett. Who the conversation happened between, and how it happened is largely irrelevant (at least for us). The lesson though is valuable to all, and in the world of technology projects, it hits at all levels.
Why Avoid?
The other 20 items (or anything that isn’t your primary goal) will serve to distract you from what is actually most important. It will be important or interesting enough to grab your attention and imagination, but it will not be up there long enough for you to fully follow through. Instead, it’s just dead weight, getting in the way and slowing you down.
It’s the thing you will be playing with for 10 minutes, which then turns into a whole afternoon, when you could have been doing what you originally planned to do. It’s a self-inflicted nerd sniping:
Committing to “not doing” work
This will make leadership, management and pretty much everyone uncomfortable at the first suggestion. The idea that we are taking time to say “Nope, not doing that!” to anything (even if it’s important) is unnatural. Many of us are in some way people pleasers or at least keen to get things done and help people.
Just as important as it is for us to commit to those above us (or coordinate us if they are “servant leaders”) what we will do, we need a contract with them (and ourselves) on what we will not do. That isn’t to say we will never do it, we just won’t think about doing it now.
At every level
We are probably familiar with this idea in some way shape or form, but it has an impact at all levels of technology teams and delivery.
- During the Sprint/Scrum: We see this most often in WIP (Work In Progress) Limits. having a set total number of tasks allowed to be “in progress”, and if developers are freed up but the WIP limit is already met, rather than taking on new work, they support others in existing work.
- Planning for the Sprint/Iteration/Program Increment: We put our features on a board and decide which order they are being done in. We all know that only so many things can get done at a time across a team (you can WSJF to your heart’s content, but you can only fit so many Js with that much W into F place).
- Strategy and Planning: At the top, the ideas people know they want the full menu, every side garnish and accompanying beverage… They just need reminding there are only so many diners and so much space on the table. If the meal is to be valued, we have to pick what we want now and agree to come back for the rest on another day.
As uncomfortable as the initial suggestion might be, most people come around to it very quickly, realising that focusing on fewer things gets them done faster and enables us to get onto the next thing quicker.
Now, Next & Later
The three magic words that make it OK to tell anyone we aren’t going to do it, are the reminder of what we are doing now, then committing to what is “next” or just broadly under “later” until the priorities (let’s face it, there’s always too much to do) bring it through “next” and then the new “now”.
Priorities are always agile
It should go without saying, that some things happen and need immediate action, or inspire a change in direction. In these situations, it’s fine to say “yes” to something not on the original list. Remember for every new “yes” the requestor gets, they need to pick something to become a “no”.