Golang
Language
Basics
- [Golang Packages](Golang Packages)
- [Golang Functions](Golang Functions)
- [Golang variables](Golang variables)
- [Golang flow control statements](Golang flow control statements)
- [Tests in Golang](Tests in Golang)
- [Golang tooling](Golang tooling)
- [Golang Pointers](Golang Pointers)
- [Golang Structs](Golang Structs)
- [Golang Arrays](Golang Arrays)
- [Golang slices](Golang slices)
- [Golang maps](Golang maps)
- [Golang methods](Golang methods)
- [Golang interfaces](Golang interfaces)
- [Golang Errors](Golang Errors)
- Reflection
- [Golang Context](Golang Context)
- [Golang Embedding](Golang Embedding)
Concurrency
Sync
- [Golang Mutex](Golang Mutex)
- [Golang WaitGroup](Golang WaitGroup)
Misc
- When to use sync.Mutex or a channel[fn:mutexorchannel]
Libraries you should probably know about
- http[fn:http]
Books & tutorials
- Go by Example[fn:gobyexample]
- Learn Go with tests[fn:learngowithtests]
Footnotes
[fn:learngowithtests]https://quii.gitbook.io/learn-go-with-tests/
[fn:gobyexample]https://gobyexample.com/
[fn:http]https://golang.org/pkg/net/http/
[fn:mutexorchannel]https://faiface.github.io/post/context-should-go-away-go2/