AI не заменит программистов. Пока нет

Последние несколько лет только и слышно: «AI заменит программистов», «Программисты останутся без работы», «Нейросети пишут код лучше людей». Давайте разберемся, так ли это на самом деле и что ждет индустрию в будущем.

Компьютер не понимает ваш код. Он просто исполняет его.

Единственный язык программирования, естественный для компьютера, — это машинный код. Всё остальное придумано не для машин, а для людей. Языки программирования существуют, прежде всего, чтобы один человек мог объяснить логику программы другому. Компьютеру читаемость кода не важна. Хоть напишите абсолютное месиво из символов, если синтаксис верный — программа будет работать.

Именно поэтому существуют «лучшие практики», архитектурные паттерны, фреймворки — не для машин, а для программистов. Хороший код — это код, который удобно читать и поддерживать. Хотя иногда фантазия разработчиков заводит в странные места, и появляются перлы, как вот этот полностью корректный код:

$@ = (*ARGV)[$#{[()]}];

(Фанаты Perl, попробуйте убедить нас, что это понятнее, чем машинный код!)

LLM усиливают программистов, а не заменяют их

Большие языковые модели (LLM) обучались на существующем коде, поэтому они научились писать программы на человеко-ориентированных языках. Это делает разработку быстрее и удобнее, но не отменяет самих программистов. Точно так же появление Fortran и Cobol повысило продуктивность разработчиков, которые до этого писали на ассемблере.

Сейчас активно обсуждается «вайб-программирование» — возможность описывать задачи в свободной форме, а AI сам напишет код. Этот подход напоминает очередную волну no-code-разработки, но его главный недостаток — сложность последующего изменения и поддержки кода. В серьёзных проектах, которые требуют долгосрочного развития и многократных доработок, такой способ программирования попросту непригоден.

Компьютерный код для компьютеров

Если AI уже умеет писать программы на Python, Java или C++, то следующий шаг — убрать из этого процесса человека. Зачем компьютеру писать код на языке, удобном для людей? Наши ограничения приводят к избыточности и сложностям в программировании.

Качество генерации кода в какой-то момент упрётся в потолок, и следующий логичный шаг будет создание языка программирования, оптимизированного для LLM — AI-first programming language.

Этот язык, скорее всего, будет:

  • Высокоуровневым и лаконичным,

  • Без «синтаксического сахара» и излишних абстракций,

  • Оптимизированным под токенизацию и трансформерные модели.

И вот тогда программисты действительно окажутся под угрозой.

Будущее: меньше абстракций, быстрее программы

Сейчас мы живём в эпоху программного «ожирения». Компьютеры становятся мощнее, а софт — медленнее. Сложность растёт, и чтобы с ней справляться, мы плодим новые абстракции, фреймворки, библиотеки. Но у AI другие ограничения.

LLM на AI-first языке сможет писать код, в котором не будет избыточных слоёв. Возможно, мы увидим программы, не требующие операционных систем.

Заключение

Как программист, я ожидаю AI-first programming language с некоторой опаской, но как пользователь, я надеюсь что это принесёт тот самый качественный скачок в софте, который мы все заждались!

А пока — нет, AI не заменит программистов. По крайней мере, не в ближайшие несколько лет. Вместо этого он станет мощным инструментом, усиливающим наши возможности. Но будущее… будущее может оказаться совсем другим.

Источник: https://habr.com/ru/articles/895666/

Опубликовано в категории: Статьи