The world runs on bad software
The world runs on bad software. There are billions of lines of poorly structured, overly verbose, untested code. But, a lot of people are doing amazing things and making insane amounts of money from bad software.
As someone who might call himself a “software architect” or “craftsman”, this is difficult reality for me to accept. If I had my way, I would refactor every piece of code I worked on as soon as it started to smell.
But there is a cost to writing good software. It takes time to write automated tests, refactor code, and do things right. You may miss opportunities to get your software in front of real people, get essential feedback, or even launch at all.
Code doesn’t have to be perfect, it has to be adequate. It has to perform a few functions well enough in most situations. Bad software that ships is better than good software that nobody uses.
I often need to be reminded of this.
Update: I gave a talk on this topic. Here are the slides.