The arguments against web frameworks

June 20, 2017
We explore three arguments against frameworks, address them, then turn them into challenges to be overcome.

The Bootstrapping Mindset

March 16, 2017
One of the great things about very robust and powerful abstractions is that they can give you tremendous leverage. The leverage can be so great that you can build something much greater than the sum of its parts. However, I worry that the web is an end to this kind of abstraction. I'd like to explore why that is and what we can do about it.

Separation, Abstraction, and Cascading in CSS

December 29, 2012
LESS and Sass (and similar solutions) have saved CSS for three reasons: separation, abstraction, and cascading. While I welcome them, CSS still has other problems which I believe can be solved.

What should a Clojure framework look like?

June 21, 2017
After exploring why frameworks and why not frameworks, I dive into the design priorities I think a web framework should have.

Clojure Web Security

April 05, 2014
Use the OWASP Top Ten Project to minimize security vulnerabilities in your Clojure web application.

Hiccup Tips

February 24, 2015
Hiccup is a Clojure DSL for generating HTML. If you're using it, you might like these tips.

JSON Serialization for APIs in Clojure

July 10, 2014
Clojure is well-suited for processing JSON, but there are some decisions you have to make to suit your application. The major decisions are actually easy, though they took me a while to figure out.

The Parts of Ring

February 18, 2015
Ring, the Clojure Web library, defines three main concepts that you use to construct web applications.

Ring 1.3

July 22, 2014
Ring is great because it closely models the HTTP message format using native Clojure data structures. It strictly defines a message format that any software can use and rely on. With Ring 1.3, the specification has gotten even closer to the HTTP spec.

A Ring Spec to Hang on the Wall

March 28, 2014
The Ring SPEC is the core of the Clojure web ecosystem. The standard is small and a reference is handy.