What you’re stating is obvious but it’s difficult to actually do. This is, in fact, what everyone working on it is trying to do.
What’s good about this is that you can actually contribute your specific ideas on how to improve the instructions. “Should be beginner friendly” isn’t a specific change that can be made by anyone, unfortunately.
If you want to improve the curriculum and you have an idea of how to make it more beginner-friendly:
link to a specific step
describe what’s wrong and how it can be improved
provide your idea of the exact wording that will make it more clear
engage in discussion about different possibilities
I was doing the JavaScript curriculum with freeCodeCamp. I did 4 projects only and I decided to stop because I still didn’t know JavaScript. With responsive web design course here on FreeCodeCamp, 4 projects in and I had an understanding because I could attempt a project on my own.
That’s what we go through as self taught developers at a beginners level. I’m now with YouTube, there’s plenty of people who can teach you coding there. I’m using YouTube to learn JavaScript as a beginner
Look for other sources. The mdn developers network didn’t cut it out for me.
Make sure you are stopping to experiment and modify the code you see on YouTube. It’s easy to fall into tutorial hell on YouTube and ultimately not be able to independently create code.
I totally understand where you’re coming from! Sometimes the instructions can be challenging, especially for those who are new to coding. I think one way to address this could be to include more examples or step-by-step explanations alongside the documentation links. That way, beginners can have both the high-level view and practical guidance. FreeCodeCamp has been an amazing resource for me as well, and I believe this change could make the learning process even smoother for everyone. Thanks for sharing your thoughts!
I will admit, I too face many of the difficulties discussed here on this thread, and I will also confess it has made me feel a bit better knowing I’m not the only one experiencing these kind of difficulties. I am currently doing the first Javascript course.
My thoughts on this:
The course is still in the Beta stage, so I completely understand fCC’s struggle to keep the lessons both productive and instructive. When I come across instructions I don’t understand, I read them through many times over, inspect the code, look up new terms and sometimes even scroll through posts about that step here on the forum. This almost always works, although I can’t help feeling a bit of guilt as moving on to the next step knowing I half-“cheated” on the first one.
“Cheating”, I have found, in the world of programming at least, is not quite how I considered cheating to be. I was shocked to learn that experienced developers Google things all the time as well. The most important part is to discover the answer on your own - finding the components of that answer by scrolling through documentation or stack overflow posts is fine. Actually, researching like that is a necessary part of the learning process. It took me a long time to accept that, that I couldn’t just code through all of my ideas without checking the docs and stack overflow, but now I realize that I have learned more researching like that than just following lesson steps.
A lot of the problems I read in these kind of posts seem to me to be, in many cases, not so much a problem with fCC’s curriculum, but with learning programming in general. Look, programming is hard, especially the leap from HTML and CSS to JS. Computer logic isn’t quite logical to our brains, and we have to train and create entirely new thinking patterns. Getting stumped on a fCC project step is to be expected. The only thing to worry about is getting out of being stumped. If you managed, and you understood how you got out of it well-enough so as not to get stumped on that concept again, you’re making progress. And there’s no need to worry. It’s simply how programming is learned.
Some steps do need to be revised - certainly. But you need to specify exactly which ones you think need work. And you need to explain what is it you couldn’t get. Maybe a step should be split into two steps for clarity. Or maybe it’s just a matter of wording. Either way, you need to be precise - just complaining about the difficulties of the course in general is more of a complaint about how programming works than fCC’s Beta courses.
Rejoice when you get stumped. Because now’s an opportunity to see if you have the problem solving skills it takes to be a programmer. And don’t feel guilty about looking up other resources to understand a concept. As long as you’re not simply copy-pasting answers, you’re fine. Learn concepts, not just the answer to a single annoying step. And if you think an explanation on a step could be more instructive than it currently is, please open a topic and discuss it with us.
If the project-based method isn’t enough for you, the old fCC curriculums for HTML and CSS, JS and Python are still available at the bottom of the curriculum page under Explore our Legacy Curriculum. Perhaps supplementing the project-based course with challenges from the Legacy course on concepts you’re struggling with is a suggestion.