I have noticed that laziness often becomes a habit of software development.
I have also noticed that in the work environment, laziness and incompleteness is not the standard that is expected in a complete project. When coding on a project reaches this point of completion, but not perfection, is when the laziness comes in. There is more effort required at this stage than what is typically expected, and is very easily underestimated. The biggest issue here is that this point is what decides if it is a make-or-break application.
Humans will notice the smallest of imperfections. Yet remedying these imperfections are often burdensome and challenging. This is why the lazy path is most often defaulted to.
There is hope though, I have witnessed that with good practice and discipline, the point of perfection becomes easier to surmount. With habit of pushing that envelope of polish, there becomes a natural tendency to do so with any future projects. Eventually it will become so ingrained that you will not even think about needing to reach perfection, it will be the ‘norm’.
I am past the point of laziness. I am at the point of push for perfection is becoming easier and less of a hassle, more of a habit. My goal is to reach the ‘norm’ of perfection, and I am well on my way.