Starting to Think FreeCodeCamp Doesn't Actually Teach

Back end is what I plan to transition into. I’m sure technically it’ll be more difficult but that’d be preferable over constantly facing my design ineptitude >.<

1 Like

Hey man its all good. Its ok to feel lost in despair. That’s the thing about doing something really hard. It’s going to be difficult and you’re going to need help. I felt this way about a month ago and man its hard to shoot for a goal when you’re shooting in the dark.

The thing that has helped me and maybe will help you is watch youtube videos on how they came to that solution or look up some code. After that write it down on a piece of paper (pretty old school i know) and rewrite that solution over and over again

Do THIS every single day and your mind will eventually come to understand what is going on when you use certain methods and function etc.

The thing about these problems is that we were never exposed to them so if you were never exposed to it how can you possibly figure it out right? Well the only way is to watch a couple tutorials, read, and practice. Once you’re completely balanced and confident you can do it on your own! Thats the beauty of learning new things.

Lastly being a programmer is HARD if it was easy then everyone would be programming :smile: It takes a certain person to push themselves and i know you’ll be able to do this. Good Luck M8!


Interesting. I find some of the psets in CS50 to be much, much more difficult. Like Server.c… Wow.

It’s really just a matter of 1. the passage of time and 2. doing it every day.

I only now sometimes feel like I’m starting to get it, and I started FCC in July. [Currently going through a process of polishing, fixing and, in some cases, redoing, before I apply for Front End certification.]

I’ve not yet done CS50 (totally on my bucket list for the year, though), but I believe FCC is designed to take a total beginner from ground zero to floor zero of the building you just got your job in. :wink: Actually, I tend to think that an experienced programmer would probably be a bit bored by FCC, as the projects can be a bit basic and pointless (except as the learning exercises they’re meant to be), and the algorithms can be simple as well for someone more experienced. That’s ok! As a lot of people said, FCC’s main goal I think is to make you research, think, struggle through the answers. And each answer builds in complexity. Each problem will make you stronger, but the struggle is real. There’s no easy way to learn to code; only you can learn the materials you need, no one else can learn them for you, but at least FCC provides a map and exercises to help you through. Read, Search, Ask. And don’t be afraid to use other learning resources when needed.

1 Like


CS50 is difficult but they provide learners the lessons by providing even the very very basics of programming logic. It’s like training wheels when learning to ride a bike. Don’t get me wrong, I love FCC but it seems that the lessons look like a review if you had prior programming knowledge. Just like the AJAX part. Sorry for my English. I hope you get what I meant.

Your English is just fine. I get what you’re saying. Computer Science is different from learning Web Development, period. In reality, I imagine, its (Web Development’s) place within Computer Science can be equated with the section within CS50 that focuses on Web Development (what is it, the last two psets?).

Apparently all of FCC’s curriculum is going to be revamped, I heard on New Years Eve panel.

1 Like

In my opinion there is nothing wrong to read man/help/references/etc pages.

Any type of coding is meant to make you think, algorithms especially. If you get stuck and are making mistakes well then thats just one more thing you dont know but also one more thing you can learn. Practice definitely makes perfect in these accounts. “ First, solve the problem. Then, write the code ” ~ keep trying its just another hurdle and it feels great when it does start to make sense.


Everything is useless until you need it. Maybe a lot of the stuff you leaned in here is useless to you because the problems you had to solve didn’t require that knowledge (like the algorithms, etc). Not long ago I started a test project to put all the stuff I learned in here (and other sites) into practice and… surprise! I suddenly had to use something I thought I would never use.

1 Like

Don’t worry. I am in uni and a lot of people in my course would say the same about the course.
Often often all it takes is to sit with the problem (this next bit will sound daft but often works) then explain the problem to an inanimate object(or a pet). After explaining the problem, explain to said item how you would solve it if you had infinite time and could do it by hand(as in break the problem into the small chunks ans work a way to do those chunks).
After this ask your self. In language x do I know of a way to quickly complete this sub-task if so use it, otherwise go back to the past examples and see if there is an example for it you have done, if not try googling the subtasks goal and the language. you may fins a solution e.g. “how to sort array in javascript” may show arr.sort().
In the end learning a to programme is like learning a new verbal language. You can’t be expected to learn the entire vocabulary in a few months, but you would get to a point where you can get by for a lot of scenarios. But you do get better and several languages follow traits you can learn.
The hardest thing to learn. And the bit which will stick with you no mater what language or library you use is the problem solving or the breaking the task to sizeable chunks :slight_smile:

Don’t give up :slight_smile:

1 Like

All the responses and overall support has been great. It’s nice to see so many people admittedly going through the same thing and all chiming in. I think this thread has already helped a lot of people understand they’re not alone in their periodic frustrations.

As a bit of an update, since posting this I’ve gotten through all my Intermediate Projects and am burning through the Intermediate Algorithms. I’ve also started the Javascript Calc Project and am 80% sure I already know exactly how to code the functionality (the CSS to create the calculator is another matter entirely >.< but today I did learn how to make 3D buttons without a template or any outside assistance).

