Programming language wars are very interesting. Some take their programming language very religiously and vehemently argue how cool it is. This is what I would say; of course my own opinions and I have every right to have them.
Language is just a tool: Many times people forget that programming language is just a tool to solve problems. In the end it boils down to problem and a right solution. A problem can be solved in any language, but certain problem’s can be best solved by using certain languages while others are best suited for other problems. It depends upon using right programming language for solving a particular problem.
Be a polyglot programmer: Languages are evolving continuously. Each new language that is created tries to solve some complexities with old languages. Even advancement in chip and memory technologies is driving creation of new programming languages. Once many of the popular languages are compiled, now many modern languages are interpreted. Languages are becoming more abstract. If we look at modern languages, we are writing less code either via plugging in code or configuring (via xml or annotations) code or by auto-generating code. Being a polyglot programmer does not mean gaining expertise in many different languages but more of understanding capabilities of different programming languages and using them appropriately.
Understand your problem and time-lines: A problem can be solved in an optimal way or bad way or all the ways in between. Balancing a solution and time-line is the key. One can take a month to come up with best solution or a day to come up with a crappy one, but coming up with working solution, that solves the current needs in the given time line is important. It’s all in knowing what language to pick to solve a particular problem.
Don’t be scared: Core programming concepts are the same in all programming languages. Some languages might support these concepts well while others don’t. Playing with many different languages and understanding its capabilities makes a good software developer.
A fun video for those who do not agree with me…