On April 17, I publicly committed to the #100daysofcode challenge.
The purpose of the challenge is to help you form a habit and do something out of your comfort zone for at least an hour each day for 100 days (obviously there are some exceptions).
Every day during that period one also needs to:
- Tweet their progress using the #100DaysOfCode hashtag (My progress can be found here)
- Engage with others who are also doing the challenge.
I've pledged to learn or code for 100 days in the #100DaysOfCode challenge (Main focus on ML and Computer Vision).— Mpho Mphego (@MphoMphego) April 17, 2020
Day 1 of #100DaysOfCode: Created a Python based CLI twitter bot that will help me to post daily #100daysofcode tweets.
While my full-time job involves coding and analytics, I solemnly decided to take on this challenge to devote time and focus into learning Machine Learning and Computer Vision as well as put more focus on some of my side projects. The other motivation was just to challenge me to take on something out of my comfort zone.
My hope in writing this post is that it may give you enough insight into the challenge and that it motivates you to take the challenge for yourself!
More details about the challenge can be found here: https://www.100daysofcode.com/
My 100 days progress log can be found here
I took advantage of the COVID-19 pandemic and being a morning person usually starting my day at 4 am, was an advantage as most of my focus would go to the challenge before the 8-5 rush and real-life issues.
Having a learning plan helped me immensely as I was able to schedule my time and when I needed to complete an objective I had set out. I used GitHub Project to track my milestones and it came in handy.
Going into the challenge some of my goals were:
- Machine Learning with focus on Computer Vision (from fundamentals)
- Improve my Python skills
- Learn a new language
- Dab into serverless and cloud computing
- Read and write more technical blogs
- Build stuff...
Obviously, life is unpredictable and some days I felt as if I wasn't progressing at the rate I wanted also with everything going on (COVID19 related) this took a toll on me so I struggled a bit but eventually bounced back and was then able to complete the challenge.
For anyone thinking about taking on the challenge (or any other learning path), my advice would be:
- Place aside time in your Google calendar (not forgetting resting days).
- Have a study objectives.
- Have a solid plan in place and,
- Use Trello or GitHub Project to track your progress.
- Daily documenting your progress will continuously motivate you.
- Be patient with yourself.
Daily progress documentation is essential as it offers a way to log your progress, I personally logged my progress via my learning progress private GitHub repo and via Twitter (My Twitter log search query).
For obvious reasons not all 100 days of the challenge were related to a single subject, I dabbed into various subjects. I feel like I learned a lot over that period and it's hard to put it into words.
Personally, I believe that these challenges are exceptional for everyone wanting to dedicate time and focus on learning something new in order to level up their skills. If you still need some inspiration head out to Twitter and just search for #100daysofcode and see what other people are involved in.
Some of the key takeaways from this challenge for me were:
- Try to learn something new every day, especially something outside your comfort zone and consistency is key.
- Find what really motivates you, this will help you push through the struggles of learning
- Find a community or someone to partner with for support and inspiration.
I know a lot more than what I knew 100+ days ago and I continue to learn on a daily basis even though I do not tweet about it. However, I have started documenting my learning with notion and GitHub & GitHub projects.