I break down two perspectives (their features and their methodologies) for the three most common paradigms. I also explore why paradigms are so easy to argue about, and what we can do about it.
We address the question directly, but then look deeper to the beliefs behind the question.
We explore some of the background behind the meaning of the word abstraction and why we do it.
You actually need to learn nothing. But it’s more complicated than that. This article will show you what can set you apart.
LispCast Introduction to Clojure starts with 30 minutes of imperative programming. We write programs for their effects, so imperative is a great place to start.
It’s common that adding more layers of abstraction or indirection will make things slower. However, React and ClojureScript make web pages faster than doing it by hand — essentially programming the bare web. The lesson is that if you choose your layers well, they can actually make your system faster.
Functional programmers often use the term “reason about code”. It’s not very well defined generally, but I use it myself to refer to our ability to use our real-world intuition in our own code.
Composition is an important idea in programming, and Functional Programming brings it to the forefront. But what does it mean to say things are composable?
Global mutable state is one of the biggest drivers of complexity in software systems. We tackle a definition and how to reduce our reliance on it.