learning.
learning2 min read

learning · self-study courses for working programmers

Academic self-study series — every lesson has clear goals, a file tree, walkthrough, pitfalls, exercises and answer keys. For disciplined self-learners.

self-studyprogrammingC++ImGuifree course

Self-study with discipline — no teacher, still ship the product

You're reading the entry page of a self-study library. Every series here follows a fixed template — you know in advance what each lesson will cover, what you must do, and how to tell when you've done it right.

Why study here

  • Your own pace. No class, no exam pressure, no peer to keep up with. Pause as long as you need — as long as the series ends with something that actually runs.
  • Self-grading. Every lesson includes a "How to verify" section — a concrete way to check your own work without needing review.
  • Project-driven, not theory-dump. Each series ships a real project: a Sudoku game in C++ + ImGui, a pixel-art engine in LÖVE, a FastAPI stack deployed to a VPS… You learn by doing, not by reading.

How to study

  1. Read the series preface first — what this series teaches, who it's for, what the final product looks like.
  2. Set up the environment exactly as in lesson 1's "File tree" — don't skip; later lessons assume that structure.
  3. Read each lesson in order — every lesson has 10 fixed sections:
    • Goal — what this lesson must achieve
    • File tree — what the repo looks like after this lesson
    • Content to learn — knowledge summary
    • Walkthrough — step-by-step
    • Key learning — distilled lesson
    • How to verify — self-check
    • Pitfalls — common mistakes
    • Further study — extra reading
    • Exercises — extensions
    • Answers — hints after you've tried
  4. Try the exercises before opening Answers. If stuck, read Pitfalls.
  5. Verify before moving on. If the test doesn't pass, don't proceed.

What you walk away with per series

  • A Git repo that clones and runs out of the box.
  • A finished product — game, app, pipeline — not a sandbox toy.
  • Confidence to modify, extend, and debug what you just built — no blind copy-paste.

Series in preparation

The first series is being adapted from a real project — landing in the coming days. New series will appear on the main page as they ship.

In the meantime, you can switch language: