Read / Estimate days (30–45 min): read the concept tab, then close it and write the reference card from memory. Log one sentence: what decision does this concept let me make?
Design days (45 min, timed): 5 min requirements & non-functional goals · 5 min estimation · 10 min high-level boxes and API · 20 min deep-dive on the two hardest parts · 5 min failure modes and what you'd change at 10× scale. Speak out loud; draw on paper or a whiteboard app.
Code days (60 min): requirements → use cases → classes & interfaces (draw) → code the core flow → one extension to test the design. Write real, runnable code.
Mark "timed & unaided" only if you finished inside the time box without opening notes or the lesson.
Log every session: the key requirement that shaped the design, the trade-off you stated, the bottleneck, one thing you missed.