DEV Community

Ash R.
Ash R.

Posted on • Edited on

Learning JavaScript is HARD!

When I first started to teach myself JavaScript, it was truly a breaking point for me. I cried, I whined and gave up a thousand times. Only to pick it back up every time.

JavaScript is tough

I used/ currently reviewing the entire course of JavaScript on FreeCodeCamp and I think that it is one of the toughest self-learning course out there. The challenges are just that... challenging and very intimidating. I stopped following FCC's course because I thought that it was too hard so I switched to other platforms (CodeCademy, W3 Schools, YouTube, etc.) to find something that was... easier.

Switching learning platforms was a NO-GO

But by switching from one platform to another only confused the crap out of me. And I found myself going back to FCC over and over again until I finally finished the certification.

Here is where I (bleeped) up. Whenever I found myself in a pickle on the challenges, I would just get the answer from the forum and apply it to the problem and move on to the next. I didn't learn a damn thing.

This is what worked for me

Here are my personal tips on learning JavaScript:

1) Take your time. Don't rush the learning process.
2) Always jot down notes. Don't you ever in your precious life copy and paste your notes. Trust me.
3) Always check what you are doing by testing everything out. Utilize console.log() to make sure that you are always on the right track.
4) Play around with different inputs to see the outputs. This is what I like to call: Cause and Effect Game. Change the values around to see what the outcome will be. Change the increments into decrements and see what happens.
5) Don't be afraid to mess up. It's gonna happen. You can't be perfect all of the damn time. LOL. Learn from it and keep it moving.

I think that these steps can be applied to any language that you are learning. Just remember, YOU GOT THIS!!! :)

Top comments (22)

Collapse
 
bugmagnet profile image
Bruce Axtens

I started learning JavaScript in 2011. I came to if after a dogpile of other languages. It's like C and it's not. It's like Perl and it's not. I'm still learning it and it's still generating things to learn because the spec is developing. Once you learn COBOL, you've learnt COBOL. Once you learn JavaScript, another ES comes out and you've got to learn something else.

All your advice is good. Your point 5 is probably my point 1. My first major JavaScript stuff-up caused the company to lose a client.

Collapse
 
arxocodes profile image
Ash R.

Lord! JS is forever evolving. Once you are good with one way, they come out with something else and Iā€™m like..... šŸ˜‘. It makes me wonder how ES7 is gonna be!
I hate that the company lost a client, but I bet that you learned from that mistake. Iā€™m sure that it happens to the best of us. šŸ˜ƒ

Collapse
 
michael profile image
Michael Lee šŸ•

Thanks for sharing your experience @xoshly and I'm glad you kept at it. I really like that you're admitting JS is hard to pick up and sharing your tips on how to get through the tough moments in learning it.

Curious, what was the motivation to keep coming back?

Collapse
 
arxocodes profile image
Ash R.

Hey Michael, I think that the biggest motivation on not giving up is the love I have for developing. I knew that it was a language I needed to learn for my career and a language I wanted to learn to make my projects better. Thank you for asking. The satisfaction of FINALLY understanding JS is so rewarding.

Collapse
 
michael profile image
Michael Lee šŸ•

That is awesome!!! I'm so glad to hear how you persevered and that you're finally at a place where it is rewarding for you.

Collapse
 
raddevus profile image
raddevus

I agree. I've been developing software for over 25 years and I remember when JS released in Netscape Navigator. JavaScript has a long history (and things have changed a lot) and the language is really large.

I can never remember the quirky details, but I learn best when I write an entire project in the target language. I just did that when I wrote my emojiWriter app. If you get a chance, check out my article here at dev.to. It's all HTML5 / JavaScript.

Collapse
 
arxocodes profile image
Ash R.

Hey raddevus! I can agree that the language is huge! Itā€™s always different ways to solve a problem. Which is a good and bad thing for me because Iā€™m not that flexible as of yet. But, Iā€™m getting there. I sure will check out your article! Thanks for the plug in! šŸ˜€

Collapse
 
valeriavg profile image
Valeria

I got absolutely different impression from FreeCodeCamp when I was switching to full stack JS. It was fun to learn and fill portfolio at the same time:-)

But that's me. I really like JavaScript and I wonder maybe there's a language that you'll find just as fitting for yourself.

What was the toughest part for you?

Collapse
 
arxocodes profile image
Ash R.

Hey Valeria, I think the hardest part was trying to make the concept make sense in my mind. Being my first language, coming from html and css, I was like huh!? LOL! But now that I am reviewing the course, I am falling in love it with.

Collapse
 
pclundaahl profile image
Patrick Charles-Lundaahl

JS is definitely a weird beast. I would be curious, though: have you programmed, or is JS your first programming language?

Learning your first language is always going to be harder. You have nothing to compare it to, and you're learning complex computer science topics at the same time as unfamiliar syntax.

Anyway, point being: be kind to yourself, and give yourself the time you need to really understand things. Good luck on the rest of your journey.

Collapse
 
arxocodes profile image
Ash R.

Hey Patrick! JS is my first programming language. And yesss, it is hard because I came from flowers and roses (HTML and CSS). And you are absolutely right, I had nothing to compare it to and that really irked my brain. But now that I am programming with JS, I am assuming that when I step into Python and other languages, the experience will be relative. :)
Thank you for your kind words.

Collapse
 
arxocodes profile image
Ash R.

I think that confusing is the BEST word to describe it. Once you got the hang of one concept, itā€™s another concept that totally throws you for a loop lol.

Collapse
 
cod profile image
N/A

šŸ˜‚šŸ˜‚šŸ˜‚,I am currently learning JavaScript through the freecode camp course and I was slowly falling into the trap of always checking the answers.Thanks for the warning!šŸ˜‚

Collapse
 
arxocodes profile image
Ash R.

Man, it was sooooo addicting! I knew that it was toxic and still fell into the trap! Get out of it, my friend šŸ˜…šŸ˜‚

Collapse
 
juanfrank77 profile image
Juan F Gonzalez

You gotta love JS. One of the best mentally stimulating things for me lol

Collapse
 
arxocodes profile image
Ash R.

I am starting to appreciate it more now. But before, I cursed it so many times lol.

Collapse
 
oblodev profile image
Dawid

Thanks, mate! :)

Collapse
 
arxocodes profile image
Ash R.

Anytime Dawid! šŸ˜ƒ

Collapse
 
nazanin_ashrafi profile image
Nazanin Ashrafi

Thanks for the useful tips šŸŒ¹

Collapse
 
arxocodes profile image
Ash R.

Anytime Nazanin, it has helped me a lot!

Some comments may only be visible to logged-in visitors. Sign in to view all comments.