James H. H. Lampert wrote:
If you're only using one language, it's bound to be the worst possible
solution for the problem at hand, at least part of the time.
I agree with you to an extent. Firstly, I strongly encourage
programmers to learn multiple languages -- you should be fluent in at
least 3 or 4 languages, because it gives you a much better grasp on how
computers work, and helps you think outside the box. (Even if you never
use those languages again.)
However, there's a limit to how many languages it's practical to use in
a given shop. If I want to hire someone in my shop who knows OS/400
with RPG, CL, and DDS experience, I can do that. But if I decide to
always use the right tool for the job,and try to find someone who knows
RPG, CL, DDS, MI, SQL, C, C++, Java, PHP, Perl, LUA, HTML/CSS,
find a good fit.
Sure, I can teach them all of these technologies, but that's REAAAALY
hard to do, because we have work that needs to get done. Trying to
teach them a million different aspects of a dozen different programming
languages while still trying to run a company's IT is not trivial or
So I believe that there's a happy medium. You should work with a
handful of programming languages -- but NOT shift over to whatever is
best for every single detail of every single project.
Of course, the dynamics in a larger shop are probably much different
from the dynamics in my 3 person shop.