2026-02-15 - 2026-05-15
Overview
There has not been any commit activity in this period.
258 issues closed from 1 user
Closed
#288 [PR #287] [CLOSED] Use HEAD for link checker
Closed
#287 [PR #286] [MERGED] Remove duplicate arg for link checker
Closed
#284 [PR #284] [MERGED] Update build for breaking change
Closed
#285 [PR #285] [MERGED] Lower cache time to 1d
Closed
#286 [PR #277] [MERGED] Cache website results for 1 week
Closed
#283 [PR #278] [MERGED] Fix argument for Link Checker in CI workflow
Closed
#282 [PR #276] [MERGED] Correct commandercenter URLs
Closed
#281 [PR #265] [MERGED] Update README.md
Closed
#278 [PR #275] [MERGED] Update README.md
Closed
#279 [PR #272] [MERGED] Replace 50 Shades of Go with 100 Go Mistakes
Closed
#280 [PR #268] [MERGED] Update README.md
Closed
#277 [PR #261] [MERGED] Skip domains that don't like robots
Closed
#275 [PR #262] [MERGED] Update README.md
Closed
#276 [PR #255] [MERGED] Remove paywalled Medium posts
Closed
#273 [PR #248] [MERGED] Replace broken links and update HTTP services post
Closed
#274 [PR #260] [MERGED] Improve CI build with better link checker
Closed
#271 [PR #220] [MERGED] Add Google Go Style Guide
Closed
#272 [PR #244] [MERGED] Update ci.yml with latest actions/checkout
Closed
#269 [PR #204] [CLOSED] Go is Boring...And That’s Fantastic!
Closed
#270 [PR #218] [MERGED] Add Accept HTTP header to link check
Closed
#268 [PR #223] [MERGED] Update README.md
Closed
#267 [PR #177] [MERGED] Update README.md
Closed
#263 [PR #193] [MERGED] Fix CI check to ensure 200 links
Closed
#264 [PR #182] [MERGED] ci: fix broken config.json
Closed
#265 [PR #192] [MERGED] Use HTTPS where possible
Closed
#266 [PR #194] [MERGED] Update README
Closed
#261 [PR #176] [MERGED] Update README.md
Closed
#262 [PR #174] [MERGED] fix invalid link of Common Gotchas in Go
Closed
#259 [PR #168] [MERGED] Add step to check for exactly 200 links
Closed
#260 [PR #159] [CLOSED] Learning Go book added
Closed
#258 [PR #139] [MERGED] Use GitHub Actions for CI
Closed
#256 [PR #102] [MERGED] Update README.md
Closed
#257 [PR #115] [MERGED] Fix a typo: Upsin -> Upspin
Closed
#253 [PR #84] [MERGED] Added Resources for Go Modules
Closed
#254 [PR #92] [CLOSED] Merge pull request #1 from enocom/master
Closed
#255 [PR #96] [MERGED] Configure CircleCI build to check links
Closed
#251 [PR #82] [CLOSED] Added resources for Dependency Management
Closed
#252 [PR #83] [CLOSED] Added readme
Closed
#248 [PR #21] [MERGED] remove dead link
Closed
#249 [PR #22] [MERGED] Update the link to the article
Closed
#250 [PR #79] [CLOSED] Adding Arden Labs Posts
Closed
#243 [PR #1] [CLOSED] Add "Essential Go"
Closed
#244 [PR #7] [CLOSED] Add links to 3 blog posts I wrote that are a good fit for to this list
Closed
#245 [PR #2] [MERGED] typo: comprensive -> comprehensive
Closed
#246 [PR #8] [MERGED] Add post on struct embedding vs OO inheritance
Closed
#247 [PR #16] [MERGED] Definition
Closed
#242 [GH-ISSUE #289] Issue
Closed
#234 [GH-ISSUE #270] Update "Mistakes" entry
Closed
#233 [GH-ISSUE #271] Go Optimization Guide
Closed
#231 [GH-ISSUE #269] Common Go Patterns for Performance
Closed
#230 [GH-ISSUE #267] Make Go application container resource limits aware
Closed
#227 [GH-ISSUE #264] Modifying Private Variables of a Struct in Go Using unsafe and reflect
Closed
#224 [GH-ISSUE #258] Ranging over functions in Go 1.23
Closed
#223 [GH-ISSUE #257] CPU throttling for containerized Go applications explained
Closed
#220 [GH-ISSUE #253] Go range iterators demystified
Closed
#222 [GH-ISSUE #252] Interfaces in Go
Closed
#221 [GH-ISSUE #254] Remove all paywalled Medium posts
Closed
#219 [GH-ISSUE #251] Range Over Function Types
Closed
#216 [GH-ISSUE #247] Contexts and structs
Closed
#212 [GH-ISSUE #243] Fundamentals of I/O in Go: Part 2
Closed
#209 [GH-ISSUE #238] What We Got Right, What We Got Wrong
Closed
#210 [GH-ISSUE #240] How I write HTTP services in Go after 13 years
Closed
#207 [GH-ISSUE #236] Analyzing Go Heap Escapes
Closed
#205 [GH-ISSUE #235] Optimizing Go string operations with practical examples
Closed
#204 [GH-ISSUE #234] Go Fact: Zero-sized Field at the Rear of a Struct Has Non-zero Size
Closed
#200 [GH-ISSUE #231] Organizing a Go module
Closed
#196 [GH-ISSUE #226] A comprehensive guide to file operations in Go
Closed
#193 [GH-ISSUE #222] Forward Compatibility and Toolchain Management in Go 1.21
Closed
#190 [GH-ISSUE #221] Common Pitfalls in Go Benchmarking
Closed
#192 [GH-ISSUE #217] Caching Golang tests in CI
Closed
#187 [GH-ISSUE #214] Advanced Testing in Go
Closed
#188 [GH-ISSUE #216] How to start a Go project in 2023
Closed
#186 [GH-ISSUE #211] A Comprehensive Guide to Structured Logging in Go
Closed
#184 [GH-ISSUE #213] Synchronization Patterns in Go
Closed
#185 [GH-ISSUE #212] a[low:high:max] in Golang — A Rare Slice Trick
Closed
#181 [GH-ISSUE #210] The one-and-only, must-have, eternal Go project layout
Closed
#182 [GH-ISSUE #208] Some Useful Patterns for Go's os/exec
Closed
#183 [GH-ISSUE #209] errors.Join ❤️ defer
Closed
#179 [GH-ISSUE #205] Go mod's lesser known features
Closed
#180 [GH-ISSUE #207] Functional table-driven tests in Go
Closed
#178 [GH-ISSUE #206] Serving static files and web apps in Go
Closed
#175 [GH-ISSUE #202] A Guide to the Go Garbage Collector
Closed
#176 [GH-ISSUE #203] Easy memory-saving tricks in Go
Closed
#177 [GH-ISSUE #201] Passing Loggers in Go: Golang Logging Best Practices
Closed
#172 [GH-ISSUE #198] Go concurrency guide
Closed
#173 [GH-ISSUE #199] Data Race Patterns in Go
Closed
#174 [GH-ISSUE #200] Dead URL (404)
Closed
#169 [GH-ISSUE #196] The Go Programming Language and Environment
Closed
#170 [GH-ISSUE #197] A Gentle Introduction to Generics in Go
Closed
#171 [GH-ISSUE #195] Faster sorting with Go generics
Closed
#167 [GH-ISSUE #190] Generics can make your Go code slower
Closed
#168 [GH-ISSUE #189] What's in a name (slides)
Closed
#166 [GH-ISSUE #191] Interface method calls with the Go register ABI
Closed
#165 [GH-ISSUE #187] Different ways to initialize Go structs
Closed
#164 [GH-ISSUE #188] go generics for the busy gopher
Closed
#163 [GH-ISSUE #186] Tutorial: Getting Started with Generics
Closed
#161 [GH-ISSUE #185] Tutorial: Getting Started with Fuzzing
Closed
#162 [GH-ISSUE #184] need add https://golang.org/ref/mem to Low Level Concerns
Closed
#160 [GH-ISSUE #183] Generic facilitators in Go
Closed
#157 [GH-ISSUE #180] Property-Based Testing In Go
Closed
#158 [GH-ISSUE #179] A comprehensive guide to go generate
Closed
#159 [GH-ISSUE #181] 404 url
Closed
#154 [GH-ISSUE #173] Getting to Go: The Journey of Go's Garbage Collector
Closed
#156 [GH-ISSUE #175] When to Use Generics in Go?
Closed
#155 [GH-ISSUE #178] 404 url
Closed
#151 [GH-ISSUE #172] Wrapping Errors the right way
Closed
#152 [GH-ISSUE #171] Don't fear the pointer
Closed
#153 [GH-ISSUE #170] Automatic cipher suite ordering in crypto/tls
Closed
#150 [GH-ISSUE #166] The underutilized usefulness of sync.Once
Closed
#148 [GH-ISSUE #167] In Go, pointers (mostly) don't go with slices in practice
Closed
#149 [GH-ISSUE #169] Plugins in Go
Closed
#147 [GH-ISSUE #163] goimports vs gofmt
Closed
#145 [GH-ISSUE #164] Finding and fixing memory leaks in Go
Closed
#146 [GH-ISSUE #165] Handling Errors from Deferred Functions in Go
Closed
#142 [GH-ISSUE #161] Add link to Chinese version
Closed
#143 [GH-ISSUE #162] How does Go calculate len()...?
Closed
#144 [GH-ISSUE #160] Reducing Memory Allocations in Golang
Closed
#139 [GH-ISSUE #158] Comprehensive Guide to Dates and Times in Go
Closed
#140 [GH-ISSUE #156] Simple Go project layout with modules
Closed
#141 [GH-ISSUE #157] Note on worker pools in Go
Closed
#138 [GH-ISSUE #155] High Performance Go Workshop
Closed
#137 [GH-ISSUE #154] Functional options on steroids
Closed
#136 [GH-ISSUE #153] Gotchas in the Go Network Packages Defaults
Closed
#133 [GH-ISSUE #150] Let's talk about logging
Closed
#134 [GH-ISSUE #152] Darker Corners of Go
Closed
#135 [GH-ISSUE #151] Code Review Checklist: Go concurrency
Closed
#130 [GH-ISSUE #147] Life of an HTTP request in a Go server
Closed
#131 [GH-ISSUE #149] Programming with Errors
Closed
#132 [GH-ISSUE #148] Errors are values
Closed
#128 [GH-ISSUE #145] Working with Embed in Go 1.16 Version
Closed
#129 [GH-ISSUE #146] Why you shouldn't use func main in Go.
Closed
#127 [GH-ISSUE #144] Use internal packages to reduce your public API surface
Closed
#126 [GH-ISSUE #142] Bitmasks for nicer APIs
Closed
#125 [GH-ISSUE #143] Packages as layers, not groups
Closed
#124 [GH-ISSUE #141] Crossing Streams: a Love Letter to io.Reader
Closed
#123 [GH-ISSUE #140] Go Defer Simplified with Practical Visuals
Closed
#121 [GH-ISSUE #137] How to customize Go's HTTP client
Closed
#122 [GH-ISSUE #138] The Pros of Conds
Closed
#118 [GH-ISSUE #136] Debugging Go in prod using eBPF
Closed
#119 [GH-ISSUE #134] Go: Introduction to the Escape Analysis
Closed
#120 [GH-ISSUE #135] Why Go modules are faster than GOPATH
Closed
#115 [GH-ISSUE #133] Building a high performance JSON parser
Closed
#116 [GH-ISSUE #131] How to handle signals with Go to graceful shutdown HTTP server
Closed
#117 [GH-ISSUE #132] Why You Should Be Using errgroup.WithContext() in Your Golang Server Handlers
Closed
#113 [GH-ISSUE #129] Documenting Go Github Repo
Closed
#114 [GH-ISSUE #128] Go: Asynchronous Preemption
Closed
#112 [GH-ISSUE #130] An intro to Go for non-Go developers
Closed
#109 [GH-ISSUE #126] Rob Pike interview: “Go has indeed become the language of cloud infrastructure“
Closed
#110 [GH-ISSUE #127] Debugging Go Applications using Delve
Closed
#111 [GH-ISSUE #125] Go for Cloud
Closed
#108 [GH-ISSUE #122] Illustrated Tales of Go Runtime Scheduler.
Closed
#106 [GH-ISSUE #123] Statically compiling Go programs
Closed
#107 [GH-ISSUE #124] Understanding bytes in Go by building a TCP protocol
Closed
#105 [GH-ISSUE #119] Graceful shutdown of a TCP server in Go
Closed
#103 [GH-ISSUE #120] Make resilient Go net/http servers using timeouts, deadlines and context cancellation
Closed
#104 [GH-ISSUE #121] The Zen of Go
Closed
#102 [GH-ISSUE #118] Ardan Labs | Modules (Parts 1, 2 & 3)
Closed
#100 [GH-ISSUE #116] The Go runtime scheduler's clever way of dealing with system calls
Closed
#101 [GH-ISSUE #117] Building a BitTorrent client from the ground up in Go
Closed
#99 [GH-ISSUE #112] A Comprehensive Guide of Arrays and Slices in Golang
Closed
#97 [GH-ISSUE #113] Go Slices are Fat Pointers
Closed
#98 [GH-ISSUE #114] 7 Subtle Pitfalls in the Go Language
Closed
#94 [GH-ISSUE #109] golang/go wiki page for Modules
Closed
#96 [GH-ISSUE #110] Simple techniques to optimise Go programs
Closed
#95 [GH-ISSUE #111] Clean Go Code
Closed
#91 [GH-ISSUE #107] Object Calisthenics in Golang
Closed
#92 [GH-ISSUE #108] Notes on TCP keepalive in Go
Closed
#93 [GH-ISSUE #106] Garbage Collection In Go : Part I - Semantics
Closed
#89 [GH-ISSUE #105] Error Handling in Go
Closed
#90 [GH-ISSUE #104] An Overview of Go's Tooling
Closed
#88 [GH-ISSUE #103] Idiomatic Go Resources
Closed
#85 [GH-ISSUE #101] Using Go Modules
Closed
#86 [GH-ISSUE #100] Practical Go: Real world advice for writing maintainable Go programs
Closed
#87 [GH-ISSUE #99] A visual guide to Go Memory Allocator from scratch
Closed
#83 [GH-ISSUE #98] Go JSON Cookbook
Closed
#84 [GH-ISSUE #95] Switch to Circle CI
Closed
#82 [GH-ISSUE #97] Configure cron job on Circle CI
Closed
#79 [GH-ISSUE #91] A Survey of Iterator (or Generator) Patterns in golang
Closed
#80 [GH-ISSUE #94] Avoiding high GC overhead with large heaps
Closed
#81 [GH-ISSUE #93] Stop writing broken Go libraries
Closed
#77 [GH-ISSUE #88] Build a DNS server in Golang
Closed
#76 [GH-ISSUE #89] Understand Go channels properly
Closed
#78 [GH-ISSUE #90] The Relationship Between Interfaces and Reflection
Closed
#75 [GH-ISSUE #87] Go modules by example
Closed
#73 [GH-ISSUE #85] Using Structs to Facilitate Dependency Injection with Go
Closed
#74 [GH-ISSUE #86] Deploying Go Apps on Docker Scratch Images
Closed
#72 [GH-ISSUE #81] Golang escape analysis
Closed
#70 [GH-ISSUE #80] [Go] Capturing the HTTP status code from http.ResponseWriter
Closed
#71 [GH-ISSUE #78] Scheduling In Go - Part II
Closed
#69 [GH-ISSUE #76] golang Duff's Device
Closed
#67 [GH-ISSUE #75] Go Hex Arch
Closed
#68 [GH-ISSUE #77] How a Go Program Compiles down to Machine Code
Closed
#64 [GH-ISSUE #74] Goroutines, Nonblocking I/O, And Memory Usage
Closed
#65 [GH-ISSUE #72] Accessing data in Go
Closed
#66 [GH-ISSUE #73] Everything you need to know about Packages in Go
Closed
#61 [GH-ISSUE #70] Playing with Go module proxies
Closed
#62 [GH-ISSUE #69] Error handling in Upspin
Closed
#63 [GH-ISSUE #71] Introduction to Go modules
Closed
#60 [GH-ISSUE #66] Interesting ways of using Go channels
Closed
#58 [GH-ISSUE #68] The X-Files: Avoiding Concurrency Boilerplate with golang.org/x/sync
Closed
#59 [GH-ISSUE #67] Monkey Patching in Go
Closed
#57 [GH-ISSUE #63] Vanity Go imports
Closed
#56 [GH-ISSUE #64] Does the race detector catch all data races?
Closed
#55 [GH-ISSUE #65] The Go low-level calling convention on x86-64
Closed
#52 [GH-ISSUE #60] Go compiler: SSA optimization rules description language
Closed
#53 [GH-ISSUE #61] Slices from the ground up
Closed
#54 [GH-ISSUE #62] Interview with Go’s Russ Cox and Sameer Ajmani
Closed
#49 [GH-ISSUE #57] Tags in Golang
Closed
#50 [GH-ISSUE #58] How Go interfaces can facilitate switching external services
Closed
#51 [GH-ISSUE #59] WebAssembly for the gophers
Closed
#46 [GH-ISSUE #54] Standard Package Layout
Closed
#47 [GH-ISSUE #55] Go 101
Closed
#48 [GH-ISSUE #56] Error Handling and Go
Closed
#44 [GH-ISSUE #52] How to organize the go struct, in order to save memory.
Closed
#45 [GH-ISSUE #53] Go’s append is not always thread safe
Closed
#43 [GH-ISSUE #51] Failure is your domain
Closed
#42 [GH-ISSUE #50] Learning Go’s Concurrency Through Illustrations
Closed
#40 [GH-ISSUE #49] Go test your tests in Go with go test
Closed
#41 [GH-ISSUE #48] Go advanced testing tips & tricks
Closed
#37 [GH-ISSUE #47] Update post on HTTP middleware
Closed
#38 [GH-ISSUE #46] Go code refactoring : the 23x performance hunt
Closed
#39 [GH-ISSUE #45] Learning Go's Concurrency Through Illustrations
Closed
#34 [GH-ISSUE #43] Type-Unsafe Pointers
Closed
#35 [GH-ISSUE #42] JSON APIs Are Just Web Applications
Closed
#36 [GH-ISSUE #44] Package Names
Closed
#32 [GH-ISSUE #40] Dependency Injection in Go
Closed
#33 [GH-ISSUE #41] The One with the Directory Structure and Manual Wiring
Closed
#31 [GH-ISSUE #39] Learning Go: Lexing and Parsing
Closed
#30 [GH-ISSUE #38] How I write Go HTTP services after seven years
Closed
#29 [GH-ISSUE #36] "Exceptional" Go
Closed
#28 [GH-ISSUE #37] Add supplemental list of curious Go uses
Closed
#27 [GH-ISSUE #35] Go 101
Closed
#26 [GH-ISSUE #33] Suggestion: How to Use go:generate
Closed
#25 [GH-ISSUE #34] Go: the Good, the Bad and the Ugly
Closed
#24 [GH-ISSUE #32] Golang HTTP server for pro
Closed
#23 [GH-ISSUE #31] The Tragedy of Finalizers
Closed
#22 [GH-ISSUE #30] Interface Values Ares Valueless
Closed
#19 [GH-ISSUE #29] Web Scraping with Go
Closed
#20 [GH-ISSUE #27] Included examples to guide how to make transaction on Mongodb using Golang.
Closed
#21 [GH-ISSUE #28] 添加汉语的博客帖子列表
Closed
#18 [GH-ISSUE #26] The Go Programming Language exercises
Closed
#16 [GH-ISSUE #24] How to Use Go Interfaces
Closed
#17 [GH-ISSUE #25] Why should you learn Go?
Closed
#14 [GH-ISSUE #23] Go Links
Closed
#15 [GH-ISSUE #20] Learn Go by writing tests
Closed
#13 [GH-ISSUE #19] Add a selection from Learn Go Programming
Closed
#11 [GH-ISSUE #14] calhoun.io
Closed
#12 [GH-ISSUE #18] Tensorflow + Go blog post?
Closed
#10 [GH-ISSUE #17] Consider adding list of philosophical, style focused posts
Closed
#9 [GH-ISSUE #11] nathany.com
Closed
#7 [GH-ISSUE #13] Validate Links
Closed
#8 [GH-ISSUE #12] Practical Go Benchmarks
Closed
#4 [GH-ISSUE #10] Vanity imports with Hugo
Closed
#5 [GH-ISSUE #9] Repo name is confusing
Closed
#6 [GH-ISSUE #6] A list to check
Closed
#2 [GH-ISSUE #4] Add separate list for online books
Closed
#3 [GH-ISSUE #3] Dave Cheney's post should replace Rob Pike's on functional options
Closed
#1 [GH-ISSUE #5] Learn Web Programming in Go by Examples
288 issues created by 1 user
Opened
#1 [GH-ISSUE #5] Learn Web Programming in Go by Examples
Opened
#2 [GH-ISSUE #4] Add separate list for online books
Opened
#3 [GH-ISSUE #3] Dave Cheney's post should replace Rob Pike's on functional options
Opened
#4 [GH-ISSUE #10] Vanity imports with Hugo
Opened
#5 [GH-ISSUE #9] Repo name is confusing
Opened
#6 [GH-ISSUE #6] A list to check
Opened
#7 [GH-ISSUE #13] Validate Links
Opened
#8 [GH-ISSUE #12] Practical Go Benchmarks
Opened
#9 [GH-ISSUE #11] nathany.com
Opened
#10 [GH-ISSUE #17] Consider adding list of philosophical, style focused posts
Opened
#11 [GH-ISSUE #14] calhoun.io
Opened
#12 [GH-ISSUE #18] Tensorflow + Go blog post?
Opened
#13 [GH-ISSUE #19] Add a selection from Learn Go Programming
Opened
#14 [GH-ISSUE #23] Go Links
Opened
#15 [GH-ISSUE #20] Learn Go by writing tests
Opened
#16 [GH-ISSUE #24] How to Use Go Interfaces
Opened
#17 [GH-ISSUE #25] Why should you learn Go?
Opened
#18 [GH-ISSUE #26] The Go Programming Language exercises
Opened
#19 [GH-ISSUE #29] Web Scraping with Go
Opened
#20 [GH-ISSUE #27] Included examples to guide how to make transaction on Mongodb using Golang.
Opened
#21 [GH-ISSUE #28] 添加汉语的博客帖子列表
Opened
#22 [GH-ISSUE #30] Interface Values Ares Valueless
Opened
#23 [GH-ISSUE #31] The Tragedy of Finalizers
Opened
#24 [GH-ISSUE #32] Golang HTTP server for pro
Opened
#25 [GH-ISSUE #34] Go: the Good, the Bad and the Ugly
Opened
#26 [GH-ISSUE #33] Suggestion: How to Use go:generate
Opened
#27 [GH-ISSUE #35] Go 101
Opened
#28 [GH-ISSUE #37] Add supplemental list of curious Go uses
Opened
#29 [GH-ISSUE #36] "Exceptional" Go
Opened
#30 [GH-ISSUE #38] How I write Go HTTP services after seven years
Opened
#31 [GH-ISSUE #39] Learning Go: Lexing and Parsing
Opened
#32 [GH-ISSUE #40] Dependency Injection in Go
Opened
#33 [GH-ISSUE #41] The One with the Directory Structure and Manual Wiring
Opened
#34 [GH-ISSUE #43] Type-Unsafe Pointers
Opened
#35 [GH-ISSUE #42] JSON APIs Are Just Web Applications
Opened
#36 [GH-ISSUE #44] Package Names
Opened
#37 [GH-ISSUE #47] Update post on HTTP middleware
Opened
#38 [GH-ISSUE #46] Go code refactoring : the 23x performance hunt
Opened
#39 [GH-ISSUE #45] Learning Go's Concurrency Through Illustrations
Opened
#40 [GH-ISSUE #49] Go test your tests in Go with go test
Opened
#41 [GH-ISSUE #48] Go advanced testing tips & tricks
Opened
#42 [GH-ISSUE #50] Learning Go’s Concurrency Through Illustrations
Opened
#43 [GH-ISSUE #51] Failure is your domain
Opened
#44 [GH-ISSUE #52] How to organize the go struct, in order to save memory.
Opened
#45 [GH-ISSUE #53] Go’s append is not always thread safe
Opened
#46 [GH-ISSUE #54] Standard Package Layout
Opened
#47 [GH-ISSUE #55] Go 101
Opened
#48 [GH-ISSUE #56] Error Handling and Go
Opened
#49 [GH-ISSUE #57] Tags in Golang
Opened
#50 [GH-ISSUE #58] How Go interfaces can facilitate switching external services
Opened
#51 [GH-ISSUE #59] WebAssembly for the gophers
Opened
#52 [GH-ISSUE #60] Go compiler: SSA optimization rules description language
Opened
#53 [GH-ISSUE #61] Slices from the ground up
Opened
#54 [GH-ISSUE #62] Interview with Go’s Russ Cox and Sameer Ajmani
Opened
#55 [GH-ISSUE #65] The Go low-level calling convention on x86-64
Opened
#56 [GH-ISSUE #64] Does the race detector catch all data races?
Opened
#57 [GH-ISSUE #63] Vanity Go imports
Opened
#58 [GH-ISSUE #68] The X-Files: Avoiding Concurrency Boilerplate with golang.org/x/sync
Opened
#59 [GH-ISSUE #67] Monkey Patching in Go
Opened
#60 [GH-ISSUE #66] Interesting ways of using Go channels
Opened
#61 [GH-ISSUE #70] Playing with Go module proxies
Opened
#62 [GH-ISSUE #69] Error handling in Upspin
Opened
#63 [GH-ISSUE #71] Introduction to Go modules
Opened
#64 [GH-ISSUE #74] Goroutines, Nonblocking I/O, And Memory Usage
Opened
#65 [GH-ISSUE #72] Accessing data in Go
Opened
#66 [GH-ISSUE #73] Everything you need to know about Packages in Go
Opened
#67 [GH-ISSUE #75] Go Hex Arch
Opened
#68 [GH-ISSUE #77] How a Go Program Compiles down to Machine Code
Opened
#69 [GH-ISSUE #76] golang Duff's Device
Opened
#70 [GH-ISSUE #80] [Go] Capturing the HTTP status code from http.ResponseWriter
Opened
#71 [GH-ISSUE #78] Scheduling In Go - Part II
Opened
#72 [GH-ISSUE #81] Golang escape analysis
Opened
#73 [GH-ISSUE #85] Using Structs to Facilitate Dependency Injection with Go
Opened
#74 [GH-ISSUE #86] Deploying Go Apps on Docker Scratch Images
Opened
#75 [GH-ISSUE #87] Go modules by example
Opened
#76 [GH-ISSUE #89] Understand Go channels properly
Opened
#77 [GH-ISSUE #88] Build a DNS server in Golang
Opened
#78 [GH-ISSUE #90] The Relationship Between Interfaces and Reflection
Opened
#79 [GH-ISSUE #91] A Survey of Iterator (or Generator) Patterns in golang
Opened
#80 [GH-ISSUE #94] Avoiding high GC overhead with large heaps
Opened
#81 [GH-ISSUE #93] Stop writing broken Go libraries
Opened
#82 [GH-ISSUE #97] Configure cron job on Circle CI
Opened
#83 [GH-ISSUE #98] Go JSON Cookbook
Opened
#84 [GH-ISSUE #95] Switch to Circle CI
Opened
#85 [GH-ISSUE #101] Using Go Modules
Opened
#86 [GH-ISSUE #100] Practical Go: Real world advice for writing maintainable Go programs
Opened
#87 [GH-ISSUE #99] A visual guide to Go Memory Allocator from scratch
Opened
#88 [GH-ISSUE #103] Idiomatic Go Resources
Opened
#89 [GH-ISSUE #105] Error Handling in Go
Opened
#90 [GH-ISSUE #104] An Overview of Go's Tooling
Opened
#91 [GH-ISSUE #107] Object Calisthenics in Golang
Opened
#92 [GH-ISSUE #108] Notes on TCP keepalive in Go
Opened
#93 [GH-ISSUE #106] Garbage Collection In Go : Part I - Semantics
Opened
#94 [GH-ISSUE #109] golang/go wiki page for Modules
Opened
#95 [GH-ISSUE #111] Clean Go Code
Opened
#96 [GH-ISSUE #110] Simple techniques to optimise Go programs
Opened
#97 [GH-ISSUE #113] Go Slices are Fat Pointers
Opened
#98 [GH-ISSUE #114] 7 Subtle Pitfalls in the Go Language
Opened
#99 [GH-ISSUE #112] A Comprehensive Guide of Arrays and Slices in Golang
Opened
#100 [GH-ISSUE #116] The Go runtime scheduler's clever way of dealing with system calls
Opened
#101 [GH-ISSUE #117] Building a BitTorrent client from the ground up in Go
Opened
#102 [GH-ISSUE #118] Ardan Labs | Modules (Parts 1, 2 & 3)
Opened
#103 [GH-ISSUE #120] Make resilient Go net/http servers using timeouts, deadlines and context cancellation
Opened
#104 [GH-ISSUE #121] The Zen of Go
Opened
#105 [GH-ISSUE #119] Graceful shutdown of a TCP server in Go
Opened
#106 [GH-ISSUE #123] Statically compiling Go programs
Opened
#107 [GH-ISSUE #124] Understanding bytes in Go by building a TCP protocol
Opened
#108 [GH-ISSUE #122] Illustrated Tales of Go Runtime Scheduler.
Opened
#109 [GH-ISSUE #126] Rob Pike interview: “Go has indeed become the language of cloud infrastructure“
Opened
#110 [GH-ISSUE #127] Debugging Go Applications using Delve
Opened
#111 [GH-ISSUE #125] Go for Cloud
Opened
#112 [GH-ISSUE #130] An intro to Go for non-Go developers
Opened
#113 [GH-ISSUE #129] Documenting Go Github Repo
Opened
#114 [GH-ISSUE #128] Go: Asynchronous Preemption
Opened
#115 [GH-ISSUE #133] Building a high performance JSON parser
Opened
#116 [GH-ISSUE #131] How to handle signals with Go to graceful shutdown HTTP server
Opened
#117 [GH-ISSUE #132] Why You Should Be Using errgroup.WithContext() in Your Golang Server Handlers
Opened
#118 [GH-ISSUE #136] Debugging Go in prod using eBPF
Opened
#119 [GH-ISSUE #134] Go: Introduction to the Escape Analysis
Opened
#120 [GH-ISSUE #135] Why Go modules are faster than GOPATH
Opened
#121 [GH-ISSUE #137] How to customize Go's HTTP client
Opened
#122 [GH-ISSUE #138] The Pros of Conds
Opened
#123 [GH-ISSUE #140] Go Defer Simplified with Practical Visuals
Opened
#124 [GH-ISSUE #141] Crossing Streams: a Love Letter to io.Reader
Opened
#125 [GH-ISSUE #143] Packages as layers, not groups
Opened
#126 [GH-ISSUE #142] Bitmasks for nicer APIs
Opened
#127 [GH-ISSUE #144] Use internal packages to reduce your public API surface
Opened
#128 [GH-ISSUE #145] Working with Embed in Go 1.16 Version
Opened
#129 [GH-ISSUE #146] Why you shouldn't use func main in Go.
Opened
#130 [GH-ISSUE #147] Life of an HTTP request in a Go server
Opened
#131 [GH-ISSUE #149] Programming with Errors
Opened
#132 [GH-ISSUE #148] Errors are values
Opened
#133 [GH-ISSUE #150] Let's talk about logging
Opened
#134 [GH-ISSUE #152] Darker Corners of Go
Opened
#135 [GH-ISSUE #151] Code Review Checklist: Go concurrency
Opened
#136 [GH-ISSUE #153] Gotchas in the Go Network Packages Defaults
Opened
#137 [GH-ISSUE #154] Functional options on steroids
Opened
#138 [GH-ISSUE #155] High Performance Go Workshop
Opened
#139 [GH-ISSUE #158] Comprehensive Guide to Dates and Times in Go
Opened
#140 [GH-ISSUE #156] Simple Go project layout with modules
Opened
#141 [GH-ISSUE #157] Note on worker pools in Go
Opened
#142 [GH-ISSUE #161] Add link to Chinese version
Opened
#143 [GH-ISSUE #162] How does Go calculate len()...?
Opened
#144 [GH-ISSUE #160] Reducing Memory Allocations in Golang
Opened
#145 [GH-ISSUE #164] Finding and fixing memory leaks in Go
Opened
#146 [GH-ISSUE #165] Handling Errors from Deferred Functions in Go
Opened
#147 [GH-ISSUE #163] goimports vs gofmt
Opened
#148 [GH-ISSUE #167] In Go, pointers (mostly) don't go with slices in practice
Opened
#149 [GH-ISSUE #169] Plugins in Go
Opened
#150 [GH-ISSUE #166] The underutilized usefulness of sync.Once
Opened
#151 [GH-ISSUE #172] Wrapping Errors the right way
Opened
#152 [GH-ISSUE #171] Don't fear the pointer
Opened
#153 [GH-ISSUE #170] Automatic cipher suite ordering in crypto/tls
Opened
#154 [GH-ISSUE #173] Getting to Go: The Journey of Go's Garbage Collector
Opened
#155 [GH-ISSUE #178] 404 url
Opened
#156 [GH-ISSUE #175] When to Use Generics in Go?
Opened
#157 [GH-ISSUE #180] Property-Based Testing In Go
Opened
#158 [GH-ISSUE #179] A comprehensive guide to go generate
Opened
#159 [GH-ISSUE #181] 404 url
Opened
#160 [GH-ISSUE #183] Generic facilitators in Go
Opened
#161 [GH-ISSUE #185] Tutorial: Getting Started with Fuzzing
Opened
#162 [GH-ISSUE #184] need add https://golang.org/ref/mem to Low Level Concerns
Opened
#163 [GH-ISSUE #186] Tutorial: Getting Started with Generics
Opened
#164 [GH-ISSUE #188] go generics for the busy gopher
Opened
#165 [GH-ISSUE #187] Different ways to initialize Go structs
Opened
#166 [GH-ISSUE #191] Interface method calls with the Go register ABI
Opened
#167 [GH-ISSUE #190] Generics can make your Go code slower
Opened
#168 [GH-ISSUE #189] What's in a name (slides)
Opened
#169 [GH-ISSUE #196] The Go Programming Language and Environment
Opened
#170 [GH-ISSUE #197] A Gentle Introduction to Generics in Go
Opened
#171 [GH-ISSUE #195] Faster sorting with Go generics
Opened
#172 [GH-ISSUE #198] Go concurrency guide
Opened
#173 [GH-ISSUE #199] Data Race Patterns in Go
Opened
#174 [GH-ISSUE #200] Dead URL (404)
Opened
#175 [GH-ISSUE #202] A Guide to the Go Garbage Collector
Opened
#176 [GH-ISSUE #203] Easy memory-saving tricks in Go
Opened
#177 [GH-ISSUE #201] Passing Loggers in Go: Golang Logging Best Practices
Opened
#178 [GH-ISSUE #206] Serving static files and web apps in Go
Opened
#179 [GH-ISSUE #205] Go mod's lesser known features
Opened
#180 [GH-ISSUE #207] Functional table-driven tests in Go
Opened
#181 [GH-ISSUE #210] The one-and-only, must-have, eternal Go project layout
Opened
#182 [GH-ISSUE #208] Some Useful Patterns for Go's os/exec
Opened
#183 [GH-ISSUE #209] errors.Join ❤️ defer
Opened
#184 [GH-ISSUE #213] Synchronization Patterns in Go
Opened
#185 [GH-ISSUE #212] a[low:high:max] in Golang — A Rare Slice Trick
Opened
#186 [GH-ISSUE #211] A Comprehensive Guide to Structured Logging in Go
Opened
#187 [GH-ISSUE #214] Advanced Testing in Go
Opened
#188 [GH-ISSUE #216] How to start a Go project in 2023
Opened
#189 [GH-ISSUE #215] Some notes on the cost of Go finalizers (in Go 1.20)
Opened
#190 [GH-ISSUE #221] Common Pitfalls in Go Benchmarking
Opened
#191 [GH-ISSUE #219] start fast: booting go programs quickly with inittrace and nonblocking[T]
Opened
#192 [GH-ISSUE #217] Caching Golang tests in CI
Opened
#193 [GH-ISSUE #222] Forward Compatibility and Toolchain Management in Go 1.21
Opened
#194 [GH-ISSUE #224] Golang Buffer Pool Gotcha
Opened
#195 [GH-ISSUE #225] Good Code vs Bad Code in Golang
Opened
#196 [GH-ISSUE #226] A comprehensive guide to file operations in Go
Opened
#197 [GH-ISSUE #228] CGO Performance In Go 1.21
Opened
#198 [GH-ISSUE #227] WASI support in Go
Opened
#199 [GH-ISSUE #229] A Deep Look Into Golang Profile-Guided Optimization (PGO)
Opened
#200 [GH-ISSUE #231] Organizing a Go module
Opened
#201 [GH-ISSUE #230] Profile-guided optimization in Go 1.21
Opened
#202 [GH-ISSUE #233] Golang Structs Memory Allocation
Opened
#203 [GH-ISSUE #232] Go, Containers, and the Linux Scheduler
Opened
#204 [GH-ISSUE #234] Go Fact: Zero-sized Field at the Rear of a Struct Has Non-zero Size
Opened
#205 [GH-ISSUE #235] Optimizing Go string operations with practical examples
Opened
#206 [GH-ISSUE #237] The Smallest Go Binary (5KB)
Opened
#207 [GH-ISSUE #236] Analyzing Go Heap Escapes
Opened
#208 [GH-ISSUE #239] Go Test Doubles by Example
Opened
#209 [GH-ISSUE #238] What We Got Right, What We Got Wrong
Opened
#210 [GH-ISSUE #240] How I write HTTP services in Go after 13 years
Opened
#211 [GH-ISSUE #242] When Kubernetes and Go don't work well together
Opened
#212 [GH-ISSUE #243] Fundamentals of I/O in Go: Part 2
Opened
#213 [GH-ISSUE #241] Calling C from Go
Opened
#214 [GH-ISSUE #245] Go Error Propagation and API Contracts
Opened
#215 [GH-ISSUE #246] Sentinel errors and errors.Is() slow your code down by 500%
Opened
#216 [GH-ISSUE #247] Contexts and structs
Opened
#217 [GH-ISSUE #250] Profiling in Go: A Practical Guide
Opened
#218 [GH-ISSUE #249] Preemption in Go: an introduction
Opened
#219 [GH-ISSUE #251] Range Over Function Types
Opened
#220 [GH-ISSUE #253] Go range iterators demystified
Opened
#221 [GH-ISSUE #254] Remove all paywalled Medium posts
Opened
#222 [GH-ISSUE #252] Interfaces in Go
Opened
#223 [GH-ISSUE #257] CPU throttling for containerized Go applications explained
Opened
#224 [GH-ISSUE #258] Ranging over functions in Go 1.23
Opened
#225 [GH-ISSUE #256] A Guide to the Go Garbage Collector
Opened
#226 [GH-ISSUE #263] Leveraging benchstat Projections in Go Benchmark Analysis!
Opened
#227 [GH-ISSUE #264] Modifying Private Variables of a Struct in Go Using unsafe and reflect
Opened
#228 [GH-ISSUE #259] Go Plan9 Memo, Speeding Up Calculations 450%
Opened
#229 [GH-ISSUE #266] Benchmarking: What You Can't Miss in Go 1.24
Opened
#230 [GH-ISSUE #267] Make Go application container resource limits aware
Opened
#231 [GH-ISSUE #269] Common Go Patterns for Performance
Opened
#232 [GH-ISSUE #273] Graceful Shutdown in Go: Practical Patterns
Opened
#233 [GH-ISSUE #271] Go Optimization Guide
Opened
#234 [GH-ISSUE #270] Update "Mistakes" entry
Opened
#235 [GH-ISSUE #279] Memory Allocation in Go
Opened
#236 [GH-ISSUE #280] Starving, sleeping, and yielding: understanding Go's scheduler
Opened
#237 [GH-ISSUE #274] The Perils of Pointers in the Land of the Zero-Sized Type
Opened
#238 [GH-ISSUE #282] Practical Networking Patterns in Go
Opened
#239 [GH-ISSUE #283] Flight Recorder in Go 1.25
Opened
#240 [GH-ISSUE #281] Testing Time (and other asynchronicities)
Opened
#241 [GH-ISSUE #288] A million ways to die from a data race in Go
Opened
#242 [GH-ISSUE #289] Issue
Opened
#243 [PR #1] [CLOSED] Add "Essential Go"
Opened
#244 [PR #7] [CLOSED] Add links to 3 blog posts I wrote that are a good fit for to this list
Opened
#245 [PR #2] [MERGED] typo: comprensive -> comprehensive
Opened
#246 [PR #8] [MERGED] Add post on struct embedding vs OO inheritance
Opened
#247 [PR #16] [MERGED] Definition
Opened
#248 [PR #21] [MERGED] remove dead link
Opened
#249 [PR #22] [MERGED] Update the link to the article
Opened
#250 [PR #79] [CLOSED] Adding Arden Labs Posts
Opened
#251 [PR #82] [CLOSED] Added resources for Dependency Management
Opened
#252 [PR #83] [CLOSED] Added readme
Opened
#253 [PR #84] [MERGED] Added Resources for Go Modules
Opened
#254 [PR #92] [CLOSED] Merge pull request #1 from enocom/master
Opened
#255 [PR #96] [MERGED] Configure CircleCI build to check links
Opened
#256 [PR #102] [MERGED] Update README.md
Opened
#257 [PR #115] [MERGED] Fix a typo: Upsin -> Upspin
Opened
#258 [PR #139] [MERGED] Use GitHub Actions for CI
Opened
#259 [PR #168] [MERGED] Add step to check for exactly 200 links
Opened
#260 [PR #159] [CLOSED] Learning Go book added
Opened
#261 [PR #176] [MERGED] Update README.md
Opened
#262 [PR #174] [MERGED] fix invalid link of Common Gotchas in Go
Opened
#263 [PR #193] [MERGED] Fix CI check to ensure 200 links
Opened
#264 [PR #182] [MERGED] ci: fix broken config.json
Opened
#265 [PR #192] [MERGED] Use HTTPS where possible
Opened
#266 [PR #194] [MERGED] Update README
Opened
#267 [PR #177] [MERGED] Update README.md
Opened
#268 [PR #223] [MERGED] Update README.md
Opened
#269 [PR #204] [CLOSED] Go is Boring...And That’s Fantastic!
Opened
#270 [PR #218] [MERGED] Add Accept HTTP header to link check
Opened
#271 [PR #220] [MERGED] Add Google Go Style Guide
Opened
#272 [PR #244] [MERGED] Update ci.yml with latest actions/checkout
Opened
#273 [PR #248] [MERGED] Replace broken links and update HTTP services post
Opened
#274 [PR #260] [MERGED] Improve CI build with better link checker
Opened
#275 [PR #262] [MERGED] Update README.md
Opened
#276 [PR #255] [MERGED] Remove paywalled Medium posts
Opened
#277 [PR #261] [MERGED] Skip domains that don't like robots
Opened
#278 [PR #275] [MERGED] Update README.md
Opened
#279 [PR #272] [MERGED] Replace 50 Shades of Go with 100 Go Mistakes
Opened
#280 [PR #268] [MERGED] Update README.md
Opened
#281 [PR #265] [MERGED] Update README.md
Opened
#282 [PR #276] [MERGED] Correct commandercenter URLs
Opened
#283 [PR #278] [MERGED] Fix argument for Link Checker in CI workflow
Opened
#284 [PR #284] [MERGED] Update build for breaking change
Opened
#285 [PR #285] [MERGED] Lower cache time to 1d
Opened
#286 [PR #277] [MERGED] Cache website results for 1 week
Opened
#287 [PR #286] [MERGED] Remove duplicate arg for link checker
Opened
#288 [PR #287] [CLOSED] Use HEAD for link checker