RSS

My 100 Days of Code Experience

I did 100 Days of Code Challenge in 2020/2021. Here is what I learned.
Share this page:

Why do the 100 Days Challenge

I started my career in 2005 as a Network Engineer. 2010 I added Data Center and Virtualization to my skills. Then came Automation and Scripting. My last 10 years, summarized:

  • Private Cloud (ex. OpenStack) - tried it, too complex.
  • Kubernetes - tried it, too complex, but hey - it works, and I kinda like it.
  • Public Cloud - yeah, this works! Serverless is the future.

Motivation for 100 Days Quest

As an Infrastructure Expert and a “Scripter”, my code has always been somewhat “messy”, so I went into this challenge to improve my “I wanna be a real developer” skills. That’s why I decided to go for 100 Days of Code, and followed these rules. If you don’t like these rules, my advise is - make up your own, but do commit to your “quest”!

Who I think should do the 100 Days Challenge IMHO - everyone. 100 Days is a LOT of time. It’s a small enough number so it doesn’t scare you off, and yet big enough that you can make actual life-changing improvements.

What to choose for your 100 Days “Quest” You know yourself best. You know what you always wanted to learn or do, but never had the time. This is YOUR project, choose whatever you like, and stick to it.

What I wish I knew

100 Days are a LOT of Days

In the beginning, 100 days feels like a short time. It’s not. If you plan your time right, you can do so much stuff in only 100 days. When I started, my plan was a bit vague, I basically wanted to improve my Python skills, perhaps some Javascript for frontend. I took it so seriously in the beginning, that half way through - I was done! Next time, I’ll define the clear objective, and a day by day plan. Some possible objectives:

  • I will build a fully working Web with Serverless backend, that lets me see the cost of my cloud infrastructure.
  • I will create a Mobile App that gives me the health of my network latencies.

“Organize and Log” hack

In the beginning you won’t really know how much time each task requires, so - over-provision it. If you’re ahead of schedule, you can always write additional code tests, and comment and organize your work. I can’t emphasize this enough - plan each day ahead. I wish I did this.

You’re allowed to skip days

It would be great to just do the 100 days in a row, but life gets in the way - family events, weddings, birthdays etc. This is Ok. You can skip a day or two, just be sure to come back and continue. It took me 132 days to finish my “quest”, and I think that’s Ok.

What I built in 100 Days

Project 1: Self-Service Web portal

Objective: Web page, with “modules” that allow a Product Team to:

  • Book an Expert to help with their project.
  • Bring up a Dev Environment.
  • Provision one of the validated Cloud Architectures, setting the desired Sizes and Parameters.

Technology Stack:

  • Infrastructure: AWS CDK with Python
  • Frontend: vue.js

Project 2: 100 Days Quest Mobile App

Objective: Mobile App that will help everyone doing their 100 Days Quest plan and log their progress.

Technology Stack:

  • Mobile App: Flutter
  • Backend: Firebase

Here is a sneak peak of what you’ll soon see in Google Play Store: 100 Days Quest

The only advice I can actually give is - just go for it! Even if it somehow goes wrong - I don’t think you’ll regret learning something new.