JavaScript
ReactJS (JavaScript Library)
https://reactjs.org/
methodical learner
https://github.com/facebook/create-react-app
React static generator
https://github.com/gatsbyjs/gatsby
ECMAScript 6
http://es6-features.org/#Constants
https://ponyfoo.com/books/practical-modern-javascript/chapters
This is where State Management comes in. Instead of storing your state (in other words, your data) bit by bit in each component, you store it in a single global store that then dispatches it to your React components:
You can think of Redux as a bank: you can’t go to your local branch and manually modify your account total (“here, let me just add a couple extra zeroes!”). Instead, you fill out a deposit form, then give it to a bank teller authorized to perform the action.
Similarly, Redux also won’t let you modify your global state directly. Instead, you pass actions to reducers, special functions that perform the operation and return the new, updated state as a result.
https://github.com/reduxjs/redux-devtools
https://egghead.io/courses/getting-started-with-redux
GraphQL exposes a single endpoint that lets the client query for the data it needs.
Think of it as making multiple trips to the butcher shop, bakery, and grocery store, versus giving someone a shopping list and sending them on their way to all three.
https://www.apollographql.com/
Vue.js
Compared to React, some of its key selling points are:
Officially-maintained routing and state management libraries.
Focus on performance.
Lower learning curve thanks to using HTML-based templates.
Less boilerplate code.
As it stands, the two main things that still give React an edge over Vue are the size of the React ecosystem, and React Native (more on this later). But I wouldn’t be surprised to see Vue catch up soon!
Elm
Elm is not just a framework, but an entire new language that compiles down to JavaScript.
This brings multiple advantages, such as improved performance, enforced semantic versioning, and no runtime exceptions.
JavaScript Server-side
Node, ExpressJS
JavaScript Testing
Jest, Enzyme
Build Tools
Webpack
Type Systems
TypeScript, Flow
CSS Modules
Styled Components
Expressions vs Statements
Expressions
Statements
JavaScript Optional Chaining Operator
https://medium.com/@adambene/optional-chaining-operator-in-javascript-342082de2db
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Optional_chaining
https://www.javascripttutorial.net/es-next/javascript-optional-chaining-operator/
Courses
HTML, CSS, and JavaScript: The Big Picture - Pluralsight
https://app.pluralsight.com/library/courses/html-css-javascript-big-picture/exercise-files
https://www.freecodecamp.org/news/javascript-dom-build-a-calculator-app/
Resources
References
https://medium.freecodecamp.org/a-study-plan-to-cure-javascript-fatigue-8ad3a54f2eb1
https://hackernoon.com/how-it-feels-to-learn-javascript-in-2016-d3a717dd577f