Untitled

 avatar
unknown
plain_text
7 days ago
7.0 kB
7
Indexable
Нет. Это две принципиально разные роли, хотя со стороны может казаться, что оба "используют ИИ для написания кода".

Разница не в том, кто набирает код руками, а в том, кто принимает инженерные решения.

Первый случай

Человек говорит:

"Сделай YouTube 2.0."
"Сделай красиво."
"Исправь ошибки."

Он не способен ответить на вопросы:

почему архитектура именно такая;
почему используется именно этот алгоритм;
что произойдет при изменении этого класса;
почему возникла утечка памяти;
почему сложность O(n²), а не O(n log n);
как взаимодействуют между собой модули.

Если ИИ ошибся — человек зачастую даже не понимает, что именно не так.

Такой человек действительно полностью зависит от модели.

Второй случай

Теперь другой человек.

Он может вообще не помнить половину синтаксиса Python.

Он может не знать, как за пять минут реализовать какой-нибудь хитрый алгоритм.

Но он:

знает весь проект;
понимает архитектуру;
понимает ответственность каждого файла;
знает, какие инварианты нельзя нарушать;
замечает, если комментарий врёт относительно кода;
замечает плохие имена переменных;
требует единый стиль;
знает, что должно происходить после каждого действия пользователя;
понимает последствия каждого изменения.

То есть ИИ пишет реализацию, а человек занимается инженерией.

Это уже совсем другой уровень.

Представь аналогию с архитектором

Есть человек, который говорит строителям:

"Хочу красивый дом."

И всё.

А есть архитектор.

Он сам кирпичи не кладёт.

Но он знает:

где должна быть несущая стена;
где проходят коммуникации;
какая будет нагрузка;
почему здесь нельзя убрать колонну;
почему лестница должна быть именно такой.

Кто из них "строитель"?

Очевидно, второй ближе к инженеру, хотя руками бетон не льёт.

В программировании происходит то же самое

Есть несколько уровней.

1. Кодер

Пишет код.

2. Программист

Понимает, почему этот код работает.

3. Software Engineer

Проектирует систему.

4. Архитектор

Проектирует взаимодействие больших систем.

ИИ сегодня очень хорошо помогает на первом уровне.

Намного слабее — на втором.

И совсем не заменяет третий и четвертый без постоянного человеческого контроля.

Есть ещё один важный момент

Ты написал:

который читает досконально каждый файл

Это крайне важный навык.

Большие проекты редко "изобретают алгоритмы".

Большая часть работы выглядит так:

"Если я поменяю эти 10 строк, что сломается ещё в 14 местах?"

Это требует понимания проекта целиком.

ИИ не хранит такую модель проекта постоянно в голове.

Человек хранит.

А если человек сам не способен придумать сложный алгоритм?

Это вообще не делает его плохим программистом.

Большинство разработчиков за всю карьеру ни разу не изобретут новый алгоритм сортировки.

Они используют:

словари;
деревья;
графы;
кэши;
очереди;
готовые библиотеки.

Их работа — правильно применять известные решения, а не каждый день создавать новую математику.

Почему сейчас слово "вайбкодер" стало популярным?

Обычно им называют человека, который:

не читает код;
не понимает код;
не тестирует код;
принимает любые изменения ИИ;
не способен объяснить, что происходит в проекте;
просто продолжает писать "Fix", "Again", "Make better".

То есть он управляет проектом на уровне пожеланий, а не инженерных решений.

В описанной тобой ситуации человек находится в совершенно другой позиции. Если он понимает архитектуру проекта, тщательно ревьюит каждое изменение, замечает логические и стилистические проблемы, проверяет последствия изменений и использует ИИ как инструмент для реализации идей, то ИИ для него — это скорее очень быстрый помощник, а не замена мышлению. От того, что часть кода генерирует модель, инженерная ответственность и понимание проекта никуда не исчезают. Именно это и отличает разработчика, который использует ИИ осознанно, от человека, который полностью полагается на него и не может оценить качество результата.
Editor is loading...
Leave a Comment