[Draft Release #1]
How to learn JS very well?
(a) Start with easy basics on Sololearn. Finish two courses: "Intro to JS" and "JavaScript Intermediate".
- At this moment, don't just copy-paste others people's code without understanding. Understanding every line that you write in code is very crucial for your success.
- Use MDN for the official docs and more in-depth knowledge.
(b) If you feel a little confident, be serious about JS basics on freeCodeCamp. Finish the following courses:
- "JavaScript Algorithms and Data Structures" - Don't forget to build these things by yourself using JS: Palindrome Checker, Roman Numeral Converter, Caesars Cipher, Telephone Number Validator, Cash Register
- Try to clearly distinguish among the 3 paradigms in JS: Procedural, Object-oriented and Functional Programming. Build a Todo app with offline local storage support in both OOP and FP paradigms. You may finish the first version naively in somewhat procedural way. Make it work without any bugs. Then convert the code to OOP and FP separately.
You may create two git branches: one for OOP, another for FP.
How to learn TS very well?
(a) Learn from TypeScript gurus and wizards:
- Beginner's TypeScript by Matt Pocock
- No BS TS YouTube series by Jack Herrington. Learn up to
No BS TS #19 - Utility Types in Typescript - Part 2
and skip React with TS and other advanced patterns for now. - Convert your previously built Todo app from JS to TS. Use TS
interface
feature in OOP branch and TStype
feature in FP branch. Never useany
keyword or suppress using!
symbol at last. - Learn more from the official sources: TS for JS Programmers and TS Handbook
(a) Take a free tour of react.gg - The interactive way to master modern React
(b) React's official docs site is the best way to learn React: https://react.dev/learn
(c) Jack Herrington has a good YouTube series. It might get outdated after a few years so keep eyes on his channel.
(d) React with TypeScript by Matt Pocock
(e) Recreate your previous Todo app in React with TypeScript.
[todo]
[todo]
[todo]
(a) The Last Algorithms Course You'll Need by ThePrimeagen
- Don't limit yourself to one or two programming languages.
- Learn C & Rust. Target Web Assembly.
- Learn Python for AI & Machine Learning.
- Learn the best stack in the technology you want to work on.