Since this thread has gotten so much attention and it seems people are reading the initial post and not going through the thread before replying - it’s a fairly long thread and we all have code to write after all - I think I’ll just leave this - my calmer response after creating this knee jerk reaction post - here for people who may have missed it:


If you don’t have 12 tabs of the Mozilla Javascript documentation open while you do the algorithm assignments you are either a savant or you are expecting Free Code Camp to hold your hand too much. Lets say you need to do something with an array and you are not sure what would work best, go to the documentation, then standard built in objects, then array and on the left side you will see a giant list of methods you can use. Look through them, if you see one that you think would work click on it and read very carefully through the description of what it does and how to use it. Do this about a hundred times and you may remember a couple well enough to not have to reference the page before using it, but you probably still should just to brush up on the particulars. Documentation, Documentation, Documentation, you can really learn a lot by just sitting down and reading through some of it when you get stuck on a problem. If you read the documentation and still don’t get it, just type the method into google and find some stackoverflow questions dealing with common problems that beginners have using them.


I don’t know certain commands even exist in the first place.

Completely correct, FCC doesnt teach you JS fully, nor do you need to know every JS command to actually make the challenges.

Before i Started FCC code challenges I read up on 2 JS books (In These discussions, I have to always mention they are pdf’s as FCC students tend to hate paper or something for some weird reason).
Therefor I completed all JS challenges in 2 days. Because I knew AT LEAST THE BASIC commands or knew what to look up if I forgot details.

I recommend people to do same route,

We all have this issue I guess. IMHO you do not have to remember everything. Google is your best friend to if you do not know how to solve it just search for it. The best way to practice the things you learn from FCC is to apply them in real projects. Build small things first then enhance them slowly. Whatever happens dont be distracted and dont give up!

Happy Coding!

PS - I am still new and dont even have a CS Degree. But I learn everything online and now have a fulltime job as a Software Dev (and I still dont know what I am doing! lol). I started late (30s now). So I am pretty sure everyone can do it. JUST DONT EFFIN GIVE UP! :smiley:

I would suggest creating flashcards and memorizing concepts, processes, or whatever it is you need help with. So far, even though I’m pretty much a straight up newbie (just about to enter the jQuery section for the Front End Development part), there’s a lot of stuff covered that I know I’ll need to reference sometime when I start projects. Maybe try making a quizlet. :slight_smile:

I don’t have this issue, only because I just started on FCC’s HTML /CSS/and bootstrap on prior knowledge that I’m getting from a Wed Dev Course on udemy on doing on a tandem.
so I essentially do some coding over there and come here to do the challenges as a reinforcement. but I’m not new to coding, so my case might be different.

Some advice on how to improve retention of the things that are causing stumbling blocks.

If you are having trouble during an algorithm challenge, for example, identify the thing that you know can be done but don’t recall how to do. Write it down! Also write down how to do that thing (which you find out how to do, possibly by searching online). Basically, keep a notebook.

.I’ve seen this advice given for systems administrators. If they document every time they come to a problem that they didn’t know how to solve, along with the solution and how it was found, they eventually come to understand what they don’t know. Basically, it’s about improving the method of knowing what needs to be known and learning it, and because everyone learns differently. All the same, the act of documenting the knowledge gaps and how you solved the problems makes that learning problem into a personal one, that can help you to understand how to solve it.


Had a break after html/css… Exactly, most of the times when you get stuck, you google or go to stack overflow… I have a programmer friend who gave me step by step challenges as well… essentially i got linux running in vbox, so i could access it via ssh (putty) … so i could write in windows, and update on linux webserver… basicly what i learned is how to use linux… how to use CLis… got node running with express with ease… then realized i havent even completed front-end stuff on FCC… so im back here doing basic javascript… i just feel i won’t understand express otherwise… but i’m pretty much know why my friend tries to teach back-end instead of front-end , he personally is really bad at design and hates tinkering with css for hours… and he wants to give few of his client apps for me to maintain/change regularly when needed…
got a bit distracted… my main point was actually… that i tried to use vbox with symlinks, so i could access localhost on my linux VM … terminal gave myriad of errors, tried to fix the thing for 2 days… then my friend realized he fucked up :smiley: that you can’t even create symlinks long time already in vbox for security reasons…

basicly programming/scripting is 90% fixing bugs/errors , 10% actually writing something. (seems so)… :smiley:

You learn algorithms by doing algorithms.

The ‘google translate effect’ diminishes over time but FCC is especially tricky because they constantly throw new things at you.

I’d say Codewars > FCC if you want to learn to do algorithmic puzzles. That way you find yourself searching the same thing until it sticks. Your searches will start to look like ‘how to remove an index from an array javascript’ to looking like ‘what is the difference bet slice and splice javascript’ and things will start to click. You’ll learn the power of arrays, you’ll learn how to manipulate them with dexterity using callbacks and in between you’ll learn / come up with mini-methods of getting things done.

If you want to do discordapp screen sharing, I can pair program challenges with you. It would probably be pretty helpful.

1 Like