Previously I'd completed and written up some thought's on Free Code Camp's Scientific Computing with Python and Responsive Web Design certifications. I think people found those helpful, so here I am with some thoughts on their JavaScript cert, and hopefully it'll help some people decide whether it's worth it.
First - how long did it take? I didn't really time myself, but I'd estimate about 60 hours. It's a bit hard to say because I spent some of that time *thinking* about coding challenges and some of that time looking at other tutorials when I didn't understand certain lessons (more on that later). There are 7 'learning sections', 2 'scripting challenge' sections, and a final section of 5 projects that need to be completed in order to earn the cert.
Out of the three programs I've completed from FCC, this JavaScript one seems to be the most polished. Like the Responsive Web Design program, everything is done in the in-browser editor, which makes it really easy if you computer hop or can't set up your own dev environment. So I was able to complete a lot of this program with my work computer while on my lunch break.
Because I'd previously learned some Python, I was able to breeze through about 75% of this course. Many of the core concepts are the same, so I just had to learn a lot of syntax differences. There is a Regular Expressions section early on that I had some struggles with, but it turned out to be very important for many of the scripting challenges. In fact, I ended up using RegEx in 2 of the 5 final projects.
Speaking of the final projects, I didn't think any of them were too difficult. The final "Cash Register" project was the one I had to think about the most. But if you could figure out the core functionality of each project, it was easy to quickly finish them. There was no tedious output formatting like the Python cert had. I think these projects were pretty well designed. But most valuable were the basic and intermediate algorithm scripting challenges, which really forces you to use all the concepts you've learned.
Still, I think there are 2 flaws with the FCC JavaScript cert:
First: while most of the program is paced really well, once you get to the Object Oriented Programming and Functional Programming sections, the difficulty ramps up very fast. You are presented with big walls of text and (relatively) big chunks of code to figure out. The OOP section I was able to get through because I'd learned a lot of those concepts in Python, but a lot of the functional programming stuff (especially the .map and .filter functions), I had to just go and watch other tutorials on the subject. Also, I just had a hard time getting recursion down (and I still need to go and find more tutorials on that).
Second: The program is pure JavaScript. Nowhere do you learn how to use JS to interact with HTML & CSS. I think that's a big hole in the program. The next cert is on stuff like Bootstrap and React. So I guess the vanilla JS+HTML stuff is just skipped over?
Aside from that, I think it's a good cert to get (even if the cert doesn't really mean anything). I learned a ton, and I'm glad I did it.
Videos
Which one do you suggest better to learn in 2024 ?
“Legacy JavaScript Algorithms and Data Structures” course or “JavaScript Algorithms and Data Structures (Beta) course” ?
because the beta course looks like an improved iteration and it might offer updated content and better learning experiences.
Any idea? which course should be taken first?
As freecodecamp says courses should be taken in order, but a while ago "JavaScript Algorithms & Data Structures Certificate" was 2nd on the list after the "Responsive Web Design Certificate" course, but now I see "JavaScript Algorithms & Data Structures (Beta)" 2nd on the list.
Hi, so I started going through the JavaScript Algorithms and Data Structures legacy version before the beta came out and it was straightforward because they gave you a tutorial on the subject you were learning. Now in the new beta version they are implementing CSS and HTML and offering no tutorial on how to do things. What is the best way to go about completing this course? doing a CSS HTML intro before the javascript course? or just going along and googling everything as I'm doing the course?
A few weeks a go I saw a youtube video and I took a screenshot of one of the slides. I it talked about how to get good at js, how to go from framework consumer to framework creator
A side question: is the ability to create a framework (if one wants to) a sign of great proficiency?
Anyway, to get to that level (according to the video) you learn these things in order
-
Language proficiency
-
Data structures and algorithms
-
Design patterns.
I'm a hobbiest so I never bothered with codewars and the like, and just as I used to use jQuery and was "scared" of js, I would ignore the topic of Data structures and algorithms
The I looked at this freecodecamp course and there's:
-
Regular expressions (I actually need to learn this)
-
manipulating rrays and objects (check)
-
Basic Algorithm Scripting (knew all of it - I probably had to google 10%)
-
...
I used to think of Algorithms as things removed from what it takes to build a website. Things (only) scientists needed
Is that course actually correct? Because it really makes me sound stupid thinking it was high math or something.
Data structures are the bread and butter of coding. Any problem I see on codewars or a project in general the first thing I think of is 'how can I turn this into an array" lol.
Algorithms are hugely important. They're the difference between 5 lines of code and 50. You don't have to be a super genius with them, but it helps to make a somewhat complicated problem much easier to handle and solve.
A side question: is the ability to create a framework (if one wants to) a sign of great proficiency?
What do you mean by "framework" in this context?
Is that course actually correct? Because it really makes me sound stupid thinking it was high math or something.
Let's say you have different levels of DSA knowledge
-
Base knowledge for everyday use: Knowing a few structures (arrays, maps, sets) along with their methods and how they work. Have a rough idea of what complexity is and why that 3-level-deep for loop might not be the BIS solution
-
DSA for coding interviews / code challenges: All of the above + knowing graphs, trees, stacks, heaps, queues, along with their algorithms (dfs, bfs...) and solve problems with them. Also be comfortable with recursion, dynamic programming...
-
DSA expert for competitive programming: pretty much 2 but on steroids
I am close to completing the certificate for this section. When I completed the HTML/CSS certificate, I actually understood and saw the results of my code on a webpage or whatever application it had me working on. During this JavaScript portion I don't really see the results of my code and I feel like I don't know how to apply what I've learned. I only have two questions left in this section and I feel like I don't even know where to start with code to build a application or anything using JavaScript. I understood a lot of the basics, but I'm not sure how to apply it. I'm going to take some other courses as well, just look for some feedback. I'm excited to try to build things on my own.
I have finished much of the FCC curriculum. Since finishing, I never got a good grasp on Data structures and algorithms. What resources do you guys recommend to learn these?