PODCAST · technology
Functional Design in Clojure
by Christoph Neumann and Nate Jones
Each week, we discuss a software design problem and how we might solve it using functional principles and the Clojure programming language.
-
118
Ep 118: Pure Parts
We look at pure data models we've created and see what they have in common.
-
117
Ep 117: Pure Understanding
We find a clear and pure heart in our application, unclouded by side effects.
-
116
Ep 116: The Main Focus
We turn our attention to the frontend, and our eyes burn from the complexity.
-
115
Ep 115: The Main Event
We look for a suitable place to dig into the code and find an entry point.
-
114
Ep 114: Brand New, Again
We find ourselves staring at code for the first time—even though we wrote some of it!
-
113
Ep 113: Highlightify!
We highlight the highlights of the Sportify! series.
-
112
Ep 112: Purify!
We loop back to our new approach and find more, and less, than we expected!
-
111
Ep 111: Loopify!
We throw our code in a loop, and it throws us for a loop.
-
110
Ep 110: Contextify!
Our downloads fail at random, but our dead program won't give us any answers.
-
109
Ep 109: Extractify!
We need to test our logic, but the I/O is getting in the way.
-
108
Ep 108: Testify!
We start testing our code only to discover we need the whole world running first!
-
107
Ep 107: Idempotify!
We discover when giving up is the way to get ahead.
-
106
Ep 106: Robustify!
We push our software to reach out to the real world and the real world pushes back.
-
105
Ep 105: Codify!
We grow beyond our REPL-driven pieces toward an end-to-end solution.
-
104
Ep 104: Assembleify!
We realize we're done exploring when all of the pieces fall into place.
-
103
Ep 103: Explorify!
We peruse APIs to uncover the data hidden beneath.
-
102
Ep 102: REPLify!
We find ourselves in a murky situation, so we go to our REPL-connected editor to shine some light on the details.
-
101
Ep 101: Sportify!
We tackle a new application, thinking it'll be an easy win—only to discover that our home run was a foul, and the real world is about to strike us out!
-
100
Ep 100: Thanks Overflow
We reflect on Clojure, the community, and how much we have to be thankful for.
-
99
Ep 099: REPL Your World
We free our REPL to explore and automate the world around us.
-
98
Ep 098: Composed Learnings
We reflect on keeping the necessary mess at the edges so our core can be composed together with beauty and simplicity.
-
97
Ep 097: Application of Composition
We get a handle on bringing I/O resources together in an application.
-
96
Ep 096: Gaming Data
We go back to start and play through a composition strategy to see where we land.
-
95
Ep 095: Composing Core
We venture toward the core of a solution.
-
94
Ep 094: Concrete Composition
We help our code through a breakup so it can find its true colors.
-
93
Ep 093: Waffle Cakes
We search for that sweet spot between full-featured mixes and simple ingredients when crafting your software recipes.
-
92
Ep 092: Freeing Limits
We bump into limiting constraints and learn to love their freedoms.
-
91
Ep 091: Combo Boost
We compose our thoughts on why Clojure expressiveness is so effective but can be so hard to learn.
-
90
Ep 090: Conditional Results
We devote some time to two functions that are indispensable when computations require variation.
-
89
Ep 089: Branching Out
We wander through the myriad ways of making decisions and listing choices in Clojure.
-
88
Ep 088: Do Dorun Run!
We eagerly discuss the times we need to interact with the messy world from our nice clean language.
-
87
Ep 087: Polymorphic Metal
We discuss polymorphism and how we tackle dynamic data with families of functions.
-
86
Ep 086: Let Tricks
Let us share some tricks to reduce nesting and make your code easier to understand.
-
85
Ep 085: For for the When
We talk about this data generating macro, while we remember situations when it was useful.
-
84
Ep 084: All Sorts
We lay out a list of ways to sort your data, ordered by their relative power.
-
83
Ep 083: Sift Sans Sort
We get a handle on big buckets of data by sifting elements into smaller buckets.
-
82
Ep 082: Filter and Friends
We talk about sifting data and marvel at the simple function that can turn two steps into one.
-
81
Ep 081: List No More
We talk about positive nothing and the proliferation of tuples.
-
80
Ep 080: Apply as Needed
We take time to unroll some examples of this function.
-
79
Ep 079: Compose Thyself
We create a whole episode by combining examples of useful uses of comp.
-
78
Ep 078: Impartial Thoughts
We cover some of the ways we use partial, without getting too literal.
-
77
Ep 077: Thread Some
We spend some time going through how these macros help keep our code nil-safe.
-
76
Ep 076: Multiple Views on Juxt
We take a turn with juxt, looking at all the ways it can help line up data.
-
75
Ep 075: Merge With Fun
We focus in on merge-with, a powerful function for aggregating data.
-
74
Ep 074: Deploy, They Said. It'll Be Fun, They Said.
We survey the myriad ways we've used to launch our code into production, and laugh about the various complexities we've found.
-
73
Ep 073: Silent Sockets
We worry about the health of our websockets and, after looking for help from the standards bodies, roll up our sleeves and handle it ourselves.
-
72
Ep 072: Sea of Sockets
We switch to using a component to manage our websockets, enabling ease of development and future growth.
-
71
Ep 071: Socket Synergy
We wander into the weeds, jumping through the myriad hoops required to deliver a simple notification.
-
70
Ep 070: Socket Circus
We talk about spontaneously sending data from the server to the client to address our users' insecurities.
-
69
Ep 069: Stuck in the Web
We examine our history writing web handlers and talk about all the ways we've broken them.
No matches for "" in this podcast's transcripts.
No topics indexed yet for this podcast.
Loading reviews...
ABOUT THIS SHOW
Each week, we discuss a software design problem and how we might solve it using functional principles and the Clojure programming language.
HOSTED BY
Christoph Neumann and Nate Jones
CATEGORIES
Loading similar podcasts...