Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
240
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
65
Operations Innovation from Startup to Growth
jszmajda
0
120
Learning from FP: Simulated Annealing in Haskell and Ruby
jszmajda
2
810
Visualizing Agile
jszmajda
1
310
Rack-AMQP: Ditch HTTP inside SOA!
jszmajda
4
1.3k
Other Decks in Technology
See All in Technology
年間40件以上の登壇を続けて見えた「本当の発信力」/ 20251213 Masaki Okuda
shift_evolve
PRO
1
130
5分で知るMicrosoft Ignite
taiponrock
PRO
0
350
Edge AI Performance on Zephyr Pico vs. Pico 2
iotengineer22
0
140
Database イノベーショントークを振り返る/reinvent-2025-database-innovation-talk-recap
emiki
0
130
業務のトイルをバスターせよ 〜AI時代の生存戦略〜
staka121
PRO
2
120
Challenging Hardware Contests with Zephyr and Lessons Learned
iotengineer22
0
190
Microsoft Agent 365 についてゆっくりじっくり理解する!
skmkzyk
0
280
AWSを使う上で最低限知っておきたいセキュリティ研修を社内で実施した話 ~みんなでやるセキュリティ~
maimyyym
2
400
Ruby で作る大規模イベントネットワーク構築・運用支援システム TTDB
taketo1113
1
280
Lessons from Migrating to OpenSearch: Shard Design, Log Ingestion, and UI Decisions
sansantech
PRO
1
120
20251209_WAKECareer_生成AIを活用した設計・開発プロセス
syobochim
7
1.5k
AWS Security Agentの紹介/introducing-aws-security-agent
tomoki10
0
210
Featured
See All Featured
Context Engineering - Making Every Token Count
addyosmani
9
510
YesSQL, Process and Tooling at Scale
rocio
174
15k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Visualization
eitanlees
150
16k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Being A Developer After 40
akosma
91
590k
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!