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
.cstfile; 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):
- The console works (33%). Bitstream flashes; capstone program boots; demo video shows real output
- The toolchain reproduces (33%). A grader can rebuild
program-built/program.binbyte-for-byte fromtoolchain/+program/; the SHA-256 matches - 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.