Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Brewing CIDER: It Starts with an Orchard
Search
Bozhidar Batsov
December 04, 2018
Programming
230
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Brewing CIDER: It Starts with an Orchard
Slide-deck from my presentation at ClojureX 2018 in London.
Bozhidar Batsov
December 04, 2018
More Decks by Bozhidar Batsov
See All by Bozhidar Batsov
RuboCop 2.0: Where do we go now?
bbatsov
0
85
Clojure: The Bad Parts
bbatsov
0
120
Weird Ruby (RubyDay 2024, Verona)
bbatsov
0
190
Sustainable OSS (Balkan Ruby 2024, Sofia)
bbatsov
0
210
Ruby's Creed (RubyDay 2023, Verona)
bbatsov
0
81
Victims of Complexity
bbatsov
0
350
Ruby 3.0 Redux (Spark Academy, Jan 2021)
bbatsov
1
290
Ruby 3.0 Redux (Pivorak 4.0)
bbatsov
0
520
The Elements of Programming Style (HackConf 2019)
bbatsov
0
230
Other Decks in Programming
See All in Programming
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
0
150
[GoCon2026] When Goroutines Are Not Enough: Runtime Locality in High-Throughput Go
takehaya
6
1.9k
Intent as Code
shoppingjaws
6
920
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
250
数年滞っていたダークモード対応をおよそ2週間で完了させる
chigichan24
0
700
Laravelのアプリケーションをどこにデプロイするか #ツナギメオフライン.9
akase244
0
120
新人はどこまで自力でやり、どこからAIに頼るべきか/エンジニア育成に向き合う_先輩たちの悩みと知見共有会
toppan_digital_dev
1
600
iOS開発×AI駆動開発 〜最近使って便利だったスキルの話〜
nogu66
0
140
Claude Codeを組織的に動かして月400PRを実現した話
happy_ryo
0
270
AIエージェント時代のコードレビューを設計する
nogu66
6
2.6k
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
170
Webの地図
yosuke_furukawa
PRO
6
4.1k
Featured
See All Featured
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
420
エンジニアに許された特別な時間の終わり
watany
108
250k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
270
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
270
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
WCS-LA-2024
lcolladotor
0
830
The Spectacular Lies of Maps
axbom
PRO
1
990
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
290
Test your architecture with Archunit
thirion
2
2.4k
For a Future-Friendly Web
brad_frost
183
10k
Transcript
M-x
M-x greet-audience
Clojure 1.10-RC3
async-require -> serialized-require
None
4
None
None
None
Clojure X 2015
None
Божидар
Bug cool
None
None
We’re not hiring!
None
None
@bbatsov
The CIDER Guy
None
Clojure Interactive Development Environment that Rocks
… for Emacs
None
None
metaredux.com
emacsredux.com
The nREPL Guy
A Good Year for CIDER
None
ClojureX Clojurists Together
CIDER 0.17 (Andalucia)
• Display images in the REPL • Support for shadow-cljs
• Support for the clojure-cli tools (clj/deps.edn) • Support for test selectors (run a subset of tests) • A brand new profiler (M-x cider-profile-toggle) • cider-eval-last-sexp-in-context
CIDER 0.18 (Saigon)
New connection management system
https://github.com/vspinu/sesman
Session Manager
Massive overhaul of CIDER’s internals
Hasta la vista, cider-interaction.el!
Massive overhaul of keybindings
C-c M-j -> C-c C-x j j
None
C-c C-x j j C-c C-x j s C-c C-x
j m C-c C-x c j C-c C-x c s C-c C-x c m C-c C-x s j C-c C-x s s
Decoupled CIDER releases from cider-nrepl releases
CIDER 0.19
None
An Amazing Year for nREPL
Start of migration out of Clojure Contrib
nREPL 0.4
•New artefact id (org.clojure/tools.nrepl -> nrepl/nrepl) •New namespace (clojure.tools.nrepl.* ->
nrepl.*) •Support for hot-loading dependencies •Support for clj •Many bug-fixes
https://metaredux.com/posts/2018/10/29/nrepl-redux.html
nREPL 0.5
https://nrepl.xyz
None
•Native support for pretty-printing results •Global and local configuration files
•Improved built-in REPL experience •Many bug-fixes
slide intentionally left blank
25% 5% 70% Yes Maybe I already have Notepad No
Do you want great Clojure development tools?
69% 25% 5% 1% Yes Maybe I already have Notepad
No Are you willing to work on Clojure development tools?
None
None
None
Brewing cider: It starts with an ORCHARD
CIDER’s Architecture
None
None
None
None
Heart of the Orchard
nREPL
None
Created especially for REPL- powered tooling
Extremely flexible
Transports •bencode (default) •tty (built-in) •http(s) (via Drawbridge) •transit (via
Fastlane) •EDN (coming soon)
Piggieback
cider-nrepl
Middleware for interactive programming environments
Thin wrapper around (many) nREPL-agnostic libraries
compliment
orchard
cljs-tooling
•cider-nrepl -> orchard-nrepl •cljs-tooling -> orchard-cljs
Naming is hard!
Mr. Anderson
There’s a lot going on here!
And we haven’t mentioned a single Emacs library…
None
•nREPL •cider-nrepl •piggieback •compliment •orchard •cljs-tooling •Mr. Anderson
Periphery of the Orchard
cljfmt
tools.reader
profile
java.classpath
tools.namespace
tools.trace
sayid
clj-refactor
refactor-nrepl
squiggly-clojure
None
None
None
• cljfmt • profile • java.classpath • tools.namespace • tools.trace
• tools.reader • sayid • clj-refactor/refactor-nrepl • squiggly-clojure
The Big Picture
CCW (Eclipse)
Proto REPL (Atom)
Calva (VS Code)
vim-fireplace
vim-iced
Cursive (IntelliJ)
Clojure’s Orchard
Future of the Orchard
None
None
Hegemony
Hegemony > Monopoly
Sustainable
Community Driven
Funded?
$4000
Consolidation
tools.trace -> sayid
None
Replace Contrib Projects
(or kill Clojure Contrib)
Open Source is not about You
CIDER is all about YOU!!!
Help CIDER…
…to help yourselves
Felina
Resources • https://metaredux.com/posts/2018/10/29/nrepl-redux.html • https://metaredux.com/posts/2018/11/09/ciders-orchard- the-heart.html • https://metaredux.com/posts/2018/11/11/ciders-orchard- the-periphery.html •
https://www.youtube.com/watch?v=4X-1fJm25Ww
Credits twitter: @bbatsov github: @bbatsov https://metaredux.com https://emacsredux.com ClojureX 2018 London,
United Kingdom 03.12.2018