Awesome Golang Workshops
A curated list of awesome golang workshops.
As opossed to tutorials or blog posts, workshops cover a topic thoroughly with great depth and are usually hosted in Github.
Contributing
Any comments, suggestions? Let us know! If you see something missing, please open a PR. Workshops should be a source to learn a new topic in depth so keep that in mind when opening a PR.
Contents
Performance
- High Performance Go Workshop - Covers the tools to diagnose performance problems
- Go Perfbook - Outlines best practices for writing high-performance Go code
- Golang Benchmarks - Comparison of different benchmarks with explanations for the results
- Compiler Optimizations - Optimizations done by the Go compiler
Learning Go
- Learn Go With Tests - Learn Go with test-driven development
- Gopher Labs - A workshop with a track on how to be a Go developer
- The Beginner's Guide to Go - A workshop that walks you through everything you need in order to learn Go from the ground up.
Versioning
- vgo - A collection of posts by Russ Cox about versioning in Go
Web
- Go Web Workshop - How to build a web application with Go
Best Practices
- Uber Styling guide - Documents style patterns and conventions used in Go use at Uber
- Clean Go Article - Covers writing clean code and discusses concrete refactoring examples specific to Go
Data Structures
- Go Data Structures Course - A course covering how you can build all the standard CS data structures using Go
Design Patterns
- Go Patterns - Curated list of Go design patterns, recipes and idioms
Go Internals
- Go Internals - About the internals of Go
- Static Analysis Workshop - Dicusses about writing static code analyzers (linters) in Go for Go programs
- Go 101 - focusing on Go syntax/semantics and all kinds of runtime related things
gRPC
- gRPC Workshop - How to build a gRPC server, a gRPC client and how to deploy a gRPC server using docker
- Go gRPC Crash Course - A crash course on using gRPC with Go
- Building gRPC Microservices in Go - A course that walks you through setting up, and implementing a gRPC microservice in Go
ML
- Machine Learning With Go - Provides a view on training, utilizing, evaluating, and deploying machine learning models using Go
Tooling
- Go Tooling Workshop - Covers all the tools gophers use in their day to day life