Committing to 100 Days of Code

In an effort to reinforce daily habits, I am committing myself to the #100DaysOfCode challenge. I'll outline what I hope to achieve throughout this challenge and how.

April 11, 2021 100 Days of Code

I never get caught up in social media trends and challenges, but I finally found one right up my alley: #100DaysOfCode. The rules are simple:

  1. Code minimum an hour every day for the next 100 days.
  2. Tweet your progress every day with the #100DaysOfCode hashtag.

The first should be no problem since I'm on the computer every day already; the second is a problem since I don't use Twitter. Instead, I will log my progress daily in this repo and hereby commit to the #100DaysOfCode:

Starting this Monday, April 12, I will code for at least an hour every day for the next hundred days until July 21.


I code nearly every day already, so what beneft do I see in a challenge like this? Above all else is habit formation.

As anyone who has set a New Year's resolution will likely find familiar, whenever I endeavor to improve myself or start a new habit, I often make the mistake of setting too vague a target, like "exercise every day" or "spend less time on social media."

Stating a goal this way makes the desired outcome easily understood but neglects to address why it's a goal, how to get there, and what getting there will look like. These are necessary foundations for any good habit, and this is where I've fallen short before.

But falling short of the goal is not unheard of in any first attempt. Why have I rarely persisted upon failure in conscious habit formation? Looking back on my past attempts (and failures) to exercise more, read more, and eat healthier, I realize that I never articulated to myself the how, why, or what.

Failure should just be a part of the process, not the final result.

I see a daily coding challenge as a great way to develop this meta habit that underpins any good habit:

  • Why: To extract my tendencies from a daily activity into a mindset on how to start and stick to any good habit.
  • How: By coding for at least one hour every day for 100 days and explicitly logging my thoughts and progress.
  • What does it looks like: Stating what I will work on and holding myself accountable to that work in a public repo.

To give myself some structure to start the challenge, I came up with three things that I will focus my efforts on for the first days:

  • New site features: Breadcrumbs, dark mode, page transitions, categories and taxonomies, and more.
  • Economic models: Solving and simulating neoclassical economic models like the Solow–Swan and Ramsey–Cass–Koopmans models.
  • Data scraping and cleaning: Working on my soccer transfers dataset and finding macroeconomic data for ASEAN countries.

My aim in being this specific is to keep things small and simple to start. Another way I've commonly fallen short is by trying to do too much at once. I convince myself that I will change my life and the world overnight but become discouraged when I can't sense progress by the next week. Taking on too much will make any amount of short-run progress seem insufficient in the long run.

Smaller, more manageable projects can generate momentum to combat this discouragement. There will inevitably be roadblocks and burnout from focusing on one thing for too long, so the variety in work and topics I've set for myself should mean I can switch gears and keep that momentum.


I've set (and failed to keep) New Year's resolutions in the past, but never before have I taken on a personal resolution with this kind of structure and accountability. I certainly see it as a challenge.

If you're interested in trying this challenge yourself, fork the official repo and get started!