Classroom Public page

CSA-101 Instructor Guide

1,113 words

For instructors and homeschool parents running CSA-101 with one or more students. The course is the academy's flagship and its most demanding. This guide names the pacing risks, the common stumbles, and the grading approach.


Course shape at a glance

Item Value
Total time ~155 hours over 14 weeks
Weekly time ~11 hours student time
Lecture per week ~3 hours
Lab per week ~5 hours
Reading + Toolchain Diary ~3 hours
Audience Post-FND-101 + post-FND-102 students; HW-101 ideal
Hardware Tang Primer 25K (canonical) or browser-only path
Cost $0 software; ~$75-144 hardware (or $0 browser path)
Capstone Working Virtus Console

Pacing risks per week

Week Risk Mitigation
1 Tang kit hasn't arrived; bench parts haven't arrived Browser path covers all of week 1; remind students before enrollment
2 IEEE-754 hand-encoding (lab 2.4) burns more time than expected Pre-cap the lab at 2 hours; partial credit for getting 2 of the 4 chosen values correct
3 Metastability lab feels academic Show real-world examples (clock-domain-crossing bugs in industry)
4 Voice-template chapter; students should slow down Don't compress this week even if it feels covered
5 Highest-friction week. Silicon bring-up is hard. Budget +2-3 hours buffer; have a parts-spare for failed flashes; arrange shared bench access for browser-path students who want to flash for the first time
6 Two-pass assembler design surprises students who expected one pass Show why one-pass needs backpatching; the comparison makes two-pass feel obvious
6a Relocation feels alien Walk through objdump -r on a real ELF; the parallel grounds the concept
7-8 VM as a concept lands or doesn't Insist on lab 7.4 (hand-vs-translator); the comparison is what makes the VM legible
9-10 Compiler is the prettiest week Don't let polish swallow the timing budget
11 Multi-file compilation is fiddly Provide a known-good 3-file test program; the student's job is to verify reproduction
12 Cliff week. Ch 12 OS integration is the highest-density chapter Spread effort across days 1-5; defer the capstone-scoping lab (12.5) to Friday
13 OS-service implementation feels like a grind Frame it as the payoff for everything they built; each service connects back to a specific earlier chapter
14 Capstone shipping anxiety Reassure: the simple-and-clearly-written capstone earns full marks; ambition is not graded

Common student stumbles

Week 1-3 stumbles

  • "NAND universality" feels abstract. Have the student build AND, OR, NOT from NAND on the bench; the tactile demonstration usually fixes it
  • Two's complement subtraction "shouldn't work." Walk through 3 - 5 = 3 + (-5) by hand; show the carry pattern; the algebra clicks

Week 4-5 stumbles

  • Hand-encoding errors. The encoding card is dense. Students get bit positions wrong. Reconciliation against riscv32-unknown-elf-as (lab 4.4) catches every error
  • First flash fails silently. Often a constraint-file (PMOD pin assignment) error. Walk through the academy's canonical .cst file; explain pin mappings

Week 6-8 stumbles

  • Assembler symbol table confusion. Forward references trip students up; the two-pass design fixes this but the student has to see WHY
  • VM-translator state. The translator emits code for each VM op without keeping global state. Some students try to maintain state and over-complicate; lab 7.4 reconciles this

Week 9-11 stumbles

  • Recursive descent feels like magic. Have the student trace one expression through the parser by hand; the recursion becomes mechanical
  • Symbol-table scope bugs. When a class-level field shadows a local variable, codegen emits the wrong segment. Lab 10.5 (Ghidra on your own compiler output) surfaces this

Week 12-13 stumbles

  • OS service compliance failures. The academy's compliance suite is unforgiving on edge cases (Math.divide(x, 0); Memory.alloc on full heap). Walk through the suite before the student starts implementing
  • Screen.drawLine performance. Naive implementations are slow; the VCP-assisted path (in lab 12.3) is the optimization

Toolchain Diary continuity

The diary pattern starts in Ch 4 and is canonical from that week forward. Remind students every week to journal new tools. By week 14 the student should have ~40 entries.

Pattern per entry: tool name; what it does; when you used it; one surprise. ~3-5 sentences. The diary becomes a personal-reference document the student will return to years later.

Grading rubric for the capstone

Three dimensions equally weighted (per CAPSTONE.md):

  1. The console works (33%). Bitstream flashes; capstone program boots; demo video shows real output
  2. The toolchain reproduces (33%). A grader can rebuild program-built/program.bin byte-for-byte from toolchain/ + program/; the SHA-256 matches
  3. The write-up is honest (33%). Five sections show actual reflection; the "what doesn't" section names real gaps

The capstone rubric template is at worksheets/TEMPLATE-capstone-rubric.md. Use that as the source-of-truth scorecard.

When students get really stuck

If a student is two weeks behind by week 6, take action:

  • Pair them with a stronger student for a study session
  • Schedule a 1-on-1 to identify the specific gap (it is almost never about effort; it is almost always about a specific concept that did not land)
  • Offer to extend their cohort by one cycle (CSA-101 every 14 weeks; one delay is no shame)

If a student is two weeks behind by week 10, the realistic intervention is:

  • Defer the capstone to the next cohort
  • Encourage them to keep working on the toolchain on their own pace
  • The work they have done is real; they do not lose it

CSA-101 is the academy's most demanding course by hours and by abstraction-stack depth. Some students will need a second pass. Plan for it.

Forward-pointers

  • CSA-201. Full RV32I; MMU; PMP; driver track. Direct continuation
  • CON-101. Virtus Console as game-dev platform. Uses CSA-101's Ch 12 console as the target
  • RE-101. SB6141 reverse engineering. Uses CSA-101's Ch 4 hand-encoding fluency and Ch 5 silicon instinct
  • AI-201, AI-301. AI security. Uses CSA-101's toolchain ownership instinct against ML-pipeline targets

Logistical notes

  • Discord / community. Academy maintains a CSA-101-cohort Discord; invite distributed at enrollment
  • Office hours. Lead instructor offers ~2 hr/week synchronous office hours during silicon-bring-up weeks (5, 11, 13)
  • Capstone grading turnaround. 10 days from submission
  • Cohort retrospective. End of week 14, the cohort meets for a 60-minute retrospective; what worked, what didn't, what should change next cohort

Where CSA-101 fits in the academy

CSA-101 is the flagship. The course that the entire pipeline orients around. Students who finish CSA-101 are the academy's strongest graduates by every measure: they own the complete stack; they can navigate any subsequent course without prerequisite gaps; they carry the academy's pedagogy (Petzold weaves, Toolchain Diary, Architecture Comparison Sidebar continuity) into their professional work.

The instructor's job is to keep the course's claim ("you can build the whole stack") visible week after week. By week 14, the student has done it; the closing-bridge lecture is the moment to name what was just accomplished.


Instructor guide v0.1 prepared 2026-05-11. Updates after the first pilot cohort.