Participate in the 2018 Go User Survey
8 Nov 2018
Tags: survey, community

Ran Tao, Steve Francia
spf@golang.org

* The Go project wants to hear from you, the Go community!

In [[https://blog.golang.org/survey2017-results][2017]] &
[[https://blog.golang.org/survey2016-results][2016]], thousands of you helped the
project by lending your voice via the Go user survey. In October, hundreds of
companies helped us understand how enterprises are using Go by taking the Go company
questionnaire. These surveys and questionnaires have played an enormous role in
driving changes to our language and community, from
[[https://blog.golang.org/conduct-2018][our new code of conduct]], to our
[[https://blog.golang.org/go1.11][latest release Go 1.11]].

Today we are conducting the 2018 Go user survey. We’d like to hear from *all* Go
users in order to help us to create the best programming language that fits the
needs and desires of the people closest to it. Please help us shape the future of Go
by participating in the 15-minute 2018 Go user survey by November 30th:
[[https://goo.gl/8Vzquh][*Go*User*Survey*2018*]].

This survey is _confidential_and_anonymous_. For more information,
please refer to Google’s privacy policy [[https://policies.google.com/privacy][here]].

* Spread the word!

We need as many Gophers as possible to participate in this survey to help us better
understand our global user base. We’d be grateful if you would spread the word by
sharing this post on your social network feeds, around the office, at meetups, and in
other communities.
