JavaScript:
Fundamentally understand the following concepts:
JS1
[ ] Variables [var, let, const]
[ ] Basic Data types [Strings, Numbers, Arrays, Booleans]
[ ] Operators
[ ] Naming conventions
[ ] Conditions
[ ] Advanced data types [Objects]
[ ] Statements vs Expressions
[ ] Loops (for/while)
[ ] Functions
JS2
[ ] Capturing user input
[ ] Basic DOM manipulations [img src, innerHTML]
[ ] Code debugging using the browser
[ ] Code commenting
[ ] Structuring code files
[ ] Functions + JSON/Array
[ ] Array Manipulations
[ ] JSON
[ ] Map and filter
[ ] Arrow functions
[ ] Closures
[ ] Scope
[ ] Events
JS3
[ ] Callbacks
[ ] Object Oriented Programming
[ ] Code flow (order of execution)
[ ] Async VS Sync
[ ] Structure for a basic SPA
[ ] XHTTP Requests
[ ] API calls
[ ] (re)writing data structures (in JSON)
[ ] Promises
Generally understand the following concepts:
Database:
[ ]Entities
[ ]The relational model
[ ] The Structured Query Language (SQL)
[ ] The construction of a database system
[ ] MySQL as an example of a relational database system
[ ] Non-relational data and NoSQL
[ ] MongoDB as an example of a NoSQL database
Node:
[ ] What is Node.js?
[ ] Using Node Package Manager (NPM)
[ ] Using require to include modules
[ ] Using http to handle http requests and respond
[ ] Using fs to read from and write to files.
[ ] Using process to read arguments from the CLI
[ ] Using express to make a RESTful API
React
[ ] React Components
[ ] State and Lifecycle
[ ] Forms and Managing State
[ ] Flux & MobX
[ ] API Integration
Print out the checklist above. For the JavaScript fundamentals, we suggest to do the following:
Step 1. Learn the concept fundamentally. Make sure you really understand the concept.
- How it works
- What it does exactly, and how it can be used.
- When to use it, when not to use it.
- Try to explain the concept clearly to another person. (Make sure you actually try this)
Sugggested resources : javascript.info
Step 2. Apply concept
You don’t fully understand a concept unless you can apply it in a context. Write code that uses the concept in various ways and make sure you use it in the way it is intended. (And run it to make sure it works)
Suggestions:
Codewars.com Alghoritmic challenges, based per subject. Search per subject on the website. (Don’t do kata’s lower than 6) Freecodecamp.com challenges and explanation per concept Building your own application, in which you start to apply the above concepts
Step 3. Re-read homework
Re-read your homework, and see how the concepts are applied in the homework assignment related to the subject. Re-write (part of) the code again to make sure you master it
Step 4. Check it off
Check the box off the checklist. Move on to next subject.