Learning Best Practices, Idioms and New Languages
A few days ago I was listening to an episode of the StackOverflow Podcast and Jeff Atwood said something interesting about how he did a lot of reading as a kid but didn’t do much discussing about said reading with other people. The problem being that he had a lot of words that he wasn’t sure how to pronounce outside of how he had originally determined they should be pronounced. I was thinking about how this translates to code constructs and programming styles and how it’s easy to get stuck in your newb ways.
How Do You Say That?
I’m sure we’ve all experienced what Jeff was talking about, you’re reading something and you come across the name of a person or a place and you’re not really sure how to pronounce it but for the sake of moving through the material your brain comes up with something and you continue to use that each consecutive time it comes up in the material.
It’s only the next day when you’re talking about the text with a friend that you hear their alternate pronunciation of the word. Sometimes neither or you are sure what the correct pronunciation is, but you now spend the rest of the conversation saying each pronunciation, so as not to be rude, when referring to the word in question.
Learning PHP
A lot of programmers start out learning PHP. It’s easy to learn, make something, lots of resources etc. etc. However, I think that you tend to do a lot of the “brain deciding how to do this previously unknown thing” decision making while you’re learning. There was a post on The Daily WTF today about somebody who basically re-implemented the functionality of $_GET using their own hacked together POS method. It’s good for a laugh sure, but it’s not that unreasonable when you think about it.
Imagine you’re learning PHP and you’re like most geeks, introverted, you want to accomplish this goal of learning a new language, but you’re not planning on spending any time discussing it with other people. This is especially likely if you’re not learning in a work environment with other people. Since you don’t know a lot of the idioms, best practices and commonly used syntax you end up figuring things out and deciding that’s just how it’s done. I only use PHP in this example because of its wide use and forgiveness when not sticking to accepted practices (are there any?).
You find ways to do things and you stick with them, for good or bad, until you find out a different way.
Quit Being an Introvert
Do yourself a favor and get over keeping to yourself, you’ll be a better programmer and you might learn something about social interaction.
- Join mailing lists (and participate)
- Join forums (and participate)
- Attend local in-person live events
- Find some AIM/YM/MSN/Gtalk buddies who you can bounce ideas off of
- Seek the advice of the more experienced













DrDexter said:
This rang so true with me, and so I’m going to start participating in discussions!
Thanks
P.S Good stuff on building your blog up, I am also in the process of doing this. Its a great learning experience!
DrDexter
2008-06-20 19:40:15