This is the last part of the two-part blog series about my goal to publish and maintain three open-source projects. Last week I wrote about the personal struggles I have with managing flow state. You can read the post here.
This week I’m going to cover my strategy for working towards my goal.
Pretty much all the credit of this post goes to Cal Newport and his book Deep Work. I’m literally taking a chapter from his book and applying it into my current situation.
The basic idea of Deep Work is that there are two types of work in the world, shallow work and deep work, and that these two different types of work require different work practices from us.
A good example of shallow work is reading your email. You don’t really need to get into the zone to go through your inbox. You can do it while sitting in the train or attending a mandatory meeting.
Writing and coding are examples of deep work. These activities require more focus. You can’t really multi-task and write. If you get interrupted while coding, it’s hard to collect your thoughts even after the interruption is over.
I love Newport’s Deep Work. It’s a book that led me to reflect on the real and meaningful emotional aspects of solo work. It helped me understand why I sometimes struggle to get in to the flow state. It taught me to keep pushing forward when I’m feeling sluggish.
Since the book has been so influential to me, I have tried to push it to my friends more than any other book. However, the response I have received from those who actually read it hasn’t been so great. So I’m not trying to convince you to read Deep Work. Maybe the message of the book won’t resonate with you or it’s stuff that’s self-evident to you.
I’m also not going to go over the whole book here. I’m not even focusing on the most important message of the book. I’m going to discuss a chapter about applying The 4 Disciplines of Execution (4DX) to your personal work.
4DX is a management framework made for businesses. It’s based on the idea that executing a strategy is a lot more difficult than creating one. If you want to learn more about 4DX, there is the book (which I haven’t read) and bunch of other materials you can find by Googling.
What follows is me going through each discipline of 4DX and applying it to my current situation.
1. Focus on the wildly important
You start by defining the wildly important goals. A wildly important goal is a goal that can make a difference. It’s a goal that will make you excited.
The key is also to focus and limit yourself. You shouldn’t have ten wildly important goals. Instead, pick one or two goals that you’ll pursue in a relentless way.
Publishing and maintaining three open-source projects is my wildly important goal. It’s a goal that allows me to move forward as a developer. It will force me to not only expand my skills in coding, but also my skills in making work that’s consistent and meaningful for other people.
The reason why I'm choosing to publish and maintain three projects instead of just one, is that the challenge of three projects excites me. If I get one project out, I have reached a reasonable goal. If I get three projects out, I have outdone myself.
2. Act on lead measures
There are two types of measures: lag and lead measures. My goal of three open-source projects is a lag measure because it measures my actual goal of contributing to open-source. But that lag measure of three projects doesn’t really guide me in my daily work.
Lead measures are the things that lead you to your goal.
If your goal is to write a book, your lead measure could be the number of words you write per day. In my situation, I’m following Cal Newport and using his primary lead measure: the number of deep work hours. I define deep work hours as hours that are fully dedicated to the code work. This means no emails, no multitasking, and no unplanned breaks.
3. Keep a compelling scoreboard
Your scoreboard is the place where you mark your progress. It’s a visual reminder of your goals and lead measures.
On my apartment wall, there is a piece of paper with a table drawn on it. The leftmost column of the table has the week numbers from the current week all the way up to the last week of the year. Next to each number there is a row of empty cells. Those cells are for my deep work hours. When I get one hour of deep work done, I draw a little “x” inside one of the cells.
4. Create a cadence of accountability
4DX advocates for holding each other accountable for our progress. Inside your team, you should have weekly meetings to review and update the scoreboard. Each person in your team will verbally commit to actions that move the team along the lead measures.
Creating a cadence of accountability is harder when you are working by yourself. There is no social pressure. And there is no support network when things get tough.
The first step in my attempt to manufacture this cadence of accountability, is to put a weekly reminder in my calendar to go over this week’s deep work hours. I’m doing this so that I will regularly review my progress and figure out how I could get more deep work hours done during my next weeks.
The second step is to publish this blog post. The main purpose of this post is to inspire you to keep moving towards your goals. But this post will also push me forward.
I’m going to be fully honest here. I’m a little uncomfortable publishing this post. I’m afraid to publicly commit to my goals because I know it’s going to suck if I don’t reach them. If I fail, I will fail in public.
But this is what social pressure feels like. It’s not a nice feeling. But in moderation it’s good for you.