in reply to Enlightenment and Frustration

For me, the two biggest things that brought significant improvement in the way I code was reading Perl Best Practices, and taking a introduction to Java.

PBP taught me to be consistent and HOW to be consistent, which I found was pretty hard. Until you learn enough on your own you tend to copy what others have done or what is in front of you. Both are bad habits to break. PBP gave me someone I could copy from AND learn how to improve the code I wrote.

I say Java not because I like it, it taught me how to think in object-oriented method. Everything I learned I was thinking, HOW can I do this in Perl? I found I made huge jumps in identifying bad code and how to make my coding easier to understand.

So that is what helped me the most.