Нейросеть для кода: попробовал заставить ChatGPT программировать
Нейросеть для кода я долго считал шуткой лет на 20 вперёд. Потом попробовал заставить ChatGPT писать код, и он вполне рабочий. Но программисты не станут не нужны: как когда-то гугл и Stack Overflow, ChatGPT для программистов заберёт рутину, а сложной и интересной работы станет больше.
Попробовал заставить ChatGPT писать код. Когда читал что нейросети умеют писать код — смеялся и предлагал лет через 20 это обсудить. Предлагаю посмотреть видео, код вполне работающий.
При этом многие сразу думают, что программисты будут не нужны в будущем, но это заблуждение. Произойдет эволюционная цепочка: раньше программисты писали все сами в своем vim, не имея возможности погуглить. А сейчас кажется странным взять на работу человека, который не умеет гуглить. Так как умение скомбинировать свой результат работы с ответами на stackoverflow.com — явно повышает perfomance разработчика.
Даже я в свои 31 застал те славные времена, когда интернет тарифицировался по минутам на модеме и выгоднее открыть скаченный справочник по php, чем лезть в гугл.
Но потом безлимитный интернет, развитие stackoverflow и уже не требуется кучу информации помнить, достаточно погуглить.
Так же и с нейросетью. Она не программиста заменит, а рутинную работу, которую он делает. Зачем идти в гугл и долго комбинировать варианты. Если можно сразу написать чат-боту и получить почти готовый кусок кода.
Таким образом станет меньше рутиной и скучной работы и больше сложной интересной.
Как ИИ меняет работу программиста
ChatGPT вышел в открытый доступ 30 ноября 2022 года, и за несколько дней стало понятно, что он пишет рабочий код. Не идеальный, но рабочий. Чуть раньше, в 2021–2022 годах, появился GitHub Copilot, который дописывал код прямо в редакторе. Перемены идут очень быстро.
С тех пор инструментов стало много — Cursor, Claude Code, JetBrains AI, Codeium, — но все они делают одно и то же: забирают у программиста часть механической работы.
Скорость развития впечатляет. От первых неуверенных функций до генерации целых модулей с тестами прошло около трёх лет, и каждые несколько месяцев выходят модели, которые заметно сильнее предыдущих.
Нейросети для программирования: что они делают хорошо
- Пишут типовой код: формы, CRUD, обработчики API, миграции.
- Объясняют чужой код и незнакомые библиотеки.
- Генерируют тесты по существующим функциям.
- Переводят код с одного языка на другой.
- Находят очевидные ошибки и предлагают исправления.
- Пишут регулярные выражения, SQL-запросы и скрипты, которые раньше гуглили полчаса.
Где нейросеть ошибается
Модель уверенно пишет код с несуществующими функциями библиотек, потому что не знает контекста проекта: какие соглашения приняты в команде, почему здесь сделано именно так, какие ограничения у инфраструктуры.
Поэтому код от ИИ нужно читать так же внимательно, как код от нового разработчика в команде. Иногда — внимательнее.
Особенно осторожно стоит относиться к коду для старых версий фреймворков и редких библиотек: там модель ошибается чаще всего.
Нейросеть пишет код: как проверять результат
Сгенерированный код я проверяю по тем же правилам, что и код коллеги: запускается ли он, проходят ли тесты, понятно ли, что происходит, и нет ли в нём лишних зависимостей.
Отдельно смотрю на безопасность. Модель может подставить SQL-запрос без экранирования, хранить пароль в открытом виде или отключить проверку сертификата, чтобы код просто заработал, и если человек с опытом заметит это за секунду, то новичок — нет.
Ещё один риск — лицензии. Модель обучена на открытом коде и иногда воспроизводит фрагменты из него почти дословно. Для коммерческого проекта стоит понимать, откуда взялся крупный кусок кода.
Эволюция навыков: от справочника к нейросети
Каждое поколение программистов застаёт смену инструментов. Сначала справочники на бумаге и скачанные мануалы, потом поисковики, потом Stack Overflow, который появился в 2008 году и стал главной базой ответов на вопросы о коде.
Каждый раз находились люди, которые говорили, что настоящий программист должен всё помнить. И каждый раз выигрывали те, кто быстрее осваивал новый инструмент.
| Период | Главный источник знаний | Ключевой навык |
|---|---|---|
| 1990-е — начало 2000-х | Книги и скачанные справочники | Помнить синтаксис и функции |
| 2000-е | Поисковики и форумы | Быстро искать |
| 2010-е | Stack Overflow и документация | Комбинировать готовые решения |
| 2020-е | Нейросети | Ставить задачу и проверять результат |
Какие навыки нужны программисту с ИИ
Умение писать код руками не исчезает, но смещается акцент. Важнее становится понимать, что должно получиться, и уметь проверить, получилось ли.
По сути, разработчик всё больше работает как тимлид для нейросети, который формулирует задачу, даёт контекст, проверяет результат и отвечает за то, что в итоге попало в продакшн.
- Формулировать задачу так, чтобы её понял исполнитель, человек или модель.
- Читать чужой код быстро и критически.
- Понимать архитектуру: где граница модуля, что сломается при изменении.
- Писать тесты, которые ловят ошибки сгенерированного кода.
- Разбираться в безопасности: модель легко пропускает уязвимости.
Как ИИ меняет найм разработчиков
Работодатели уже смотрят не только на то, как кандидат пишет код, но и на то, как он работает с инструментами. Запрет на ИИ во время тестового задания встречается всё реже: компаниям важнее, как человек ставит задачу модели и что делает с результатом.
На собеседовании полезно спросить, какими ИИ-инструментами кандидат пользуется и где им не доверяет. Ответ «везде доверяю» настораживает не меньше, чем «никогда не пользуюсь».
Для команды это значит, что общие правила работы с ИИ лучше договорить заранее: какие инструменты разрешены, можно ли отправлять в них код клиента, как помечать сгенерированные фрагменты на ревью.
ChatGPT для программистов: как начать
Начинать стоит с задач, где результат легко проверить, вроде регулярного выражения, SQL-запроса или функции с понятным входом и выходом, чтобы быстро понять, где модель надёжна, а где нет.
Хорошо работает принцип: давать модели как можно больше контекста. Кусок кода, текст ошибки, версию библиотеки, ограничения. Чем точнее вопрос, тем меньше правок в ответе.
Что будет с профессией
Рутины станет меньше, сложных задач — больше. Это та же история, что с безлимитным интернетом: когда исчезла необходимость помнить всё, программисты стали решать задачи крупнее.
Под давлением окажутся те, кто делает только механическую работу и не хочет учиться. Программист, который умеет работать с ИИ, будет делать за день то, на что раньше уходила неделя, и спрос на таких людей не упадёт.
Сложнее всего придётся джунам. Задачи, на которых раньше учились новички, теперь закрывает ИИ, и входить в профессию придётся сразу через более сложную работу, зато у начинающих есть наставник, который отвечает на любой вопрос.
Подробнее по темам
Вопросы и ответы
Может ли нейросеть писать рабочий код?
Да. Я попробовал заставить ChatGPT писать код, и код получился вполне работающий.
Заменит ли нейросеть программистов?
Нет, она заменит рутинную работу. Вместо долгого поиска в гугле можно сразу получить почти готовый кусок кода, а сложной работы станет больше.