Conversations about Software Engineering

Conversations about Software Engineering (CaSE) is an interview podcast for software developers and architects about Software Engineering and related topics. We release a new episode every three weeks.

Problem Solving and Clojure 1.9 with Rich Hickey

Download it: MP3 | AAC | OGG | OPUS

Joy Clark talks with Rich Hickey about Clojure and Datomic and the reasons that Rich decided to design them the way that he did. They discuss the dependency problem and how we should change our method of developing libraries so that we do not introduce breaking changes. Rich also introduces Clojure spec and describes what it can be used for and how it differs from a static type system. To wrap up the episode, they talk about the best way to solve a problem (and know it is the right problem!) and Rich gives some advice on how to develop software and what technologies are worth looking into.

Read transcript

Show Notes

Comments

by 狗哈 on
nice to know 很高兴知道
by alex on
Great one, thanks!
by Oleksii Milashyn on
Thank you!
by Paul on
Thanks to both of you for this interview - it was great. I always love hearing Rich speak - great perspectives, generally articulated very well. Joy's comment about never getting indoctrinated into object-oriented programming was interesting to me. I think that object-oriented programming done well isn't so terrible, though functional programming with immutable data is better. But so many developers in recent years have been taught a particular mindset around use of Java - huge class hierarchies, lots of mutable member data, very entangled inter-class interactions... it is quite a mess. But to your point Joy about wanting to get some broader perspectives, and perhaps learn a bit more about OO - I'd point you at Smalltalk - OO done *thoughtfully*. There are various papers about its development, approaches that are interesting, including the "Red Book" and the "Blue Book".
by Anonymouse on
Good interview, thank you!
by datclojureboi on
Fantastic. Thank you.

New comment

By submitting your comment you agree that the content of the field "Name or nickname" will be stored and shown publicly next to your comment. Using your real name is optional.