This document discusses ways to increase testability through code seams. It recommends separating code into functional and non-functional pieces, and extracting the functional pieces. This allows the functional code to be tested in isolation without external dependencies. Specific techniques mentioned include peeling away non-functional layers and slicing functional logic from surrounding code. Examples show how to make code more deterministic and remove reliance on global state, dates, and other uncontrollable variables to improve testability.