What is the 100 Days of Code Challenge?

And why did I take it, even if I don’t fancy a coding career?

In 2017, during Morten Rand-Hendriksen’s talk at WordCamp Europe, I learned about CSS Grid. I was amazed with what it could do and really wanted to learn more about it. I kept saying this for over a year, without really diving into it.

I also experienced some problems when I tried to adjust some css properties in themes I used in WordPress. I got frustrated and didn’t understand why things didn’t change the way I wanted.

I really wanted to brush up my CSS skills but when? It was hard to make or find time to do this. After all, I’m self-employed and really need to make hours I was paid for, instead of learning things.

So I ended up in a loop. In 2018, I saw some people posting about 100 Days of Code on Twitter. I didn’t really understand what it was, but it looking interesting.

That summer, I actually did start brushing up old knowledge and filling in the gaps via FreeCodeCamp. But when clients returned from their holidays and the regular work habits kicked in again, I forgot about learning and was occupied with client work again.

The next holiday, Christmas 2018, I stumbled upon a tweet that invited me to the 100 Days of Code Challenge. And I accepted.

Tweet were I publicly commit to 100 Days Of Code Challenge on December 21, 2018

What is 100 Days of Code?

100 Days of Code was started by a Canadian guy called Alex Kallaway.

The basics are 2 rules:

  1. Code for one hour a day
  2. Post you progress to Twitter using the hashtag #100DaysOfCode

How I approached this challenge

I added a 5-step way to deal with this challenge, which made it a lot easier to follow along;

  1. Set a clear learning goal
  2. Find a resource or course to learn from
  3. Find/make time
  4. Post your progress to Twitter
  5. Have fun

1. Set a clear learning goal

You need to know what you want to learn, otherwise, it’s really hard to focus. There’s just too much out there. And since we’re talking code here, pick a coding language you want to get your head around.

For me this was CSS Grid to start with.

2.Find a resource or course to learn from

This can be a challenge as well, because the internet, books, online courses… there are a lot of resources to pick from.

As mentioned, I started with FreeCodeCamp.

They have an amazing, free curriculum you can follow and it’s high quality. The place to go if you don’t have money to spend.

For my CSS course, I picked one from Udemy called Advanced CSS and SASS.

The courses are sometimes ridiculously cheap and they are real value for money. Stackskills is a same kind of course platform. I know some people find courses or reading material on Github too.

You could also ask for tips on Twitter, using the hashtag #100DaysOfCode. Or go to a local Meetup with the topic of your choice to learn more.

3.Find or make time

Finding or making time for the #100DaysOfCode Challenge was hard.

This was a hard part for me and to give a spoiler: there’s no recipe for success here. Previous attempts for me failed, because I would start in holidays or on weekends, and then would forget about it because I would get too busy with client work. So one hour a day really worked for me. In the end, doing it right at the start of the day, was best for me. Before I opened social media or email, I would code/learn for one hour.
This also resulted me being more productive and focus for the rest of the day, as I had one hour less to spend. I mean really: who is focused or productive for 8 hours in a row?

I didn’t do the challenge on weekends and sometimes I had weeks where it was impossible for me to find time, like when I was at clients or attending conferences. And that’s okay. It’s not a board game, where you have to start over again at day 1 when you miss a day. Just continue where you stopped. However, I must say doing it 5 days a week is easier to keep going, because if the gaps of time are too long, you need more time to repeat things or find out what you were doing last time. Continuity is king in this method.

4.Post progress to Twitter using #100DaysOfCode

This was the easiest part. Write a small update on what I had been doing that day and post it to Twitter. I started collecting the tweets in a moment at first. Only to find out Twitter had just deprecated that function. So I started making threads, but they broke a few times.

5.Have fun

This is key. It’s really hard to learn something you don’t enjoy. I found out myself.

I didn’t rush through the first 30 days, because I also have a life outside the computer and everything that comes with it. But I sure made more progress than the last 30 days of the challenge. I tell you why.

Somewhere in September, I was working my way through a course on learning how to develop customized WordPress themes, when a friend asked me if I wanted to start a study group on React/Javascript with a group of people. When you know me, you know Javascript isn’t my first love. But doing it with a group, I felt empowered and said yes.

But I didn’t like it. I don’t like Javascript. Ok, I get the syntax when I see it. But doing it myself… besides, it’s so far off from what I do on a daily basis, it turned out to be a bad choice.

As I didn’t enjoy it, it didn’t ignite and inspire me at the start of the day, like the other topics did. Instead, I was dreading to get the hour fully done. Eventually, I only did 2 hours/week of coding, which made it even worse. So I decided to quit Javascript and go back to learning what I liked more: implementing CSS and other coding techniques into the stuff I do on a daily basis.

Having fun is key. Don’t forget that.

Why am I learning to code when I don’t want to become a programmer?

Now, you may ask: why? Why am I doing this in the first place? I am a designer, and not really looking for a full time job as a programmer, although you never know.

But there’s a reason for this. In general, I just love learning new things. And learning code, makes it easier for me to communicate with developers. I speak their language, so I can explain what I want and have a better understanding of their problems.

It also results in meaningful conversations. When I post my progress to Twitter, I have people responding to my updates, which gives me more insights, knowledge and a different perspective on things I’ve learned.

I also get inspired by the things I learn. Apart from Javascript, that is. But the hour of coding sort of kickstarts my day. I feel energized after it. I also learn more about technical possibilities, and that gives me new ideas for solutions I have to find for clients.

As a bonus, I got to talk about the challenge at various conferences, something I would have never imagined when I started doing it in January. It wasn’t a goal, but a really lovely side effect that I got to speak on this topic at conferences in Berlin, New York, Paris, Milan and more close to home, the WordPress Meetup in Utrecht.

But what happens after day 100?

As you have noticed, this challenge is called a 100 Days Of Code. But this doesn’t mean you have to stop after 100 days. Just keep going, pick a new course or new programming language to learn. And post your update starting with Round 2 , Day 1.

Coding really not your thing? Start your own tribe!

Obviously, not everyone wants to learn how to code. But that doesn’t mean you can’t use this technique. Just start your own tribe, for example, 100 days of:

  • Yoga
  • Design
  • Writing
  • Drawing
  • Walking
  • Learning Dutch (or another language of your choice ;))

Slides from talks

Screenshot of first slide from my 100 Days Of Code presentations I did in 2019.

I posted the slides (yes, hand drawn by me!) from the talk I did on 100 Days Of Code on Speaker Deck. You can also watch the first version of this talk I did at WordCamp Europe in Berlin on WordPress tv.

My current status on 100 Days Of Code

You may wonder if I already finished my first round of 100 Days of Code. Well, I guess there’s only one way to find out: check my Twitter status!

Feeling inspired?

Do you feel inspired after reading this post and are you starting your own #100DaysOfCode challenge? Ping me on Twitter, I’d love to learn about your experience!