Until recently, I had been coding mostly in Python. I’m not an expert, but have a fair understanding of PEPs and practices.
But now I work with JavaScript/TypeScript project, and my knowledge is definitely lacking. I was following these only in the university, when there was still a chance that I had to do web development. I distinctly remember the moment of downloading “You Don’t Know JS: this & Object Prototypes” book and thinking “nope, that’s it, I don’t want to deal with such language.”
Anyway, I’m in dire need of relearning JS and TS. After experience with Python I know better how important it is to lint, follow a style guide, and type, type, type it all. For learning I prefer books and articles, but also noticed growing appreciation for videos. Yes, they are less efficient, longer, but you can use them during some “brainless” time and revisit interesting topics afterwards in a more thorough fashion.
Here is the list of resources I’m using now:
- “You Don’t Know JS Yet (book series)” by Kyle Simpson, 2nd and 1st editions. Keep in mind, the author is known for some controversial views, don’t treat these books as a holy grail. Do your research (as always).
- javascript.info
- Traversy Media channel on YouTube
- ECMAScript compatibility and node.js support tables. Nice for quick links to standards and docs.
- Good old MDN.
- Airbnb JavaScript style guide and Standard style for checking practices. You can learn interesting things just by reading rules and discussions that introduced them.
- Official “The TypeScript Handbook”.
- “TypeScript Deep Dive” by Basarat Ali and his YouTube channel.
- Courses from FrontendMasters. Still evaluating, but I don’t believe the price is worth it for me. But if you’re a video-oriented learner, I suppose, this resource is one of the best, simply because these courses are updated.
On the side note, I think I’ll be migrating this blog from Pelican to Hugo (learning Go, why not) or something JS-y for a nice added practice. Though, the actual reason is that it’s built with an older Pelican version, which is very slow, so I have to spend time on either upgrading or migrating anyway.