Like so many self-taught coders, Andrew Kallaway utilized a rag-tag fleet of online resources. He trudged through endless tutorials and white-knuckled his way through “build your first app!” projects, all on his own, to build the skills needed to land his first web dev job. But build them he did, with diligence and impressive self-discipline.
Once he’d earned that ergonomically correct office chair, though, the Toronto-based Kallaway quickly realized that getting an actual coding job was far from being any kind of finish line. There were still myriad skills he wanted to pursue — but the company he worked for of course used only a certain subset of all the tasty tech toys he was interested in playing with. However, after coding all day at work, he found he had a hard time motivating himself to spend his free time doing yet more coding.
“I felt quite frustrated with my lack of progress in learning new skills and doing my own projects,” Kallaway said in a podcast. So in order to kick-start a new coding habit, he explained, “I came up with the idea of a minimum commitment of an hour a day coding — for myself, outside work. I thought perhaps 60 days or 90 days, but my wife suggested 100 days as a nice round number and I thought that sounded right.”
The Power of Public Humiliation
Kallaway, however, had read a great deal about how humans acquire new habits — and was aware that accountability is an essential element to sticking to any kind of self-improvement plan. If he was indeed going to code for 100 days straight, he would need a social aspect to bolster his resolution.
“Learning to code on your own is extremely difficult. Forming new habits and keeping them is really tough. But the research on how people successfully acquire new habits shows that accountability is an important component,” he said. “If I’m trying to change something in my life and I don’t tell anyone about it, it’s very easy to privately fail. I’m inside my own apartment, nobody knows about it and there’s no real pain to just quit randomly.”
But: if people know about it and you bail, it’s public. The motivation of avoiding a big scarlet Q (for “quitter”) can keep you going even when the coding gets tough — buggy, glitchy, or just plain hard.
Thus Kallaway came up with a simple set of rules and then reached out to the Free Code Camp community with an invitation to join him — FCC being one of the online tools he’d used in his own education, so successfully even that he’d begun writing articles for the organization. And in June 2016, #100DaysOfCode went live.
According to Kallaway, “A lot of people joined in, and it was quite exciting to tweet every day what I had done and read about what other people were doing. Twitter became the hub to meet and check in with everyone. Without Twitter and the #100DOC hashtag, I don’t think it would have been as successful as it was.”
He did not keep hard numbers, but Kallaway estimates that over 100 people have completed the first #100DaysOfCode challenge last year. More — somewhere between 200 and 300 — people started, but dropped out along the way.
Just Do It
For #100DOC v2, Kallaway is timing the launch with the arrival of 2017, when people are naturally making new year’s resolutions. Things kick off on January 3rd, allowing time for any lingering New Year’s Eve hangover to abate.
The rules are simple:
- Commit to coding an hour every day for the next 100 days. (If something truly urgent comes up and you miss a day, it’s not game over — simply pick up again the next day and add an extra to the end date).
- Fork the collaboration’s repo from GitHub and use it to briefly log each day’s work.
- Tweet your participation each day with the #100DaysOfCode hashtag, including what day of the challenge you’re currently on.
- That’s it.
Ok, so there are a few refinements, like coding you do at work or as part of a tutorial doesn’t count. One more thing: Kallaway noted that people often don’t stick with their new year’s resolutions for very long. The tendency is to overcommit or to aim for overly ambitious, and ultimately unachievable, goals. So for anyone joining in the 2017 cohort, Kallaway is asking that this be your only New Year’s resolution in the name of more likely success and completion.
What You Get
As an experienced coder, you get off your duff and finally pick up that tasty new framework or other technology you’ve been eyeballing (WebRTC for online gaming, anyone?). Or maybe you finally finish that project (ha! Make that, those projects) you’ve been procrastinating on since, oh, forever.
As a n00b, you get that nice long green streak on your GitHub profile. Plus, you know, actual projects that will actually get you an actual job. #100DaysOfCode is project-based, meaning that working your way through an online tutorial emphatically does not count. According to Kallaway, “Too many people rely on those kinds of ‘hold your hand and lead you through the forest’ programs instead of coding real projects.”
And, as a human who actually completes 100 days of coding, you come out with the firmly established habit of writing code each day. Starting new projects will be a natural, ordinary thing, instead of the Scary Unknown. You’ll be sexier and more attractive and total strangers will approach you in coffee shops wanting to know the secret to your irresistible charisma.
So start, already. Go here to go public with your tweeted commitment to #100DaysOfCode.
Feature image via Unsplash.