Not sure if JS course is badly written or im an idiot

Im finding im watching literally every video because the description of what im doing is misleading at best or just a waste of time reading because it gives little to no insight if i didn’t have other resources that actually explain the process properly i would have just been hardstuck and quit.

Most likely neither.

Knowing more, which parts are making you confused, or how description is misleading, would allow to give more relevant answer to the true question here. There are some very confusing concepts, yes, especially if somebody didn’t have contact with programming before.

Remember you can always ask for help with challenge.

The thing is I get about 80% of it, it hasn’t really been difficult for HTML or CSS. Javascript i get the concepts mostly arrays/loops/if statements not really that tricky then i got to the last 3rd of the basic JS and i hit a brick wall in progress im either watching videos on Udemy to explain the concepts better than the two or three sentences and some example that has nothing to do with how im meant to use the method in the context of the problem.

1 Like

I will be honest, it isn’t easy despite what a lot of people try to say.

HTML/CSS portion are the easy bits (at first) to build confidence but it only gets harder from there. JS will be difficult and this is why a lot of people quit/give up at this first hurdle. You won’t learn everything from fcc so you will need external resources, my favorite was MDN docs.

Just be prepared as it does it harder once you delve into React (this is where I think FCC actually falters, the React/Redux portion are not good)

3 Likes

If I remember correctly the last half has challenges like record collection and recursion.

It is normal to feel this way.

Most people struggle when learning their first programming language.

Whenever you are stuck on a challenge, come to the forum and we can help you :grinning:

3 Likes

I went though the javascript portion once looking at a good portion of the hints and googling videos explaining step by step what was going on. Feeling like i understood most of it, but was still somehow stuck not getting it at the same time. Then i went back over the javascript portion somewhere around halfway through (i think that’s when they take the training wheels off and ask you to really start using javascript on your own, not just explaining portions of it) and was able to follow along much better with just the text not looking at hints. It just took some time for things to sink in and for me to understand what everything was called and how to use them and stuff like that. Its not the easiest thing in the world to follow, and everyone learns differently. It just takes time, persistence and not getting too frustrated and walking away because it is difficult to learn some of this stuff.

There are aspects of the courses that i think could be changed that would personally help me. But after i went back over the course with a much better understanding i saw that they do explain the basics, its just that it may only get mentioned once and it might not stick. Just keep practicing and it gets easier, but i would say learning it is not easy.

5 Likes

if you failed just try bro, keep in mind that without mistake or failure you cant learn, just keep learning dont quit

me too but im studying only 3am and 10am in the morning

1 Like

HTML and CSS are different than a full fledged programming language. It is difficult and it will take time, but I firmly believe that anyone who has the time and energy to put forth can learn how to code.

Using other resources and asking questions is important for every developer.

3 Likes

it’s just badly written

in the exercise that explains the “map method”

the explanation of said method is to do this || const names = users.map(user => user.name);||

the actual answer on the other hand is || const ratings = watchList.map(({ Title: title, imdbRating: rating }) => ({title, rating})); ||

the answer is not so much as hinted at in the reading.

if im really so good at JS that i can know that off-hand or be able to find a meaningful reference on some other website. then why am i on a tutorial website like FCC in the first place?

If you think a challenge that can be improved, please make a thread in #contributors or a GitHub Issue.

This is intentional. You can’t learn programming by just copy-pasting examples and changing variable names. By the time you get to the lesson you are referencing, you should be able to synthesize multiple previous lessons with the content of the current lesson and produce a solution. All of the content needed to pass this challenge is covered in this challenge and previous ones. This is can be tricky for learners though, so that’s why the forum exists to let users ask questions.

the exercise claimed to be introducing me to a new JS tool and allowing me to use the tool in the context of a critical thinking exercise.

the syntax is generally arbitrary it could be anything and if im a new user of JS its going to be near impossible to guess even though i saw something related to what im supposed to do 30 exercises ago for the very first time.

saying that trying to figure out arbitrary syntax is part of the critical thinking exercise seems a little like a cop out and it also makes it difficult for me to come back and use this section as a reference later on.

There should be no guessing. Nothing about that exercise is ‘arbitrary’ or random.

The exercise in question wants you to use .map to take an array of objects and create a new array of similar objects.

This requires two pieces of knowledge

  1. How to call .map on an array. (Example given)

  2. How to create a new object from attributes of another object. (Covered in previous challenges)

Synthesizing these two pieces of knowledge can be hard for some learners, but moving from ‘copy-paste’ mimicry to actual programming requires that you gain this skill. This skill must be learned and we try to baby-step you towards it throughout the curriculum.

Some learners take longer to develop this skill than others. Everyone is different. That’s where the forum comes in. If you have confusion about particular parts of a lesson, you can ask clarifying questions on the forum.

If you don’t feel comfortable asking questions, you can also Google additional resources. Looking up multiple resources is a critical skill that all programmers eventually need to develop, but using the forum let’s you hold off on needing that skill until you have a more developed vocabulary and sense of what you are looking for.

2 Likes

Don’t get me wrong i will complete the course out of sheer masochism if nothing else but just incredibly frustrating at times.

Oh, programming stays frustrating. I get paid to be very frustrated at my job. I’ve found the frustration to be a pretty universal element of learning and working in programming.

3 Likes

As you go deeper in the JavaScript it gets simpler then average and that’s why you hit a brick, it’s not because it’s harder i promise. Don’t assume when you can’t move forward, instead stop remind yourself of what you got understood, go drink some water or look out the balcony for a while, then get back at it. Even if you are in the middle of understanding one whole thing/challenge. You have to break the overwhelming process and get back after few minutes, you got it bro.

1 Like

Here: watch this carefully: even in watching this, you need to take your time:
The process of thinking

syntax of commands is pretty arbitrary and this really isn’t a “copy and paste” problem so much as it is a “necessary information not provided” problem.

it’s hardly an exaggeration to say that the two pieces of knowledge you’re referencing might have been covered 30 or more lessons ago. but its hard to check because as of now its still a little difficult to use FCC as a ref.

if you are going to teach a new tool then the explanation should cover the tool in its entirety. the critical thinking should come into play when it comes to how you use the tool.

we can all use google and i was sure to look up additional resources to try and solve this problem. but why would i come to FCC if im all ready so familiar with JS that i can just know what im looking for off the top of my head?

I would not call the syntax arbitrary. The syntax has specific meanings and those meanings were determined by the people who wrote Javascript.

The knowledge about map was provided in this lesson. The explanation of how to use map is there in its entirety. At its core, map makes a new array from an old via myArray.map('A callback function that takes the old array value and makes a new array value'). If you don’t understand from the explanation what map does, then you should ask questions… on the forum. Not every explanation will immediately make sense to every learner because everyone is different.

The required knowledge about objects was provided a few lessons ago, yes. If you don’t feel comfortable accessing object properties and creating objects, then you should be asking questions and you might be moving too quickly through the challenges. It sometimes is an indication that you are relying too heavily on copying answers that you look up.

In any case, learning programming is a hard and frustrating thing, no matter which resources you are using. That’s why the forum exists, so you can get free help from experts in the field.

Like I said… eventually you’ll need to learn how to Google effectively, but the forum is here to help you get to that point.

2 Likes

How come my post was had been liked before i posted it, like just before i finished writing it?
Is this a glitch in the forum?

1 Like