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
1
430
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
Tweet
Share
More Decks by Jan Stępień
See All by Jan Stępień
graalvm-jug-bb
jan
1
240
That Looks Oddly Familiar
jan
0
460
Native Clojure
jan
0
260
Native Clojure with GraalVM
jan
0
790
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
240
Let's just test that real quick
jan
1
450
Combating spam, or how I befriended the Killer Rabbit of Caerbannog
jan
0
310
Other Decks in Programming
See All in Programming
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
250
見せてもらおうか、 OpenSearchの性能とやらを!
shunta27
1
140
GC言語のWasm化とComponent Modelサポートの実践と課題 - Scalaの場合
tanishiking
0
130
AI Assistants for Your Angular Solutions
manfredsteyer
PRO
0
160
Understanding Apache Lucene - More than just full-text search
spinscale
0
140
安いハードウェアでVulkan
fadis
1
790
メッセージングを利用して時間的結合を分離しよう #phperkaigi
kajitack
3
330
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
160
LM Linkで(非力な!)ノートPCでローカルLLM
seosoft
0
210
仕様漏れ実装漏れをなくすトレーサビリティAI基盤のご紹介
orgachem
PRO
7
3.1k
OTP を自動で入力する裏技
megabitsenmzq
0
130
Reactive ❤️ Loom: A Forbidden Love Story
franz1981
2
160
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
250
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
Mind Mapping
helmedeiros
PRO
1
130
Context Engineering - Making Every Token Count
addyosmani
9
770
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
360
Automating Front-end Workflow
addyosmani
1370
200k
What's in a price? How to price your products and services
michaelherold
247
13k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
490
Producing Creativity
orderedlist
PRO
348
40k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
140
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
240
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