---
title: Participate in the 2017 Go User Survey
date: 2017-11-16
by:
- Steve Francia
tags:
- survey
- community
summary: Please take the 2017 Go User Survey. We want to hear from you!
---

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

Last year we conducted the first ever
[Go user survey](/blog/survey2016-results). 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 [2017 Go User Survey](https://goo.gl/n9M7SB).

## 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**: [2017 Go User Survey](https://goo.gl/n9M7SB)

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 [2016 Go user survey results](/blog/survey2016-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.
