loading...
Cover image for What I learned in #100DaysOfCode

What I learned in #100DaysOfCode

hassansuhaib profile image Hassan Suhaib ・4 min read

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.

Posted on by:

hassansuhaib profile

Hassan Suhaib

@hassansuhaib

Computer Science Undergrad. I work with CSS, Bootstrap, JavaScript, Python and Flask.

Discussion

markdown guide
 

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?

 

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.

 

Sounds good, I appreciate your quick reply!

 

Congratulations 👏 👏 for completing the #100DaysOfCode as it is not easy to do code regularly for 100 Days.

 

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

 

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

 
 

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!

 
 

Wow. This is inspiring 👍 Thanks for this!!!

 
 

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