Abstraction
Abstraction lets us hide detail and share behaviour, but each one makes a promise about what is common. These posts look at abstraction in practice - deciding what is worth abstracting, and what to do when an abstraction stops earning its place.
Resisting the Whispers of a Form-Engine
Every iOS dev hears that whisper sooner or later: "These fields look the same…you should build a form-engine." Those who follow that whisper almost always end up with an over-abstracted mess. Here, we look at building a simple validation flow that keeps us on the right path.
Coincidental Duplication Costs Really Add Up
Coincidental duplication is where we see common functionality between features that just happen to behave or look the same but were never intended to be the same. We then take this coincidental duplication and wrongly build a coupled solution around it. Here, we look at how to avoid that.