Previous Episode: Ep 099: REPL Your World
Next Episode: Ep 101: Sportify!

We reflect on Clojure, the community, and how much we have to be thankful for.

Each week, we discuss a different topic about Clojure and functional programming.


If you have a question or topic you'd like us to discuss, tweet @clojuredesign, send an email to [email protected], or join the #clojuredesign-podcast channel on the Clojurians Slack.


This week, the topic is: "thankfulness". We reflect on Clojure, the community, and how much we have to be thankful for.


Our discussion includes:

It's our 100th episode!!!
Why we are thankful for Clojure and the community.
The podcast origin story.
Long haul programming.
How Clojure keeps the mental burden low.
Why we love immutability.
Communicating Sequential Processes.
Bad programming experiences that Clojure made better.
Data-centric programming.
What makes Clojure simple.
The horror of unstable languages.
Things we love now that we never imagined.
Why we love structural editing and REPL-driven development.
Developer flow and productivity.
What is hammock time? Why does it matter?
How does Maslow's Hierarchy of Needs apply to programming?
What do scissors have to do with Clojure programming?
We are thankful for you!!!

Selected quotes:

"I guess I can classify myself as an older developer now. It doesn't feel like it, but I've been doing it for a while."
"Clojure has definitely reinvigorated my joy of programming, and Clojure has allowed me to experience that joy in nontrivial programs."
"It's fun to whip up a prototype, but Clojure is the first language that I've used where, when the program starts getting really big, it's still a delight to extend"
"I don't think I could estimate the number of hours I have saved in debugging race conditions and crazy nondeterministic behavior, because of immutability and CSP specifically."
"Back in my Java 2 Enterprise Edition days..." "Oh, there's an old wound!"
"Chasing after the latest and greatest was kind of fun, until you've been burned by a couple of tech cycles."
"Because Clojure is so simple, you're left alone with your problem, so most of your headspace is your problem: the thing you're trying to solve."
"REPL-driven development and structural editing is an entirely different way of making a program—a process or a flow of making a program—that for me was just life changing."
"The REPL is so close at hand. It makes things so fungible. You can't help but want to use it for every problem that you have."
"The REPL makes programming more tactile."
"Not only are you flying through execution, you're flying through editing."
"The state of being that I get into in Clojure code is just so delightful! It's so enjoyable!"
"It changes the way you think about programming and the way you think about editing. You don't realize that your mind is being changed until you realize that you're so different than before."
"You still have the same amount of productivity, but you will have spent more time thinking about the problem, so that you're doing the right edits."
"When you're fighting your code base, because it's exploding in random places, it's hard to think about bigger concerns. You're just trying to make the bugs stop already! Clojure has gotten me out of all that."
"I definitely don't have the corner on all the truth in the world. That's for sure."

Links:

Composition Series

Ep 093: Waffle Cakes (first episode)
Ep 098: Composed Learnings (summary episode)

Talks, Books, and Articles

"Beating the Averages" by Paul Graham
"Practical Vim: Edit Text at the Speed of Thought" by Drew Neil
"Running With Scissors: Live Coding With Data" by Stuart Halloway. Presented at Strange Loop 2018.
Clojure for the Brave and True by Daniel Higginbotham
Practicalli

Projects

Clojure, ClojureScript
Babashka
clojure-lsp
Conjure for Neovim
Calva

Los Angeles Clojure Users Group

Twitter Mentions