Your Software Should Suck

Good software is really hard to write. 

When software is good, you almost don't notice it.  The UI / UX doesn't get in your way.  You can do what you want easily.

When software is bad, it's frustrating, but you still use it because the alternative is worse.  Maybe it's replacing a manual / tedious process, or provides functionality that simply could not exist otherwise.

People will put up with bad software. I've worked on projects where the #1 user requested feature wasn't implemented for over 7 years.  Guess what.  The software still sold, and the company was still successful.  This is because it was better than the alternative.

So what makes good software?   

Good software doesn't start good.  It most likely sucked.  The odds that you will get every aspect of your software correct on your first iteration are slim.   

So don't try to pack every feature into that first release.  Get the bare minimum out there, and get feedback.  The key is to listen to that feedback, and make changes. A key to iterating quickly is to not outsmart yourself.

Should you wait 7 years to implement that most requested feature?  Probably not.  But don't strive to make your software perfect, or maybe even great.  Make it good enough to be better than the alternative, and people will use it.

Keep improving, and eventually, your software might even be considered good. If you're persistent, it might even become great.

- Andy Glassman


Popular posts from this blog

Phoenix LiveView: Async Assign Pattern

Write Admin Tools From Day One

Extremely Fake Cheapskates! Season One Recap