Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/khigor777/awesome-go-articles

A curated list of articles and best practices, for quick start and go deeper with Golang.
https://github.com/khigor777/awesome-go-articles

List: awesome-go-articles

Last synced: 16 days ago
JSON representation

A curated list of articles and best practices, for quick start and go deeper with Golang.

Awesome Lists containing this project

README

        

# 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](https://blog.chewxy.com/2018/03/18/golang-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)](https://medium.com/golangspec/interfaces-in-go-part-i-4ae53a97479c) - Polymorphism in Golang
* [Interfaces in Go (part II)](https://medium.com/golangspec/interfaces-in-go-part-ii-d5057ffdb0a6) - Type assertion & type switch
* [Interfaces in Go (part III)](https://medium.com/golangspec/interfaces-in-go-part-iii-61f5e7c52fb5) - 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](https://peter.bourgon.org/go-best-practices-2016/) - Peter Bourgon, In 2014, I gave a talk at the inaugural GopherCon titled Best Practices in Production Environments.
* [Go for Industrial Programming](https://peter.bourgon.org/go-for-industrial-programming/) - Peter Bourgon, GopherCon EU 2018.* [github.com |grpc/grpc-go: the go language implementation of grpc. http/2 based rpc](https://github.com/grpc/grpc-go) - grpc/grpc-go: the go language implementation of grpc. http/2 based rpc
* [research.swtch.com |research!rsc: go data structures: interfaces](https://research.swtch.com/interfaces) - research!rsc: go data structures: interfaces
* [yourbasic.org |your basic go | yourbasic.org](http://yourbasic.org/golang/) - your basic go | yourbasic.org
* [www.programming-books.io |essential go - a free go programming book](https://www.programming-books.io/essential/go/) - essential go - a free go programming book
* [talks.golang.org |advanced go concurrency patterns](https://talks.golang.org/2013/advconc.slide#1) - advanced go concurrency patterns
* [peter.bourgon.org |peter bourgon · go best practices, six years in](https://peter.bourgon.org/go-best-practices-2016/#development-environment) - peter bourgon · go best practices, six years in
* [blog.rubylearning.com |best practices for a new go developer – rubylearning blog](https://blog.rubylearning.com/best-practices-for-a-new-go-developer-8660384302fc) - best practices for a new go developer – rubylearning blog
* [habr.com |интересные способы использования go каналов (перевод) / хабр](https://habr.com/post/278349/) - интересные способы использования go каналов (перевод) / хабр
* [blog.chewxy.com |how to use go interfaces](https://blog.chewxy.com/2018/03/18/golang-interfaces/) - how to use go interfaces
* [medium.com |ten useful techniques in go – fatih arslan – medium](https://medium.com/@farslan/ten-useful-techniques-in-go-ddd94296c21b) - ten useful techniques in go – fatih arslan – medium
* [medium.com |structuring applications in go – ben johnson – medium](https://medium.com/@benbjohnson/structuring-applications-in-go-3b04be4ff091) - structuring applications in go – ben johnson – medium
* [medium.com |structuring applications in go – ben johnson – medium](https://medium.com/@benbjohnson/structuring-applications-in-go-3b04be4ff091) - structuring applications in go – ben johnson – medium
* [medium.com |preemptive interface anti-pattern in go – jack lindamood – medium](https://medium.com/@cep21/preemptive-interface-anti-pattern-in-go-54c18ac0668a) - preemptive interface anti-pattern in go – jack lindamood – medium
* [medium.com |aspects of a good go library – jack lindamood – medium](https://medium.com/@cep21/aspects-of-a-good-go-library-7082beabb403) - aspects of a good go library – jack lindamood – medium
* [www.youtube.com |golang uk conference 2017 | arne claus - concurrency patterns in go - youtube](https://www.youtube.com/watch?v=rDRa23k70CU) - golang uk conference 2017 | arne claus - concurrency patterns in go - youtube
* [herman.asia |excellent open source go projects](http://herman.asia/open-source-go-projects-to-learn-from) - excellent open source go projects
* [www.youtube.com |golang uk conference 2016 - michael munday - dropping down go functions in assembly - youtube](https://www.youtube.com/watch?v=9jpnFmJr2PE&index=147&list=PLuKvd2GQmvCATHrdPfWwESh6o8AI4GTpj) - golang uk conference 2016 - michael munday - dropping down go functions in assembly - youtube
* [dave.cheney.net |solid go design | dave cheney](https://dave.cheney.net/2016/08/20/solid-go-design) - solid go design | dave cheney
* [8thlight.com |loose coupling in go lang | 8th light](https://8thlight.com/blog/javier-saldana/2015/02/06/loose-coupling-in-go-lang.html) - loose coupling in go lang | 8th light
* [tleyden.github.io |an example of using nsq from go - seven story rabbit hole](http://tleyden.github.io/blog/2014/11/12/an-example-of-using-nsq-from-go/) - an example of using nsq from go - seven story rabbit hole
* [medium.com |structuring tests in go – ben johnson – medium](https://medium.com/@benbjohnson/structuring-tests-in-go-46ddee7a25c) - 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](https://golangnews.com/) - 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](https://research.swtch.com/interfaces) - research!rsc: go data structures: interfaces
* [software.intel.com |debugging performance issues in go programs | intel® software](https://software.intel.com/en-us/blogs/2014/05/10/debugging-performance-issues-in-go-programs) - debugging performance issues in go programs | intel® software
* [divan.github.io |visualizing concurrency in go · divan's blog](http://divan.github.io/posts/go_concurrency_visualize/) - visualizing concurrency in go · divan's blog
* [blog.rubylearning.com |best practices for a new go developer – rubylearning blog](https://blog.rubylearning.com/best-practices-for-a-new-go-developer-8660384302fc) - best practices for a new go developer – rubylearning blog
* [tehnojam.pro |full stack проект на go за неделю / разработка / техноджем](https://tehnojam.pro/category/development/full-stack-proekt-na-go-za-nedelju.html) - full stack проект на go за неделю / разработка / техноджем
* [tehnojam.pro |full stack проект на go за неделю / разработка / техноджем](https://tehnojam.pro/category/development/full-stack-proekt-na-go-za-nedelju.html) - full stack проект на go за неделю / разработка / техноджем
* [golang.org |effective go - the go programming language](https://golang.org/doc/effective_go.html) - effective go - the go programming language
* [golang.org |documentation - the go programming language](https://golang.org/doc/) - documentation - the go programming language
* [habrahabr.ru |с чего начать новичку в go / хабрахабр](https://habrahabr.ru/post/269355/) - с чего начать новичку в go / хабрахабр
* [ru.stackoverflow.com |golang - книги, документация, статьи и курсы по go - stack overflow на русском](https://ru.stackoverflow.com/questions/436505/%D0%9A%D0%BD%D0%B8%D0%B3%D0%B8-%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D0%B8%D1%8F-%D1%81%D1%82%D0%B0%D1%82%D1%8C%D0%B8-%D0%B8-%D0%BA%D1%83%D1%80%D1%81%D1%8B-%D0%BF%D0%BE-go) - golang - книги, документация, статьи и курсы по go - stack overflow на русском
* [learnxinyminutes.com |learn go in y minutes](https://learnxinyminutes.com/docs/go/) - learn go in y minutes
* [habrahabr.ru |как не наступать на грабли в go / хабрахабр](https://habrahabr.ru/post/325468/#slaysy) - как не наступать на грабли в go / хабрахабр
* [blog.golang.org |go slices: usage and internals - the go blog](https://blog.golang.org/go-slices-usage-and-internals) - go slices: usage and internals - the go blog
* [habrahabr.ru |краш-курс по интерфейсам в go / хабрахабр](https://habrahabr.ru/post/276981/) - краш-курс по интерфейсам в go / хабрахабр
* [golang.org |src/ - the go programming language](https://golang.org/src/) - src/ - the go programming language
* [habrahabr.ru |танцы с мьютексами в go / хабрахабр](https://habrahabr.ru/post/271789/) - танцы с мьютексами в go / хабрахабр
* [play.golang.org |the go playground](https://play.golang.org/p/4zLgX-_0ZS) - the go playground
* [www.youtube.com |mastering go programming : slicing slices | packtpub.com - youtube](https://www.youtube.com/watch?v=fhdA-6LcOxk) - mastering go programming : slicing slices | packtpub.com - youtube
* [github.com |denisenkom/go-mssqldb: microsoft sql server driver written in go language](https://github.com/denisenkom/go-mssqldb) - denisenkom/go-mssqldb: microsoft sql server driver written in go language
* [blog.rubylearning.com |best practices for a new go developer – rubylearning blog](https://blog.rubylearning.com/best-practices-for-a-new-go-developer-8660384302fc) - best practices for a new go developer – rubylearning blog
* [golang.org |effective go - the go programming language](https://golang.org/doc/effective_go.html#interfaces_and_types) - effective go - the go programming language
* [www.youtube.com |dotgo 2017 - john cinnamond - go lift - youtube](https://www.youtube.com/watch?v=1B71SL6Y0kA&index=12&list=PLuKvd2GQmvCATHrdPfWwESh6o8AI4GTpj) - dotgo 2017 - john cinnamond - go lift - youtube
* [dave.cheney.net |resources for new go programmers | dave cheney](https://dave.cheney.net/resources-for-new-go-programmers) - resources for new go programmers | dave cheney
* [github.com |avelino/awesome-go: a curated list of awesome go frameworks, libraries and software](https://github.com/avelino/awesome-go#gui) - 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"](https://github.com/adonovan/gopl.io) - adonovan/gopl.io: example programs from "the go programming language"
* [www.youtube.com |a tour of go - youtube](https://www.youtube.com/watch?v=ytEkHepK08c) - a tour of go - youtube
* [4gophers.ru |язык программирования go | книги](http://4gophers.ru/books#.WKrtLXOLS70) - язык программирования go | книги
* [sefus.ru |маленькая книга о go – глава 5: лакомые кусочки](https://sefus.ru/little-go-book-5/) - маленькая книга о go – глава 5: лакомые кусочки
* [github.com |codegangsta/gin: live reload utility for go web servers](https://github.com/codegangsta/gin) - codegangsta/gin: live reload utility for go web servers
* [lesnoy.name |nginx и go - друзья! :: язык программирования go](http://lesnoy.name/golang/%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0-nginx-%D0%B4%D0%BB%D1%8F-golang-%D1%81%D0%B0%D0%B9%D1%82%D0%B0/) - nginx и go - друзья! :: язык программирования go
* [echo.labstack.com |file upload | echo - high performance, minimalist go web framework](https://echo.labstack.com/cookbook/file-upload) - file upload | echo - high performance, minimalist go web framework
* [medium.com |i would like to go now — free resources for learning go 2018](https://medium.com/@bpatrick.walker/i-would-like-to-go-now-free-resources-for-learning-go-2018-9834f3d064e1) - 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](https://medium.com/@bpatrick.walker/i-would-like-to-go-now-free-resources-for-learning-go-2018-9834f3d064e1) - i would like to go now — free resources for learning go 2018
* [github.com |hh39797j/golang-videos-ru: собрание видеозаписей докладов про go | 2016-2018](https://github.com/hH39797J/golang-videos-ru#gophercon-russia-2018) - hh39797j/golang-videos-ru: собрание видеозаписей докладов про go | 2016-2018
* [www.youtube.com |(4) packagemain #0: building grpc blockchain server & client in go - youtube](https://www.youtube.com/watch?v=gju-bml4kdw) - (4) packagemain #0: building grpc blockchain server & client in go - youtube
* [blog.blindside.io |developing a go app with docker compose – blindside.io](https://blog.blindside.io/docker-compose-go-c2bb7bed0bab) - developing a go app with docker compose – blindside.io
* [stackoverflow.com |http - go doing a get request and building the querystring - stack overflow](https://stackoverflow.com/questions/30652577/go-doing-a-get-request-and-building-the-querystring) - http - go doing a get request and building the querystring - stack overflow
* [www.youtube.com |twelve go best practices - francesc campoy - youtube](https://www.youtube.com/watch?v=8D3Vmm1BGoY&list=PLME-Ew2f0zLI6xMIoedsEU2m28_6FLMIQ) - 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)](https://github.com/asticode/go-astilectron) - 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!](http://go-search.org/) - 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](https://github.com/gopherjs/gopherjs) - 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](https://medium.com/@matryer/very-basic-concurrency-for-beginners-in-go-663e63c6ba07) - very basic concurrency for beginners in go – medium
* [divan.github.io |visualizing concurrency in go · divan's blog](http://divan.github.io/posts/go_concurrency_visualize/) - visualizing concurrency in go · divan's blog
* [github.com |bradfitz/slice: the slice package sorts go slices.](https://github.com/bradfitz/slice) - 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](http://www.josephspurrier.com/how-to-use-template-blocks-in-go-1-6/) - 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](https://www.youtube.com/playlist?list=PL41psiCma00wgiTKkAZwJiwtLTdcyEyc4) - write web applications in go without using a framework - youtube
* [www.golangbootcamp.com |chapter 2: the basics | go bootcamp | softcover.io](http://www.golangbootcamp.com/book/basics) - chapter 2: the basics | go bootcamp | softcover.io
* [ru.stackoverflow.com |golang - книги, документация, статьи и курсы по go - stack overflow на русском](http://ru.stackoverflow.com/questions/436505/%D0%9A%D0%BD%D0%B8%D0%B3%D0%B8-%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D0%B8%D1%8F-%D1%81%D1%82%D0%B0%D1%82%D1%8C%D0%B8-%D0%B8-%D0%BA%D1%83%D1%80%D1%81%D1%8B-%D0%BF%D0%BE-go) - golang - книги, документация, статьи и курсы по go - stack overflow на русском