Идея, что программирование скоро исчезнет как ручное занятие, появилась задолго до LLM. COBOL делали похожим на английский, чтобы программы могли читать не только программисты. Предшественник SQL — SEQUEL — расшифровывался как Structured English Query Language. Позже появились ноукод-платформы, которые должны были убрать код из процесса. Ручной работы становилось меньше, но число разработчиков не сокращалось, а росло.
Теперь эстафету приняли большие языковые модели (LLM). Впервые инструмент от и до работает с естественным человеческим языком: можно написать целую программу, не зная ни одного языка программирования. Пугающая перспектива породила успокаивающий тезис: исчезнет только рутина, а спрос вырастет на архитекторов и ревьюеров. Но автор статьи задаёт неудобный вопрос: как проверять сгенерированный код, если по объёму знаний модель обгоняет любого отдельного разработчика и может воспроизвести большинство алгоритмов, паттернов и библиотек? Соревноваться с ней в количестве запомненной информации бессмысленно.
Разница между человеком и моделью, по мысли автора, в двух вещах. Первая — контекст. Формально контекстное окно модели уже способно вместить целую библиотеку, но на практике модель видит только то, что попало в рабочую сессию. Даже долгий контекст используется неравномерно: модель может упустить явно переданные инструкции. Файлы с правилами и README помогают, но не заменяют десять лет опыта — если бы понимание передавалось одним текстом, сеньоров давно делали бы из джунов с помощью инструкции.
Вторая — ответственность. Если продакшен сломан, именно человека вызовут на выходных, и именно он объясняет последствия тимлиду или бизнесу. Ответственность заставляет увидеть, к чему привело решение, и этот опыт запоминается надолго. Модель ответила и перешла к следующей задаче: пока ошибка находится в текущем контексте, она может её учитывать, но устойчивой привычкой этот опыт не станет.
Навыки формируются через самостоятельную работу. Раньше понимание приходило по ходу дела: незнакомая задача, чтение документации и Stack Overflow, собственные ошибки, дебаг. Сейчас модели всё чаще проходят этот путь за нас — разбирают задачу, выбирают подход, пишут код и тесты, исправляют ошибки. Если подключаться только на финальном этапе, легко остаться наблюдателем. Готовый код кажется понятным, но собственного представления о решении не появляется. Разобраться в готовой реализации и прийти к ней самостоятельно — не одно и то же.
Автор предлагает простой критерий, что отпустить: всё, что можно быстро найти и легко проверить. Точный синтаксис, детали API, шаблонный код, готовую реализацию алгоритма в голове держать незачем. Сохранять стоит навыки, которые работают там, где человек пока сильнее модели: способность замечать неладное, принимать решения и отвечать за них. Именно эти качества формируются через практику и обратную связь от реальности, и именно их можно потерять, если передоверить моделям весь путь к решению.

