Blog
On 7 October 2026 the t27 courses were wrongly flattened to 27 modules of one lesson. They are 9 modules of 3 lessons again: courses 1 and 2 get their old modules back word for word, course 0 gets 9 new ones, and the catalog's test holds the shape.

Every t27 course is 27 lessons in 9 modules of 3 lessons. On 7 October 2026 a change of ours flattened the courses to 27 modules of one lesson each. That was wrong: the owner's shape is 9 modules of 3, and it is back in all three courses, 0, 1 and 2.
The flattening commit set LESSONS_PER_MODULE to 1 in the course catalog, specs/course/courses.t27, and turned every lesson into a module with its own heading. The course map lost its 9 parts, and the blog posts of that day repeated the 27 by 1 shape as if it were the rule.
| Module | Course 0 lessons |
|---|---|
| A spec file | 1 to 3 |
| Values and types | 4 to 6 |
| Arrays, trits and expressions | 7 to 9 |
| Tests and functions | 10 to 12 |
| Inside a function | 13 to 15 |
| Visibility and your own types | 16 to 18 |
| Modules, rules and gen-ts | 19 to 21 |
| The compiler and tri | 22 to 24 |
| Errors, a program, what next | 25 to 27 |
The course generator reads the catalog and refuses to build a course whose module count or lessons per module differ from it, or whose lesson does not sit in module floor(i / 3). Setting MODULES_PER_COURSE back to 27 turns the course check red; restoring the file turns it green again.
Work with me
I work contract and part-time on hardware-AI, FPGA/RTL and ML systems — from specification and open toolchains to reproducible measurements.