Part II - Choosing a programming language
I spent a considerable amount of time pondering which programming
language I should really focus on. I still have lingering questions and
half-formed opinions at this time, perhaps getting them out here will
help solidify the weaker aspects. This is not only an economical
question, but also a philosophical question, as mentioned in the
previous post.
The economics were that of the opportunity cost when learning one
language over another. Learning in tandem is certainly an option,
although part of me wonders if you really learn that way. Another
potential solution to this quandary is solve your current programming
problem with the language you want to really learn.
The problem would have to be big enough to really test you. The features
that you decide to implement in your solution need to capture the bulk
of or at least a large portion of the framework behind the language.
Otherwise you become the dreaded jack of the language with no mastery
what-so-ever.
I read an interesting take on the issue of choosing programming
languages. I read the article 4 tests, 8 programs, several sleepless
nights at the firehouse and 3 projects ago and I couldn't find it
(Google Instant is awesome, but it has changed the way we get search
for ever). I'll sum up the salient points that I recall wishing I could
deliver proper attribution...
The author stated that programmers MUST know and have sufficient
performance with multiple languages. His examples seemed valid and I
respected the point of view. He then went on to describe his ideal of
what languages one should learn. This also was respectable and made
sense form a beginners point of view.
The author stated that one should focus on a language from distinct
groups. One high-level strongly typed language, one functional based
language and one script based language. What the heck does that mean?
We'll get into that in the next post...