Согласно глобальному исследованию Stack Overflow «2023 Developer Survey», в котором приняли участие более 90 тыс. разработчиков, ChatGPT является самым популярным среди инструментов поиска на базе искусственного интеллекта, но основным инструментом разработки с применением ИИ является GitHub Copilot, сообщает портал The New Stack.
По данным опроса, ИИ находится на пике популярности, а GitHub Copilot и ChatGPT могут принести пользу разработчикам. На вопрос о планах по использованию инструментов ИИ в процессе разработки 44% разработчиков ответили, что уже делают это, а еще 26% планируют сделать это в ближайшее время. Когда эту группу спросили, какие конкретно инструменты для разработчиков с поддержкой ИИ они используют, 55% назвали GitHub Copilot, 13% — Tabnine и 5% — Amazon Web Services CodeWhisperer. Остальные семь инструментов, включенных в опрос, использовали не более 2%.
Разрыв между GitHub Copilot и аналогичными инструментами наиболее заметен, если посмотреть, сколько пользователей планируют продолжать его применять — 72% пользователей GitHub Copilot хотят использовать его в нынешнем году, по сравнению с 53% пользователей AWS CodeWhisperer и 37% пользователей Tabnine.
Инструменты поиска с использованием ИИ, такие как ChatGPT, также были одной из тем исследования. Среди респондентов, которые уже применяют один из 11 различных инструментов ИИ-поиска, около 78% пользователей ChatGPT и Phind утверждают, что продолжат использовать эти технологии, по сравнению с 61% пользователей Bard AI и 62% пользователей Bing AI, выражающих подобную лояльность.
GitHub: в США инструменты ИИ используют 92% программистов
GitHub в сотрудничестве с Wakefield Research провели опрос 500 американских корпоративных разработчиков. Они обнаружили, что 92% респондентов уже используют инструменты для кодирования с помощью ИИ как на работе, так и вне ее. При этом 70% программистов считают, что ИИ приносит значительную пользу их коду, сообщает портал ZDNet.
С чем это связано? Все дело в конечном результате. Разработчики заявили, что ИИ-инструменты кодирования помогают им соответствовать существующим стандартам производительности, улучшая качество кода, ускоряя выход и уменьшая количество инцидентов на производственном уровне.
Это мнение людей, которых нельзя отнести к категории увлеченных внешними Open Source-проектами или просто развлекающихся. Только 6% разработчиков сказали, что они используют ИИ-инструменты исключительно вне работы. Другими словами, сегодня ИИ-инструменты программирования уже являются неотъемлемой частью современных ИТ для бизнеса.
Разработчики также отметили, что ИИ помогает им производить больше строк кода. Но Инбал Шани, директор по продуктам GitHub, считает, что «руководители инженерных подразделений должны задаться вопросом, является ли измерение объема кода все еще лучшим способом измерения производительности и конечного результата. Ответ — „нет“. В конечном счете, путь к масштабным инновациям заключается в расширении возможностей разработчиков за счет повышения их производительности, увеличения их удовлетворенности и предоставления им возможности выполнять свою лучшую работу — каждый день».
Согласно опросу, разработчики хотят повышать квалификацию, разрабатывать решения, получать обратную связь от конечных пользователей и получать оценку своих коммуникативных навыков. Другими словами, создание кода с помощью ИИ — это средство достижения цели, а не самоцель.
Разработчики считают, что их следует оценивать по тому, как они справляются с ошибками и проблемами, что более важно для повышения производительности, чем просто строки кода. Это согласуется с убеждением, что качество кода, а не его количество, должно оставаться главным показателем производительности. Беспокойство у разработчиков вызывает то, что ИИ-инструменты кодирования заставят менеджеров еще больше сосредоточиться на том, чтобы просто выпускать больше кода, а не на предоставлении хорошего кода.
Есть и другие проблемы. Так, «сообщество Python сталкивается с необходимостью проверки кода, сгенерированного ИИ, часто потому, что это дерьмо, а человек, запросивший этот код, не может объяснить его, потому что он не писал его», — отмечает Марк Коллиер, операционный директор OpenInfra Foundation.
Это становится реальной проблемой. Да, вы можете попросить ChatGPT написать для вас программу, но если вы не понимаете, что вы делаете, или код, который вы «пишете», то код все равно будет мусорным. Поэтому не следует ни на минуту воображать себе, что если вы можете использовать ChatGPT для написания процедуры пузырьковой сортировки в Rust, это значит, что вы теперь программист, это не так.
У серьезных разработчиков есть и другие проблемы, с которыми ИИ не может помочь — или, по крайней мере, все еще не может. Например, разработчики говорят, что они тратят столько же времени на ожидание сборок и тестов, сколько на написание нового кода. Несмотря на достижения DevOps, эти проблемы все еще требуют решения. Это, в свою очередь, мешает программистам осваивать новые навыки и разрабатывать решения для новых задач. Если ИИ и более совершенный DevOps помогут программистам тратить на это больше времени, они будут счастливы, а ваша компания или организация станет более продуктивной.
В частности, разработчики считают, что ИИ-инструменты кодирования позволят им больше времени уделять разработке решений. Они надеются тратить больше времени на разработку новых функций и продуктов вместо написания шаблонного кода. Опрос показывает, что программисты уже используют инструменты генеративного ИИ для автоматизации отдельных частей своего рабочего процесса. Это высвобождает время для более совместных проектов, таких как анализ безопасности, планирование и парное программирование.
Одним словом, несмотря на то, что ИИ помогает разработчикам с поразительной скоростью, он не заменяет их. Однако он может сделать их счастливее, а также ускорить и повысить продуктивность всей работы по программированию при правильном использовании.
Помимо ИИ
Вернемся к опросу Stack Overflow, который содержит ряд интересных результатов помимо применения ИИ в разработке. Так, наблюдается резкий рост использования языков программирования Lua и Rust, а также фреймворка FastAPI на основе Python.
Как показал опрос, Lua и Rust — одни из самых быстрорастущих языков программирования. За год использование Rust выросло на 40%, и сейчас его применяют 13% разработчиков. В то же время использование Lua выросло на 50%, достигнув пока еще скромных 6%.
Среди языков с большей пользовательской базой наибольший рост наблюдался у TypeScript и Go — на 12% (доля — 39%) и на 19% (доля — 13%) соответственно.
Если говорить о веб-фреймворках, то FastAPI на базе Python продемонстрировал самый стремительный рост, увеличив свой охват на 48% до пока еще скромных 7% опрошенных разработчиков. Популярность jQuery продолжает неуклонно снижаться, упав на 23% до уровня 22% разработчиков (отметим, что технически он не является фреймворком).
Другие заметные изменения включают:
- За последний год внедрение Docker снизилось на 19%, тем не менее 51% разработчиков продолжают его использовать. Он остается невероятно популярным среди основной базы пользователей — 75% разработчиков, которые использовали Docker в прошлом году, хотят продолжать использовать его в течение следующих 12 месяцев. Это говорит о том, что даже после нескольких провалов в цикле развития, Docker и контейнеры остаются в деле.
- Использование инструмента для асинхронной совместной работы и управления проектами Trello с 2022 г. упало на 42%, до 19% участников опроса. Использование Asana также упало — на 36%, и сейчас им пользуются только 5%.
- Снижение, хотя и менее значительное, наблюдается и у лидеров в этой категории, включая Jira и Confluence, что может свидетельствовать о консолидации рынка и о том, что разработчики полагаются на меньшее количество инструментов для совместной работы.
- Применение популярных менеджеров пакетов npm и Yarn сокращается. Использование npm снизилось на 24% до 49% респондентов, а Yarn — на 21% до 22% респондентов.
Одной из самых важных новостей опроса Stack Overflow является информация об облачных технологиях и фреймворках, использование которых значительно снизилось.
Снижение наблюдается почти у всех облачных провайдеров, но у Heroku оно оказалось наихудшим. Только 12% разработчиков используют Heroku в 2023 г., что на 40% меньше, чем в исследовании-2022. Что еще хуже, лишь 22% пользователей этой технологии заявили, что хотят продолжать использовать ее в дальнейшем.
Даже лидеры облачных вычислений терпят поражение: использование Google Cloud упало на 11% по сравнению с предыдущим годом, Microsoft Azure — на 9%, а Amazon Web Services — на 5%.
Этим спадом может воспользоваться новая группа облачных платформ. Впервые в исследование были включены Cloudflare (ее используют 15% участников опроса), Vercel (11%), Netlify (также 11%) и Hetzner (4%). Примечательно, что Vercel и Hezner стали самыми любимыми облачными провайдерами среди тех, о которых спрашивали участников опроса.