Participate in the 2017 Go User Survey
16 Nov 2017
Tags: survey, community

Steve Francia
spf@golang.org

* The Go project wants to hear from you (again)!

Last year we conducted the first ever
[[https://blog.golang.org/survey2016-results][Go user survey]]. Thanks to all of you,
it was an overwhelming success with over 3500 responses. The survey provided key insights
and helped us better plan and prioritize.

We invite you to participate in the [[https://goo.gl/n9M7SB][2017 Go User Survey]].

* The Go User Survey

*Who:* If you currently use Go, have used Go in the past, or have any interest in the language,
please help by sharing your feedback to improve Go for you and your fellow
Gophers.

*Where:* Please take this 15-minute survey by *Friday*December*8th*: [[https://goo.gl/n9M7SB][2017 Go User Survey]]

The survey is anonymous and confidential.

*Why:* The Go project leadership depends on your feedback to guide the future
of the Go project. Your responses will help to understand what's going well
and what's not, as well as help us prioritize improvements for the Go
language, libraries and tools.

A few weeks after the survey closes, we will publish the anonymous aggregate results to
the Go blog. See the [[https://blog.golang.org/survey2016-results][2016 Go user survey results]]
to learn what insights were gained from last year's survey.

* Spread the word!

Please help us spread the word by sharing this post on your social network
feeds, at meetups, around your office and in other communities.