Friday, April 14, 2006

When to Learn a New Language or Tool

On our mailing list Jake said he didn't see any reason to learn Ruby on Rails (RoR) since he's strength is in ColdFusion, which does most everything that RoR does. I told him that since he is a "web software engineer" it is even more important that he learn RoR. Not that he is going to jump ship from ColdFusion to RoR, but it improves his credibility with ColdFusion.

Knowing ColdFusion and the competing RoR allows him to intelligently say why a project would be better implemented in ColdFusion over RoR. The reverse may also be true from time to time, and when RoR is a better solution he can work on that as well.

When we don't have a knowledge of a competing technology then when we suggest using our favored technology it is assumed that the basis of our recommendation is our ignorance of the alternatives. When we are knowledgable on two or more competing technologies, then we can point out the specific reasons one is more sutiable, plus we are credible in that we are happy to do the project in either technology, but from experience we recommend a specific technology.

Learning C# has given me a better understanding of when Delphi is the best solution, while at the same time giving me the ability to work on a C# application when it is precieved as a better solution.

Subject Tags: [] [] [] [] [] [] [] [] []

2 comments:

Anonymous said...

When should you learn a new language? Always. The book "The Pragmatic Programmer" suggests you learn a new language every year.

unused said...

I agree. The more languages you know the better. Even if you don't use them, and never need to compare them to a language you know, it is still valuable to learn a new or different way to do things.