This post is more than 5 years old. It may not fully represent my current thoughts on this topic. Please keep that in mind while reading.

There is an awesome list of Go tools out there to find pretty much everything Go. The problem is, it’s a huge list, really not ideal for beginners in my humble opinion. Therefore I try to put together a Golang essentials below. Expect it to be regularly updated as I find old projects to no longer be supported and new ones which should really make this list…

Getting Started

Best coding practices


Interesting projects

Section has been moved to its own blog post: Coolest Open Source Go Projects in the Wild.

Advanced Go

Online sources

More videos


Missing features / Future of Go

People coming from other languages often look for their favorite features from their previous languages. Oftentimes these are there in Go in some other form or name, sometimes they are missing because the language authors consider them harmful and sometimes they just haven’t been added yet. Chances are, the community already discusses these features and the Go team is collecting these complaints and discussions to consider them when designing Go 2.0. You can find the list on Github.

Random interesting posts

Design patterns, common utilities and examples

Find tools and projects