Choosing a Language — Junior¶
Start with the job: CLI, web service, embedded system, data analysis, mobile client, or latency-critical component. List hard constraints before preferences: target platform, required libraries, memory ceiling, startup time, and team support.
The naive approach is choosing from a benchmark or popularity chart. It fails because library calls, serialization, deployment, and debugging dominate many real systems.
Test yourself¶
- Which requirement is impossible to negotiate?
- Which claim needs a prototype?
- Who will operate the result?
Continue to middle.md.