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
SkillがSkillを生む:QA観点出しを自動化した
sontixyou
6
3.3k
The Monolith Strikes Back: Why AI Agents ❤️ Rails Monoliths
serradura
0
310
PHP で mp3 プレイヤーを実装しよう
m3m0r7
PRO
0
250
Getting more out of Maven
mlvandijk
0
110
CDK Deployのための ”反響定位”
watany
4
710
ハーネスエンジニアリングにどう向き合うか 〜ルールファイルを超えて開発プロセスを設計する〜 / How to approach harness engineering
rkaga
11
4.2k
おれのAgentic Coding 2026/03
tsukasagr
1
140
事業会社でのセキュリティ長期インターンについて
masachikaura
0
250
Running Swift without an OS
kishikawakatsumi
0
780
ファインチューニングせずメインコンペを解く方法
pokutuna
0
300
飯MCP
yusukebe
0
500
AIエージェントで業務改善してみた
taku271
0
510
Featured
See All Featured
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
170
Paper Plane
katiecoart
PRO
1
49k
Un-Boring Meetings
codingconduct
0
260
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
The Invisible Side of Design
smashingmag
302
51k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
420
Visualization
eitanlees
150
17k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
490
KATA
mclloyd
PRO
35
15k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.9k
Agile that works and the tools we love
rasmusluckow
331
21k
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