InfoWorld published a really good article on the 7 sins of software development. While this is a good list, I would add the following sins as well:
8) Not picking the right technology
This one mainly due to comfort zone and failing to keep up with better tooling or proven techniques out on the industry. It’s the old saying of trying to force a square peg into a round hole or if all you have is a hammer than everything else looks like a nail.
9) Not thinking about performance
If performance is critical for a project, test it early and test it often. Don’t wait until near shipping to start making performance changes because it would be too late and too little then.
10) Not considering about security
Isn’t this item obvious? 🙂
11) Not talking to users
Unless you are writing the software for yourself, which I do every once in a while ;), get up and go talk to the users. They would love you and appreciate your software even more.
If they tell you your software is terrible, thank them, think about what they said and improve on it. If you get too attached to your software, you will never be able to make it better.