Go is a successful programming language. Unlike others, its success can’t be attributed to a very wide range of features. It’s rather the opposite: what makes Go successful is in part its simplicity.
Go’s simplicity has an effect on what the Go community appreciates and also feeds the growth of a very diverse ecosystem of tools.
This talk covers some of those tools from the very well known gofmt to some less known as oracle, recently renamed as guru. We will first classify the existing tools, then demonstrate how they can be used to improve the quality and efficiency of Go code, and finally propose areas where new tools could be created.
The talk doesn’t require a deep understanding of Go, but some basic knowledge of it will be useful to understand the code examples.
Presented at goto; Chicago 2016