Ep 070: Socket Circus

We talk about spontaneously sending data from the server to the client to address our users' insecurities.

Ep 069: Stuck in the Web

We examine our history writing web handlers and talk about all the ways we've broken them.

Ep 068: Static on the Line

We tease apart the layers involved in serving static assets and are surprised by how many we find.

Ep 067: Handling Handler's Handles

We manage to find a way to get our handlers the resources they need to get real work done.

Ep 066: Compose the Codec

We reinvent the wheel, and along the way discover a few reasons why you might want to do so as well.

Ep 065: Stuck in the Middle

We find that the middle is a very good place to start when almost everything is composed functions.

Ep 064: Put Ring on It

We focus on the bedrock abstraction for all Clojure web applications and marvel at its simplicity.

Ep 063: Web of Complexity

We launch a new series and immediately get tangled in the many layers that make up the web.

Ep 062: 2019 in Review

We look back at the past year and highlight our favorite episodes.

Ep 061: Transcendental Transformations

We unpack transducers and find a familiar pattern that enables freedom from collections.

Ep 060: Reduce Done Quick

We look at clojure.core.reducers and how it extracts performance by composing reducing functions.

Ep 059: Lining It Up

We examine the sequence abstraction and then ponder how it helps and hinders our data transformation.

Ep 058: Reducing it Down

We take a long hard look at reduce and find the first of many generally useful nuggets inside.

Ep 057: Clojure/Conj 2019 Recap

We go through our notes and recall the most memorable talks from the Conj last week.

Ep 056: Opt-In Complexity

We discuss complexity and try to come up with a simple explanation for why Clojurians avoid it so ruthlessly.

Ep 055: Sets! What are they good for?

We examine one of the lesser used data structures in Clojure and talk about its unique characteristics and uses.

Ep 054: The Forest in the Trees

We discuss three powerful libraries (Specter, Spectacles, and clojure.walk) and where they might fit into our Clojure programs.

Ep 053: How can I save my data from serialization?

We record our thoughts on the many trade-offs we have encountered preserving our data when it leaves our programs.

Ep 052: Functions! Functions! Functions!

We wonder how we could function without these critical building blocks, so we catagorize their varied uses.

Ep 051: Maps! Maps! Maps!

We discuss maps and their useful features, including a key distinction that we couldn't live without.