Tutorial Ideas - kumavis/node-warrior GitHub Wiki
Concepts to teach
Our target demographic: People with some algebra concepts
Basics
- Why variables are important
- Variables are just references to a place in memory
- Good variable names
- Commenting code!
- Testing!
- UNDERSTANDING DOCUMENTATION!
- Pseudo-code
- If statements
- Loops
- Scope
- rgba?
- Managing files so that you can use images and such in the code
- Passing parameters to other functions (perhaps in a black-box way first?)
Beginner
Intermediate
Specific suggestion for "levels" or "rooms"
Basics
- Variables are just references to a place in memory - avatar actually travels there and back
- Variable names (multiple choice? Including ii vs. i in going through a loop)
- Commenting code (multiple choice?)
- Shoot the "if" statements that are executed in the order they're executed? Possibly just doing that for all of the code.
Beginner
- Instantiate:
- One specific kind of block in a specific location
- An area of blocks
- The outline of a square with blocks
- Solid walls
- Walls with a window
- A world where the player's tools are not written yet. Teach them to write the basic tools
- Have them create "files" that are modules and make another file call on those modules and use their functions and/or variables
Intermediate
- A "physical" representation of LLAMP, pass the packet of info through the different steps, an obstacle course (e.g. Jump over? ride? the signals as they flow from one place to the other? Follow the signals where they go? You're just carrying one packet? Possibly more meta, splitting the info and sending it different routes).
- Go through something like the Django starting tutorial, but with a physical representation of what the code is doing that the player travels through.