When people give talks on the "S.O.L.I.D." design principles one of the letters that doesn't get enough attention is the "i" - the "interface segregation principle". This talk seeks to redress that imbalance by going into a bit more in-depth into:
An introduction to interface segregation and an explanation of how it makes your code easier to test.
Why in PHP we need to apply the principle more broadly, to make types be more specific, so that code is more reasonable. *Me babbling on about emotions, and how good code is boring. Which is good!