For years, I have advised people to pick the programming language for new developments based on the language their team is comfortable with.

But I must correct myself.

If your team has experience building for the platform you are addressing, pick the language they are comfortable with. If they do not, select the most stable language with the best community.

In recent projects, we have been working in languages not designed for the platform they are used for. A great example is Python. We encounter many Python web platforms in data-heavy organisations. This stems from data scientists and engineers using Python for data manipulation. If you let them build a web application, they will opt for Django or FastAPI, which is fine for building a small utility to expose data or a CRUD system to edit it.

However, if you are building a full-fledged web platform, you are setting yourself back with this choice. Less open-source components are available for boilerplate, and the community is much smaller. Finding people with experience building web platforms in Python and without a data science background will be hard. Engineers from other languages in the ecosystem are frustrated because they must reinvent the wheel. I am going to quote one of our staff engineers on this:

Now that I've worked with Python for a couple of months, I think I can comfortably say that this is not the most optimal stack for building web applications, so I feel like we should only meddle with this stack when it's focused on data science and/or ML.

To rephrase myself:

Choose the programming language your team is comfortable with if it is the right tool for the job.