Awesome Go Articles
A curated list of articles and best practices, for quick start and go deeper with Golang.
Contents
Interfaces
Articles to understand how the interfaces works
- How To Use Go Interfaces - This blog post is a Go specific recommendation from me, based on my experiences writing Go code, on how to use interfaces well.
- Interfaces in Go (part I) - Polymorphism in Golang
- Interfaces in Go (part II) - Type assertion & type switch
- Interfaces in Go (part III) - Method expression derived from interface types, interface type values as map keys or interfaces of embedded fields
Best practices
- Go best practices, six years in - Peter Bourgon, In 2014, I gave a talk at the inaugural GopherCon titled Best Practices in Production Environments.
- Go for Industrial Programming - Peter Bourgon, GopherCon EU 2018.* github.com |grpc/grpc-go: the go language implementation of grpc. http/2 based rpc - grpc/grpc-go: the go language implementation of grpc. http/2 based rpc
- research.swtch.com |research!rsc: go data structures: interfaces - research!rsc: go data structures: interfaces
- yourbasic.org |your basic go | yourbasic.org - your basic go | yourbasic.org
- www.programming-books.io |essential go - a free go programming book - essential go - a free go programming book
- talks.golang.org |advanced go concurrency patterns - advanced go concurrency patterns
- peter.bourgon.org |peter bourgon · go best practices, six years in - peter bourgon · go best practices, six years in
- blog.rubylearning.com |best practices for a new go developer – rubylearning blog - best practices for a new go developer – rubylearning blog
- habr.com |интересные способы использования go каналов (перевод) / хабр - интересные способы использования go каналов (перевод) / хабр
- blog.chewxy.com |how to use go interfaces - how to use go interfaces
- medium.com |ten useful techniques in go – fatih arslan – medium - ten useful techniques in go – fatih arslan – medium
- medium.com |structuring applications in go – ben johnson – medium - structuring applications in go – ben johnson – medium
- medium.com |structuring applications in go – ben johnson – medium - structuring applications in go – ben johnson – medium
- medium.com |preemptive interface anti-pattern in go – jack lindamood – medium - preemptive interface anti-pattern in go – jack lindamood – medium
- medium.com |aspects of a good go library – jack lindamood – medium - aspects of a good go library – jack lindamood – medium
- www.youtube.com |golang uk conference 2017 | arne claus - concurrency patterns in go - youtube - golang uk conference 2017 | arne claus - concurrency patterns in go - youtube
- herman.asia |excellent open source go projects - excellent open source go projects
- www.youtube.com |golang uk conference 2016 - michael munday - dropping down go functions in assembly - youtube - golang uk conference 2016 - michael munday - dropping down go functions in assembly - youtube
- dave.cheney.net |solid go design | dave cheney - solid go design | dave cheney
- 8thlight.com |loose coupling in go lang | 8th light - loose coupling in go lang | 8th light
- tleyden.github.io |an example of using nsq from go - seven story rabbit hole - an example of using nsq from go - seven story rabbit hole
- medium.com |structuring tests in go – ben johnson – medium - structuring tests in go – ben johnson – medium
- golangnews.com |golang news - jobs, code, videos and news for go hackers - everything about the go programming language - golang news - jobs, code, videos and news for go hackers - everything about the go programming language
- research.swtch.com |research!rsc: go data structures: interfaces - research!rsc: go data structures: interfaces
- software.intel.com |debugging performance issues in go programs | intel® software - debugging performance issues in go programs | intel® software
- divan.github.io |visualizing concurrency in go · divan's blog - visualizing concurrency in go · divan's blog
- blog.rubylearning.com |best practices for a new go developer – rubylearning blog - best practices for a new go developer – rubylearning blog
- tehnojam.pro |full stack проект на go за неделю / разработка / техноджем - full stack проект на go за неделю / разработка / техноджем
- tehnojam.pro |full stack проект на go за неделю / разработка / техноджем - full stack проект на go за неделю / разработка / техноджем
- golang.org |effective go - the go programming language - effective go - the go programming language
- golang.org |documentation - the go programming language - documentation - the go programming language
- habrahabr.ru |с чего начать новичку в go / хабрахабр - с чего начать новичку в go / хабрахабр
- ru.stackoverflow.com |golang - книги, документация, статьи и курсы по go - stack overflow на русском - golang - книги, документация, статьи и курсы по go - stack overflow на русском
- learnxinyminutes.com |learn go in y minutes - learn go in y minutes
- habrahabr.ru |как не наступать на грабли в go / хабрахабр - как не наступать на грабли в go / хабрахабр
- blog.golang.org |go slices: usage and internals - the go blog - go slices: usage and internals - the go blog
- habrahabr.ru |краш-курс по интерфейсам в go / хабрахабр - краш-курс по интерфейсам в go / хабрахабр
- golang.org |src/ - the go programming language - src/ - the go programming language
- habrahabr.ru |танцы с мьютексами в go / хабрахабр - танцы с мьютексами в go / хабрахабр
- play.golang.org |the go playground - the go playground
- www.youtube.com |mastering go programming : slicing slices | packtpub.com - youtube - mastering go programming : slicing slices | packtpub.com - youtube
- github.com |denisenkom/go-mssqldb: microsoft sql server driver written in go language - denisenkom/go-mssqldb: microsoft sql server driver written in go language
- blog.rubylearning.com |best practices for a new go developer – rubylearning blog - best practices for a new go developer – rubylearning blog
- golang.org |effective go - the go programming language - effective go - the go programming language
- www.youtube.com |dotgo 2017 - john cinnamond - go lift - youtube - dotgo 2017 - john cinnamond - go lift - youtube
- dave.cheney.net |resources for new go programmers | dave cheney - resources for new go programmers | dave cheney
- github.com |avelino/awesome-go: a curated list of awesome go frameworks, libraries and software - avelino/awesome-go: a curated list of awesome go frameworks, libraries and software
- github.com |adonovan/gopl.io: example programs from "the go programming language" - adonovan/gopl.io: example programs from "the go programming language"
- www.youtube.com |a tour of go - youtube - a tour of go - youtube
- 4gophers.ru |язык программирования go | книги - язык программирования go | книги
- sefus.ru |маленькая книга о go – глава 5: лакомые кусочки - маленькая книга о go – глава 5: лакомые кусочки
- github.com |codegangsta/gin: live reload utility for go web servers - codegangsta/gin: live reload utility for go web servers
- lesnoy.name |nginx и go - друзья! :: язык программирования go - nginx и go - друзья! :: язык программирования go
- echo.labstack.com |file upload | echo - high performance, minimalist go web framework - file upload | echo - high performance, minimalist go web framework
- medium.com |i would like to go now — free resources for learning go 2018 - i would like to go now — free resources for learning go 2018
- medium.com |i would like to go now — free resources for learning go 2018 - i would like to go now — free resources for learning go 2018
- github.com |hh39797j/golang-videos-ru: собрание видеозаписей докладов про go | 2016-2018 - hh39797j/golang-videos-ru: собрание видеозаписей докладов про go | 2016-2018
- www.youtube.com |(4) packagemain #0: building grpc blockchain server & client in go - youtube - (4) packagemain #0: building grpc blockchain server & client in go - youtube
- blog.blindside.io |developing a go app with docker compose – blindside.io - developing a go app with docker compose – blindside.io
- stackoverflow.com |http - go doing a get request and building the querystring - stack overflow - http - go doing a get request and building the querystring - stack overflow
- www.youtube.com |twelve go best practices - francesc campoy - youtube - twelve go best practices - francesc campoy - youtube
- github.com |asticode/go-astilectron: build cross platform gui apps with go and html/js/css (powered by electron) - asticode/go-astilectron: build cross platform gui apps with go and html/js/css (powered by electron)
- go-search.org |go search - find popular and relevant go packages! - go search - find popular and relevant go packages!
- github.com |github - gopherjs/gopherjs: a compiler from go to javascript for running go code in a browser - github - gopherjs/gopherjs: a compiler from go to javascript for running go code in a browser
- medium.com |very basic concurrency for beginners in go – medium - very basic concurrency for beginners in go – medium
- divan.github.io |visualizing concurrency in go · divan's blog - visualizing concurrency in go · divan's blog
- github.com |bradfitz/slice: the slice package sorts go slices. - bradfitz/slice: the slice package sorts go slices.
- www.josephspurrier.com |how to use template blocks in go 1.6 - improving efficiency with technology | joseph spurrier - how to use template blocks in go 1.6 - improving efficiency with technology | joseph spurrier
- www.youtube.com |write web applications in go without using a framework - youtube - write web applications in go without using a framework - youtube
- www.golangbootcamp.com |chapter 2: the basics | go bootcamp | softcover.io - chapter 2: the basics | go bootcamp | softcover.io
- ru.stackoverflow.com |golang - книги, документация, статьи и курсы по go - stack overflow на русском - golang - книги, документация, статьи и курсы по go - stack overflow на русском