I am so confused and getting frustrated with JS

Hello friends,

I am currently enrolled in classes for Web Development.
I have been going for 1 month so far and they are having us build Tic Tac Toe.
I feel so unprepared for this, after a month of classes and plenty of office hours and study sessions I still feel so confused with JavaScript. it’s driving me insane, I feel like I just can’t wrap my brain around it. Do any of you have any resources or helpful tips to make this stick. I started FCC for extra repetitions and I’m just really struggling and it’s brought what little confidence I have been learning to a halt.

thanks in advance.

  • Marc

HI @garcia.marc.001 !

You just got started with javascript a month ago.
You have to give it time for the concepts to sink in and make sense.

It will probably take a few months before you start feeling more confident with javascript and start building more projects with it.

Most people go through this.
It is completely normal to struggle in the beginning.

For video resources, you can try these out


The struggle is real, my friend, and in one way or another, we all go through it. Freecodecamp is a great resource, and use that resource - all questions on the forum and in the chat. There are a number on great online courses, similar in intent, but for javascript and for a supportive community, two stand out. As we’re in the forums of my number-one pick, I’ll stuck with that.

Learning to code is not like learning to raise chickens or learning to split wood. It isn’t even like learning to read music. It’s like learning to read music and at the same time learning to teach an autistic five-year-old to read music.

You’re both learning a language, and learning to use that language to teach a computer to think. Make basic decisions, draw some conclusions, gather information… You have to not only think about language, you have to think about how to think.

TTT sounds easy, but it’s a non-trivial challenge. It has stopped many, simply because it can be complex.

But all these challenges are made of smaller building blocks, which are made of ever-smaller ones…until at the smallest, they can be easier. The challenge lies, in most of these complex projects, in this breaking-down step.

Most folks dive in and start coding, and get frustrated when things get dicey. Slow down, map out the process, the steps, and write down your questions. Bring them to groups like this. Ask silly questions!


Thank you, I appreciate it.

I knew it was difficult to learn but I didn’t give it enough credit. I will keep the repetitions up and thank you so much for the videos.

1 Like

Thank you for the support!

I know what some of the parts mean but I seem to get stuck just trying to figure out where to start, or how to properly structure where to start. I feel I can “read” it but can’t(edit: spelling) write it.

I will keep at it.

1 Like

Programming is 100% breaking down a problem into parts you can work with. You can break down in a problem in a 100 different ways, just figuring out what way is best is key.

Doesn’t matter the programming language or the program you are writing, it all needs to be broken down into smaller steps.

One way programmers like to do this is object oriented programming. Store functions in constructor classes and then make copies of the constructor classes when you need to use those functions (even JavaScript itself does this).

It gets more basic then objects if you think about how programmers simply break down problems into functions. Storing code in functions allows for later reuse.

You could create a entire program without declaring your own functions or objects, its just not the best way to break it down though.


I’m currently learning JS on FCC (after completing the RWD) and I’ve come to realize this is arguably the most difficult, yet most important step - breaking stuff down to the smallest component. Learning to do this is an invaluable skill that might take some time to acquire.


This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.