Skip to main content

Command Palette

Search for a command to run...

My Experience with Learning JavaScript

The goal isn't to be the best, the goal is to be better each day. I'm still learning, I will continue to learn until I become better than the version of me that started this journey.

Updated
•4 min read•View as Markdown
My Experience with Learning JavaScript
I
Learning never ends. I'm learning, unlearning, and relearning.

When I want to start learning JS, I had a great excitement to learn how to add dynamic behavior to my website, I was so eager to learn JavaScript.

Learning HTML & CSS was exciting. It was full of learning and experimenting. I had a great time learning HTML and CSS. Then, I had no idea I had only been learning markups and not programming languages. I was so surprised, to be honest, but I learned quickly that the real journey begins with JavaScript.

When I, for the first time, looked at bunch of codes written in JS, the first thing that came to mind was: How would I write these jargons-looking code? Whatever I had thought at that time, I started anyways. I started with learning what variables are, how to store values in js, difference between var, let and const. I started with learning how to make basic mathematical calculations with JS. const x = 5, const y = 6→ console.log(x+y). I started with these, and seeing an answer been logged to the console was so exciting. I felt like a pro developer.

After learning how to store values, then comes types of values we have in JS: string, number, array, object, boolean. I learnt why an ordinary 5 is completely different from a five in quote "5". The former is a number while the latter is a string. While I was learning those things, I didn't take it so serious because I'd thought a 5 is a 5, not knowing that in JS a 5 isn't always 5.

Then comes JavaScript Operators — Arithmetic Operators, assignment operators, Comparison Operators, Logical Operators etc. I learned how === , strict equality operator, is different from == , which is loose equality operator. Strict equality operator test for both value and type I.e. type coercion — number with number, never number with string. That is why code like 5 === "5" returns false, because one is a number other is a string. As for loose equality operator, while strict equality operator checks for both value and type, it only checks for value 5 == 5 // true.

The learning went on, I never rushed and I was so careful not to fall into tutorial hell ( Tutorial hell is real!!!). After each lesson, I had make sure I take a test so that I would be able to put everything I had learned at that moment into practice. And I actually learned a very important lesson during those periods. When you takes things step by step, you learn something each step and whatever you learn at the end of the day compounds. Knowledge is composition of little things learned along the way.

There are times I would try to learn a concept and find it hard to understand, I had learned that sometimes a concept doesn't have to click at the moment, I would have to give it some time to digest, then I'd revisit it again untill it gets clearer. The more I practice that concept the more clearer it is. Constant practice is what makes one a better developer. The goal isn't to be the best, the goal is to be better each day, at least 1% better, each day.

My experience so far is that one doesn't become better in a day, but it starts one day. The goal isn't to be the best, the goal is to be better each day. I'm still learning, I will continue to learn until I become better than the version of me that started this journey. The plan is to never be the same person that starts this journey, the plan is to improve each time along the way.

More from this blog

B

Beyond The Code

2 posts

I write about personal experience with learning how to code, what I've learned, hard concepts that took time to understand and tips on how to become a better developer.