Опорная идея
Синтаксис языка — только инструмент. Чтобы курс не был поверхностным, в каждом модуле нужно показывать архитектурную границу: где данные входят, где валидируются, где хранится состояние, где возникает ошибка и какой контракт получает пользователь или API.
Итоговый проект должен иметь README, команды запуска, тесты, разбор ограничений и список возможных улучшений.