That's a great resource for high schoolers who are trying to find a career path. I have also seen something similar to this at Khanacademy - their "meet the professional" series and also some video interviews on different careers [1].
I personally would rather read than watch because I can take-in more information faster, and I'm less willing to sit through a video from a source I'm not already connected to or familiar with (as oppose to say my favorite comedian). But given how popular many YouTube channels and videos are for people teaching various skills, maybe I should include video.
Edit: after looking at this part of Khan Academy (which I'm a fan of), the frustration I have with many of these career sites or content is that they don't focus on what doing a job is actually like nor provide enough detail. You do a job for 8 hours a day, I want to know what I will be doing during that time. Bonus if you also tell me details about what a career path for that job looks like.
I think a candidate needs to have both algorithmic and software design skills. Companies put a lot of emphasis on the former skill, ignoring the latter, which imo should equally be tested.
I'll plug "scopes & closures" and "this & object prototypes" as well. Fairly quick reads and you'll understand JS better than your average developer afterwards.
Kyle Simpson is crazy. Read the first third of any of his books and then put them down before you get to the part where he goes off the rails. The "Scopes and Closures" one is particularly ridiculous... He goes off on a tangent about how let bindings should be written with a specific syntax and don't worry he's written a transpiler for it so you don't have to bother using the standard.
He can get preachy about his preferred (subjective) method of solving some problems, but you can't deny he does a good job of explaining the fundamentals in an easy to understand manner. That is, it doesn't feel like reading a textbook.
Bottom line, the books have a lot value in them for the time investment it takes to read them.
I have always found a lack of books on advanced things that I've encountered in competitive programming like Fenwick trees, link-cut trees, rmq etc. Can anybody recommend book(s) that contain these things?
I don't know how many books there are on those topics. A lot of the data structures in higher level competitive programming problems have pretty niche uses. It might be best to look at papers instead. Here's one on the Fenwick/Binary Indexed Tree:
Check out Competitive Programming by the Halim brothers. One of the best books on the subject, explains many algorithms and different problem types you will find in a competitive setting. The book also includes solutions to 100s of UvA problems.