Ещё год назад я смеялся над мемами про Copilot, который «пишет весь код за тебя». Теперь — я уже не смеюсь. Потому что вижу, как всё чаще код влетает в main почти без участия человека. Его не пишут — его принимают. Почти как оракульское послание.
Это не всегда плохо. Но иногда — страшно.
Началось с удобства
Я не анти‑ИИ и не неолуддит — я сам пользуюсь им в работе. Более того — я первый, кто радовался, когда Copilot или Claude помогали дописать скучные if-else
, док‑блоки и избавляли от гуглинга array_unique
третий раз за неделю. Это круто. Это ускоряет. Это экономит силы. Но со временем, что‑то начало меняться.
Я поймал себя на мысли, что больше не вникаю, почему код работает. Он просто работает. Или, точнее — кажется, что работает.
А потом — начало происходить вот это:
Пулл‑реквест на 300 строк сгенеренного кода от моего программиста в команде. Комментариев — ноль или слишком много. Первый код‑ревьювер пишет: «выглядит нормально», второй код‑ревьювер не пишет вообще ничего. Я пытаюсь разобраться в коде, который выглядит как код супер‑сеньора с 25-ти летним стажем. Первое, что напрягает — его запулил джуниор.
Код, который вроде бы делает что нужно, но через пару дней становится чёрным ящиком — даже для того, кто его «написал».
Странные баги, которые сложно объяснить, потому что ты сам не до конца понимаешь, как получилось именно так.
Вайб-кодинг в действии
Термин «вайб‑кодинг» я услышал от своих же коллег в команде. Сначала посмеялся. А потом понял: это и есть то, что происходит.
Когда ты:
формулируешь проблему в промпте, не особенно вдумываясь
принимаешь первый же вариант, потому что он вроде бы логичный
не читаешь код внимательно — тебе просто «нравится вайб», ведь он решил проблему

Код «по вайбу». Не по логике, не по архитектуре (не по требованиям, Карл!). А по вайбу.
Ревью по инерции
Раньше код‑ревью было чем‑то вроде священного обряда. Сейчас — всё чаще «approve» прилетает в течение минуты. Человек даже не глянул — но «Claude ведь сгенерил, он не может ошибаться, да? Ну, и баг вроде пофиксили.»
Мы перестаём доверять людям — и начинаем безоговорочно доверять ИИ. Почему? Потому что машина «не устает». Не выносит мозг. Не спорит. Она даже добавляет свои комментарии в пулл‑реквест на GitHub (пока только в качестве рекомендации). Но это иллюзия.
ИИ — не понимает контекста. Он не знает, что за API ты вызвал. Он не знает бизнес‑логику. Он предсказывает (!), а не проектирует.
Представим плохой сценарий
Вот просто гипотетика. Ты работаешь в компании, которая разрабатывает медицинское ПО. Или ПО для дронов. Или для спутников. Ты внедряешь кусок ИИ‑кода, который обрабатывает какие‑то критичные сигналы. Всё работает. На тестах — норм. В проде — норм. Но через два месяца происходит сбой. Из‑за того, что один параметр оказался null
в неподходящий момент. А проверка на него была... ну, слишком не «вайбовая».
Цена такой ошибки — не 500 на сайте. Цена — жизнь.
Пример для подражания: Boston Dynamics
Я не знаю наверняка, но читал статью про Boston Dynamics о том, как у них организована работа — всё очень серьёзно. Они тоже используют ИИ — не где‑нибудь, а в управлении роботами в реальном времени. Причём не просто игрушками, а этими жуткими штуками, которые бегают, прыгают и потенциально могут работать в армии, на складах или при спасательных операциях.
Но главное — у них другой подход.
Не «погнали, закинем это в прод», а каждая строка через симулятор, каждое действие проверяется человеком. Никакого «ну вроде норм, Copilot нагенерил». Там по‑другому: сначала убедись, потом запускай.
Теперь просто представьте: такой софт пишется «по вайбу». Одно лишнее действие, одна неотловленная генерация — и робот, например, падает на кого‑то. Или сносит полку на складе. Или влетает не туда, куда должен.
ИИ — это помощник. Но если ты делаешь что‑то, где ошибка может стать проблемой в реальном мире — никакой «вайб» не спасёт. Только проверка. Только хардкор.
Надо что-то менять
Я не предлагаю отказаться от ИИ. Но давайте хотя бы обозначим границы. Вот мои мысли, как с этим жить безопаснее:
Проверяй каждую строку ИИ‑кода как чужую.
Потому что она действительно чужая.Не доверяй «вайбу». Доверяй логике, структуре, смыслу.
Пиши комментарии к сгенерированному коду. Если ты не можешь его объяснить словами — ты не понял, что он делает.
Вводи маркировку (это моя фикс‑идея): «Этот код был частично сгенерирован ИИ». Это не стыдно. Это осознанно.
Ревью — по‑честному. Если ты тимлид или просто ревьюер — не скидывайся с ответственности. Посмотри, подумай, задай вопросы. Это твоя работа.
Финал (пока ещё весёлый)
ИИ стал частью нашей работы. Он останется с нами. В своих пет‑проектах я его использую с первой строчки. Но если мы не пересмотрим свою роль — мы из инженеров станем операторами кнопки «принять». А это уже не профессия. Это ответственность без понимания.
Может быть я стал слишком стар и ворчлив, но я бы не хотел жить в мире, где ПО, написанное «на вайбе», управляет кардиостимулятором моей мамы.
«В нас пропал дух авантюризма! Мы перестали
лазить в окна к любимым женщинам;самостоятельно кодить, мы перестали делать большие и хорошие глупости…»
И если ты тоже, то давай сделаем шаг назад. Посмотрим на код. И вспомним, что думать — это всё ещё часть нашей работы (во всяком случае пока).