Understanding Java 8 Lambdas and Streams - Part 1 - Lambda Calculus, Lambda Expressions, Syntactic Sugar, First Class Functions
The Open Closed Principle - Part 1 - The Original Version
OO Inheritance - Not Always Evil - Refactoring to Open-Closed with Inheritance
Single Slide: Fragmenting Bullet versus Shotgun Surgery
Single Slide: Relationship between the 'Single Responsibility Principle' and two of the 'Four Rules of Simple Design'
TIL: De Morgan's Laws are Monoid Homomorphisms
Using either foldLeft or foldRight to concatenate the elements of list[T] using monoid T’s zero and its binary operation
Simple IO Monad in 'Functional Programming in Scala'
Definition of 'Once And Only Once' rule
Arriving at monads by going from pure-function composition to effectful-function composition
Compositionality and Category Theory - a montage of slides/transcript for sections of Rúnar Bjarnason's 'Scala eXchange 2017' keynote: "Composing Programs"
How Agile design uses OCP to eliminate design smells
Using the Thrush combinator to sweeten invocation of methods asking a question
Lambda Expressions and Java 8 - Lambda Calculus, Lambda Expressions, Syntactic sugar, First Class Functions - Second Expedia Tech 'Know How' Talk - Nov 2015
Scala collection methods flatMap and flatten are more powerful than monadic flatMap and flatten (download for better quality)