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
Migrating to Clojure. So much fn.
Search
Jan Stępień
February 27, 2014
Programming
450
1
Share
Migrating to Clojure. So much fn.
Slides from a talk I delivered on 27.02.2014 at Lambda Days in Kraków, Poland.
Jan Stępień
February 27, 2014
More Decks by Jan Stępień
See All by Jan Stępień
graalvm-jug-bb
jan
1
240
That Looks Oddly Familiar
jan
0
470
Native Clojure
jan
0
270
Native Clojure with GraalVM
jan
0
800
Compiling a lisp into a lisp using a lisp
jan
0
180
Mutation testing in continuous delivery pipelines
jan
0
210
Self-contained systems: an introduction
jan
0
250
Let's just test that real quick
jan
1
450
Combating spam, or how I befriended the Killer Rabbit of Caerbannog
jan
0
320
Other Decks in Programming
See All in Programming
Programming with a DJ Controller — not vibe coding
m_seki
3
700
書籍「ユーザーストーリーマッピング」が私のバイブル
asumikam
4
460
Cache-moi si tu peux : patterns et pièges du cache en production - Devoxx France 2026 - Conférence
slecache
0
320
🦞OpenClaw works with AWS
licux
1
310
GitHubCopilotCLIをはじめよう.pdf
htkym
0
300
「話せることがない」を乗り越える 〜日常業務から登壇テーマをつくる思考法〜
shoheimitani
4
940
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
16
5.6k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
550
エラー処理の温故知新 / history of error handling technic
ryotanakaya
7
1.8k
決定論 vs 確率論:Gemini 3 FlashとTF-IDFを組み合わせた「法規判定エンジン」の構築
shukob
0
140
書き換えて学ぶTemporal #fukts
pirosikick
1
310
いつか誰かが、と思っていた フロントエンド刷新5年間の実践知
kiichisugihara
1
230
Featured
See All Featured
For a Future-Friendly Web
brad_frost
183
10k
Designing Experiences People Love
moore
143
24k
Become a Pro
speakerdeck
PRO
31
5.9k
So, you think you're a good person
axbom
PRO
2
2k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
730
The browser strikes back
jonoalderson
0
1k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Scaling GitHub
holman
464
140k
Agile that works and the tools we love
rasmusluckow
331
21k
Visualization
eitanlees
150
17k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
340
The Cost Of JavaScript in 2023
addyosmani
55
9.9k
Transcript
Migrating to Clojure So much fn @janstepien
I work at
I work at
None
© Seph Swain 2008 flickr.com/photos/seph_swain/2735367665
(something new)
© Seph Swain 2008 flickr.com/photos/seph_swain/2741483308
None
feature freeze! no
↓ ╭────────────╮ │ http proxy │ ╰────────────╯ ↓ ↓ ╭───────────────╮
╭─────────────╮ │ ruby on rails │ ← │ widgets! │ ╰───────────────╯ ╰─────────────╯ ↓ ╭──────╮ │ db │ ╰──────╯
↓ ╭────────────╮ │ http proxy │ ╰────────────╯ ↓ ↓ ╭───────────────╮
╭─────────────╮ │ ruby on rails │ │ widgets! │ ╰───────────────╯ ╰─────────────╯ ↓ ↓ ╭──────╮ ╭─────────────╮ │ db │ ← │ data acc. │ ╰──────╯ ╰─────────────╯
↓ ╭───────────────────────╮ │ │ │ ╭───────╯ │ ruby on rails
│ ↓ │ │ ╭─────────────╮ │ │ │ widgets! │ ╰───────────────╯ ╰─────────────╯ ↓ ↓ ╭──────╮ ╭─────────────╮ │ db │ ← │ data acc. │ ╰──────╯ ╰─────────────╯
/colour-red /50-100-euro /jeans/esprit
↓ ╭───────────────────────╮ │ │ │ ╭───────╯ │ ruby on rails
│ ↓ │ │ ╭─────────────╮ │ │ │ widgets! │ ╰───────────────╯ ╰─────────────╯ ↓ ↓ ╭──────╮ ╭─────────────╮ │ db │ ← │ data acc. │ ╰──────╯ ╰─────────────╯
↓ ╭───────────────────────╮ │ │ │ ╭───────╯ │ ruby on rails
│ ↓ │ │ ╭─────────────╮ │ │ │ clojure │ ╰───────────────╯ ╰─────────────╯ ↓ ↓ ╭──────╮ ╭─────────────╮ │ db │ ← │ data acc. │ ╰──────╯ ╰─────────────╯
(cons )
a slide intentionally left blank
widgets the cornerstone
{:fetch (fn [env] (get-data-for env)) :view (fn [fetched-data] (render fetched-data))}
(map render widgets) ↓ (pmap render widgets)
templating worst nightmare
© omefrans 2010 flickr.com/photos/omefrans/4238610113
<div id=”main”> text </div> {:tag :div :attr {:id ”main”} :content
[”text”]}
repl everywhere
tools to the rescue
before 54 machines
after 10 machines* * traffic grew twofold
mistakes we made a lot
(my {:yet :another} (somewhat [:helpful]) (dsl!))
hiring not as bad as it seems
future a lot to be done
summing it up it was a good idea
Migrating to Clojure So much fn
[email protected]
[email protected]
@janstepien