My freeCodeCamp journey
Tags: beginners, learning
Published: 2020-05-26 10:08:24




 
  

by Abdelrahman Al Allaqi



It all started as a passion for IT a hobby I would go to once in a while , then decided to pursue my dream and do what I actually liked. I started the journey off in Powercoders and found the freeCodeCamp curriculum very useful. When I was advised by my internship mentor to finish the curriculum that was it I put all my effort into finishing it and understanding IT more. I made various Websites, logos, and SVG`s. I developed an interest in websites and how they’re built.

I’ve been amazed at the progress I have made in the past few months. So I want to tell my story (so far) to help anyone who is unsure about whether to dive into coding with two feet.

I will tell you about some of the things that I wish I had known when I was starting out. I will also leave links to some of the resources that helped me the most.

 

How I got motivated to start the freeCodeCamp journey
 
•	Got interested in programming 
Made sure that it keeps being fun so that I will be willing to put in more effort and time.

•	Talked with other programmers
Always asking other programmers how their journey was in the world of IT,
Asking for advice on what I should learn.

•	Worked on projects (my personal favourite)
I loved working on projects, they exited me seeing the finished product always made me smile, and motivated me to start a new project. In my experience you learn most from practical work. 

•	Worked on projects after other programmers
Always looked at how other programmers solved their problems and tried to understand how they did what they did.


“Optimism is the faith that leads to achievement. Nothing can be done without hope and confidence.”
-Helen Keller
So, when I first started, I just wanted to know everything and learn everything later on I found out that was a mistake I set unreasonable goals for myself. The problem with doing this is that nobody can expect to understand coding overnight.

then decided I wanted to take my time learning to program. I didn’t want to rush myself like before and get disappointed by my natural, human limitations.

I learned to accept that learning needs time. In a few weeks you look back at what you’ve learned and be surprised of how far you’ve come.


 

-Photo by Icons8 Team on Unsplash


My Learning Process

I used the kickstart I got from Powercoders as motivation to do some research, and decided that I would carry on learning HTML and CSS and concentrate a lot of my time into JavaScript. Both of these seemed pretty easy for beginners, But I struggled a lot with JavaScript.
Powercoders was really helpful, to kickstart my IT knowledge. The resources on FreeCodeCamp are really detailed, and are comprehensive. They also won’t cost you anything except the time you invest in learning your new skills. FreeCodeCamp’s program allows you to learn by doing exercises for each new concept. I found this really useful when I used it to learn JavaScript.

After building a few static web pages using HTML and CSS the class moved on to l learning JavaScript. At this point, though, I started to struggle more.

There were definitely days where I wanted to bang my head into the Keyboard (algorithms  )Luckily, though FreeCodeCamp has forums to ask other programmers to explain the problem to you. I used FreeCodeCamp’s JavaScript Algorithms and data structures certification. 

1.	Basic JavaScript

2.	ES6

3.	Regular Expressions

4.	Debugging

5.	Basic Data Structures

6.	Basic Algorithm Scripting

7.	Object oriented programming

8.	Functional programming

9.	Intermediate algorithm scripting



JavaScript algorithms and data structures curriculum that I completed and received the certification, my HTML and CSS (Responsive Web design) certification.

This gave me a basic understanding of programming. Having knowledge of methods and objects made it a lot easier to work with and understand JavaScript.

The feeling I had after finishing the JavaScript curriculum was indescribable, I think I let out a loud “YESSssssss” and was so happy of my achievement now to put those skills to the test.

 

-Photo by brucemars on Unsplash


Where I am now

This brings us to my next article on the Slack-bot: basically implementing everything I learned into a real project. My goal is to get better at building apps that are useful.

The problem with a lot of coding tutorials is that most teach in different ways and it could get really confusing for a beginner. FreeCodeCamp on the other hand forces you to understand the code by having you write it yourself. And practice makes perfect.


Lessons learned

It takes time to really understand  all of this stuff. When working on it daily, you don’t realize how much progress you are making. I didn’t really think I was making much progress until I thought about where I was a few months ago.

By looking back, I was able to appreciate the journey. The world of programming is so vast, and there will always be stuff you don’t know. It is easy to feel like you’re not smart enough, but even professional developers use Google and Stack Overflow when they don’t know what to do. These tools exist for a reason, so consult them when necessary.

I learned mostly from doing the final projects in FFC and learned a lot when building websites on my own. Doing this makes you use everything you learned and try solve problems on your own.
 
I learned to take challenges and break them down into smaller pieces. 
Now I use this in my everyday life not just coding.

Don’t skip the small stuff like I did. I thought the basic syntax were not that important, and just was lazy to go through everything and found that I really needed them in the future so I had to go back to learn it again.

Some other resources I found useful:

•	https://dev.to/

•	https://www.freecodecamp.org/

•	https://codepen.io/

Feel free to contact me on my website if you have any questions!

•	https://alallaqi.github.io/