На вопросы о Go отвечали только те, кто выбрал его в качестве одного из трех основных языков программирования.

Go

Для чего вы используете Go?

В среднем на компьютерах Go-разработчиков больше оперативной памяти, чем у других разработчиков. Кроме того, 91% из них используют для работы SSD-диск, в то время как среди остальных разработчиков это делают лишь 79%.

Используете ли вы несколько версий Go одновременно?

Вы используете одну глобальную переменную GOPATH или отдельную для каждого проекта?

Работаете ли вы над несколькими Go-проектами одновременно?

Какой шаблонизатор вы используете для разработки на Go?

Go-разработчики предпочитают есть в кафе и ресторанах. Кроме того, они чаще, чем другие разработчики, заказывают доставку еды и меньше готовят сами.

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

Система Go Modules используется все шире: в этом году 86% респондентов сказали, что используют ее, в то время как всего 2 года назад их доля составляла только 41%.

В то же время популярность других менеджеров зависимостей, например dep, govendor и glide, снизилась. Dep, занимавший второе место в прошлом году, показал наибольшее падение: с 12% до 5%.

Какую IDE или редактор вы чаще всего используете для разработки на Go?

Несмотря на все усилия по созданию репрезентативной выборки респондентов, результаты могут быть немного смещены в сторону пользователей продуктов JetBrains, поскольку вероятность их участия в опросе выше, чем у других людей.

Какие облачные сервисы популярны среди Go-разработчиков?

Наибольшей популярностью пользуется AWS (67%), но его доля не отличается от доли среди разработчиков, работающих с другими языками.

Самую большую разницу в популярности у Go-разработчиков и всех остальных продемонстрировал Alibaba Cloud (Aliyun): среди первых его используют 20%, а в среднем — всего 12% разработчиков.

Что вы разрабатываете на Go?

Go-разработчики гораздо активнее участвуют в DevOps, чем разработчики, использующие другие языки. Например, 86% из них используют шаблонизаторы серверов, а 84% используют Docker (среди других разработчиков — лишь 65%).

Похожая ситуация и с Kubernetes (66% и 37%), а также с другими инструментами управления контейнерами (82% и 56%).

Планируете ли вы перейти на другой менеджер зависимостей в ближайшие 12 месяцев?

Go-разработчики почти вдвое чаще, чем разработчики в целом, используют GraphQL (15% и 8% соответственно), а Rust выбирают почти в 3 раза чаще (16% и 6%).

Какие веб-фреймворки для Go вы регулярно используете?

Какой прокси Go Modules вы используете?

Используется ли в вашем проекте вендоринг?

Какой Go-роутер вы регулярно используете (если используете)?

Какие фреймворки для тестирования вы регулярно используете (если используете)?

Сколько внешних зависимостей в ваших проектах?

Каков размер кодовой базы, с которой вы работаете в IDE или редакторе?

Вы размещаете проекты Go Modules внутри или за пределами GOPATH?

Планируете ли вы перенести свои проекты в Go Modules в ближайшем году?

Какие системы сборки вы регулярно используете?

Go build остается самой популярной системой сборки, но доля тех, кто ее использует, упала по сравнению с прошлым годом с 97% до 85%. Второе место занимает Makefile, ее доля составила 37%.

Спасибо, что уделили время!

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

Присоединяйтесь к JetBrains Tech Insights Lab

Участвуйте в опросах и UX-исследованиях JetBrains, чтобы помочь нам улучшить наши продукты. Среди участников исследований разыгрываются призы.

Если у вас есть вопросы или пожелания, свяжитесь с нами по адресу surveys@jetbrains.com.