- Memorize the basic language features in JS.
- Step through simple scripts exactly like the computer does.
No matter how smart you are, or how good you are at what you did before learning to code, be prepared to struggle. This is totally normal. Being good at programming (or learning it quickly) are not indicators of how intelligent you are. They are indicators of how close your thinking style is to that of a computer programmer.
Don't be discouraged! If you master these fundamentals now, you will be prepared to learn the principles of software development and real-world problem solving.
So study hard! Dig in now, and keep at it every day. The more you prepare, the more everyone will benefit.
- Fundamental JS syntax & language features
- Sketching runtime behavior on paper
- Using online code visualization tools
- Stepping through code
- Using console.assert to test tracing predictions
- You'll want to build your own 'vocabulary list' to keep track of the built-in JS language features as you come across them. One of the most common difficulties in the early stages of programming is just remembering all of the language features available!
- Having a complete list of everything you know, written in your own words, will be invaluable as you try to start to solve programming challenges on your own.
- Start building a collection of clear code samples & sketches that have helped you understand key concepts, we recommend trying to store them in a directory of Markdown files.
- Familiarize yourself with the JS Tool Kit, especially:
- Study JS Fundamentals through 4.iii:
- The JS Notional Machine
- Deliberate Practice
- Visualize Behavior
- Self Assessment
- JS: Variables & Types
- JS: Scope & Control Flow
- JS: Scope & Context
- Practice whatever keeps you motivated. If you find one tutorial too easy, hard, or boring, move on! What's important is that you can predict how JS will execute simple programs, not the tutorials you complete.
- Stay involved! Studying a little bit (even 15 minutes) every day and staying active on Slack will make you life a lot easier.
What is JS?
- "Preface" from You Don't Know JS
- "What is JS" from Practical JavaScirpt
- "What is JS" from MDN
Great online Tutorials:
- FreeCodeCamp & video series - Great community support.
- Khan Academy - Visual & interactive programming environment with guiding videos and detailed lessons.
References from the web
- Beau Teaches JS - youtube series
- Slack! Don't forget to ask each other for help.
- Let us know if we're missing any great resources!