Isn't it easier to work with the tool that you know thoroughly, which may not be "cool", rather than pick up a new tool in a different ecosystem?
All other things being equal, sure, choose the maximally powerful language in whichever dimension makes sense. But all other things are usually not equal.
If you are working on a project by yourself, here are some things which are more important than the characteristics of the language:
- your knowledge of the problem domain
- your knowledge of general software development
- your knowledge of the limits, capabilities and ecosystem
of the language (aka project experience)
Also, if you're working with others, the following factors are more important than choice of language: - your customer's expectations (if you're shipping software to them)
- the ability to recruit experienced individuals for your project
- the availability of mentors / reviewers within your organization
- the availability of secondary resources (books, FAQ, etc)
(edit: formatting)Picking up a new tool shouldn't take long, but can give a significant benefit. As I like to say, learning something well enough to use is an O(1) action where the benefit is in O(n) to how much you use it.
In the long run, the quality of the tool dominates your current familiarity with it.