User Tools

Site Tools


go_references

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
go_references [2018/10/04 06:14]
luciano [Packaging & Dependencies]
go_references [2019/10/03 06:49]
luciano [Iterators]
Line 10: Line 10:
   * [[http://​yourbasic.org/​golang/​|Your basic Go]]   * [[http://​yourbasic.org/​golang/​|Your basic Go]]
   * [[https://​medium.com/​@yunabe/​interactive-go-programming-with-jupyter-93fbf089aff1|Interactive Go programming with Jupyter]]   * [[https://​medium.com/​@yunabe/​interactive-go-programming-with-jupyter-93fbf089aff1|Interactive Go programming with Jupyter]]
- 
  
 ===== Language design and usage ===== ===== Language design and usage =====
Line 18: Line 17:
   * [[https://​go-proverbs.github.io/​|Go Proverbs]]   * [[https://​go-proverbs.github.io/​|Go Proverbs]]
   * [[A story about simplicity in Go]] by [[https://​twitter.com/​rakyll|@rakyll]]   * [[A story about simplicity in Go]] by [[https://​twitter.com/​rakyll|@rakyll]]
-  * [[https://​rakyll.org/​typesystem/​|The Go type system for newcomers]] by [[https://​twitter.com/​rakyll|@rakyll]] 
   * [[https://​rakyll.org/​leakingctx/​|Using contexts to avoid leaking goroutines]] by [[https://​twitter.com/​rakyll|@rakyll]]   * [[https://​rakyll.org/​leakingctx/​|Using contexts to avoid leaking goroutines]] by [[https://​twitter.com/​rakyll|@rakyll]]
-  * [[https://​rakyll.org/​interface-pollution/​|Interface pollution in Go]] by [[https://​twitter.com/​rakyll|@rakyll]] 
-  * [[https://​www.ardanlabs.com/​blog/​2016/​10/​avoid-interface-pollution.html|Avoid interface pollution]] by William Kennedy ​ 
   * [[https://​www.ardanlabs.com/​blog/​all-posts.html|Ardan Labs Blog]] by William Kennedy   * [[https://​www.ardanlabs.com/​blog/​all-posts.html|Ardan Labs Blog]] by William Kennedy
   * [[https://​github.com/​golang/​go/​wiki/​SliceTricks|Slice tricks]] (Go Wiki)   * [[https://​github.com/​golang/​go/​wiki/​SliceTricks|Slice tricks]] (Go Wiki)
Line 31: Line 27:
   * [[https://​medium.com/​statuscode/​how-i-write-go-http-services-after-seven-years-37c208122831|How I write Go HTTP services after seven years]]   * [[https://​medium.com/​statuscode/​how-i-write-go-http-services-after-seven-years-37c208122831|How I write Go HTTP services after seven years]]
   * [[https://​dave.cheney.net/​2018/​01/​08/​gos-hidden-pragmas|Go'​s hidden pragmas]]   * [[https://​dave.cheney.net/​2018/​01/​08/​gos-hidden-pragmas|Go'​s hidden pragmas]]
 +  * [[https://​www.youtube.com/​watch?​v=sln-gJaURzk|Meet the Go Team]] (2012)
 +
 +
 +==== Types & Interfaces ====
 +
 +  * [[https://​rakyll.org/​typesystem/​|The Go type system for newcomers]] by [[https://​twitter.com/​rakyll|@rakyll]]
 +  * [[https://​rakyll.org/​interface-pollution/​|Interface pollution in Go]] by [[https://​twitter.com/​rakyll|@rakyll]]
 +  * [[https://​www.ardanlabs.com/​blog/​2016/​10/​avoid-interface-pollution.html|Avoid interface pollution]] by William Kennedy ​
 +  * [[https://​medium.com/​@haya14busa/​sum-union-variant-type-in-go-and-static-check-tool-of-switch-case-handling-3bfc61618b1e|Sum/​Union/​Variant Type in Go and Static Check Tool of switch-case handling]]
 +
 +
 ==== Gotchas and common mistakes ==== ==== Gotchas and common mistakes ====
  
Line 45: Line 52:
   * [[https://​golang.org/​doc/​faq#​methods_on_values_or_pointers|Should I define methods on values or pointers?]] (Go FAQ)   * [[https://​golang.org/​doc/​faq#​methods_on_values_or_pointers|Should I define methods on values or pointers?]] (Go FAQ)
  
 +==== Iterators ====
 +
 +  * [[https://​ewencp.org/​blog/​golang-iterators/​index.html|Iterators in Go]]: A Survey of Iterator (or Generator) Patterns in golang
 +  * [[https://​blog.kowalczyk.info/​article/​1Bkr/​3-ways-to-iterate-in-go.html|3 ways to iterate in Go]]
 ===== Functions ===== ===== Functions =====
  
Line 70: Line 81:
   * [[https://​commandcenter.blogspot.com.br/​2017/​12/​error-handling-in-upspin.html|Error handling in Upspin]] by Rob Pike   * [[https://​commandcenter.blogspot.com.br/​2017/​12/​error-handling-in-upspin.html|Error handling in Upspin]] by Rob Pike
   * [[https://​go-talks.appspot.com/​github.com/​edmontongo/​presentations/​2018-01/​err/​err.slide|to,​ err := human()]]: wide ranging slides with lots of references at the end.   * [[https://​go-talks.appspot.com/​github.com/​edmontongo/​presentations/​2018-01/​err/​err.slide|to,​ err := human()]]: wide ranging slides with lots of references at the end.
 +  * [[https://​medium.com/​rose-rocket/​seeking-helpful-errors-in-go-with-xerrs-84e6458b893e|Seeking Helpful Errors in Go with xerrs]] 
 +  * [[https://​slides.com/​marwansameer/​handling-go-errors#/​|Handling Go Errors (at The New York Times)]] by [[https://​twitter.com/​MarwanSulaiman|Marwan Sulaiman]]
 ===== Testing ===== ===== Testing =====
  
Line 102: Line 114:
   * [[https://​www.calhoun.io/​why-are-slices-sometimes-altered-when-passed-by-value-in-go/​|Why are slices sometimes altered when passed by value in Go?]] by Jon Calhoun   * [[https://​www.calhoun.io/​why-are-slices-sometimes-altered-when-passed-by-value-in-go/​|Why are slices sometimes altered when passed by value in Go?]] by Jon Calhoun
   * [[https://​medium.com/​@vCabbage/​golang-understanding-slices-through-code-e098cd2467ea|Understanding Slices through Code]] by Kale Blankenship ([[https://​twitter.com/​vCabbage|vCabbage]])   * [[https://​medium.com/​@vCabbage/​golang-understanding-slices-through-code-e098cd2467ea|Understanding Slices through Code]] by Kale Blankenship ([[https://​twitter.com/​vCabbage|vCabbage]])
 +  * [[https://​tylerchr.blog/​golang-arbitrary-memory/​|https://​tylerchr.blog/​golang-arbitrary-memory/​]]
  
 ===== Concurrency ===== ===== Concurrency =====
go_references.txt · Last modified: 2019/10/03 06:49 by luciano