Programming and its teaching has always felt like a culture of passionate people who refused students the passion of discovering and learning but rather decreed their own rules, learned from their own mistakes. It isn't a particular fault of programmers or educators - this is natural inclination of all of us to deny others the painful experience of learning from mistakes. But it's no fun. It's no fun, damnit, and I want nothing to do with things that are no fun.
I would never have developed the mastery of vim that I have now had someone told me "hey, this is what you need to do. This is how you should do it. Here's a semester long course on how to effectively edit text." Everything I learned, I learned on my own, out of necessity. I now consider myself a proficient user of vim, but that would never have happened without the thousands of sequential js pressed before I discovered text objects out of a hunch that "dang it, this is slow and silly. there has to be a better way."
I want to fall in love with something, and write the stupidest possible code, and then learn why it was stupid, and be embarrassed by its stupidity 6 months down the road.
This is why Perl appealed to me. Because it allows for messy, playful, immediate gratification, tweaking fun. Perhaps I haven't the attention span to be a proper programmer.
I'd be embarrassed to admit this to most of my friends.