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
Theory
Search
John Cinnamond
October 10, 2016
Technology
0
1.9k
Theory
A short talk delivered at DotGo 2016
John Cinnamond
October 10, 2016
Tweet
Share
More Decks by John Cinnamond
See All by John Cinnamond
Go Lift
jcinnamond
0
2.1k
The Point of Objects
jcinnamond
0
120
The Art of Code Review
jcinnamond
4
670
Complexity
jcinnamond
1
230
Other Decks in Technology
See All in Technology
ガバメントクラウド(AWS)へのデータ移行戦略の立て方【虎の巻】 / 20251011 Mitsutosi Matsuo
shift_evolve
PRO
2
180
後進育成のしくじり〜任せるスキルとリーダーシップの両立〜
matsu0228
7
3.2k
【Oracle Cloud ウェビナー】クラウド導入に「専用クラウド」という選択肢、Oracle AlloyとOCI Dedicated Region とは
oracle4engineer
PRO
3
120
自動テストのコストと向き合ってみた
qa
0
210
PLaMo2シリーズのvLLM実装 / PFN LLM セミナー
pfn
PRO
2
1.1k
能登半島地震で見えた災害対応の課題と組織変革の重要性
ditccsugii
0
250
AIAgentの限界を超え、 現場を動かすWorkflowAgentの設計と実践
miyatakoji
1
160
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
3
5.5k
SREとソフトウェア開発者の合同チームはどのようにS3のコストを削減したか?
muziyoshiz
1
210
Optuna DashboardにおけるPLaMo2連携機能の紹介 / PFN LLM セミナー
pfn
PRO
2
940
これがLambdaレス時代のChatOpsだ!実例で学ぶAmazon Q Developerカスタムアクション活用法
iwamot
PRO
5
760
小学4年生夏休みの自由研究「ぼくと Copilot エージェント」
taichinakamura
0
590
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Context Engineering - Making Every Token Count
addyosmani
5
220
Rails Girls Zürich Keynote
gr2m
95
14k
Writing Fast Ruby
sferik
629
62k
Being A Developer After 40
akosma
91
590k
4 Signs Your Business is Dying
shpigford
185
22k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Agile that works and the tools we love
rasmusluckow
331
21k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Cult of Friendly URLs
andyhume
79
6.6k
How to train your dragon (web standard)
notwaldorf
96
6.3k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
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