I’ve been gearing up for what I think will be a fun and fruitful project. I wanted to review some of the fundamental abstractions we use in Clojure for building web applications, and see if I can’t find something super robust for building on top of. The “classical” model is Ring, which defines Adapters, Middleware, […]
I’ve recently shifted my thinking about Clojure error messages. It is more useful to think of them as non-existent than to think of them as bad. We end with the role Spec can play in improving error messages.
Rich Hickey explained the design choices behind Clojure and made many statements about static typing along the way. I share an interesting perspective and some stories from my time as a Haskell programmer. I conclude with a design challenge for the statically typed world.
I break down two perspectives (their features and their methodologies) for the three most common paradigms. I also explore why paradigms are so easy to argue about, and what we can do about it.
We address the question directly, but then look deeper to the beliefs behind the question.
We explore when it is safe to extract out an abstraction and when you need to go deeper and rebuild it from scratch.
We explore some of the background behind the meaning of the word abstraction and why we do it.
After exploring why frameworks and why not frameworks, I dive into the design priorities I think a web framework should have.
We explore three arguments against frameworks, address them, then turn them into challenges to be overcome.