I was listening to the Good enough is fine podcast by the 37signals guys today and it really resonated with how I see software development today.
If we aren’t careful, when making a decision for building or upgrading a feature in our applications, we can totally over bake and spend far more time on it than required.
In the podcast episode David mentions the concept of “return on effort”. This is a great lense to look through when deciding what to do.
As I’ve written before, we use pitches to scope out the work we plan to do. I love writing a detailed pitch with all the information. But then as the engineers and product managers start providing feedback, cutting as much as we can to get it to the “good enough” state.
“Do we really need this?” and “can we simplify this?” are key questions I’m constantly asking.
One final note on legacy software. Just because we built something a certain way in the past, doesn’t mean the new needs to be exactly the same. Simplify it as best you can. You can always add complexity in, it’s really hard to take complexity out.
If we aren’t careful, when making a decision for building or upgrading a feature in our applications, we can totally over bake and spend far more time on it than required.
In the podcast episode David mentions the concept of “return on effort”. This is a great lense to look through when deciding what to do.
As I’ve written before, we use pitches to scope out the work we plan to do. I love writing a detailed pitch with all the information. But then as the engineers and product managers start providing feedback, cutting as much as we can to get it to the “good enough” state.
“Do we really need this?” and “can we simplify this?” are key questions I’m constantly asking.
One final note on legacy software. Just because we built something a certain way in the past, doesn’t mean the new needs to be exactly the same. Simplify it as best you can. You can always add complexity in, it’s really hard to take complexity out.