What surprised us about Clojure that we now can't live without? Why did we start podcasting? Who has helped us along the way? Join us as we reflect on Clojure, the community, and how much we have to be thankful for. https://clojuredesign.club/episode/100-thanks-overflow/ We made it to Episode 100! Thank you to all of you who have listened, provided feedback, and generally cheered us on. We appreciate it so very much!
Thank you for the Practicalli thank you, most appreciated. You have both enlightened and entertained me with your discussions and helped make my commercial and community work better too.
@genekim Thank you again!
@jason.bullers Yes! Even if you can't use Clojure, the approach is still valuable. Of course it's nice when the language makes it the default way. Apparently the tradition of "careful programming" extends far into the past. I was watching a talk by @richard.t.feldman about it: https://www.youtube.com/watch?app=desktop&v=6YbK8o9rZfI
@jr0cket Thank you again!
Kudos on another great episode! (And all I can say is, “aww, shucks…” I continue to be such a fan of your work, and am so delighted that you’re creating more of these episodes. Truly inspiring, on so many different dimensions! 🎉 🙏 Thank you!)
@neumann mentioned working on concurrent systems, and that's a very similar entry point for me as well. Several years ago, I was building a system in Java where meteorologists could collaboratively edit graphical representations of high impact weather (think Google docs but with polygons representing areas of high winds or precipitation). So now we've got three threads in play operating on the same data: the GUI thread modifying objects in response to mouse events, a background thread receiving changes made by another user, and another background thread collecting scene graphs for all the renderable objects. It was while working on this system I learned about Clojure and was able to take concepts like separation of state, time, and identity and all the great stuff from Rich Hickey's "value of values" talk and weave it in to the design. Of course, you have to do a lot to make it work (you can make your objects immutable and swap them, but what about the collections of those objects and things you don't directly control etc). @neumann has called this "careful programming," and it absolutely is. Clojure's choice to lean hard into immutability is fantastic, because I never have to waste brain cells on it. Someday, I'll wrap my head around how to architect and build a similar OOP-heavy system entirely in a functional language, and then watch out world! 😂
@john.t.richardson.dev Thank you! 😊
Really enjoyed listening to this episode. Thanks!
As I was listening to the end of the podcast, I had the same reaction as @genekim. Aw, shucks. So wholesome! We're all thankful for you too!