I was listening to this episode of The Rework Podcast by the guys at 37signals. It was a great reminder that we tend to overcomplicate things when building technical solutions. Sometimes, we do it for the challenge, and as developers, it’s fun. Often we miss the point. What’s the end goal?

For example, I was just working with a customer who wanted us to update our existing application to allow batching records together based on complicated logic. We spent hours thinking of a solution. Then someone asked, why do they need this? Oh, so one admin can run a report that shows all the records in a batch. Can’t we add a checkbox to allow the admin to select which records they want to include in the report? Yes! Well, that makes things much easier!