Only Humans Need A Balanced Diet

Matt Jankowski

Day three of my winter adventure brings us a metaphor about food.

If you eat steak every single day, you’re missing out on some critical nutrients. You may be living like a king (if that’s what kings eat every day), but you’re a whole bucket of fruits, vegetables and breads short of living like a normal human. The same would apply if you just ate bread, or if you just ate green beans. All of these things are great part of a larger diet - but it’s that larger balance that produces the healthy results you want.

Of course, when you’re solving a technology problem or designing a software system, it’s sometimes tempting to do the same thing. But software problems aren’t human problems, and technology doesn’t need to eat a balanced diet to keep working. Just because you can design a solution that uses 10 servers, 3 operating systems, 4 programming languages, 5 APIs and 2 network protocols doesn’t mean you should - and it doesn’t mean you’ll have a solution any better than if you’d kept it simple.

In fact, most of the time that you do this you’ll have something too complicated and interdependent. So just remember - even though your users are humans, their tech problems aren’t. They might need a balanced diet, but their software doesn’t.

About thoughtbot

We've been helping engineering teams deliver exceptional products for over 20 years. Our designers, developers, and product managers work closely with teams to solve your toughest software challenges through collaborative design and development. Learn more about us.