Collection of notes, links and thoughts about golang development. > Go is an open source programming language that makes it easy to build simple, reliable, and efficient software. golang.org
After writing my first server in Go (also known as the server programming language) I became a believer. The language and its concurrent pattern are easy to grasp and offer business benefits. Convert now, build your next project with Go.
Many companies have started to replaced python, ruby, node and Java in the backend with GO. * Twitch uses Go * From Node.js to Go * From Node.js to Golang * From Scala to Go * Go Will Dominate In 2016 * Why Go Was the Right Choice for CockroachDB * Sorry, Ruby — I think I’ve fallen for Go! * From Python to Go: migrating our entire API * Billions of request per day meet Go 1.5 * Fog Creek: Building Resilient Services with Go * How We Moved Our API From Ruby to Go and Saved Our Sanity * porting microservices from Java to Go * GO compared to Python
I’ll always have a soft-spot in my heart for Python, but after doing a few servers in Go, I’d be loathe to switch back, for server stuff at least.
- Resources for new Go programmers
- Learn Go
- Go by Example
- Applied concurrency in Go
- Go Cheat Sheet
- Very basic concurrency for beginners in Go
- Go in 5 Minutes
- Profiling & Optimizing in Go
- Using Sublime Text for Go Development
- No Generics can be solved with types
- Supercharging the Atom Editor for Go Development
- Rob Pike: Concurrency is not parallelism
- Beautiful explanation of the singleton pattern
- Go Language Patterns: Constructors
- 10 things you (probably) don’t know about Go
- Stupid Gopher Tricks
- use PPROF for profiling
- Ten Useful Techniques in Go
For me, Go’s type system is a huge win. I also really like the reliance on explicit error handling, as opposed to exception raising.
Go sometimes makes you write a little more “in the small” as a tradeoff against systemic complexity.