Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Theory
Search
John Cinnamond
October 10, 2016
Technology
1.9k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Theory
A short talk delivered at DotGo 2016
John Cinnamond
October 10, 2016
More Decks by John Cinnamond
See All by John Cinnamond
Go Lift
jcinnamond
0
2.1k
The Point of Objects
jcinnamond
0
150
The Art of Code Review
jcinnamond
3
730
Complexity
jcinnamond
1
260
Other Decks in Technology
See All in Technology
OpenClawでAzure DevOpsのWiki更新を自動化する - クラウドAIだけでは届かない場所へ
yutakaosada
0
100
GoのInterface内部構造から学ぶ!最高パフォーマンスを出すコード設計
yappli_developers
1
300
2026-09-18 gotanda.sre Terraformで複数環境作ったり、複数Stateに分割したりそれとTerragrunt / Terraform multi envs and multi states
masasuzu
4
760
SREへの勘違いに気づいた後の話
tomodakengo
0
180
AI coding 整合正規方法
philipz
0
550
全社共通データ基盤をつくる。ソニーのDatabricks活用とデータガバナンス設計の裏側
sony
0
110
AIは推し活である。
kurazuuuuuu
2
990
GitHub Agentic Workflows を触ってみる
htkym
2
760
AIエージェントの権限管理 3: Agentic RAG の Fine grained access control 編
ren8k
1
290
Hermes Agentで、AIが調べて記事を書くブログを作った話
blueb
0
110
Azure Serverless 2026:Production-ready な AI エージェント基盤 / Azure Serverless 2026: Production-Ready AI Agent Platform
miyake
2
630
プラットフォームを「作る」、 チームに「入り込む」
sansantech
PRO
0
240
Featured
See All Featured
HDC tutorial
michielstock
2
920
How Software Deployment tools have changed in the past 20 years
geshan
2
34k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
58k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
530
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
The Language of Interfaces
destraynor
162
27k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
480
Everyday Curiosity
cassininazir
0
330
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Transcript
Theory @jcinnamond
2005 2010 2015 Scala Go Clojure Rust Swift TypeScript Elm
Hack Idris Dart Julia Elixir 2009 2003 2005 2007 2012 2010 2014 2011 Red 2000 Kotlin 2002 Io 2004 Groovy Scratch LOLCODE Coffeescript F#
None
None
Go sucks because it has… no generics no Algebraic Data
Types null objects a lack of metaprogramming an occasionally verbose syntax
These criticisms are largely valid
Complaining about Go is a wasted opportunity
Go is popular 1
Popular != good
For example: javascript
People build great things in javascript
…in spite of the language
People used javascript to target the browser
There is no reason to use Go
People us Go because they like it
srsly?
A lack of generics Go has many flaws… No meta-
programming Verbose error handling …which lead to developer pain
what's going on?
Go is reliable 2
srsly?
A lack of ADTs Go has many flaws… null objects
Mutability …which lead to unreliable code
what's going on?
Go bad in theory, but successful in practice
Go is an opportunity to learn
Complaining about Go is a wasted opportunity
But the Go community can also learn from the criticisms
This is difficult
They all speak a funny language
And they criticise our habits
But we can learn from them, and improve Go
…without losing our identity
Diversity is hard But it's important (maybe this isn't really
a technical talk)
Maybe we can listen to others And learn from what
they have to say (maybe this isn't really a technical talk)
We can have conversations with people who aren't like us
And all be better for it
Thank you Theory @jcinnamond dotGo 2016