Ep 091: Combo Boost► Play Episode
Each week, we discuss a different topic about Clojure and functional programming.
This week, the topic is: "effective expressiveness." We compose our thoughts on why Clojure expressiveness is so effective but can be so hard to learn.
Our discussion includes:
- Why Clojure can give you a boost as a developer—in the short and long term.
- Our definition of expressiveness, and why it's not simply about conciseness.
- Why object-oriented developers often struggle to learn functional programming.
- What makes some abstractions better than others.
- The deep implications of immutability.
- How to work your way up to an expert functional programmer.
- "Getting rid of problems over time really adds up."
- "More of the code is solving the problem instead of being boilerplate."
- "You hold things at a higher level, but still very clearly, because they're well defined."
- "Because all of the verbs in Clojure work on all the data structures, they become more powerful."
- All of these new pieces have names and concepts associated with them, and you're not going to know them."
- "You can do tiny things, but tiny things are toys. You want big things. You want to solve problems."
- "It's not a small adaptation of thinking in a little region of the code, but it affects how you structure and organize everything."
- "You have to go in levels. You can't go all the way from zero to done."