Skip to content

Hardware track: course map, prerequisites, capstone receipts and a shared lesson-quality checklist #1481

Open

Description

@gHashTag

Parent epic: #1476

With 4 shipped courses and 10 proposed, the course page needs structure for hardware engineers.

Proposal

  1. Track page /#/course/track/hardware: a graph of courses with prerequisites (data in specs/course/courses.t27: new COURSE_PREREQS, COURSE_TRACK). Suggested order:
    t27-basics -> course (FPGA) -> {clocks-and-cdc, verify-hardware, arithmetic-circuits} -> {buses-and-peripherals, open-toolchain, ai-numbers} -> {ai-accelerator, ternary-computer, dsp-and-radio, power-and-test} -> fpga-to-silicon.
  2. Capstone receipts: every course ends with a capstone whose result is a build receipt (hashes of spec, netlist, bitstream, board run) the reader can share as a black-and-white card.
  3. Level and time per course (beginner / intermediate / advanced, hours) shown on the card.
  4. Lesson-quality checklist in specs/course_recipe/course-27.t27 (one home for the rule): spec runs in browser or is a named cast; numbers have a DATA_SOURCES entry; board named; no duplicate of a lesson in another course (a check over all LESSON_SPECS/LESSON_IDS).
  5. Duplicate-lesson check in CI: the same spec or lesson id used in two courses must be an explicit cross-link, not a second lesson.
  6. Interview mode (optional): each module ends with 3 questions a hardware interviewer would ask, answers checked by spec tests.

Acceptance

  • courses.t27 carries prerequisites and track; course page renders the graph.
  • Duplicate-lesson check runs in CI and passes on all shipped courses.
  • Recipe spec carries the quality checklist; AGENTS.md points to it (no copy).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions