Waiting For Inspiration Is Not Enough
Many times over the past few years I felt inspired to design a board game, to build a video game, to learn Angular, to lose weight and the list goes on. Often times I felt motivated by a movie, a book, or a TV show when my “flash of brilliance” struck and I would chart out this whole new life plan for myself. Things like I’m going to get up every day and exercise, I’m going to write code everyday, I will release a game every 3-6 months. After a few days, I was right back on the couch watching another “inspiring” TV show. Motivation, what a fickle and fair-weather friend you are.
Recently, I subscribed to NerdFitness’s newsletter and Steve Kamb sent an emails about motivation and how you’re doing it wrong. He made some great points, especially about motivation wearing off after a few days, which I completely identified with. He recommended adding structured discipline into the mix to carry you over until a new behavior or habit forms. So how do I build good habits? Well every trendy “self-help” coach will tell you it takes 21 days (or 28 or 30, the number varies) of doing something everyday and then poof you a new habit. Wrong.
James Clear wrote a great article about the science behind habits and how the urban legend of “21-day habits” started. A health psychology researcher, Phillippa Lally, at the University College London, did a study of 96 individuals and her results revealed it takes an average of two months for a person to build a habit. Even more interesting, no two people learn the same habit at the same rate. It may take me 75 days to learn a habit that only took you 25 days to learn.
Great, no shortcut exists to building habits, so now what? Well if it were easy then everyone would do it.
Dream It Then Do It
Almost a year ago I decided to start writing code again, see I’ve managed people on and off for the last decade so even though I started writing code when I was 14, I haven’t really been hands-on-the-keyboard in quite some time. I’m rusty and out of practice, and if I want to learn Unity then I need to code. Plus, I enjoy coding. It frustrates me at times, however, I have felt my best when I finally get “that piece of code” to work the way I envisioned it. So writing code is like riding a bike just get back on and go. After procrastinating for a few months, I decided to commit to at least one hour of coding per day. I think I did that for one whole day before “life got in the way.” Again, so now what?
In the last few weeks I read a variety of articles and a passage from The Achievement Habit, by Bernard Roth that led me to the “radical conclusion” (note the heavy sarcasm used here) that if I want to do it, then I just need to do it. Normally I’m an action-oriented person so reading this advice multiple times from multiple sources brought to the forefront of my consciousness.
Goal: to write code everyday.
Action: record everything I do during an average day; analyze my wasted time; remove one hour of wasted time and replace with coding; do it everyday.
Result: code for at least an hour everyday.
After experimenting with different times of the day I discovered that just after my day job is not a dependable time for me to write code. I easily fell back into the “motivation trap.” So I solved the problem differently, if after work doesn’t fit, then I should try before work. So that’s what I did, I get up about 1.5 hours earlier to make sure I can sit down and code for an hour before I rush out the door so I’m not late. I’ve known my entire life I’m a night owl, so going to bed by 2300 and getting up at 0515 seems really weird to me, but it worked. I more consistently coded.
Over the past two weeks I refactored my daily coding habit by including a morning and nightly routines. Almost everyday I get up at 0515 and sit down to write code by 0615 and then rush out the door around 0715. Even the other night I opted to stay up and finish watching Bohemian Rhapsody until after 2300, I still completed my nightly routine and then got up at 0515 the next morning.
- Wake up at 0515
- Get ready for the day
- Review daily quests and daily plan
- Do at least 1 hour of coding on a daily quest
Start between 2145 and 2200.
- Setup coffee
- Setup lunch box (work nights)
- Put dishes away
- Review MyFitnessPal entries
- Straighten up desk
- Assess status of today’s quests
- Create daily quests for tomorrow
- In bed NLT 2230
- Personal reading for up to 30 mins
Achieve Progress Every Day
Motivation is still a fickle friend and so is inspiration. As long as I get out of my own way I can count on discipline to carry me forward. For me, every day starts with I solved a problem, I fixed bug, I created something new, I achieved progress towards making my dreams a reality. Which of your dreams do you want to come to life?