I happened to come across this fine article today: “What Technology Should My Startup Use?” by Matt Aimonetti.

C#, Java, PHP, Python, Ruby… With so many programming languages around I, like many others, have asked myself which one to use where. An experienced programmer can build great applications in almost any language. Most modern programming languages are more alike than different. So the question of which language to use becomes less about the structure and features of the language and more about the design philosophies, infrastructure and communities behind them. Matt gives, as far as I can tell, an accurate portrayal of the ‘atmosphere’ surrounding many modern languages. Though his focus is on startups, the information is also useful for a developer looking which skills to develop. Good high-level  descriptions of the programmer landscape are difficult to come by in my experience, so I highly recommend you read this article.