Facilitator Guide.
A 60-minute lesson plan for teaching terminal basics with this site as the playground. Read aloud the italicized "Say this" blocks; everything else is for you.
What students will leave knowing
- What a terminal is, what a shell is, and why they are not the same thing.
- How to navigate the file system:
pwd,ls,cd. - How to make, read, and remove files and folders.
- The convention of command · flags · arguments well enough to read any new command.
- How to read an error message instead of fearing it.
Materials
- Each student has a laptop with this site open. No installs.
- Projector or shared screen for the instructor to model commands.
- A whiteboard or shared doc for the "anatomy of a command" sketch.
Before class
- Open Concepts on your projector; have Playground in a second tab.
- Choose which OS most of your students are on and set the toggle. (Same lessons; commands swap.)
- Print the Assessment sheet if you'll use it after.
Part 1 · Mental model 0 – 10 min
If most of the room says they've never used it, slow Part 1 down. If most have, speed through and spend the saved time in the playground.
Open the Concepts page to Figure 1 (the diagram). Walk through it slowly, in both directions: you type "ls", the keystrokes go to the terminal (which is dumb), then to the shell (which understands), then to the kernel (which does the work). Then the bytes come back the same way.
Show Figure 4 (command · flags · arguments) on Concepts. Sketch it on the board. Use ls -la ~/Documents as the example.
Part 2 · First commands 10 – 30 min
pwd, ls, cd. Build the navigation reflex.Push students to type, not read. Walk the room. When someone gets stuck, don't tell them the command — ask "what are you trying to find out?" Most stuckness is conceptual, not syntactic.
cd, run pwd to confirm where you ended up, then ls to see what's there. Three commands, in that order, every time, for the rest of class. It will feel slow. In a week it'll be automatic, and you'll never get lost.
This is the single highest-leverage habit you can give a beginner. Most "I'm lost" panics later in their careers trace back to skipping pwd.
mkdir, touch. The "look at Finder!" moment.When students make a folder, have them switch to Finder/Explorer and see it appear. This is the lightbulb. Most beginners genuinely don't believe the terminal is touching the same files until they see it.
Part 3 · Read, write, delete 30 – 50 min
cat, echo, >, cp, mv, rm.Let students work through these mostly independently. Float and unblock. The redirect operator > trips people up — be ready to explain it twice.
rm has no Trash. Say this out loud, then say it again. If you're worried, have students do all rm work inside a ~/Desktop/practice/ folder so accidents don't matter. Make the safety rule visible.
Have students try to break things. Run cd nonsense. Run cat that-file for a file that doesn't exist. Read the error out loud as a group. Identify which layer (shell? kernel?) produced it.
Part 4 · Wrap-up & Recall 50 – 60 min
Have each student work through Recall on their own laptop. Don't help with answers until they've used at least one hint. The point is to pull from memory, not to score perfectly.
Common pitfalls cheat sheet
- "Nothing's happening." They didn't press Enter. Or they typed into the terminal-app menu, not the terminal window itself.
- "It says command not found." Typo, or a flag with a typo, or Mac command on Windows or vice versa. Re-check the OS toggle on this site.
- "It says permission denied." The file or folder is protected. Don't have them
sudotheir way out of it in a beginner class — too much rope. Move to a different file. - "Where did my file go?" They probably
rm'd it. Verify, console, and move on. Future lesson: use-ifor safety. - "My computer is going to break." Reassure: nothing in this lesson is destructive outside of
rm. Repeat that the playground is simulated. - The student who's done in 20 minutes. Point them at Learning Outcomes "Not yet" list. There's always more.
What this guide does not teach
If anyone asks about any of these, the honest answer is "not today, but here are the words you'll want to look up later":
- Permissions (
chmod,chown,sudo). - Environment variables and shell configuration (
.zshrc,$PATH). - SSH and remote work.
- Package managers (
brew,apt,winget). - Shell scripting beyond simple
&&chains. - Git. (Use the Git Playground for that.)
Sending students away knowing what they don't know is more valuable than pretending to cover everything.