DOM Manipulation or Frontend Libraries?

I’m completing the Javascript Data Structures and Algorithms certification from the curriculum. Now, should I just go to the next certification, Frontend Libraries or learn DOM manipulation first. I’m new to coding and i know basic HTML and CSS.

1 Like

Had a similar question in mind for a while. After a bunch of googling and hand wringing, I concluded it’s a case where “two reasonable people may disagree”. Which doesn’t help much, yet …

The argument for going deep on plain JavaScript DOM manipulation first, is often that you will learn things ‘better/more thoroughly’. Kinda like you would be building up technical debt if you don’t. You can find stern warnings on the interwebs, that you will never get rid of it. And at first - being somewhat of a sucker for purist ideas and desperate for a clear answer on what would be the ‘best’ way to go about learning this - I bought into that argument.

Then one day in a bookstore I stumbled upon the popular ‘JavaScript & jQuery’ by Jon Duckett. He argued the other way, that learning DOM manipulation with jQuery first is a good way to go, because the learning curve is not as steep as with plain JavaScript. In his experience students make good progress by getting their feed wet with the library and learning more about the language later.

Whichever camp people are in, they seem to agree with the point that plain JavaScript is harder. Plus, that jQuery is remarkably well written and solves a bunch of tricky DOM manipulation scenarios in an intelligent way.

Initially, I also didn’t realize just how widespread the use of jQuery is. It first dawned on me when I searched for answers on StackOverflow and time and again answers would use jQuery, without really mentioning it. Like people take it as a given that you know it … getting curious I found these stats. Seems to be something like the Michael Jordan of JavaScript libraries …

And then there are the JavaScript frameworks … So it looks to me like most of the DOM manipulation being done nowadays uses some form of library. I still haven’t got a clear cut answer. I like Jocko Willink’s (not coding specific) advice to use ‘iterative decision-making’. Roughly meaning: take a smaller reversible step, assess how things went, correct course if needed, repeat; I think you can do the same thing with your learning journey. Whether you go libraries-first or plain JavaScript first, you can correct course if it doesn’t work for you.

Personally, I am on the ‘dirty’ library route, with the goal in the back of my head to look out for what comes from a library and what is the language itself. It’s not ‘pure’, but I am also not procrastinating …

I am still very much a learner myself. So please assess my words critically and see them as the perspective of fellow student that they are.

2 Likes

And appreciated. Thank you very much @michaelsndr !

1 Like

I also realized a certain omission and rushed to study the DOM on a third-party resource. :exploding_head:
But then I thought: FCC is the most thoughtful course, and if the training is built on this logic, then apparently there are reasons for this structure.
I trust FCC, so I start with the libraries :kissing_heart: