Stratified-design tool: after identifying layers, reduce each layer's API surface area to only what the abstraction actually needs. Wójtowicz cites Nick Sutterer's wroclove.rb 2022 Reform 3 talk as an accidental discovery of this principle — Reform 2's single mutable form class was misused because its surface area allowed it; Reform 3 splits it into separate presentation, validation and mutation objects behind a single factory call, giving each object only the methods it needs. Making a class 'weaker' by giving it less features increases cohesion: a 'frequency map' returning only min/max is more useful in context than a full-featured hash map.