Do you know the feeling of sitting down to write code and ending up on YouTube/Twitter/Egghead/Pluralsight watching tutorials and "learning", feeling productive but not actually writing any new code? Some people call it Tutorial Hell, some say it is simply procrastination.
There is another word for it - Resistance.
Steven Pressfield in his book The War of Art describes resistance as something that is self-generated, self-perpetuated, a feeling, a pull that a person experiences when they visualize who they are (a writer, a painter, an entrepreneur) but they do not take the steps to achieve that vision.
In the first passages he describes it well: "Are you a writer who doesn't write, a painter who doesn't paint, an entrepreneur who never starts a venture? Then you know what Resistance is." Adjusting this to the topic at hand - "Are you a programmer who does not program?"
As a person who is switching between careers, from known to unknown, from something I am competent in to something that is frightening, I feel the pull of Resistance every day as I sit down to write a line of code. You might too.
- If your time is being hijacked by the gravitational pull towards Twitter with the self justification that you will actually learn something while scrolling through the infinite expanses of self actualization - that is a sign.
- If you are constantly distracted by new and shiny technologies and have dozens of half baked personal projects that never see the light of day - that is another sign.
- If you are constantly googling developer salaries and trying to figure out if the career switch is worth it and is a smart move - well, you are basically me.
Writing this post is, in some sense, Resistance telling me to do this instead of my work. You reading this post is the same. It aligns with our internal fear, fear of success, fear of hard work, fear of pursuing what we were meant to pursue.
Fighting this force in our heads is something that becomes easier with discipline. However, it does not mean that it will ever go away. Every day we will come up with an excuse of doing something else than work, exploring something that is tangentially related to the craft but not the craft itself. We will find justifications, and damn good ones too.
The one answer I found was the commitment to the craft full-time. Not dabbling in and out, but in our heads making the seal of unbreakable pact with ourselves. Steven Pressfield calls it "turning pro".
We show up to work everyday no matter what. We write code everyday. We focus on the long term gains and not the short term gratification. Putting in the work is what matters, success is a side effect.
- Show up to work every day for set time. Do not wander during that time, stay focused and practice the craft.
- Ignore what others are telling you about the risk, uncertainty or choices. If you feel alive and immersed in the practice of coding, listen to that voice.
- Do not focus on immediate metrics as tweet likes, blog post shares, downloads or job offers. Keep you mind on the work itself and the needed steps to reach your future goal. Success will come later, it is irrelevant while you work.
- Finish what you stated and move on to the next objective. Do not look back and second guess yourself.
- That's it.