Tear down this wall – rethink distributed systems
summary
Argues that treating a distributed system as one unified codebase speeds development: uses Clojure/ClojureScript, re-frame tests running on the JVM, clojure.spec and protocols to reuse specs across front end, WebSocket and backend, and a monorepo with Leiningen tricks to avoid dependency hell. Describes a generic feed reader that stores to S3 and services rebuilt locally for reliable reprocessing, reports faster iteration and fewer integration failures. re-frame JVM tests reuse clojure.spec across boundaries
AI-written summary · about
chapters (13)
- 0:00Intro
- 0:24Most of us develop distributed systems
- 2:10Do you know this architecture?
- 2:40We even align our teams along these borders
- 3:11We do not have a single architecture!
- 3:43Unify creates a better environment: Focus on what is you current concern
- 6:18Starting from unification, you may focus on different things.
- 7:37Same principle, applied to a more complex system...
- 8:09Break down one service into multiple smaller ones: Separation of concern
- 12:24CLIC is our friend with Clojure crossing the platform gaps as easy as it could be Use CLIC
- 15:41Spec your APIs - everywhere
- 17:17Protocols to mock channels
- 18:28and finally, use a monorepo
related talks
34mClojure by neophyte
28mEvery Clojure Talk Ever
38m"Growing Data Center networking mgmt UI using ClojureScript, Reagent and re-frame"
21mA Clojure Carol: Three Clojure Web Development A-Ha Moments
01h 15mEffective Programs - 10 Years of Clojure
27mThe Functional Final Frontier
31mre-frame your ClojureScript applications
31mClojure at 4,000 msg/s-What We Learned, Loved, and Loathed
