Join 📚 Josh Beckman's Highlights

A batch of the best highlights from what Josh's read, .

More often than not, when we use the language’s primitives, we give up an opportunity to express the domain model of our application. When we use a `String` to represent an `Email`, we haven’t encoded the fact that it needs to satisfy some constraints (ex: have an `@`, or satisfy a regular expression, or have a finite length). When we use `Hash` to represent structured data, we allow the possibility that some keys will be unset, or that some other keys will have values. We can fix all these problems by using classes specific for our use-cases.

Affordance for Errors, Part 2

Guillaume Malette

The **Lindy effect** (also known as **Lindy's Law**) is a theorized phenomenon by which the future [life expectancy](https://en.wikipedia.org/wiki/Mediocrity_principle#Longevity_Estimation) of some non-perishable things, like a technology or an idea, is proportional to their current age. Thus, the Lindy effect proposes the longer a period something has survived to exist or be used in the present, the longer its remaining life expectancy. Longevity implies a resistance to change, obsolescence or competition and greater odds of continued existence into the future.

Lindy Effect

wikipedia.org

I apply the principle that [[people do things for reasons::highlight]], even if they are not aware of those reasons or even if they can’t accept that their actions are motivated instead of neutral and objective.

People Do Things for Reasons

Mandy Brown

...catch up on these, and many more highlights