posted on 2025-04-09

Нейронка пишет код, как стажёр. Ленивый стажёр.
Помните, недавно я написал радостный пост про то, как с помощью нейросети сделал за час новую библиотеку для роутинга урлов, почти как в Django? Затем я потратил ещё пару часов на эксперименты с рефакторингом кода и дополнением тест-кейсов - тоже с помощью нейросети Claude 3.7 конечно. Только в этот раз использовал не Roo Code, в Aider и плагин для подключения его к Emacs.
В итоге, нейронка написала мне почти полторы тысячи строк а я при этом лишь давал ей инструкции на человеческом языке, да позволял запустить тесты - даже особо не вчитывался в диффы кода, ведь именно так в конечном итоге хочется использовать нейронки - ты ей ТЗ на вход, а на выходе готовое решение. Да?
Сегодня я нашел время посмотреть, что за код понаписала нейронка по мои сценариям использования библиотеки. Тесты ведь проходят, значит либа рабочая и можно катить в прод! Ведь да?
А вот и нет! Такого говнокода я давненько не видел. Использование глобальных переменных не к месту, полный игнор некоторых сценариев использования, кривой API для других сценариев, тесты, которые не проверяют ничего, и самое главное - код библиотеки, в который захардкожены значения из тестов (пример на скриншоте в начале статьи).
Так что переписываю сейчас всё это старым добрым мясным способом.
This blog covers learning, ai, automation, voice, projects, holism, zerocoder, python, codeassistant, aider, cursor, llm, project, i18n, commonlisp, poftheday, closed, tips, seo, telegram, bot, прототип, smarthome, yandexcloud, logging, ideas, software, thoughts, programming, hackathon, mtstruetech, robotics, salebot, bots, notes, emacs, lisp, failures, infrastructure, news, lispworks, life, mcp, sql, nix, ultralisp, tutorials, yandex, cloud