Monday, May 6, 2013

Program Idiomatically

I like learning new languages.  Each language is a reflection of the people that created and use them.  For example, in most Asian cultures, the word for rice is often the same word for food.  Every language across the world has these sorts of things about them and it really is quite fun to find a word that you can express succinctly in one language but is clumsy in another.

The same can be said for programming languages.  If the language you are learning or have learned doesn't teach you anything new about their approach to solving problems or about the language design philosophy, then I'd say learning that language probably could have been skipped; or probably more realistically, you didn't take the time to really learn it.

If you are learning a language, really learn it.  Don't just take what you know from a different language and do the same thing with the new syntax.  Really learn the constructs of the language and their approach to solving problems.  Read code, lots of code written by people who speak that language fluently and try it out yourself.  Do it enough so that you can speak and write in that language similar to how the natives do.  Solve problems, the bigger the better, and speak this new language with other people.  See if they can understand you and your code.

They call this programming idiomatically and that brings us to this weeks article.

No comments: