Habits are powerful. They define what we do every day. They’re hard to form deliberately and incredibly hard to break. Back in September, I read a great blog post by Ryan Seys in which he described his habit of committing to Github every day, and how that helped him improve his development skills. His article inspired me to try the same.
My streak wasn’t quite 177 days, but breaking 1000 commits for the year has really helped me keep the momentum going. Here are some things I learned in the process:
Set realistic goals
When I began learning to program, I wasn’t very good at estimating the scope of a feature. I would focus on breadth more than depth. What that often led to was crappy work.
It wasn’t until recently that I started to break things up into manageable chunks, and making those individual pieces great. Will Smith said it much better than I can:
You don’t try to build a wall. You don’t set out to build a wall. You don’t say, “I’m going to build the biggest, baddest, greatest wall that’s ever been built.” You don’t start there. You say: “I’m going to lay this brick as perfectly as a brick can be laid.” And you do that every single day, and soon you’ll have a wall.
Ugly is part of the process
I first heard those words in Mig Reyes’ class back in the first phase of Starter School. He was referring to visual design, but it applies equally to code. Pushing to Github every day means iterating quickly - and ugly code.
“But Github is your resume as a programmer! You should only show off your best.”
I got over that remark after watching Ira Glass’s interview on storytelling.
Do a huge volume of work. Put yourself on a deadline.
Pushing code out for everyone to see, almost every day is my way of starting that volume of work. No matter how ugly.
Momentum is key
It’s much easier to keep up a streak of anything when you’ve been on a roll for a while. Starting over is the hard part. Although it’s not a big deal, missing a day sucks. Seeing that big zero on your Github profile takes the wind out of your sails a bit. Everything gets easier the longer you keep it up.