Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Learning Unsung Gotchas of Go - Rashmi Nagpal
Search
GopherCon Russia
April 23, 2021
Programming
290
1
Share
Learning Unsung Gotchas of Go - Rashmi Nagpal
GopherCon Russia
April 23, 2021
More Decks by GopherCon Russia
See All by GopherCon Russia
Go Profiling from Bottom Up - Felix Geisendörfer
gopherconrussia
0
240
Прозрачный gRPC-proxy один-ко-многим - Андрей Смирнов
gopherconrussia
0
160
Из Python в Go и обратно - Андрей Минкин
gopherconrussia
0
170
Оптимизация работы с PostgreSQL в Go: от 50 до 5000 RPS - Иван Осадчий
gopherconrussia
0
200
Пакет embed: распаковка знаний - Илья Данилкин
gopherconrussia
0
260
За пару мгновений до main() - Олег Ковалев
gopherconrussia
0
150
Тестирование в Go c Ginkgo и Gomega - Александр Егурнов
gopherconrussia
0
140
Building an Autoscaling HTTP Proxy for Kubernetes - Aaron Schlesinger
gopherconrussia
0
140
Designing Pluggable Idiomatic Go Applications – Mark Bates
gopherconrussia
0
72
Other Decks in Programming
See All in Programming
forteeの改修から振り返るPHPerKaigi 2026
muno92
PRO
3
270
ローカルで稼働するAI エージェントを超えて / beyond-local-ai-agents
gawa
3
270
AWS re:Invent 2025の少し振り返り + DevOps AgentとBacklogを連携させてみた
satoshi256kbyte
3
160
KagglerがMixSeekを触ってみた
morim
0
370
瑠璃の宝石に学ぶ技術の声の聴き方 / 【劇場版】アニメから得た学びを発表会2026 #エンジニアニメ
mazrean
0
240
ハーネスエンジニアリングにどう向き合うか 〜ルールファイルを超えて開発プロセスを設計する〜 / How to approach harness engineering
rkaga
9
3.5k
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
5
2.5k
PCOVから学ぶコードカバレッジ #phpcon_odawara
o0h
PRO
0
260
CDK Deployのための ”反響定位”
watany
4
710
3分でわかるatama plusのQA/about atama plus QA
atamaplus
0
150
Feature Toggle は捨てやすく使おう
gennei
0
570
「話せることがない」を乗り越える 〜日常業務から登壇テーマをつくる思考法〜
shoheimitani
4
750
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Skip the Path - Find Your Career Trail
mkilby
1
100
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.2k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
680
Being A Developer After 40
akosma
91
590k
We Are The Robots
honzajavorek
0
210
Context Engineering - Making Every Token Count
addyosmani
9
820
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.3k
Designing for Timeless Needs
cassininazir
0
190
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
210
Transcript
Learning Unsung Gotchas in Go Gopher Artwork by Ashley McNamara
Rashmi Nagpal Software Engineering Intern, LoopUp GopherCon Russia
Range iterator returns “two values”
None
Defer doesn't work for code blocks, only for the whole
function
None
Same Address for Different Zero-sized Variables
None
Iterating through map using “for range”
None
WaitGroup allows the goroutines to cleanly exit before exiting the
main program
None
Read and Write Operation Reordering
None
Unmarshalling JSON numbers into interface values
None
None
Recovering from Panic
None
None
Map is a reference
None
None
Data race condition
None
None
For loop iterators can be reused in go routine
None
None
Defer calls are executed in LIFO manner
None
None
Not to use More() to check if there are remaining
JSON objects in a stream
None
None
Non-ASCII punctuation characters aren't supported in struct tags
None
None
Fork-join model should be handled carefully
None
None
Deadlock!
None
None
Bibliography Resources 1. Documentation - The Go Programming Language 2.
A Go Gotcha: When Closures and Goroutines Collide 3. Darker Corners of Go – Rytis Biel 4. kstenerud/go-gotchas: Common gotchas with golang and how to work around them Visuals 1. ashleymcnamara/gophers: Gopher Artwork by Ashley McNamara
Спасибо
QnA