Как я использую ИИ в разработке
Последний год я активно использую ИИ в разработке (особенно рутинных задачах): сначала ChatGPT 4o стал достаточно умным и подсказывал куски кода. Потом я освоил GitHub Copilot в VS Code (Go и TypeScript) и Inteliji IDEA (Java). А последние полгода пишу в основном в Cursor IDE.
Cursor IDE мне очень сильно понравился своим автокомплитом. Он не просто подставляет автодополнение, а умеет переписывать большие куски кода в разных частях файла.
Последние несколько месяцев я начал чаще использовать агентский режим: это когда говоришь IDE что делать, а она бегает по разным файлам и меняет их.
И тут мой мозг начал взрываться! Агентский режим Cursor'a и интеллект ChatGPT o3-mini-high творят чудеса. В типовых задачах — это жуткая экономия времени.
(Пока писал пост, Open AI выпустили полноценную o3 и o4-mini-high 🤯).
Как я понял, Cursor + Claude 3.7 действуют по следующему алгоритму:
Проходит по исходникам, собирает контекст и паттерны.
Залезает в исходники библиотек и смотрит их код.
Если сильно нужно — бегает в интернет
и обкашливает вопросики там.Вносит изменения в код.
Смотрит ошибки линтеров и компиляции (!!!).
Ещё раз исправляет код и, если нужно, снова бегает по исходникам и библиотекам.
Говорит, что сделал и подсвечивает измененные куски кода.
На видео выше записал, как решаю задачу таким способом.
Задача: есть код, который принимает события от Telegram. В него нужно добавить поддержку новых событий и обновить DTO.
Cursor смотрит в интерфейс, что нужно добавить. Затем смотрит в библиотеку, какие там модельки. Обновляет код. Сам фиксит ошибки, если есть. Так ещё и говорит: "DTO и так нормальные, их трогать не буду". Красота!
К сожалению, как" вайб кодить" — я пока не понял. Потому что:
весь код нужно сильно перепроверять;
на задачах с весомой бизнес логикой получается фигня;
пограничные кейсы не обрабатываются;
тесты для чего-то больше CRUDов получаются с тоннами шаблонного кода, мало переиспользования;
если файлов сильно много и задача в духе "пройдись по паре сотням файлов и поменяй что-то", Cursor начинает галлюцинировать и выдавать фигню.
Итого: сейчас ИИ мне сильно экономит время на шаблонных и рутинных задачах. Особенно, если задача не выходит за рамки 2-3 файлов и в проекте всё ок с тестами.
Условно, я делаю на 10%-20% меньше рутинной работы, которая раньше могла отнимать 2-3 часа в день.
Что-то комплексное или "написать проект с ИИ, не смотря код" — пока не получается (как минимум, пока что).
Но, в любом случае, уметь использовать ИИ потихоньку становится must have навыком для среднестатистических разработчиков. Разумеется, если используется не редкий язык, не специфическая сфера (типа написание ОС, где недостаточно обучающих данных) или не что-то критичное (медицина, ядерка и т.д.).
---
Если вам понравился пост или оказался полезным, поставьте, пожалуйста лайк ❤️. Это мотивирует делиться опытом из разработки. И, как полагается, у меня есть Telegram-канал, в котором я рассказываю про разработку, развитие SaaS-сервисов и управление IT проектами.