**Please note: this is the JavaScript planning/curriculum that was used at HackYourFuture Amsterdam until 10 November 2017. We now use a different planning which can be found in the master branch.** >Please help us improve and share your feedback! If you find better tutorials or links, please share them by opening a Pull Request. # HackYourJavaScript Here you can find course content and homework for the JavaScript 1,2 and 3 modules |Week|Topic|Read|Homework|Review| |----|-----|----|--------|------| |0.|Preparation for your first JavaScript session|[Pre-reading](/Week0/README.md) + [CLI Reading Week 1](https://github.com/HackYourFuture/CommandLine/blob/master/Lecture-1.md)|-| |1.|• [CLI](https://github.com/HackYourFuture/CommandLine) session with Unmesh :heart:
• Intro JavaScript (What is it, where can you use it for)
• Variables [var, let, const]
• Basic Data types [Strings, Numbers, Arrays, Booleans]
• Operators|[Reading Week 1](/Week1/README.md) | [Homework Week 1](/Week1/MAKEME.md)|[Review](/Week1/REVIEW.md)| |2.|• [CLI](https://github.com/HackYourFuture/CommandLine) session with Unmesh :balloon:
• Advanced data types [Objects]
• Conditions
• Statements vs Expressions
• Loops (for/while)
• Functions
• Naming conventions|[Reading Week 2](/Week2/README.md)|[Homework Week 2](/Week2/MAKEME.md)|[Review](/Week2/REVIEW.md)| |3.|• Closures
• Scope
• Array Manipulations
• Basic DOM manipulations [img src, innerHTML]
• Code commenting|[Reading Week 3](/Week3/README.md)|[Homework Week 3](/Week3/MAKEME.md)|[Review](/Week3/REVIEW.md)| |4.|• First Git Session with Unmesh :smiling_imp:
• JSON
• Code debugging using the browser
• Functions + JSON/Arrays
• Code flow (order of execution)
• (capturing user input)
• Structuring code files|[Reading Week 4](/Week4/README.md)|[JS](/Week4/MAKEME.md)|Review| |5.|• Second Git Session :see_no_evil:
• Events
• Callbacks
• XHTTP Requests
• API calls|[Reading Week 5](/Week5/README.md)|[Homework Week 5](/Week5/MAKEME.md)|[Review](/Week5/REVIEW.MD)| |6.|• Async VS Sync
• Polling
• Structure for a basic SPA
TEST :boom:|[Reading Week 6](/Week6/README.md)|[Homework Week 6](/Week6/MAKEME.md)|Review| |7.|• Third Git Session (Git Workflow :muscle:)
• Map, reduce, filter
• Arrow functions|[Reading Week 7](/Week7/README.md)|[Homework Week 7](/Week7/MAKEME.md)|[Review](/Week7/REVIEW.md)| |8.|• (re)writing data structures (in JSON)
• Closures
• Promises
|[Reading Week 8](/Week8/README.md)|[Homework Week 8](/Week8/MAKEME.md)|Review| |9.| • Object Literals (and other patterns)
TEST :boom:|[Reading Week 9](/Week9/README.md)|[Homework Week 9](/Week9/MAKEME.md)|[Review](/Week9/REVIEW.md)| __Kind note:__ We expect you to __always__ come prepared to the class on Sunday. ## Module goals: ### Week 1-3: A basic program with multiple functions (reacting to user input) ### Week 4-6: A tool capable of loading a JSON file and representing it in the DOM ### Week 7-9: A web app with external data source using at least one API 《〠_〠》 ### Overall A good understanding of all the above mentioned topics. Want to check your Knowledge? Go through the [JavaScript Fundamentals README](https://github.com/HackYourFuture/JavaScript/tree/master/fundamentals) and research/ ask for help (Slack!) with the concepts that are not entirely clear.