Finding a good mentor. This person doesn't necessarily have to be a better coder than you, however they should be able to suggest other strategies for writing code properly. A good mentor will be to suggest many of the answers previously given to this topic. They can be a second set of eyes that let you know where your short comings are, while maintaining an encouraging, optimistic tone. They will also be flexible and constantly honing their skills as should you. That way when the next big paradigm comes up you'll be better able to separate the chaff from the wheat. This will be invaluable when Object Oriented Programming and Source Control are replaced by the next big thing (hard to imagine I know.)