You may have heard the following saying:
“Do it right, or do it twice.”
In software development, it’s more like:
“Do it right, or do it wrong, then support that wrong, then eventually do it again.”
This is something that I keep thinking about with software development. Why do we do things wrong the first time?
- It’s done under the guise of being “agile”, because we want to satisfy customers as quickly as possible.
- We lack the knowledge to do it right the first time.
- We tell ourselves that we’ll go back and fix it later (but we rarely do).
- We feel like we lack the time to do it right, right now. A quick fix is quicker.
Far too often, though, such development ends up costing more time and more effort in the long run. The band-aids and duct tape approach only leads to more work in the long run. Instead of implementing a solution once, you built it the first time, deal with all the related maintenance headaches, then end up re-building it.
Do it. Do it right. Do it right the first time.