These questions were only shown to respondents who chose Go as one of their three primary programming languages.

Go

How do you use Go?

Work
Personal / side projects
Hobby
Other
61%28%8%3%

On average, Go developers have more RAM on their working machines than other developers. And 91% use an SSD disk for work, while only 79% of other developers do.

Do you use multiple versions of Go at the same time?

No
Yes
77%23%

Do you have a single global GOPATH or use one GOPATH per project?

Single global GOPATH
One GOPATH per project
74%26%

Do you edit multiple Go projects at the same time?

Yes
No
74%26%

Which template engine do you use for Go development?

27%18% 2% 1% 1%64%html/templatetext/templatePongo2PlushOtherNone

Go developers prefer to eat at cafes and restaurants and order delivery more than other developers do, and they are less inclined to cook for themselves.

Which package managers do you use regularly?

2021
2020
86%/82% 5%/12% 5%/7% 4%/8% 2%/2% 2%/2% 1%/4% 1%/1% 1%/0% 0%/1% 0%/1% 7%/8%Go ModulesdepgovendorgodepgomgpmglideGopmgvtGoopOtherNone

The usage of Go modules is increasing. 86% of this year’s Go developers use it, while just 2 years ago only 41% did.

Meanwhile, the popularity of other package managers, such as dep, govendor, and glide, has decreased. Dep, which held second place last year, experienced the biggest drop, falling from 12% to 5%.

Which IDE / editor do you mostly use for Go development?

59%24% 9% 5% 1% 1% 1% 2%GoLandVisual Studio CodeIntelliJ IDEAVimVisual StudioEmacsAtomOther

Despite all the measures we’ve taken to secure a representative pool of respondents, the results may be slightly shifted towards users of JetBrains products, as they are more likely to take the survey.

Which cloud services are popular among Go developers?

Even though AWS is the most popular choice (67%), its share is the same as for developers who work with other languages.

Alibaba Cloud (Aliyun) exhibited the greatest divergence between its usage among Go developers and among the total respondent pool. Its share was 20% among Go users but only 12% among the general developer population.

What types of software do you develop with Go?

36%34%25%21%20%13%10% 8% 5% 5%WebsitesUtilitiesIT InfrastructureSystem SoftwareLibraries / FrameworksDatabase / Data StorageProgramming ToolsFinanceSecurityBusiness Intelligence / Data Science / Machine Learning
All results

Go developers are involved in DevOps activities at much higher rates than developers using other languages. For example, 86% use server templating tools, and 84% use Docker, which is true only for 65% of other developers.

The picture for Kubernetes is similar (66% vs 37%), as were the results for other container orchestration services (82% vs 56%).

Do you plan to migrate to another package manager in the next 12 months?

2021
2020
95%/90% 2%/6% 1%/1% 1%/1% 1%/1% 1%/0% 0%/1% 1%/3%No, I don't plan toGo ModulesdepgodepgomGopmYes, I'm planning to adopt / migrate to other package managerOther

Go developers are nearly twice as likely to use GraphQL as developers in general (15% vs 8%), and Rust was almost 3 times as likely to be selected (16% vs 6%).

Which Go web frameworks do you use regularly?

40%15%10% 2% 1% 1% 8%43%GinEchoBeegoBuffaloRevelMacaronOtherNone

What kind of Go modules proxy do you use?

53%27%18% 8% 2% 2% 1%I don’t use a proxyPublic goproxy.io / goproxy.cnPublic proxy.golang.orgPrivate goproxyPrivate JFrog ArtifactoryPrivate AthensOther

Do you use vendoring in your project?

No
Yes, in Go modules projects
Yes, in other projects
54%41%5%

Which Go router do you use regularly, if any?

35%34%10% 7% 2% 1% 5%27%gorilla / muxStandard librarygo-chi / chijulienschmidt / httproutegocraft / webgo-zoo / boneOtherNone

Which testing frameworks do you use regularly, if any?

43%25%14% 5% 4% 3% 2% 2% 1% 1%20%17%built-in testingtestifygomockgo-sqlmockginkgogomegagoconveyOthergocheckhttpexpectI don’t write unit tests for GoI write unit tests, but don’t use any frameworks

How many external dependencies do you have in your projects?

18%53%22% 7%Fewer than 55–20More than 20Not sure

What is the size of the codebase you are working with in the IDE / editor?

30%24%17%12% 5% 2% 3% 7%Fewer than 50 files51–100 files101–300 files301–1,000 files1,001–5,000 files5,001–10,000 filesMore than 10,000 filesNot sure

Do you put your Go modules project inside or outside the GOPATH?

Outside
Inside 
Other
54%45%1%

Do you plan to migrate your projects to Go modules in the next 12 months?

No
Yes
54%46%

Which build systems do you regularly use, if any?

85%
Go build
37%
Makefile
6%
Graddle
5%
Bazel
3%
Other

Go build is still the most popular build system, although its share has decreased since last year, from 97% to 85%. Makefile secured second place with a share of 37%.

Thank you for your time!

We hope you found our report useful. Share this report with your friends and colleagues.

Join JetBrains Tech Insights Lab

Take part in surveys and UX studies to make JetBrains products easier to use yet even more powerful. For participating in our research, you’ll also get the chance to earn rewards.

If you have any questions or suggestions, please contact us at surveys@jetbrains.com.