Опорная идея
Профессиональный курс программирования должен вести от задачи к работающему артефакту: требование, входные данные, структура состояния, алгоритм, тесты, обработка ошибок, README и демонстрация.
Даже маленькая программа оформляется как инженерная работа: есть критерий готовности, проверочные примеры, ограничение решения и история улучшений.