DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’»

Cover image for What I learned in #100DaysOfCode
Hassan Suhaib
Hassan Suhaib

Posted on

What I learned in #100DaysOfCode

What is #100DaysOfCode?

'#100DaysOfCode' is a challenge where you have to write code or learn how to code for at least 1 hour a day for 100 days consistently. You have to tweet about your progress daily using the hashtag and commit the details of the progress on a Github log. You can find more details about the challenge at 100daysofcode.com

How I started it?

I was casually browsing twitter and as I had followed some developers, I found some people talking about it. I clicked the hashtag and eventually landed on the site mentioned earlier.
At first, I was a bit hesitant to start it because I knew I was very inconsistent and I loved to procrastinate but I thought to myself: "You are a computer science student and it would be a shame if you don't do this challenge." So after some contemplation, I convinced myself to start this challenge. This journey began on February 13, 2020.

FreeCodeCamp

Most of the people start this challenge by signing up on freeCodeCamp because it is very beginner-friendly and teaches tons of stuff, so I did the same.
I started the Responsive Web Design Certification and completed it by making 5 projects. Then I started the JavaScript Algorithms and Data Structures Certification. I finished up to Functional Programming but I wasn't understanding the JavaScript language. So I started Web Developer Bootcamp by Colt Steele on Udemy, where I learned to make small projects in JavaScript and Bootstrap 4 (A framework of CSS). I got bored with this course because it's designed to just teach the basics of Web Dev.

Getting intimate with JavaScript

I wanted to get my hands dirty with some real JavaScript so I started The Modern JavaScript Bootcamp by Andrew Mead. I highly recommend this course to all the JS beginners because the teaching style of Andrew is great and he makes you do little challenges at the end of every video, so you don't just watch the videos, you're are completely engaged in the course.
Here I learned advanced DOM manipulation, complex array methods, data storage, object-oriented programming, asynchronous JavaScript, Babel, and Webpack. Don't worry if these terms sound cryptic to you because I didn't know them either when I started this challenge.

Building Projects

During this course, I built two projects: Notes App by coding along with Andrew and Todos App as a challenge. But after the course ended, I made a recipe app to practice the skills that I had learned.

CS50

Meanwhile, I also continued Harvard's CS50: Introduction to Computer Science taught by David Malan in which I learned C, Python, and SQL. I solved all the problem sets which gave me a really hard time. This course made me understand coding on a deeper level. I will tell you all about this course in detail in an upcoming article.

Skills Learned

Following are the skills that I learned during my journey

  • HTML/CSS
  • Bootstrap 4
  • Git/GitHub
  • Working with the Terminal/CLI
  • JavaScript
  • DOM Manipulation with JS
  • Fetch API in JS
  • ES6
  • Babel/Webpack
  • Python
  • SQL
  • & other miscellaneous stuff.

Visual Representation of the code I wrote

This amazing site sourcerer.io gives an idea about the code that I committed to GitHub after starting my journey to this day.

Advice for beginners

Beginners and Code Newbies, if you want to stop getting intimidated by the fear of learning how to code or if you want to tackle procrastination and become consistent, then my advice to you is to just do this challenge. The future is uncertain but the decision that you make today is going to decide what's going to happen next, so make that decision now! I guarantee that by the end of the course you will have learned a lot of things.

Some resources for online free learning

My tips

  • In addition to the tutorial's code, write your own code. You'll understand things better this way.
  • Define your own pace, don't compare yourself with others!
  • Even though the challenge allows a little bit flexibility, try to stay consistent.
  • Don't rush! Make sure you completely understand the current topic and then move on to the next one.
  • Instead of sticking to tutorials, complete one and start building your own stuff.

Conclusion

  • This challenge made me not just a better coder but a better human being.
  • It taught me how to stay consistent and get over procrastination.
  • I have learned skills that are very important to excel in my career.
  • I learned some stuff that isn't even covered in tutorials.

You can achieve it too! You're just one decision away.

Top comments (14)

Collapse
 
devindford profile image
Devin Ford

Great article and you covered a lot! I'm interested to see your article on CS50. I've gone through the beginning, do you think there is a benefit to watching the videos without the problem sets?

Collapse
 
hassansuhaib profile image
Hassan Suhaib

Not at all! The problem sets are the core of the course. Without them, you won't be able to test your knowledge. Even though I am in the 6th semester of my Computer Science degree, it took me so much time to solve those problem sets.

Collapse
 
devindford profile image
Devin Ford

Sounds good, I appreciate your quick reply!

Collapse
 
hinasoftwareengineer profile image
Hina-softwareEngineer

Congratulations πŸ‘ πŸ‘ for completing the #100DaysOfCode as it is not easy to do code regularly for 100 Days.

Collapse
 
hassansuhaib profile image
Hassan Suhaib

Thank you! Yeah it isn't but it's totally worth it!

Collapse
 
zaidbinkokab profile image
zaidbinkokab

Best Thing bro, I really appreciate your efforts. Keep it up bro and be in touch with the technology as its rapidly advancing day by day.
Be prosperous be blessed
Best Regards

Collapse
 
hassansuhaib profile image
Hassan Suhaib

Thank you so much!

Collapse
 
hiboabd profile image
Hibo Abdilaahi

This article has made me regret not seeing this challenge through. I'm inspired to start it again today and work on my consistency. Thanks for reflecting and sharing your insight!

Collapse
 
hassansuhaib profile image
Hassan Suhaib

My pleasure!

Collapse
 
pelumiogunremu profile image
Pelumi Ogunremu

Wow. This is inspiring πŸ‘ Thanks for this!!!

Collapse
 
hassansuhaib profile image
Hassan Suhaib

My pleasure! 😊

Collapse
 
kewbish profile image
Emilie Ma

Also planning on working through CS50 - super cool to see your journey!

Collapse
 
hassansuhaib profile image
Hassan Suhaib

Great idea! Good luck!

Collapse
 
nomangul profile image
Noman Gul

πŸ‘

Classic DEV post:

CLI tools