State of GO 2016
 Share
The version of the browser you are using is no longer supported. Please upgrade to a supported browser.Dismiss

 
View only
 
 
Still loading...
ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZBABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBQBRBSBTBU
1
Timestamp
Do you use Go?
Which version(s) of Go do you use
If you do not use the latest major (go1.6*) Go version, please explain why.
If you do not use the latest stable minor release of a Go version, please explain why.
If you use Tip/Head/Master, how often do you update?
How do you install Go?
How would you prefer to install Go?
What is your $GOPATH set to?
What OS do you develop on primarily?
Anything else you would like to add about your Go environment?
What tool(s) do you use to vendor dependencies?
Which tool do you prefer?
What do you like most about your preferred tool?
What do you like least about your preferred tool?
Do you commit vendor/ into your source control system?
Why?
Before the `vendor/` directory how did you manage your dependencies?
Do you use gopkg.in for your published projects?
Do you tag "releases" using semver tags?
How satisfied with the `vendor/` directory are you?
Anything you would like to add about Go vendoring?
My primary editor is
Syntax Highlighting is
Code Completion is
Overall how happy are you with your editor's support for Go?
Anything you would like to add about Go editors?
Which muxes do you use (check all that apply)?
Which http framework/toolkits(s) do you use?
Which micro service toolkits/frameworks do you use?
Anything you would like to add about Go http packages?
I have read The Go Programming Language Specification : https://golang.org/ref/spec
I have read Effective Go: https://golang.org/doc/effective_go.html
I regularly & directly need to use CGO
If yes, why?
What are you building with Go?
The services / tools I am building are primarily:
Do you use a library other than the stdlib for testing?
If yes, which?
Do you use table tests?
Do you usually write Benchmarks?
If yes, do you regularly use benchcmp (https://godoc.org/golang.org/x/tools/cmd/benchcmp) or a similar tool?
Which CI site/system(s) do you use?
Anything you would like to add about Go testing?
I use `go tool pprof`
I use `go tool trace`
Which additional tools do you use regularly
Anything you would like to add about Go tools?
How many open source Go projects do you contribute to
Rate your expertise in Go
I am regularly on
I get most of my Go news from
I get most of my Go answers from
I have attended one or more GoBridge (http://golangbridge.org/) events
I have organized one or more GoBridge events
Which Go Conferences have you been to?
I participated in the Gopher Gala 2016 (http://gophergala.com/)
My favorite Go blog is
Anything you would like to add about the Go community?
I generally deploy my code to:
When I deploy I generally
If you deploy via source code of some form do you
What OS do you primarily deploy to?
Anything you would like to add about Go deployment?
What do you like least about Go?
What do you like most about Go?
What, if anything is missing from the standard library?
What one change do you think would make Go more useful?
Please describe why you are not using Go
Any additional feedback about the survey in general?
Where are you located?
2
2016/06/07 1:41:22 PM CDT
Yes
1.5 (go1.5*);1.6 (go1.6*);1.7 (go1.7*)
Once a month
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/goApple OSX
godep;govendor;gb
godepYes
Repeatable builds
godepNoNo3
I would like a vendoring tool built into the go toolchain
Visual Studio Code
EnabledOn4
stdlib net/http;github.com/gorilla/mux;github.com/julienschmidt/httprouter
Don't use a framework, just stdlib
github.com/go-kit/kit
Several TimesYesNo
API/Web Services;Command Line Tools
Publicly available;Private / firewalled
NoYesYesNoTravis CI21
golang.org/x/tools/cmd/guru (formerly oracle)
3/5/20163Both
go-nuts mailing list
Gopher Slack (https://invite.slack.golangbridge.org/)
YesYes
GopherCon (Denver)
Noblog.golang.orgHeroku
Deploy source code
Prefer to pick the major version of Go and let a build tool choose the minor version
Linux
Lack of a vendoring tool as part of the tool chain.
Type checking / compiled language
(shrug)Portland, OR
3
2016/06/08 12:27:15 PM CDT
Yes1.6 (go1.6*)brew installbrew install$HOME/goApple OSXgb;glideglideYes
Did not manage them
NoYes4
Visual Studio Code
EnabledOn6
github.com/gorilla/mux;github.com/julienschmidt/httprouter
http://www.gorillatoolkit.org/
github.com/micro/go-micro
Several TimesYesNo
API/Web Services;Microservices
Private / firewalled
YestestifyYesNoNoTravis CI11
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;sourcegraph.com/sqs/goreturns;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle);github.com/golang/lint/golint
3/5/20165Gopher SlackRedditStack Overflow
No, but I am interested in doing so
NoGolang UKNomatryer.com
Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
LinuxLos Angeles
4
2016/06/08 12:29:10 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*);Tip/Head/Master
Once a week
Build from source
Build from source
$home/mygoApple OSX
godep;govendor
govendorIt works
It breaks sometimes and that's infuriating.
Yes
Repeatable builds.
godepNoYes6NopeVim/NeovimEnabledOn6
stdlib net/http;github.com/bmizerany/pat
Don't use a framework, just stdlib
github.com/go-kit/kit
Several TimesYesNo
API/Web Services;Command Line Tools;Microservices
Publicly available
YesgocheckYesYesYesTravis CI43
github.com/golang/lint/golint;github.com/kisielk/errcheck;golang.org/x/tools/cmd/gorename;github.com/golang/lint/golint
3/5/20165BothCoworkersCoworkersNoNo
GopherCon (Denver)
No
AWS EC2;Heroku
Deploy a binary
Prefer to pick a specific major + minor version of Go.
Linux
People continuously hating on it.
It lets me get work done quickly, safely and with a little fun.
5
2016/06/08 12:29:22 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
brew install$HOME/goApple OSX
govendor;no tool
govendorYes
Otherwise, what is the point?
Did not manage them;godep
NoNo6Vim/NeovimEnabledOn5
stdlib net/http;github.com/julienschmidt/httprouter
Don't use a framework, just stdlib
noneNoYesNo
API/Web Services;Command Line Tools;Microservices
Private / firewalled
Yesnbio/stYesYesNo
TeamCity;Codeship
11
github.com/golang/lint/golint;github.com/kisielk/errcheck;github.com/golang/lint/golint
25Gopher Slack
Gopher Slack (https://invite.slack.golangbridge.org/)
Gopher Slack (https://invite.slack.golangbridge.org/)
No, but I am interested in doing so
No
GopherCon (Denver)
Yes
Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
LinuxSouth Florida
6
2016/06/08 12:29:42 PM CDT
Yes
1.5 (go1.5*);1.6 (go1.6*);1.7 (go1.7*)
msi or pkg installer
Go containerI use GB
Linux (any distro)
I always use GB where I can
gbgb
The directory structure
No run capability
Yes
It ensures all releases are stable, as there are no reliable dependency version managers at the moment
Did not manage them
NoYes6AtomEnabledOn7
stdlib net/http;github.com/gorilla/mux
github.com/gin-gonic/gin
github.com/go-kit/kit
PartsYesNo
API/Web Services;Microservices;Non HTTP/Web Network Services
Publicly available;Private / firewalled
NoYesNo
CodeShip, Drone
11
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;github.com/golang/lint/golint
3/5/20165Gopher SlackCoworkersCoworkers
No, but I am interested in doing so
NoGolang UKNo
Google Compute Engine;Google Container Engine;Kubernetes
deb/docker mixLinux
No ternary operator ;)
Strong static type, concurrency speef
United Kingdom
7
2016/06/08 12:30:52 PM CDT
Yes1.6 (go1.6*)brew installbrew install$HOME/Code/GoApple OSX
git submodules;no tool
no toolNo
Did not manage them
YesYes4Vim/NeovimEnabledOn7
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib
github.com/go-kit/kit;github.com/goadesign/goa
Several TimesYesNo
API/Web Services;Command Line Tools
Publicly available;Private / firewalled
NoYesYesYes
Travis CI;Circle CI
55
github.com/derekparker/delve;github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;sourcegraph.com/sqs/goreturns;github.com/kisielk/errcheck;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle);github.com/golang/lint/golint
3/5/20165Gopher Slack
Gopher Slack (https://invite.slack.golangbridge.org/)
Gopher Slack (https://invite.slack.golangbridge.org/)
NoNoNoneNoDigital Ocean
Deploy a docker image
LinuxNorway
8
2016/06/08 12:33:38 PM CDT
Yes
1.4 (go1.4*);1.5 (go1.5*);1.6 (go1.6*)
brew installbrew install$HOME/goApple OSXno tooldon't know yet
It's a non-solution for now
No
Just getting started
Did not manage them
NoYes7Vim/NeovimEnabledOn6
I also use IntelliJ IDEA
github.com/gorilla/mux
http://www.gorillatoolkit.org/
github.com/go-kit/kit
PartsPartsNo
API/Web Services;Command Line Tools;Microservices
Private / firewalled
NoNoNoCircle CI;Jenkins11
github.com/derekparker/delve;github.com/golang/lint/golint;github.com/golang/lint/golint
01Gopher Slack
Gopher Slack (https://invite.slack.golangbridge.org/)
Stack Overflow
No, but I am interested in doing so
NoNoneNo
AWS EC2;Kubernetes;Servers that I/my company manage ourselves
Deploy a docker image
Linux
Still learning, but perhaps tool support is a little lacking
Opinionated no-nonsense language / community
Toronto, Canada
9
2016/06/08 12:35:00 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*);Tip/Head/Master
Tip only via Travis
msi or pkg installer
msi or pkg installer
$HOME/goApple OSXno toolno toolNo
Did not manage them
NoNo5LiteIDEEnabledOn6stdlib net/httpechononePartsNoNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions)
Publicly available;Private / firewalled
Yes
github.com/stretchr/testify/assert
YesYesYes
Travis CI;Circle CI;Appveyor
41
github.com/golang/lint/golint;golang.org/x/tools/cmd/gorename;github.com/golang/lint/golint
6/10/20165Gopher Slack
go-nuts mailing list
Gopher Slack (https://invite.slack.golangbridge.org/)
No, but I am interested in doing so
NoNoneNo
Servers that I/my company manage ourselves
Deploy a binary
Prefer to pick a specific major + minor version of Go.
Linux
It is a little bit windy.
Fast dev cycle.Generics
Merge strings and bytes (or: make immutable bytes or whatever)
Norway
10
2016/06/08 12:35:49 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*);Tip/Head/Master
Once a weekbrew installbrew install$HOMEApple OSX
godep;govendor
godep
it's very sharp but i know it well
YesgodepNoNo6
my only complaint is the ./... annoyance
Vim/NeovimEnabledOff6stdlib net/http
Don't use a framework, just stdlib
nonePartsYesNo
API/Web Services;Non HTTP/Web Network Services
Private / firewalled
NoYesYesYesTravis CI52
github.com/derekparker/delve;github.com/golang/lint/golint;github.com/kisielk/errcheck;github.com/golang/lint/golint
25Neither
go-nuts mailing list
go-nuts mailing list
No, but I am interested in doing so
NodotGoNo
https://commandcenter.blogspot.com/
Heroku;Servers that I/my company manage ourselves
Deploy a docker image
Prefer to pick the major version of Go and let a build tool choose the minor version
Linuxno genericsit's productivenet.Resolvergreat work Ed!SF
11
2016/06/08 12:36:33 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOMEApple OSXgodepgodepYes
For reliable builds.
godepNoYes7Vim/NeovimEnabledOn7
vim-go is awesome, thanks Fatih!
github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Microservices
Private / firewalled
NoYesNoCircle CI31
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;sourcegraph.com/sqs/goreturns;github.com/kisielk/errcheck;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle);github.com/alecthomas/gometalinter
15Gopher SlackTwitter
Gopher Slack (https://invite.slack.golangbridge.org/)
YesYesNoneNoDave Cheney's
AWS Container Service;AWS EC2;AWS Elastic Beanstalk
Deploy a docker image
Linux
Simplicity and the feeling of being in control.
Sao Paulo, Brazil
12
2016/06/08 12:38:10 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*)
Untar or Unzip releases from golang.org
Linux distro package
$HOME
Linux (any distro)
godep;glideglide
Pulling from $GOPATH instead of the remote repository means it's easy to accidentally downgrade when trying to upgrade
Yes
Easier to manager for teammates
Did not manage them;godep
YesYes7EmacsEnabledOff5
goimports can be really slow
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib;http://www.gorillatoolkit.org/
Don't use a framework, just stdlib
Several TimesYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices;Non HTTP/Web Network Services
Private / firewalled
YestestifyYesNoDrone41
github.com/golang/lint/golint
6/10/20165Gopher Slack
go-nuts mailing list
Standard library documentation=
NoNo
GopherCon (Denver);Gopherfest
No
AWS Container Service;AWS EC2
Deploy a docker image
Just use the latest major + minor release of Go
Linux
13
2016/06/08 12:38:23 PM CDT
Yes1.6 (go1.6*)FreeBSD portsee previousnonesee previousno toolno toolNo
Did not manage them
NoNo1Vim/NeovimEnabledOff5NANANAPartsYesNo
Command Line Tools
xNoNoNoNA11NA01NeitherNANANoNoNoneNo
Servers that I/my company manage ourselves
Deploy source code
Just use the latest major + minor release of Go
see previous
14
2016/06/08 12:39:21 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME
Linux (any distro)
godep;no tool
Not sure - it's hard to separate general dependency management issues from vendor tool issues.
Yesreproducibility
Did not manage them;godep
YesYes6Vim/NeovimEnabledOn7
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib;github.com/urfave/negroni;http://www.gorillatoolkit.org/
Don't use a framework, just stdlib;github.com/go-kit/kit
PartsYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices
Publicly available;Private / firewalled
NoYesNoNoTravis CI;Drone22
github.com/rogpeppe/godef;github.com/golang/lint/golint;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle)
3/5/20165Neither
go-nuts mailing list
go-nuts mailing list
NoNoNoneNoDave Cheney
AWS EC2;Servers that I/my company manage ourselves
Deploy a docker image
Just use the latest major + minor release of Go
Linux
Dependency Management
InterfacesMaricopa, AZ
15
2016/06/08 12:39:55 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*)
brew installbrew install$HOME/goApple OSX
Mixed env OSX + Linux VM
govendorgovendorYes
what's the point of vendoring otherwise
copied code by hand
NoYes4
Go needs to provide a standard tool, existing tools are not all aware of vendoring, vendoring is unclear when you write a library.
IntelliJEnabledOn6
stdlib net/http;github.com/julienschmidt/httprouter
Don't use a framework, just stdlib
github.com/goadesign/goa
Too many of them, hard to pick :-)
PartsYesYes
interaction with low level hardware
API/Web Services;Command Line Tools;Microservices;Non HTTP/Web Network Services
Private / firewalled
NoYesNoJenkins11
github.com/derekparker/delve;github.com/golang/lint/golint;sourcegraph.com/sqs/goreturns;github.com/kisielk/errcheck
15Gopher Slack
Gopher Slack (https://invite.slack.golangbridge.org/)
Gopher Slack (https://invite.slack.golangbridge.org/)
NoNoNoneNo
Servers that I/my company manage ourselves
Deploy a binaryLinux
lack of some useful features such as generics. some things are still subtle about the language, they could be simpler.
simplicity of reading any code
generics, yaml encoder/decoder
genericskinda longN. California
16
2016/06/08 12:40:42 PM CDT
Yes
1.5 (go1.5*);1.6 (go1.6*)
Laziness in switching to most recent version… just decided to wait for 1.7.
brew installbrew install
$HOME/Development/go/src (standard dev env at company)
Apple OSX
Currently using godep. Thinking about switching. Waiting for a winner to emerge.
godepno tool
@freeformz is amazingly helpful.
Confusing when it doesn't work quite right.
Yes
We locally mirror gems, pypi, etc. too. Don't want builds to fail if the internet goes away.
godepNoYes2
It's terrible. But not if you only live in google3/. I would like to force the Go team to intern at our company for just a month. Then they would fix things.
EmacsDisabledOff5
guru is slow. I should probably see if emacs can be set up more cleverly…
stdlib net/http
Don't use a framework, just stdlib
InternalSeveral TimesYesNo
API/Web Services;Command Line Tools;Microservices;Non HTTP/Web Network Services
Private / firewalled
NoYesNoNoJenkins32
github.com/rogpeppe/godef;github.com/golang/lint/golint;golang.org/x/tools/cmd/guru (formerly oracle)
3/5/20165Gopher Slack
go-nuts mailing list
Gopher Slack (https://invite.slack.golangbridge.org/)
NoNoNoneNorsc
Servers that I/my company manage ourselves
Custom in-house build artifact
Prefer to pick a specific major + minor version of Go.
Linuxvendoring
clarity and opinionated quality of libraries
file watching
A coherent solution to vendoring.
Atlanta, Georgia, USA
17
2016/06/08 12:43:05 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/Code/goworkspace
Microsoft Windows
no toolno toolYes
No dependencies to builds.
Did not manage them
NoNo7SublimeEnabledOn7
stdlib net/http;github.com/gorilla/mux
http://www.gorillatoolkit.org/
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices;Non HTTP/Web Network Services
Publicly available;Private / firewalled
NoNoNoNoCodeship11-3/5/20164Neither
go-nuts mailing list
Stack OverflowNoNodotGoNo
Digital Ocean;Servers that I/my company manage ourselves
Deploy a binaryLinux
The speed which I can develop with forces the whole company to work faster ;-)
The speed which I can develop with ;-)
Add a standard way to include resources for web pages eg.
Odense, Denmark
18
2016/06/08 12:44:07 PM CDT
Yes1.6 (go1.6*)brew installbrew install$HOME/code/goApple OSXgb;glideglideNo
Hasn't ben an issue so far.
Did not manage them
YesYes1
It sucks. Take package management seriously.
Vim/NeovimEnabledOff5
Waiting for IntelliJ to provide one commercial so I can give them all my money.
github.com/zenazn/goji or goji.io;github.com/julienschmidt/httprouter
goji
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Microservices
Private / firewalled
YesgoconveyNoNoJenkins21
github.com/derekparker/delve;github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;github.com/kisielk/errcheck
03BothReddit
Gopher Slack (https://invite.slack.golangbridge.org/)
NoNoNoneNoMain blog
AWS EC2;Linode
Deploy a binaryLinux
Package management; generics
concurrencyGenerics
Raleigh, NC, USA
19
2016/06/08 12:48:31 PM CDT
Yes
1.5 (go1.5*);1.6 (go1.6*)
We haven't yet upgraded to 1.6 in production, we typically trail a bit behind latest releases. A lot of people have this idea that you should upgrade as soon as a new version lands, but in my experience this is an infeasible proposition.
See prior answer
We use gvm on the servers as part of a chef bootstrap, like we use version managers for our other languages, but locally people can do what they want
A better version manager than gvm, so that it doesn't ruin your gopath
I have a directory where all projects go. There is a /go directory under that, which is my gopath
Develop on osx, test and run on linux
I use symlinks but that doesn't work in 100% of cases, but it really should. theres a bug filed about it, not sure if it ever got accepted to be fixed.
gvt
They're all incomplete until they support the other 2 legs of the stool - Vendoring is 1 left, but Dependency + Version definition is another, and the final leg would be Version Resolution
Yes
Because you need to have reproducible builds
Did not manage them
NoYes3
It doesn't work with go test properly, which is kind of a big design oversight. No one wants to or needs to run all the tests for their dependencies each time they test. Yes, there are grep-y solutions to this. But if there are solutions to it, why aren't they baked into the tool itself.
AtomEnabledOn5
github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Worried about how request contexts will be adopted in 1.7 and beyond.
PartsYesNo
API/Web Services;Command Line Tools;Microservices;Non HTTP/Web Network Services
Mix of private for my job, and public OSS stuff
Yes
Ginkgo. It's... ok
YesYesNoJenkins
I should be using benchcmp. I don't, but I should
33
github.com/golang/lint/golint;golang.org/x/tools/cmd/guru (formerly oracle)
Eh, hard to say - does writing my own OSS stuff that almost no one uses count as "contributing?" If so, maybe 6-7, otherwise, 1-2
4Gopher Slack
Gopher Slack (https://invite.slack.golangbridge.org/)
Gopher Slack (https://invite.slack.golangbridge.org/)
YesNoNoneNoAWS EC2Deploy a binaryLinux
It's backwards compatibility promise, to put it succinctly. It was a nice idea, but I think it does more harm than good. If I change from 1.5 to 1.6 and a few things changed or are broken, I'm fine with that. I'll stay on 1.5 until I can fix my code or my dependent libs are updated to be compatible. The language cannot change or grow beyond what it already is. Theres talk of never having a Go 2. A lot of really smart people worked on the language, but even really smart people make bad choices in the vacuum of their own echo chambers.
I think the language succeeds in what it set out to do - a small, efficient language which makes it possible to dive into and start writing clean, idiomatic code in a very short period of time.
I'm not going to say Generics.

I am going to say some way to make math not a giant pain in the ass when dealing with an int VS an int64 on a 64bit machine. Some way to make it so there is a set of core math libs with functions that support all the numeric types in a simple way. Sure, i could write my own Abs function for each type. But why should I have to? The StdLib should be here to keep me from writing simple boilerplate for common activities. There are more examples of this in other places, but I won't belabor the point.

I've described developing in go to other folks as walking through my house, getting things done, when suddenly my foot goes clean through a hole in the floor, and then I come to find out the architect left that hole there by design because "At some point you have to put some work in yourself, you know". I just think that attitude is a poor one, although I appreciate they're trying to keep the language small by design.
A proper vendoring tool with dependency management and version resolution baked into it.
It was a lot longer than I expected :)
Boston
20
2016/06/08 12:48:44 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*);Tip/Head/Master
Once a week
Build from source
Build from source
$HOME/goApple OSXcpno toolYes
Because then it's download & install
gbNoNo7SublimeEnabledOn7
stdlib net/http;github.com/gorilla/mux;github.com/julienschmidt/httprouter
Don't use a framework, just stdlib
github.com/go-kit/kit
PartsYesYes
author of a game engine, github.com/luxengine
API/Web Services;Command Line Tools;Microservices;Non HTTP/Web Network Services;Game engine
Publicly available;Private / firewalled
NoYesYesYesJenkins21
github.com/golang/lint/golint
3/5/20166Gopher Slack
Gopher Slack (https://invite.slack.golangbridge.org/)
Gopher Slack (https://invite.slack.golangbridge.org/)
NoNoNoneNoDigital OceanDeploy a binaryLinux
importance that the dev take in cgo.
consistency
my special request would be native vec3, vec4 mat3, mat4 types that use SE in the background
Ottawa, Canada
21
2016/06/08 12:48:47 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
C:\go\
Microsoft Windows
no toolno toolNo
don't know what it is
Did not manage them
NoNo4LiteIDEEnabledOn7stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Microservices
Private / firewalled
NoNoYesNonone52
github.com/golang/lint/golint
16Neither
go-nuts mailing list
go-nuts mailing list
NoNoNoneNo
Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
Linux
Lack of function templates
SimplicityNothing
"Manual" garbage collection of single item, that isn't stopping the program.
Poland
22
2016/06/08 12:49:33 PM CDT
Yes
Tip/Head/Master
Multiple times a day
Build from source
Build from source
$HOME/gocode
Linux (any distro)
no toolno toolNo
Did not manage them
NoNo7EmacsDisabledOn7stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Microservices
Private / firewalled
NoNoNoJenkins41
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;github.com/kisielk/errcheck
3/5/20165Neither
https://news.ycombinator.com
go-nuts mailing list
NoNo
GopherCon (Denver)
No
Servers that I/my company manage ourselves
Deploy a binaryLinux
It's performance should match C/C++
It is a fun and productive language.
Improve it's performance as much as possible. Make it as close to C/C++
23
2016/06/08 12:49:45 PM CDT
Yes
1.5 (go1.5*);1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/gopathApple OSX
Mostly use gb tooling
gbno tool
Easy to install and use
When using projects externally, imports are ugly
Yes
Locked versioning in case of Github/Bitbucket being down, or code being changed on a tag
copied code by hand
NoYes5
Definitely needs some work!
AtomEnabledOn5
github.com/gorilla/mux;https://github.com/erkl-old/robo
Don't use a framework, just stdlib
github.com/go-kit/kit
PartsPartsNo
API/Web Services;Command Line Tools;Microservices;Non HTTP/Web Network Services
Private / firewalled
NoYesNoNoCodeship11
github.com/rogpeppe/godef;github.com/golang/lint/golint
03Gopher SlackCoworkersCoworkersNoNoGolang UKNo
AWS EC2;Digital Ocean;Google Compute Engine
Deploy a binaryLinuxBristol UK
24
2016/06/08 12:51:37 PM CDT
Yes1.6 (go1.6*)brew installbrew install$HOME/gopkgApple OSXno toolno tool
No tool-specific files
Manual copyingYes
Repeatable builds
Did not manage them
NoNo2
The community absolutely *requires* consolidation on this front.
Visual Studio Code
EnabledOn6None
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesYes
Integration with large C++ libraries that we are *not* going to rewrite in Go.
Non HTTP/Web Network Services
Private / firewalled
NoNoNoJenkins64gometalinter3/5/20165Gopher Slack
Gopher Slack (https://invite.slack.golangbridge.org/)
Gopher Slack (https://invite.slack.golangbridge.org/)
No, but I am interested in doing so
No
None;GoSF meetups
Noblog.golang.orgAWS EC2Deploy a binaryLinux
Its spartan nature
Generics, but without boxing (or auto code generation)
Los Gatos, CA
25
2016/06/08 12:52:16 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
brew install$HOME/gdrive/Code/gopathApple OSXgodepno toolYesFreezes depsgodepNoNo5SublimeEnabledOn5
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices;Non HTTP/Web Network Services
Private / firewalled
YesginkgoNoNoCircle CI22
github.com/rogpeppe/godef;golang.org/x/tools/cmd/guru (formerly oracle)
3/5/20165Gopher SlackCoworkersStack Overflow
No, but I am interested in doing so
No
GopherCon (Denver);Gotham Go
NoAWS EC2
Deploy source code
Prefer to pick a specific major + minor version of Go.
Linux
Dependency management
Concurrency constructs
A centralized repo for dependencies
New York City
26
2016/06/08 12:52:27 PM CDT
Yes1.6 (go1.6*)gvmgvm$HOME/go
Linux (any distro)
glideglide
just work most of the times
Nono sense
I was not using go
NoYes5
I believe it should be flat and avoid weirdness of sub sub sub vendor.
AtomEnabled
Not offered by my editor
5
I m fine with simple code completion and good o(n|ff)line doc.
none yetnone yetnone yetPartspartsNo
Command Line Tools
Publicly available
NoNoNo
none yet with go
11none yet
I like official go tool very much
11Neither
go-nuts mailing list
Stack Overflow
No, but I am interested in doing so
NoNoneNonone yetnone yet
Prefer to pick a specific major + minor version of Go.
Linux
too verbose, lack of mature package management (too much inspired by C/java/.net usual project management)
(relatively) easy to learn, easy to write, good error messages, cross platform, performance, lots of great tool provided by the core team
I m very new user
france
27
2016/06/08 12:53:27 PM CDT
Yes1.6 (go1.6*)
pre-installed on my system, or from a pkg
msi or pkg installer
$HOME
Linux (any distro)
no toolno toolNo
No need at this point.
company internal solution
NoNo4nvi
Not offered by my editor
Not offered by my editor
7stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Non HTTP/Web Network Services
Private / firewalled
NoYesNo
Travis CI;company internal
21
company internal
27Neither
go-nuts mailing list
CoworkersNoNo
GopherCon (Denver)
No
Servers that I/my company manage ourselves
Company internal packaging
Linux
godoc for large packages is unwieldy as the automatic formatting has no idea what is important and should appear first.
It makes programming fun again.
Good logging package/infrastructure and good flag package.
28
2016/06/08 1:02:10 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*);Tip/Head/Master
When testing.
Build from source
Build from source
I use project specific paths
Linux (any distro)
git submodules
A real package manager. Vendoring is garbage for library developers.
It works without another dependency. Since dependencies are horrible to manage in Go this is a big plus.
Consumers of the library have to figure it out for themselves. Not automatic library version resolution.
No
I develop libraries. Vendoring is not appropriate.
git submodulesNoYes1It is horrible.Vim/NeovimEnabledOff7
github.com/gorilla/mux
http://www.gorillatoolkit.org/
Don't use a framework, just stdlib
Several TimesYesYes
I pull in some large C++ libraries.
Command Line Tools;Non HTTP/Web Network Services
Publicly available;Private / firewalled
NoNoYesNoNone61
github.com/golang/lint/golint
pprof is awesome. I haven't had to use trace yet but it looks cool.
3/5/20166Gopher Slack
go-nuts mailing list
The documentation and source code.
No, but I am interested in doing so
NoNoneNoblog.golang.org
AWS EC2;Servers that I/my company manage ourselves
Deploy a binaryLinux
Vendoring, package management, lack of generics
Concurrency, cgo, speed
GenericsCleveland, Ohio
29
2016/06/08 1:03:50 PM CDT
Yes1.6 (go1.6*)brew installbrew install$HOME/Dropbox/golang/Apple OSXglideglide
It seems to be reliable - haven't looked at too many others.
I need it at all.No
Waste of space most of the time.
Did not manage them
NoYes4AtomEnabledOn7
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
Command Line Tools;Web Sites (Primarily HTML interactions);Microservices
Private / firewalled
NoYesNoJenkins;Wercker31
github.com/golang/lint/golint;github.com/kisielk/errcheck
6/10/20163NeitherTwitter
Google searches.
NoNoNoneNo
AWS EC2;Digital Ocean;Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
Linux
It is very accessible and most of the time makes a ton of sense.
Canada
30
2016/06/08 1:04:32 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*);Tip/Head/Master
Multiple times a day
Build from source
Build from source
$HOME/gopath
Linux (any distro)
custom toolcustom tool
Works for our environment.
Yes
Reproducible builds
custom toolNoNo5EmacsDisabledOff6stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesYes
To call large C/C++ libraries.
Command Line Tools
Publicly available
NoYesYesYesCustom tool51
github.com/golang/lint/golint;golang.org/x/tools/cmd/guru (formerly oracle)
3/5/20167IRC
go-nuts mailing list
CoworkersNoNo
GopherCon (Denver)
No
http://research.swtch.com/
Servers that I/my company manage ourselves
Deploy a binaryLinuxCalifornia, US
31
2016/06/08 1:06:52 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Linux distro package
top of project dir
Linux (any distro)
made my ownno tool
its a mess any way you go
Yes
Can't assume code will be there/compatible later
Did not manage them
NoYes4EmacsEnabledOff5stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesYes
API/Web Services
Private / firewalled
NoYesNoJenkins21
github.com/golang/lint/golint
05Neither
go-nuts mailing list
the docs/source
NoNoNoneNo
Servers that I/my company manage ourselves
Deploy a binaryLinux
part of embedded target image
make process - can't automatically rebuild due to dependencies of go generate,
using a cgo module that needs options requires those options on building users of the module, ... ultimately need external scripts.
very expressive compiled language
San Jose, CA
32
2016/06/08 1:08:05 PM CDT
Yes1.6 (go1.6*)
msi or pkg installer
msi or pkg installer
C:\devel\go
Microsoft Windows
no toolno toolNo
Did not manage them
NoNo4IntelliJEnabledOn7
stdlib net/http;github.com/julienschmidt/httprouter
Don't use a framework, just stdlib
Don't use a framework, just stdlib
OnceYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Desktop GUI apps
Publicly available
NoYesNoNone31
github.com/derekparker/delve;github.com/nsf/gocode
3/5/20165NeitherReddit
go-nuts mailing list
NoNoNoneNo
Servers that I/my company manage ourselves;Customer desktop + terminal services boxes
Deploy a binary
Microsoft Windows
Too much boilerplate because of some missing features
It isn't bloatedi18n
Make all errors contain a stack trace
Germany
33
2016/06/08 1:08:44 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*);Tip/Head/Master
not often
msi or pkg installer
msi or pkg installer
depends
multiple platforms
no toolno toolNo
Did not manage them
NoNo7
i don't use it, however i see the value of it.
notepad++,notepad, ee
DisabledOff7stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices;Non HTTP/Web Network Services
Private / firewalled
NoNoYesYesdepends33custom04Neither
go-nuts mailing list
CoworkersNoNoNoneNo
Servers that I/my company manage ourselves
Deploy a binaryfreebsdcompat 1
memory management, compiled, active
fixes
breaking compat 1, organize the codebase of the std, kick stuff to /x/
delaware
34
2016/06/08 1:09:15 PM CDT
Yes1.6 (go1.6*)
Linux distro package
Linux distro package
$HOME/go
Linux (any distro)
no toolno toolNo
I use mostly standard library and golang.org/x/ repositories where it isn't necessary, so I don't use vendor/ in the first place.
Did not manage them
NoYes6
I would love to see this become a solved problem in the Go ecosystem.
Vim/NeovimEnabledOn7
Vim-go is awesome!
stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Web Sites (Primarily HTML interactions)
Publicly available
NoYesNoTravis CI11
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle)
3/5/20164Neither
go-nuts mailing list
go-nuts mailing list
No, but I am interested in doing so
NoNoneNo
It is very friendly and open.
Google App Engine
Deploy source code
Just use the latest major + minor release of Go
Linux
Error handling verbosity.
Simplicity and clean feel
Swing-like widget toolkit. Maybe not in the standard library but in golang.org/x/ at least.
I think generics would be nice if done well.
Phoenix, Arizona (US)
35
2016/06/08 1:10:22 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME
Linux (any distro)
It's so much simpler than my Python dev environment was!
no toolno toolsimplicity
sometimes manual labor
YesSimplicity.
Did not manage them
NoNo6
My one concern is making sure I copy the licence file and use the package as licensed.
Vim/NeovimEnabled
Not offered by my editor
7
I use go-vim and it rocks!
stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Don't need anything else.
PartsYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices
Private / firewalled
NoYesNoNone41
github.com/golang/lint/golint
gometalinter15Neither
go-nuts mailing list
Google searches
NoNo
GopherCon (Denver);Gotham Go
No
Lots of good videos from Francesc Campoy and Kelsey Hightower on YouTube!
Digital Ocean;Servers that I/my company manage ourselves
Deploy a binaryLinux
scp or rsync and no hassle!
It is a bit tedious to write a lot of error handling, although I prefer that to exceptions.
It prevents most of the bugs I write from seeing the world because of compiler errors.
Nothing that I know of.
Being able to magically generate (and remove) lots of debug logging.
New Jersey, USA
36
2016/06/08 1:13:20 PM CDT
Yes1.6 (go1.6*)brew installbrew install$HOME/gocodeApple OSXno toolno toolNo
copied code by hand
YesNo5EmacsEnabledOn6
stdlib net/http;None;github.com/gorilla/mux;github.com/julienschmidt/httprouter
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Microservices;Non HTTP/Web Network Services
Publicly available;Private / firewalled
NoNoNoNoJenkins44
github.com/golang/lint/golint
06Neither
Go Forum (https://forum.golangbridge.org/)
Stack OverflowNoNoNoneNo
AWS EC2;Servers that I/my company manage ourselves
Deploy a docker image
LinuxUK
37
2016/06/08 1:13:24 PM CDT
Yes1.6 (go1.6*)brew installbrew install$HOME/goApple OSXgodep;gbgodepYes
Stability I guess, but most of the time it's probably not necessary
godepNoNo6IntelliJEnabledOn6
github.com/julienschmidt/httprouter
github.com/gin-gonic/gin
github.com/micro/go-micro
PartsYesNo
API/Web Services;Command Line Tools;Microservices
Publicly available
YestestifyNoNoCircle CI11none of these05NeitherCoworkersStack OverflowNoNoNoneNo
http://dave.cheney.net/
AWS EC2;Heroku
Deploy source code
Prefer to pick the major version of Go and let a build tool choose the minor version
Linux
At times its hard to be DRY, maybe more tooling around code generation could be nice, or something similar to generics.
Minimal language features (somewhat contradictory to the response above)
Kansas City, Missouri
38
2016/06/08 1:14:38 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Linux distro package
Set it in a Makefile
Linux (any distro)
no toolgodepYes
Did not manage them
NoNo4EmacsEnabledOn6None
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesNo
Command Line Tools
Private / firewalled
NoNoNoNone21
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;golang.org/x/tools/cmd/guru (formerly oracle)
04Neither
go-nuts mailing list
go-nuts mailing list
NoNoNoneNo
Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
Linux
Limited support for collection data structures (sets, trees etc) in stdlib
Simplicity of the language.
collection data structures (sets, trees etc)
Allow slices to be used as map keys
New Hampshire, USA
39
2016/06/08 1:23:49 PM CDT
Yes1.6 (go1.6*)brew install
Build from source
$HOME/goApple OSXgodep;glidegodepYesgodepNoNo4AtomEnabledOn6
github.com/gorilla/mux
github.com/urfave/negroni
Don't use a framework, just stdlib
OnceYesNo
API/Web Services;Microservices
Publicly available
NoNoNo
Travis CI;Circle CI
11
github.com/rogpeppe/godef;github.com/golang/lint/golint
25Gopher SlackTwitter
Gopher Slack (https://invite.slack.golangbridge.org/)
YesYesNoneNo
Servers that I/my company manage ourselves
Deploy a docker image
Just use the latest major + minor release of Go
LinuxBrazil
40
2016/06/08 1:27:28 PM CDT
Yes
Tip/Head/Master
i like to live dangerously
i like to live dangerously
Once a week
Build from source
Build from source
$HOMEApple OSXno toolno toolsimpleYesit doesnt hurt
copied code by hand
NoNo7acme
Not offered by my editor
Not offered by my editor
7stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesYes
Command Line Tools;Non HTTP/Web Network Services
Private / firewalled
NoYesYesYesJenkins;None63
github.com/golang/lint/golint
26Neither
go-nuts mailing list
go-nuts mailing list
NoNoNoneNoblog.golang.org
Servers that I/my company manage ourselves
Deploy a binaryLinuxeverythingcanada
41
2016/06/08 1:28:48 PM CDT
Yes1.6 (go1.6*)
msi or pkg installer
msi or pkg installer
$HOME/Code/goApple OSXgvtgvtSimplicityNothing'sYes
For reproducible builds
godep;copied code by hand
YesYes5Vim/NeovimEnabledOn7
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib;http://www.gorillatoolkit.org/
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Microservices;Packages on github
Publicly available;Private / firewalled
NoYesNoNoTravis CI;Drone41
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle)
6/10/20165Gopher SlackReddit
Gopher Slack (https://invite.slack.golangbridge.org/)
NoNoDotGoNoOfficialDigital Ocean
Deploy a docker image
Just use the latest major + minor release of Go
Linux
42
2016/06/08 1:35:13 PM CDT
Yes1.7 (go1.7*)SSA backend
msi or pkg installer
msi or pkg installer
$HOMEApple OSXno toolno toolNo
Did not manage them
NoNo4AtomEnabledOn5
Atom can't handle big files
None
Don't use a framework, just stdlib
Don't use a framework, just stdlib
NoYesYesqt binding
desktop and mobile applications
Publicly available
NoNoNoNoNone21
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint
15Neither
go-nuts mailing list
go-nuts mailing list
NoNoNoneNo
Servers that I/my company manage ourselves
Deploy a binaryApple OSX
43
2016/06/08 1:35:40 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/go
Linux (any distro)
no toolno tool
Standard recommended
Yes
Only need to clone one repo
ManuallyNoYes7Vim/NeovimEnabledOff7
github.com/gorilla/mux
Don't use a framework, just stdlib;http://www.gorillatoolkit.org/
Don't use a framework, just stdlib
Several TimesYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices;Non HTTP/Web Network Services
Publicly available;Private / firewalled
YesTestifyYesNoJenkins21
github.com/golang/lint/golint
3/5/20166NeitherHacker Newd
Various online resources
NoNoNoneNo
Google Compute Engine;Linode;Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
Linux
Lack of world domination
Very stable-ly opinionated
OpenGL widgets. SVG parser. Terminal UI.
Easier profiling on HTTP Reverse Proxy.
Utah, USA
44
2016/06/08 1:38:18 PM CDT
Yes1.6 (go1.6*)
Mainly because I'm lazy and I install Go from my package manager, of which latest version is Go 1.6.
Linux distro package
Linux distro package
$HOME/go
Linux (any distro)
no toolno toolNo
I don't vendor at all.
Did not manage them
YesNo2
I think vendoring just adds complexity and is pretty useless, and rather than using the vendor folder I use gopkg.in.
Visual Studio Code
EnabledOn6
I'm not a terminal text editor guy, and I tried using the various IDEs, but I found that they were a bit bloated, and as I am mainly a web developer I'd rather have something that has great support also for HTML/JS/CSS, rather than exclusively Go. I've disliked Sublime Text for long, mainly due to its closed source nature, and used Atom in my "early Go days". Then one day I happened to try Go on VS code, and I fell in love instantly.
github.com/julienschmidt/httprouter
github.com/gin-gonic/gin
I don't build microservices.
OnceNoNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions)
Publicly available
NoYesYesNoTravis CI;Drone
I believe it's absolutely amazing! I've never seen a language with such a feature-rich builtin support for testing.
11
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;sourcegraph.com/sqs/goreturns;https://github.com/bradfitz/goimports
6/10/20165Neither
go-nuts mailing list
Stack OverflowNoNoNoneNo
Google App Engine;Servers that I/my company manage ourselves
Deploy source code
Just use the latest major + minor release of Go
Linux
Lack of generics generating tons of boilerplate code.
Simplicity and explicitness. Go is not easy, though: I would never recommend a beginner to learn Go. But, at its core, you have very little to learn compared to e.g. C#
Generics. A better approach at them rather than just a type interface{}
Modena, Italy
45
2016/06/08 1:38:28 PM CDT
Yes1.6 (go1.6*)
Build from source
Build from source
$HOME
Linux (any distro)
no toolno toolNo
Did not manage them
NoNo3Vim/NeovimEnabledOn7stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesNo
Command Line Tools;Web Sites (Primarily HTML interactions)
Publicly available
NoYesYesYesNone51
github.com/nsf/gocode;github.com/golang/lint/golint
10+6Neither
go-nuts mailing list
go-nuts mailing list
NoNoNoneNoblog.golang.org
Servers that I/my company manage ourselves
Deploy a binaryLinux
46
2016/06/08 1:38:47 PM CDT
Yes1.6 (go1.6*)
Linux distro package
Linux distro package
$HOME/.local/lib/go:$HOME/code/src/go
Linux (any distro)
no toolno toolYes
Did not manage them
NoYes6Vim/NeovimEnabledOff6stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesYes
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Non HTTP/Web Network Services
Publicly available;Private / firewalled
NoYesYesNoNone33
github.com/golang/lint/golint;go vet
3/5/20164Neither
go-nuts mailing list
go-nuts mailing list
NoNoNoneNo
Google App Engine;Servers that I/my company manage ourselves;shared hosting
Deploy source code
Just use the latest major + minor release of Go
Linux
Unlike C, some builtin functions/types are magic, and can not be implemented by the programmer.
Simplicity, orthogonality, uniformity, tools, community
Italy
47
2016/06/08 1:42:09 PM CDT
Yes
1.6 (go1.6*);Tip/Head/Master
Once a month
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOMEApple OSXgodep;gvtgvt
It mostly does the right thing in most circumstances
It doesn't help vendoring a repository into a different import path, like for replacing a dependency with a bugfixed fork while waiting for upstream to adopt the fix.
Yes
Because this is the easiest way to get a working build environment to other developers and packagers.
godepNoYes4
It feels like a kludge to resolve the lack of a real package management system. Distribution managers (like Debian packagers) hate it completely. It's annoying that the current adopted vendoring mechanism (vendor/ dir) isn't by itself a valid $GOPATH so it could be used with pre-1.5 compilers by $GOPATH manipulation.
Visual Studio Code
DisabledOn7
Syntax highlighting is *mostly* disabled, but I highlight strings and comments differently from code. I think the current editor support is excellent and on par with or better than what I've experienced for other languages like Python.
stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
The built in panic recovery feels weird but we all know and agree about that nowadays I think.
Several TimesYesNo
API/Web Services;Command Line Tools;Non HTTP/Web Network Services
Publicly available;Private / firewalled
NoYesYesYesJenkins
Not understanding testing and the proper use of interfaces at the start of a project is a sadness to fix later. :( That's not your fault though.
52
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle)
I think VS Code uses the tools I checked above for most of it's functionality. Manually, I mostly only use gofmt -r to rename things.
10+6Neither
go-nuts mailing list
go-nuts mailing list
NoNoNoneNoDave's
I like the atmosphere of the Go Forum and usually the go-nuts mailing list. I've participated briefly on the IRC channel (couldn't stand the arrogance and unhelpfulness to new users often displayed) and the Slack channel (didn't get caught up in it, may give it another attempt).
Digital Ocean;Servers that I/my company manage ourselves;Binary download for users to run on their own machines
Deploy a binaryLinux
Deploying static binaries is still nice. Debian maintainers have a hell of a time puzzling together working binaries given that everyone needs to invent their own build system (no, "go install" is not good enough for production) and they disallow vendoring on principle.
That the "go" tool has grown into a tentacle monster of weird and non-orthogal corner cases (i.e. it'll install some packages into $GOROOT, skip directories based on magic names, etc), that people are advocating the "go" tool as good enough for production builds, the lack of a versioning and package management story and the strict requirement of $GOPATH layout. These all hinder new users getting started and thus hurt further adoption, in my opinion.
The *language* being small, simple and well thought through - all that we normally tout about Go (and everything that the "go" *tool* isn't).
A reliable transport protocol over UDP. Seeing QUIC (or equivalent) in the standard library would enable lots of neat network infrastructure improvements. This is something that could fit in the stdlib due to benefiting from standardization (it's better if everyone speaks the same transport) and it's nontrivial enough the people have failed at producing something great so far (no real QUIC implementation for Go, the uTP implementations that exist are not great, my own attempt was bad and turned out difficult. :)
Having a de facto package and version management story for builds. No, this will not be possible without having some sort of metadata specifying required versions. No, it won't handle every corner case in the universe. But it would simplify builds for people everywhere and be a more serious answer than "just copy every dependency everywhere and update them when critical vulnerabilities are discovered, everywhere, maybe, some time".
It's great that it's being done!
Sweden
48
2016/06/08 1:42:28 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/gowork
Linux (any distro)
I use Sublime Text 3 for IDE
no toolgodepNo
Did not manage them
NoNo6SublimeEnabledOn6
stdlib net/http;github.com/gorilla/mux;github.com/julienschmidt/httprouter
github.com/astaxie/beego;http://www.gorillatoolkit.org/
Don't use a framework, just stdlib
OnceYesNo
API/Web Services;Command Line Tools;Microservices
Publicly available;Private / firewalled
Yes
https://github.com/stretchr/testify
NoNo
Travis CI;Jenkins;drone.io
22
github.com/nsf/gocode;github.com/golang/lint/golint;golang.org/x/tools/cmd/gorename
3/5/20165Neither
go-nuts mailing list
main documentation, repo documentation
NoNoNoneNo
Digital Ocean;Servers that I/my company manage ourselves
Deploy a docker image
Prefer to pick the major version of Go and let a build tool choose the minor version
Linux
concurrency and syntax
Bucharest, Romania
49
2016/06/08 1:42:53 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME
Linux (any distro)
no toolno toolYes
Did not manage them
NoYes4Vim/NeovimEnabledOff7stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices;Non HTTP/Web Network Services;all staff :)
Private / firewalled
NoYesNoNoTravis CI11
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;github.com/kisielk/errcheck;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle);gometalinter
10+2NeitherTwitter
Gopher Slack (https://invite.slack.golangbridge.org/)
No, but I am interested in doing so
NoNoneYes
blog.golang.org, dave cheney's and bill kenedy blogs
Servers that I/my company manage ourselves
Deploy a binaryLinuxsimplicitynone
europe, croatia, bjelovar
50
2016/06/08 1:45:15 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*)
msi or pkg installer
msi or pkg installer
$HOME/goApple OSXno toolno toolYes
Reproducible builds
godepNoNo7
Let's just keep it simple.
AtomEnabledOn5
github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices
Private / firewalled
NoYesYesNoJenkins11
github.com/nsf/gocode;github.com/golang/lint/golint;sourcegraph.com/sqs/goreturns;github.com/kisielk/errcheck;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle);goimports
04Gopher SlackGo Newsletter
Gopher Slack (https://invite.slack.golangbridge.org/)
YesNo
GopherCon (Denver)
NoAWS EC2
docker image with a binary
Just use the latest major + minor release of Go
Linuxmassachusetts
51
2016/06/08 1:46:16 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*)
msi or pkg installer
msi or pkg installer
$HOMEApple OSX
godep;govendor;gb
govendor
std vendor.json, could be managed manually also without the tool if needed
Yes
the repo is the single source of truth for building the program
Did not manage them;godep
YesYes5
vendoring is fine for single third party deps, it is not right for own libs, also libs having their own vendored deps is a problem
SublimeDisabledOn5
also using vscode with delve for debugging, it is a little slower though
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib;http://www.gorillatoolkit.org/
Don't use a framework, just stdlib
nice job, thanks for context.Context in http.Request
OnceYesNo
API/Web Services;Command Line Tools;Microservices
Private / firewalled
NoYesNowercker31
github.com/nsf/gocode;github.com/golang/lint/golint;github.com/kisielk/errcheck;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle)
would like to see kind of a continous running/compilig in the std tool chaing for a better dev experience
14NeitherTwitterStack OverflowNoNoNoneNo
http://dave.cheney.net/
AWS Container Service;AWS EC2
Deploy a docker image
Linux
does not have a good reputation, not enough people use it. some egde cases are cumbersome, not enough examples to look at yet how to do something "properly". Some things (http router, command line ifaces, ) are invened a lot of times in different projects and require a lot of bolerplate
tooling, productivity, tests, bechmarks,
a collection of often used interfaces to have a guidelines for devs,
should be done regularly, more feedback should be incorporated to plan the next releases
Berlin
52
2016/06/08 1:51:54 PM CDT
Yes1.6 (go1.6*)brew installbrew install$HOME/goApple OSXgodepgodepNo
Seems redundant to check in code already out there and makes my repo bigger.
Did not manage them
NoYes5Vim/NeovimEnabledOn7stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Non HTTP/Web Network Services
Publicly available
YesGoConveyNoYesNo
Travis CI;Jenkins
32
github.com/nsf/gocode;github.com/golang/lint/golint;github.com/kisielk/errcheck
25Gopher Slack
Gopher Slack (https://invite.slack.golangbridge.org/)
Stack Overflow
No, but I am interested in doing so
No, but I am interested in doing so
NoneNo
AWS EC2;AWS Lambda;Google Container Engine;Heroku;Kubernetes;Linode;Servers that I/my company manage ourselves
Deploy a docker image
Prefer to pick a specific major + minor version of Go.
Linux
Portland, OR, USA
53
2016/06/08 1:52:47 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/code/go
Linux (any distro)
Webstormno toolno tool
I choose no tool, so what I like least is that I don't use one. I am interested in what others are using.
No
Haven't gotten around to figuring out how to do it. It will bite me soon I am sure.
Did not manage them
NoNo4I don't do it yet.IntelliJEnabledOn6
WebStorm (a variant of Intellij Idea) with the Go plugin works great.
github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Microservices;Non HTTP/Web Network Services
Private / firewalled
NoNoNoNoTravis CI11
github.com/nsf/gocode
23NeitherTwitterStack OverflowNoNoNoneNo
I am part of a local Go Meetup in Phoenix
Digital OceanDeploy a binaryLinux
Maybe builtin collection tools
Phoenix, Arizona
54
2016/06/08 1:56:31 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
gvm$HOME/go
Linux (any distro)
godep;glideglide
npm like file describing deps. don't need to commit deps.
slow to pull down deps
Yes
Did not manage them;godep
YesYes6Vim/NeovimEnabledOn6
github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Microservices
Private / firewalled
Yes
testify (for assertions)
YesNoDrone11
github.com/nsf/gocode;github.com/golang/lint/golint
3/5/20165NeitherCoworkersCoworkersNoNo
GopherCon (Denver)
No
AWS Container Service;AWS EC2
Deploy a docker image
Linux
55
2016/06/08 1:57:22 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
C:\JRS\Code\Go
Microsoft Windows
no toolgbSimple
That I need it at all - because Go doesn't do/define as it should!
YesReproducability
copied code by hand
NoYes3
A complete versioning system is needed and should be defined by Go.
Vedit
Not offered by my editor
Not offered by my editor
4
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
Command Line Tools;Non HTTP/Web Network Services
Private / firewalled
NoYesNoNone43
github.com/derekparker/delve;github.com/rogpeppe/godef;github.com/golang/lint/golint;github.com/kisielk/errcheck;golang.org/x/tools/cmd/guru (formerly oracle)
25Neither
go-nuts mailing list
Google searches
NoNoNoneNoDve Cheney
Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
Linux
Vendoring/Versioning, lack of concurrent data structures, lack of distributed primitives, better time resolution on Windows, rest is too minor to mention.
less is more, concurrency support, execution speed, typing, interfaces, garbage collection, compile speed.
Lots of misc stuff.
VersioningNicely done!New Orleans LA
56
2016/06/08 1:57:23 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Linux distro package
$HOME
Linux (any distro)
glideglideYes
because upstream can disappear :)
godepNoNo4
vendoring should only be for projects that build a binary, not for packages
Vim/NeovimEnabledOn7stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Microservices
Private / firewalled
NoYesNobamboo11
github.com/nsf/gocode;goimports
3/5/20165IRC
go-nuts mailing list
golang.orgNoNoNoneNo
Servers that I/my company manage ourselves
Deploy a binaryLinuxvendoringstdlibLille, France
57
2016/06/08 1:57:28 PM CDT
Yes
1.5 (go1.5*);1.6 (go1.6*)
gvm
Linux distro package
$HOME/go
Linux (any distro)
go get ftwno toolno toolNo
Did not manage them
NoNo4IntelliJEnabledOn5
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib;http://www.gorillatoolkit.org/
Don't use a framework, just stdlib
PartsNoNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions)
Private / firewalled
NoNoNoNoNone22
github.com/rogpeppe/godef
14Neither
Go Forum (https://forum.golangbridge.org/)
Go Forum (https://forum.golangbridge.org/)
NoNoNoneNo
Servers that I/my company manage ourselves
Deploy a binary
Prefer to pick a specific major + minor version of Go.
Linux
finding what type is something in some library
goroutines
better debug tools
EU
58
2016/06/08 2:01:09 PM CDT
Yes1.6 (go1.6*)
Because it's available on google appengine
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/golangApple OSX
Nothing, except that I really like it :)
godepgodep
It's the first one that I tried, and it seems to work.
No
godep restore works, but it's possible I'll vendor in the future
godepNoNo4Vim/NeovimEnabledOn7
Golang plugin for Idea is also OK
github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Microservices
Publicly available;Private / firewalled
NoNoNoNoTravis CI21
github.com/rogpeppe/godef;github.com/golang/lint/golint;github.com/kisielk/errcheck;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle)
10+4NeitherTwitterStack OverflowNoNoNoneNo
Google App Engine;Google Compute Engine;Servers that I/my company manage ourselves
deb packagesLinux
Error handling (although I'm not sure how I'd like it to be). Maybe the lack of generics, too.
It's simple, compiles fast and feels like writing a interpreted language, but it's compiled and fast.
Generics.Croatia
59
2016/06/08 2:02:38 PM CDT
Yes1.6 (go1.6*)
msi or pkg installer
msi or pkg installer
$HOME/Documents/goApple OSXgodepgodepSimpleExtra folderYesHerokugodepNoYes3
I prefer the crates.io, gems approach of ruby and rust
AtomEnabledOn5
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib
github.com/go-kit/kit
PartsYesNo
API/Web Services;Command Line Tools;Microservices;Non HTTP/Web Network Services
Private / firewalled
YesgoconveyNoNoTravis CI42
github.com/rogpeppe/godef;github.com/golang/lint/golint;golang.org/x/tools/cmd/guru (formerly oracle)
3/5/20164Gopher SlackRedditStack OverflowNoNoNoneYesHeroku
Deploy source code
Prefer to pick a specific major + minor version of Go.
LinuxSweden
60
2016/06/08 2:02:51 PM CDT
Yes
1.4 (go1.4*);1.5 (go1.5*)
waiting for bugs reports to be completed
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/development/goApple OSXno toolno toolNo
Did not manage them
YesYes4Vim/NeovimDisabledOn6
Sometimes freezes for a while on os x
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib
github.com/jimmy-go/srest
Several TimesYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices;Non HTTP/Web Network Services;game server
Publicly available
NoYesYesYesTravis CI11
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;github.com/kisielk/errcheck
05Gopher Slack
Gopher Slack (https://invite.slack.golangbridge.org/)
CoworkersNoNo
Gotham Go;Golang UK
No
goinggo.net,dave.cheney.net
AWS EC2
Deploy source code
Just use the latest major + minor release of Go
Linux
memory usage is too difficult to understand
easy code review and it's fun
one package nearly obligatory doing what goreportcard.com does. (would be useful for newcomers)
CDMX
61
2016/06/08 2:06:03 PM CDT
Yes
1.6 (go1.6*);Tip/Head/Master
Once a day
Build from source
Build from source
$HOME/go
Linux (any distro)
no toolno toolNo
Did not manage them
NoNo4EmacsEnabledOn5None
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
Non HTTP/Web Network Services
Private / firewalled
NoYesYesYesNone52
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;golang.org/x/tools/cmd/guru (formerly oracle)
14NeitherReddit
go-nuts mailing list
NoNoNoneNo
Servers that I/my company manage ourselves
Deploy source code
Just use the latest major + minor release of Go
Linuxno generics
fast compilation speed
genericsEurope
62
2016/06/08 2:09:41 PM CDT
Yes1.6 (go1.6*)
Build from source
Build from source
$HOME
Linux (any distro)
no toolnot sureNo
We don't vendor
roger peppe's godeps
YesNo4
Visual Studio Code
EnabledOn7
github.com/bmizerany/pat
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesNo
Non HTTP/Web Network Services
Publicly available
Yes
gopkg.in/check.v1
YesNoJenkins22
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;github.com/kisielk/errcheck;golang.org/x/tools/cmd/gorename
3/5/20165NeitherTwitter
go-nuts mailing list
NoNoNoneNoblog.golang.org
Azure;AWS EC2;Digital Ocean;Google Compute Engine
Deploy a binaryLinux
The fact that I can understand down to a machine level what any line of code is going to do.
More common idioms around errors and error handling... official interfaces to implement, like Temporary() bool.
A desktop UI library.
Massachusetts, USA
63
2016/06/08 2:11:59 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
a set of directories unrelated to $HOME
Microsoft Windows
no toolno toolNo
Did not manage them
NoNo4Vim/NeovimEnabledOff7None
Don't use a framework, just stdlib
Don't use a framework, just stdlib
OnceNoNo
Web Sites (Primarily HTML interactions)
Private / firewalled
NoNoNoNone11
github.com/golang/lint/golint
06Neither
go-nuts mailing list
go-nuts mailing list
NoNoNoneNo
Servers that I/my company manage ourselves
Deploy a binary
Microsoft Windows
Compiles to executable, not patent/copyright encumbered, good set of standard libraries
toronto canada
64
2016/06/08 2:12:50 PM CDT
Yes1.5 (go1.5*)
Build from source
Build from source
$HOME/goApple OSXno toolno toolYes
Did not manage them
NoNo4SublimeEnabledOn5None
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesYes
Command Line Tools
Private / firewalled
NoNoNoNone11
github.com/nsf/gocode
12Neither
Gopher Slack (https://invite.slack.golangbridge.org/)
Stack OverflowNoNoNoneNo
Servers that I/my company manage ourselves
Deploy a binaryLinuxSpain
65
2016/06/08 2:13:59 PM CDT
Yes1.6 (go1.6*)brew installbrew install$HOME/goApple OSXgovendorgovendorNo
Did not manage them
NoNo5AtomEnabledOn6stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
Web Sites (Primarily HTML interactions)
Private / firewalled
NoYesNoTravis CI11
github.com/nsf/gocode;github.com/rogpeppe/godef;sourcegraph.com/sqs/goreturns;golang.org/x/tools/cmd/gorename
02Neither
go-nuts mailing list
Stack OverflowNoNoNoneNo
Heroku;Servers that I/my company manage ourselves
Deploy source code
Just use the latest major + minor release of Go
Linux
66
2016/06/08 2:21:12 PM CDT
Yes1.6 (go1.6*)0
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/projects/go or c:/Development/projects/go
Microsoft Windows
Mostly work on windows with linux being a close secondary but only for go code.
glidenot sureNo
Don't really see a need.
Did not manage them
NoYes6
Visual Studio Code
EnabledOn6
github.com/julienschmidt/httprouter
Don't use a framework, just stdlib
github.com/go-kit/kit
PartsYesNo
API/Web Services;Microservices
Private / firewalled
Yes
https://github.com/stretchr/testify
YesNo
Travis CI;TeamCity
11
github.com/derekparker/delve;github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;sourcegraph.com/sqs/goreturns;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle)
23Gopher Slack
Go Forum (https://forum.golangbridge.org/)
Gopher Slack (https://invite.slack.golangbridge.org/)
No, but I am interested in doing so
NoNoneNo
Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
Microsoft Windows
Looking to move everything to container based deployment
some of the heavily opinionated online community about how something should be done. Such as 1 or 2 character variable names.
Mostly friendly community. How easy it is to pick up coming from C++/C# land. The libraries make sense. Not an insane amount of keywords to have to remember.
Herndon, VA, USA
67
2016/06/08 2:22:52 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*);Tip/Head/Master
Once a week
Linux distro package
Linux distro package
$HOME/dev/go
Linux (any distro)
I have multiple GOPATHs
no toolno toolit's in Go
it doesn't let me drink my coffee
No
I don't use vendoring at the moment
Did not manage them
NoNo4Vim/NeovimEnabledOn6stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesYes
I am interfacing with C/C++ libraries. I am writing github.com/go-python/gopy
API/Web Services;Command Line Tools;scientific number crunching applications
Publicly available
NoYesYesYesTravis CI
I wish I could try https://concourse.ci/ as a Go-based CI system
65
github.com/nsf/gocode;github.com/golang/lint/golint;sourcegraph.com/sqs/goreturns;github.com/kisielk/errcheck;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle);github.com/alecthomas/gometalinter
6/10/20166Neither
go-nuts mailing list
go-nuts mailing list
YesNo
dotGo (2014,2015)
Noblog.golang.org
Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
Linux
still not the lingua franca in my field (science)
it's fast to develop in Go
an interpreter
at some point, I would have said "generics". now, I must admit I am not so sure anymore.
France
68
2016/06/08 2:24:11 PM CDT
Yes1.6 (go1.6*)brew installbrew install$HOME/goApple OSXglideglideit worksnothingNoglide handles it
Did not manage them
NoYes4
Visual Studio Code
EnabledOn7
github.com/labstack/echo
github.com/labstack/echo
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Microservices;Non HTTP/Web Network Services
Publicly available;Private / firewalled
YestestifyYesNo
Travis CI;Jenkins
22
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;sourcegraph.com/sqs/goreturns;github.com/kisielk/errcheck;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle)
3/5/20164NeitherTwitterStack OverflowNoNoNoneNo
https://blog.gopheracademy.com/
Digital Ocean;Servers that I/my company manage ourselves
Deploy a binaryLinux
current state of dependency management (we are getting there)
syntax, simplicity, community
its all good
some sort of generics support (dont know which one)
Thank youSlovakia
69
2016/06/08 2:29:08 PM CDT
Yes1.6 (go1.6*)
I use OS packages for ARM platforms that are not available for download off the official site.
I use OS packages for ARM platforms that are not available for download off the official site.
untar from golang.org or Linux distro package on platforms that golang.org does not support
Linux distro package
$HOME/go
Linux (any distro)
no toolno tool
No need to get into the debate. Just wait for a winner to emerge.
It doesn't do any vendoring :)
NoSee above.
Did not manage them
YesNo4
Still just waiting it out.
nanoEnabled
Not offered by my editor
4
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesNo
API/Web Services;Command Line Tools;Non HTTP/Web Network Services
Publicly available;Private / firewalled
NoNoNoJenkins22
github.com/golang/lint/golint
3/5/20163Gopher Slack
Gopher Slack (https://invite.slack.golangbridge.org/)
googleNoNo
GopherCon (Denver)
No
Servers that I/my company manage ourselves
Deploy source code
Just use the latest major + minor release of Go
Linux
Some of the community that wants to make it something it's not.
Concurency
More optimized compiler. Want to feel like I am not missing anything from not using C & gcc.
Denver, CO
70
2016/06/08 2:29:28 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*);Tip/Head/Master
Once a week
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
Depends: $HOME/code or /cygdrive/d/code
Linux (any distro)
no toolno toolYesIts sensible.
Did not manage them
NoYes6EmacsEnabledOn5stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
Command Line Tools
Publicly available
NoYesYesYesNone43
github.com/nsf/gocode;github.com/rogpeppe/godef;golang.org/x/tools/cmd/gorename;golang.org/x/tools/cmd/guru (formerly oracle);goimports
25Neither
go-nuts mailing list
The documentation
NoNoNoneNo
Servers that I/my company manage ourselves
Deploy a binary
none is "primarily"
Switzerland
71
2016/06/08 2:29:42 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
/home/sites/go
Linux (any distro)
godepgodepsimplenothingYes
consistent builds
godepNoNo7
Have an official vendoring tool?
SublimeEnabledOff4stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Non HTTP/Web Network Services
Private / firewalled
NoNoNoNone11
github.com/golang/lint/golint
25NeitherTwitterCoworkersNoNoGolang UKNo
Servers that I/my company manage ourselves
Deploy a binaryLinux
maps not concurrent safe
simple for new people to learn and powerful
proper rounding in math
a way of keeping track of go routines
UK
72
2016/06/08 2:30:11 PM CDT
Yes1.6 (go1.6*)
msi or pkg installer
msi or pkg installer
$HOME/go
OSX, Windows and Linux
no tool
Currently using a few third part libs
No
Did not manage them
NoNo4IntelliJEnabledOn7
I generally use IntelliJ and Sublime at same time
stdlib net/http;beego
github.com/astaxie/beego
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Web Sites (Primarily HTML interactions);Microservices
Private / firewalled
NoYesNoNoNone11none25Gopher Slack
Option 2,3,4 and some blogs
Stack OverflowNoNoNoneNo
http://dave.cheney.net/ - http://blog.ralch.com/
Digital Ocean;Servers that I/my company manage ourselves
Deploy source code
Just use the latest major + minor release of Go
LinuxNothing.
easy and fast to deploy, fun to write code, very efficient use of resources
A built-in session manager, a better native router and controller. An ORM (even if ppl say we cant have real ORM in Go) would be nice :P
Remembered that I should take a time to study some tools like vendoring
Brazil
73
2016/06/08 2:34:09 PM CDT
Yes1.6 (go1.6*)Once a month
Linux distro package
Linux distro package
$HOME/go
Linux (any distro)
no toolno toolYes
copied code by hand
NoNo6
Visual Studio Code
EnabledOn7None
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools
Private / firewalled
NoNoNoNone11
github.com/nsf/gocode
04Neither
go-nuts mailing list
Stack OverflowNoNoNoneNo
Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
Microsoft Windows
Channels
Low complexity of the language
you program itself
That GO can access C-libraries without the use of CGO
Netherlands
74
2016/06/08 2:35:27 PM CDT
Yes
1.6 (go1.6*);Tip/Head/Master
Once a weekbrew install
Build from source
goprojectsApple OSXno toolno toolNo
Did not manage them
NoYes5IntelliJEnabledOn6
also using Emacs
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
NoYesNo
API/Web Services;Command Line Tools;Non HTTP/Web Network Services
Publicly available;Private / firewalled
NoYesYesNoTravis CI22
github.com/rogpeppe/godef;github.com/golang/lint/golint;sourcegraph.com/sqs/goreturns
3/5/20163Gopher SlackTwitterStack OverflowNoNoDot GoNoGolang blogAWS EC2Deploy a binary
Just use the latest major + minor release of Go
Linux
75
2016/06/08 2:35:37 PM CDT
Yes
1.6 (go1.6*);Tip/Head/Master
Once a week
Build from source
Build from source
$HOME/go
Linux (any distro)
no toolno toolYes
godep;copied code by hand
NoYes7AtomEnabledOn6stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesNo
API/Web Services;Web Sites (Primarily HTML interactions);Non HTTP/Web Network Services;system tools, infrastructure services
Publicly available;Private / firewalled
NoYesYesYes
Travis CI;Jenkins
53
github.com/derekparker/delve;github.com/nsf/gocode;github.com/golang/lint/golint
10+5Neither
go-nuts mailing list
go-nuts mailing list
NoNoNoneNoblog.golang.org
Digital Ocean;Google App Engine;Heroku;Kubernetes;Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
LinuxGraz, Austria
76
2016/06/08 2:36:11 PM CDT
Yes1.6 (go1.6*)Freebsd portsFreebsd ports
$HOME/go_src at home and $HOME/projects at work
FreeBSDDon't vendorno tool
go get works for me
The checkin of dependencies into my repo
NoIt feels wrong
Did not manage them;master worked well
NoYes3
I think it is a solution to a wrong probl, but i see why people might need it.
Vim/NeovimEnabledOff7
Gofmt is the most awesome thing ever
stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Very nice api and very good performance makes it really fun
NoYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices;Non HTTP/Web Network Services;Databases
Publicly available;Private / firewalled
NoYesNoNone11Gofmt
The tooling is amazing. It can do so much and so fast, that i miss it in other languages.
6/10/20165Neither
go-nuts mailing list
Godoc.orgNoNoNoneNo
Davecheney.org
Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
Linux
There are some places in the stdlib, where the apis are not great, like crypto. I am also missing shared libraries, but both these issues are only minor and don't hurt my enthusiasm.
Definitely the tools. The language itself is okay, but with the speed and quality of the tooling, this is the best language eco system i know.
I think there is enough in there for the future. I found nothing missi g.
Make range accept an interface which can be implemented. I think this would give the language a really nice advantage. But i really like go how it is.
Germany
77
2016/06/08 2:36:18 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/go
Linux (any distro)
no toolno toolYes
Did not manage them;godep
NoNo4EmacsEnabledOn6
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib;http://www.gorillatoolkit.org/
Don't use a framework, just stdlib
OnceYesNo
API/Web Services;Command Line Tools;Microservices
Private / firewalled
NoYesNoTravis CI42
github.com/rogpeppe/godef;github.com/golang/lint/golint;github.com/kisielk/errcheck;golang.org/x/tools/cmd/guru (formerly oracle)
24NeitherRedditStack Overflow
No, but I am interested in doing so
No, but I am interested in doing so
NoneYesDigital OceanDeploy a binaryLinuxCroatia
78
2016/06/08 2:36:37 PM CDT
Yes
1.5 (go1.5*);1.6 (go1.6*);1.7 (go1.7*)
Untar or Unzip releases from golang.org
msi or pkg installer
$HOME/gocodeApple OSXgodepgodep
It is just the one I am most familiar with. I didn't like any vendor tool, but the vendor folder fixed my issues.
Not much now.Yes
Its just what we have always done. And you can lock dependencies down.
godepNoYes6
If I didn't have to upload my vendor folder that would be great. Like npm.
SublimeEnabledOn6
A debugger would be nice. I know I can use Atom or Visual Studio code to debug go, but they aren't as good as Sublime.
stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartspartsNo
API/Web Services;Command Line Tools
Publicly available
YestestifyYesNoCircle CI21
github.com/derekparker/delve;github.com/nsf/gocode;github.com/golang/lint/golint;golang.org/x/tools/cmd/guru (formerly oracle)
25Gopher Slack
Go Forum (https://forum.golangbridge.org/)
Stack Overflow
No, but I am interested in doing so
No, but I am interested in doing so
NoneNoMat RyersHeroku
Deploy source code
Prefer to pick a specific major + minor version of Go.
LinuxAustin, TX
79
2016/06/08 2:38:56 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Linux distro package
$HOME/go
Linux (any distro)
no toolno toolNo
copied code by hand
NoNo4
Visual Studio Code
EnabledOn6
Sublime is my second option
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions)
Private / firewalled
NoNoNoNone44
github.com/rogpeppe/godef;github.com/golang/lint/golint
03Neither
go-nuts mailing list
Go Forum (https://forum.golangbridge.org/)
No, but I am interested in doing so
NoNoneNo
Servers that I/my company manage ourselves
Deploy a binaryLinux
simplicity, concurrency
Norway
80
2016/06/08 2:41:21 PM CDT
Yes1.6 (go1.6*)
I want to be on the same minor version as my colleagues, and they don't seem to like to bother with minor updates.
Untar or Unzip releases from golang.org
Linux distro package
$HOME/work (as in some tutorial, will change to ~/go/, I think)
Linux (any distro)
no toolno toolNo
Did not manage them
NoNo4
I haven't figured out what it is yet, and what it would add
EmacsEnabledOn5None
Don't use a framework, just stdlib
Don't use a framework, just stdlib
NoYesNo
API/Web Services;Web Sites (Primarily HTML interactions);database interaction
Publicly available
NoNoNoNone11
github.com/golang/lint/golint
12Neither
go-nuts mailing list
Different blog posts
NoNoNoneNo
Servers that I/my company manage ourselves
Deploy source code
Just use the latest major + minor release of Go
Linux
The clumsiness when it comes to some fairly ordinary tasks, such as sorting (generics would be nice)
The relative simpleness of the language
Fast regular expressions, SQL database drivers for different dbs
Some form of generics (that would make it possible to, for instance, create a sane library for SQL database interaction)
Sweden
81
2016/06/08 2:41:44 PM CDT
Yes
1.4 (go1.4*);1.7 (go1.7*)
slow compileslow compile
msi or pkg installer
msi or pkg installer
$HOME/goApple OSXno tool
not yet tried anything
No
not yet using go 1.5+ for the team
copied code by hand
NoNo4IntelliJEnabledOn7
github.com/julienschmidt/httprouter;github.com/buaazp/fasthttprouter
Don't use a framework, just stdlib;gitlab.com/kokizzu/gokil/W
Don't use a framework, just stdlib;gitlab.com/kokizzu/gokil/W
OnceYesYes
compiling sqlcipher
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices
Publicly available
NoNoNoNone11
github.com/nsf/gocode
22Neithergoogle alertStack OverflowNoNoNoneNo
dave.cheney.net/category/golang
Google App Engine;Servers that I/my company manage ourselves
Deploy a binary
Prefer to pick a specific major + minor version of Go.
Linux
slow compile since 1.5+
it's super simple syntax
cross platform ui toolkit
faster compile, only recompile lib when it was changed
Indonesia
82
2016/06/08 2:42:04 PM CDT
Yes1.6 (go1.6*)
msi or pkg installer
msi or pkg installer
$HOME/workspaceApple OSXgbgbEase of use.
Compatibility with vim-go and autocompletiom
Yes
Reproducible builds
GB vendor plugin
NoNo6Vim/NeovimEnabledOn7
github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Microservices
Private / firewalled
NoYesNo
Travis CI;Jenkins
43
github.com/nsf/gocode;github.com/golang/lint/golint;golang.org/x/tools/cmd/guru (formerly oracle)
14Gopher Slack
Gopher Slack (https://invite.slack.golangbridge.org/)
Gopher Slack (https://invite.slack.golangbridge.org/)
Yes
No, but I am interested in doing so
NoneNo
http://dave.cheney.net/
Digital Ocean;Google Container Engine;Kubernetes
Deploy a docker image
Prefer to pick the major version of Go and let a build tool choose the minor version
LinuxAtlanta, GA
83
2016/06/08 2:42:20 PM CDT
Yes
1.5 (go1.5*);1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/goApple OSXno toolno toolYes
Did not manage them
NoNo4SublimeEnabledOn7
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib;http://www.gorillatoolkit.org/
Don't use a framework, just stdlib
PartsYesNo
Command Line Tools
Private / firewalled
NoNoNoNone22
github.com/golang/lint/golint
02Neither
Go Forum (https://forum.golangbridge.org/)
Stack Overflow
No, but I am interested in doing so
NoNoneNo
AWS EC2;Digital Ocean
Deploy a binary
Just use the latest major + minor release of Go
LinuxMd
84
2016/06/08 2:42:32 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*)
brew installbrew install$HOMEApple OSXgovendorgodepYesfast ci buildgodepYesYes6Vim/NeovimEnabledOff7
vim-go and godef are amazing plugins :)
stdlib net/http;github.com/gorilla/mux
github.com/urfave/negroni
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Microservices
Publicly available
YesgocheckNoYesYes
Travis CI;Jenkins
43
github.com/rogpeppe/godef;golang.org/x/tools/cmd/gorename
6/10/20164Gopher SlackTwitterCoworkers
No, but I am interested in doing so
NoNoneNo
AWS EC2;Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
Linux
a few people are using it :)
go tooling is amazing
Rio de Janeiro, Brazil
85
2016/06/08 2:44:38 PM CDT
Yes1.6 (go1.6*)brew installbrew install$HOME/workspace/goApple OSXgodepgodepYes
Don't depend on network for deps
godepNoNo7AtomEnabledOn7
github.com/gorilla/mux
Don't use a framework, just stdlib;github.com/urfave/negroni
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions)
Publicly available
NoYesNoNone11
github.com/golang/lint/golint
05Neithernews sitesStack OverflowNoNoNoneNoHeroku
Deploy source code
LinuxSan Francisco
86
2016/06/08 2:44:49 PM CDT
Yes
1.6 (go1.6*);1.7 (go1.7*)
Untar or Unzip releases from golang.org
Linux distro package
$HOME/prog/go
Linux (any distro)
FreeBSD compatibility is important
govendor
I've only used govendor
it worked easily
I have no idea if it's the best way to do things anymore
Yes
in case the original source disappears. it also makes CD a bit easier
Did not manage them
NoNo5make it easier
Visual Studio Code
EnabledOn7stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
PartspartsNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices
Publicly available;Private / firewalled
NoNoNoGitLab CI
it can be hard to figure out how to write testable stateful go code... more guidance would be helpful
11
github.com/derekparker/delve;github.com/rogpeppe/godef;github.com/golang/lint/golint;sourcegraph.com/sqs/goreturns;golang.org/x/tools/cmd/gorename
the tools are great, but I basically just let visual studio code figure out what they are and how to run them
13IRChacker newsthe internetNoNoNoneNodave chaney
more openness to admit weaknesses of go would be nice
Digital Ocean;Servers that I/my company manage ourselves
Deploy a binaryLinux
coming from dynamic languages, it's awesome
presence of nil and error handling
doesn't suffer from architecture astronaut syndrome
a generic form of merge() as seen in go concurrency patterns
a better way to handle errors
thanks for doing this
pittsburgh, pa, usa
87
2016/06/08 2:44:50 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/go
Linux (any distro)
ln -s /usr/local/go-<CURRENT> /usr/local/go
godepno tool
I don't prefer a tool. I like that I mostly "know" Godep, and don't have to learn a new one.
I don't prefer a tool. I dislike that I need an external tool.
Yes
convention, and because Go packages aren't "versioned"
godepNoNo4
I wish it wasn't necessary.
EmacsEnabledOff5
automatic gofmt + golint is pretty nice.
kami
kami + homegrown
Don't use a framework, just stdlib
Several TimesYesNo
API/Web Services;Command Line Tools;Non HTTP/Web Network Services
Publicly available;Private / firewalled
NoYesYesNoTravis CI
Generally acceptable. Often unnecessarily hard to mock things out.
41
github.com/golang/lint/golint
25NeitherCoworkersCoworkersNoNoNoneNo@freeformz
AWS EC2;Heroku
Deploy source code
Just use the latest major + minor release of Go
Linux
Capabilities of abstraction, verbosity. The drudgery of the `if x, err := ...` pattern
Relatively fast, relatively easy to maintain and collaborate on.
Southern California, USA
88
2016/06/08 2:44:50 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Linux distro package
$HOME/lang/goApple OSXno toolno toolYes
`go get` makes things break when the source changes. Every freaking time.
Did not manage them;copied code by hand
NoNo6EmacsEnabledOff6
stdlib net/http;github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesYes
Because I need C libraries or a library language with a C FFI, which don't exist in Go.
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices
Publicly available;Private / firewalled
NoNoNoJenkins11
github.com/golang/lint/golint
15Neither
Aggregator. Hacker News, Lobste.rs, /r/programming
Stack OverflowNoNo
GopherCon (Denver)
No
Servers that I/my company manage ourselves
Deploy a binaryLinux
Complete lack of metaprogramming (macros, generics)
Concurrency
Metaprogramming
Metaprogramming
Denver, CO, US
89
2016/06/08 2:45:08 PM CDT
Yes1.4 (go1.4*)
Slow to adapt to change in symlink handling for GOPATH, w/ enforced exclusion of `internal` directories, and constraints from a large multi-language repository.
Build from source
Build from source
custom build location + custom global 'site-packages' directory for managed dependencies
Linux (any distro)
Successfully using Go on CentOS 5. it is possible.
gb;rpm's for snapshots of Go dependencies
gb
gives a contained build environment, and easy to avoid checking in vendored dependencies
upcoming `gb` features are still upcoming =)
No
git log should show revision changes for external dependencies, not actual dependency changes.
godep;rpmNoYes6TextMateEnabledOff6
stdlib net/http;github.com/julienschmidt/httprouter
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesNo
API/Web Services;Command Line Tools;Microservices;Non HTTP/Web Network Services
Publicly available;Private / firewalled
Yes
github.com/stretchr/testify/assert
YesNo
Travis CI;Jenkins;custom
21none3/5/20166NeithertwittergodocsNoNo
GopherCon (Denver)
No
Servers that I/my company manage ourselves
Deploy source code
Prefer to pick a specific major + minor version of Go.
Linuxthank youNew York, NY
90
2016/06/08 2:45:38 PM CDT
Yes
1.5 (go1.5*);1.6 (go1.6*)
Corporate project, so it was tough to move.
Build from source
Untar or Unzip releases from golang.org
/Usr/coding/golang/gopathApple OSXgodep;no toolno toolYes
I'm going to starting soon
Did not manage them
NoNo6Vim/NeovimEnabledOn7
github.com/gorilla/mux
http://www.gorillatoolkit.org/
Don't use a framework, just stdlib
Several TimesYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions)
Publicly available;Private / firewalled
NoNoNoNone11
github.com/nsf/gocode
04NeitherRedditStack OverflowNoNo
GopherCon India
No
Google App Engine
Deploy a binaryApple OSX
No debugger. Not on mobile properly. Difficulty in getting others to shift.
Simple, easy, easily teachable.
Generics
Bangalore, India
91
2016/06/08 2:46:28 PM CDT
Yes
1.7 (go1.7*);Tip/Head/Master
Once a day
Build from source
Build from source
$HOME/GoProApple OSX
Wish I could compile tip with tip :-)
no toolglideYes
Prepared for an outage of github ;-)
Did not manage them
NoNo7IntelliJEnabledOn7
The Intellij Go Plugin Team does a great job!
Depends on the consumer of my packages
Depends on the consumer of my packages
github.com/go-kit/kit
PartsYesNo
API/Web Services;Microservices
Publicly available;Private / firewalled
Yes
strechter/testify
YesYesYesTravis CI
Love the new subtest feature in Go 1.7
33
github.com/golang/lint/golint;sourcegraph.com/sqs/goreturns;github.com/kisielk/errcheck
3/5/20165Neither
Reddit + Twitter
CoworkersNoNo
Golang UK;Sydney Go Meetup :-)
NoThe Go blog
They are all f*** awesome!
Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
Linux
Simplicity can be really hard
Simplicity
Bit more error handling and error behaviour
The new features post poned for Go2 and refactorings of the stdlib for Go2. The language is perfect.
thank you for taking YOUR time to do the survey! Please tweet the results!
Waldshut-Tiengen, DE
92
2016/06/08 2:46:40 PM CDT
Yes1.6 (go1.6*)brew installbrew install$HOME/goApple OSXgodepgodep
It seems like the lesser of all evils
I don't like checking in 3rd party source code
Yes
Did not manage them
NoNo3
I wish we had something similar to Bundler in Ruby
AtomEnabledOn5
stdlib net/http;gin
github.com/gin-gonic/gin
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools
Publicly available
Yesgo-checkNoNoTravis CI11
github.com/golang/lint/golint
3/5/20164NeitherTwitterStack OverflowNoNoNoneNo
Servers that I/my company manage ourselves
Deploy a docker image
Linux
Lack of generics
Simplicity
Collection functions
Some sort of generic operations on slices
Boston, MA
93
2016/06/08 2:46:42 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME
Linux (any distro)
Package managers are a waste.
no toolno toolKISSNo
Did not manage them
NoYes4Vim/NeovimEnabledOn6None
Don't use a framework, just stdlib
Don't use a framework, just stdlib
Several TimesYesNo
API/Web Services;Command Line Tools;Microservices;Non HTTP/Web Network Services
Publicly available;Private / firewalled
NoYesYesYesTravis CITravis CI sucks.74
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;golang.org/x/tools/cmd/gorename
10+6NeitherCoworkersCoworkersNoNo
GopherCon (Denver);DotGo
NoBorgBorgLinuxPredictability
Full, atomic channel drains
Zürich
94
2016/06/08 2:48:01 PM CDT
Yes
1.5 (go1.5*);1.6 (go1.6*)
brew installbrew install$HOMEApple OSXgvt;no toolgvtYes
Vendoring isn't just about precisely identifying dependency versions, it's also very much about ensuring reproducible builds, even when there is a network outage or the original author removes the package.
copied code by hand
NoYes5
I would like to see more active leadership from the core Go team, especially at Google, on this issue. "Let the community solve it, and we will bless the result" produces bad outcomes.
Visual Studio Code
EnabledOn6
stdlib net/http;None;github.com/gorilla/mux
Don't use a framework, just stdlib
github.com/go-kit/kit
Several TimesYesNo
Command Line Tools;Microservices
Publicly available
NoYesNo
Travis CI;Circle CI;Drone.io
22
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;github.com/kisielk/errcheck;golang.org/x/tools/cmd/guru (formerly oracle)
6/10/20166Gopher Slack
Gopher Slack (https://invite.slack.golangbridge.org/)
Gopher Slack (https://invite.slack.golangbridge.org/)
NoNo
GopherCon (Denver);Golang UK
YesDave Cheney's
The level of moderation, especially re: offensive language, on the GoBridge channels and forums, especially Slack, is (or at least was) absurd and stifling. We are adults; asking people not to type "fuck" is completely unreasonable.
AWS EC2;Digital Ocean;Kubernetes;Servers that I/my company manage ourselves
Deploy a docker image
Linux
Too many ways to initialize memory (make, new, struct literal syntax)
Its strong opinions & the orthogonality of its features.
encoding/yaml
In Go 1, there is little room for significant improvement without breaking compatibility guarantees. For Go 2, I would most like an Either/Optional type, and all that entails.
Berlin, Germany
95
2016/06/08 2:49:36 PM CDT
Yes1.6 (go1.6*)
msi or pkg installer
msi or pkg installer
$HOMEApple OSXgodepgodepYes
Did not manage them
NoNo6AtomEnabledOn6
stdlib net/http;github.com/julienschmidt/httprouter
github.com/gin-gonic/gin
Don't use a framework, just stdlib
PartsYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices
Publicly available
NoYesNoNo
Travis CI;Jenkins
11
github.com/golang/lint/golint;golang.org/x/tools/cmd/guru (formerly oracle)
03NeitherTwitterCoworkers
No, but I am interested in doing so
NoNoneNo
Servers that I/my company manage ourselves
Deploy a binaryApple OSX
96
2016/06/08 2:50:13 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
~/gocodeApple OSXgodepgodepYes
Did not manage them
NoYes5Vim/NeovimEnabledOn7
github.com/gorilla/mux
github.com/urfave/negroni
github.com/goadesign/goa
Several TimesYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices
Publicly available;Private / firewalled
NoYesNo
Travis CI;Jenkins
22
github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint
6/10/20164Gopher SlackRedditStack Overflow
No, but I am interested in doing so
NoNoneNoOpenStack
Deploy source code
Just use the latest major + minor release of Go
Apple OSX
Small size of STDLIB, simplicity, concurrency, tooling
Real and simple dependency management
Great questions. Thanks.
Phoenix, AZ, USA
97
2016/06/08 2:52:31 PM CDT
Yes1.6 (go1.6*)
msi or pkg installer
gvm$HOME/src/golang
Linux (any distro)
no toolno toolNo
Did not manage them
NoNo4
Visual Studio Code
EnabledOn5Nonerevel
github.com/micro/go-micro
NoNoYesDelve
API/Web Services;Microservices
Private / firewalled;Test
NoNoNoNoBamboo11
github.com/derekparker/delve;github.com/nsf/gocode;github.com/rogpeppe/godef;github.com/golang/lint/golint;sourcegraph.com/sqs/goreturns;golang.org/x/tools/cmd/guru (formerly oracle)
02Neither
go-nuts mailing list
Stack OverflowNoNohttp://golab.ioNo
Servers that I/my company manage ourselves
Deploy a binaryLinux
98
2016/06/08 2:52:47 PM CDT
Yes1.4 (go1.4*)
Compiler is slow, newer versions have slower cgo
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/dev/go
Linux (any distro)
I pin deps using glock rather than vendor
glockIt's simple
I could use a way to get more information about dependencies, eg. tracking where subdependencies come from, so I can make decisions on what primary dependencies might have too large a surface area.
No
The lock file goes in. Source in the repos bloats clone times and adds a bunch of junk to the repos history.
glockNoNo4
The mechanics of vendoring aren't the problem, it's the fact that tools for tracking changes and managing dependencies forward through time are not good enough.
Vim/NeovimEnabledOn6
github.com/gorilla/mux
Don't use a framework, just stdlib
Don't use a framework, just stdlib
I am not a web developer. I use HTTP to expose information to other programs primarily.
Several TimesYesYes
Because I regularly need interoperability with C libraries (compression, data storage, etc)
API/Web Services;Command Line Tools;Microservices;Non HTTP/Web Network Services
Private / firewalled
NoYesYesNoJenkins;drone.io61
github.com/nsf/gocode;github.com/golang/lint/golint;github.com/kisielk/errcheck
3/5/20166BothReddit
go-nuts mailing list
NoNo
GopherCon (Denver);GopherCon India;Gotham Go
No
AWS EC2;Digital Ocean;Linode
Deploy a binaryLinuxNew York City
99
2016/06/08 2:53:41 PM CDT
Yes1.6 (go1.6*)
Untar or Unzip releases from golang.org
Untar or Unzip releases from golang.org
$HOME/Code
Linux (any distro)
no toolno toolNo
Did not manage them
NoYes4Vim/NeovimEnabledOn5stdlib net/http
Don't use a framework, just stdlib
Don't use a framework, just stdlib
OnceYesNo
API/Web Services;Command Line Tools;Web Sites (Primarily HTML interactions);Microservices
Private / firewalled
NoNoNoJenkins12
github.com/derekparker/delve;github.com/golang/lint/golint;golang.org/x/tools/cmd/guru (formerly oracle)
13Gopher Slack
Gopher Slack (https://invite.slack.golangbridge.org/)
Stack Overflow
No, but I am interested in doing so
No
GopherCon (Denver)
No
Servers that I/my company manage ourselves
Deploy a binary
Just use the latest major + minor release of Go
Linux
lack of standard ways of filtering/transforming
concurrencyDenver, CO
100
2016/06/08 2:53:41 PM CDT
Yes1.7 (go1.7*)
Fortran integration with cgo
Once a month
Build from source
Build from source
$HOME/Documents/mygoApple OSXno toolno toolNo
Did not manage them
NoYes4SublimeEnabledOn6None
Don't do web programming
Don't do web programming
Don't do web programming
OnceYesNoBLAS
Scientific programming
Publicly available
NoYesYesYesTravis CI
These questions should not be yes/no. I write benchmarks when I need to benchmark something, which is not always.
42None16NeitherReddit
go-nuts mailing list
NoNoNoneNoDave Cheney
Lots of times questions go unanswered if they are technical, unless you break the rules and ask on golang dev where they are sometimes addressed.

The community (including this survey) has a large bias that everyone using go is doing webservices.
Research code usually doesn't "deploy"
None of the above
None of the above, make sure it works on the last few go versions
Go is good at cross-compiling
Fun plotting
Basically everything (mostly complexity management)
Everything involving numeric programming. Most directly, issues that haven't been addressed to fix the standard library in easy ways (14932)
Table proposal being accepted
Santa Fe, NM
Loading...
 
 
 
Survey