Making the decision.
WHAT TO ASSESS
What the project actually requires What your team knows What the hosting or platform supports What libraries exist for the domain Who maintains it afterwards
WHAT TO WEIGH MOST HEAVILY
The last two.
WHY LIBRARIES
Writing what a mature library provides is expensive and usually worse.
WHY MAINTENANCE
A language nobody in your organisation knows is a liability regardless of its merits.
WHAT TO CONSIDER ABOUT HIRING
Whether people who know it can be found, in your market.
WHAT DOMAIN CONSTRAINTS EXIST
- Machine learning: Python, effectively
- Apple platforms: Swift
- Android: Kotlin
- Browsers: JavaScript or something compiling to it
- Embedded: C, or Rust
- Shared hosting: PHP, mostly
WHY THOSE ARE CONSTRAINTS
The ecosystem or the platform decides.
WHAT NOT TO CHOOSE ON
Performance benchmarks, unless you are performance-limited Novelty Personal preference without reasons
WHAT TO DOCUMENT
The decision and its reasoning, for whoever inherits it.