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
Polyglot Programming DC Intro
Search
Jess Szmajda
June 04, 2014
Technology
0
230
Polyglot Programming DC Intro
Why be a polyglot? This is why! :)
Jess Szmajda
June 04, 2014
Tweet
Share
More Decks by Jess Szmajda
See All by Jess Szmajda
Big Things Break
jszmajda
0
64
Operations Innovation from Startup to Growth
jszmajda
0
120
Learning from FP: Simulated Annealing in Haskell and Ruby
jszmajda
2
800
Visualizing Agile
jszmajda
1
310
Rack-AMQP: Ditch HTTP inside SOA!
jszmajda
4
1.3k
Other Decks in Technology
See All in Technology
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
11
78k
多野優介
tanoyusuke
1
460
AI Agentと MCP Serverで実現する iOSアプリの 自動テスト作成の効率化
spiderplus_cb
0
510
Goにおける 生成AIによるコード生成の ベンチマーク評価入門
daisuketakeda
2
110
AIAgentの限界を超え、 現場を動かすWorkflowAgentの設計と実践
miyatakoji
0
140
空間を設計する力を考える / 20251004 Naoki Takahashi
shift_evolve
PRO
3
400
AI時代だからこそ考える、僕らが本当につくりたいスクラムチーム / A Scrum Team we really want to create in this AI era
takaking22
6
3.6k
AWSにおけるTrend Vision Oneの効果について
shimak
0
130
スタートアップにおけるこれからの「データ整備」
shomaekawa
1
220
綺麗なデータマートをつくろう_データ整備を前向きに考える会 / Let's create clean data mart
brainpadpr
2
240
ZOZOのAI活用実践〜社内基盤からサービス応用まで〜
zozotech
PRO
0
190
BirdCLEF+2025 Noir 5位解法紹介
myso
0
200
Featured
See All Featured
Done Done
chrislema
185
16k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Documentation Writing (for coders)
carmenintech
75
5k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
For a Future-Friendly Web
brad_frost
180
9.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Mobile First: as difficult as doing things right
swwweet
224
10k
Thoughts on Productivity
jonyablonski
70
4.9k
Transcript
DC Polyglot Programming Meetup Welcome!
Polyglot Programming Manifesto
-Neal Ford “Use the tool that’s most keenly shaped for
the problem you’re trying to solve”
Language Shapes Thought
None
Factorial n! = n * (n - 1) * (n
- 2) … 0! = 1
Factorial n! = n * (n - 1) * (n
- 2) … 0! = 1 1 public int factorial(int n) {! 2 int result = 1;! 3 for (int i = 1; i <= n; i++) {! 4 result = result * i;! 5 }! 6 return result;! 7 }
Factorial n! = n * (n - 1) * (n
- 2) … 0! = 1 1 def fact(n)! 2 return 1 if n == 0! 3 1.upto(n).inject(:*)! 4 end
Factorial n! = n * (n - 1) * (n
- 2) … 0! = 1 1 fact :: Int -> Int! 2 fact 0 = 1! 3 fact n = n * fact (n-1)
Game of Life
Game of Life
Game of Life 1 def survives(currently_alive, n_neigh)! 2 return true
if n_neigh == 3! 3 return true if currently_alive && n_neigh == 2! 4 false! 5 end
Game of Life 1 data Aliveness = Alive | Dead!
2 ! 3 survives :: Aliveness -> Int -> Aliveness! 4 survives _ 3 = Alive! 5 survives Alive 2 = Alive! 6 survives _ _ = Dead
(a vast understatement of) The World of Programming
None
A Horrible Classification System Procedural Object-Oriented Functional Logical Special Purpose
Esoteric
A Different, yet no less Horrible Classification System Stateful Concurrent
Domain-Specific Dynamically vs Statically Typed Proprietary vs. Open Source
–Me “Maybe I should use some other guy’s system”
http://www.info.ucl.ac.be/~pvr/paradigmsDIAGRAMeng108.jpg
None
Goals Learn from each other Have fun Build better software
through sharing
Come Talk! Explain a language or framework Share what you
learned by trying something new Dig deep into something interesting Compare some things and share Share your favorite tools Anything else interesting to programmers!
I’m Josh Szmajda ! @jszmajda ! CTO at , home
of ! Passionate Polyglot! Thanks!