This looks really good and I'll probably read a little here and there when I get the urge. But I don't think deep knowledge of JavaScript will pay off in today's web development world.
I deep dived JavaScript many years ago so I could move away from C#. It was only useful in interviews so I could answer all the esoteric trivia. On the job it was using JS frameworks and libraries like Lodash. And then TypeScript came along and eclipsed it all together.
You're better off learning just enough JavaScript and then deep diving TypeScript and Angular, React, or another framework.
After 12 years of software development, I've come to the conclusion that software managers are not needed. From what I can tell, they have meetings, try to get people to work more, and approve time off.
The best team I've been on didn't have a manager. The lead developer handled communication with the IT Director about project status; and that wasn't very often.
We had no meetings, or KPI goals, and other such nonsense. That is, until the company was bought. Everything changed after that and traditional management took over. Most people left within a year.
I don't feel bad for the guy. The last thing a recovering addict needs is a source for drugs and that's what he is.
Addicts can't just stop and never do drugs again like a normal person. If it's there, they'll take it. It's not about strength and being able to walk away. It never goes away for an addict and the best they can do is avoid situations where drugs will be presented. Isolation from users is the best course of action.
Also, many people abuse drugs and even become addicted, but are not addicts. An addict is wired differently.
They may benefit from it, but they won't pay more if it's not required. So if you expect more compensation for your mastery, you may get passed over for someone with less skill, but the required skill.
It's horrible and I wish I'd kept programming as a hobby. The continual 'evolution' is ridiculous, as we build and rebuild the same things with newer tools. Often project management is more important than building things and build tools became an obsession as more layers started to come between writing code and seeing results. Agile, TDD, Testing, Design Patterns are all topics that muddied the waters. And with people on both sides of the fence with these practices, it gets very tiring and you just want to find refuge outside of it all. A place where the tools don't change each year and a half, or where the best practices can easily be agreed upon.
I've never had problems that strong typing would have prevented and see no use for them in languages that originally didn't provide them. They add noise to the code and require more effort in reading around them.
I deep dived JavaScript many years ago so I could move away from C#. It was only useful in interviews so I could answer all the esoteric trivia. On the job it was using JS frameworks and libraries like Lodash. And then TypeScript came along and eclipsed it all together.
You're better off learning just enough JavaScript and then deep diving TypeScript and Angular, React, or another framework.