Choose the Best Language for the Task
I was exploring the codebase for Immich (an open-source replacement for Google Photos) the other day.
Note the languages: TypeScript, Dart, Python. Hmmm, let's see, which language does what... Both the server and the web client are TypeScript. Dart is for the mobile app.
And then... what is Python doing here?!
See -- there is the machine-learning directory. Automatic face recognition, finding similar photos, cool ML features. Could TypeScript do it? It definitely could! But Python is the best language for the task -- every machine learning library, every ML tutorial is Python-first. Python simply has the best building blocks for these tasks.
Of course, when you work with a legacy codebase, you don't have a choice. But for your next project, choose the best language!
Data analytics? Python or R.
Low-level system code? C or Rust.
Video game? C++ or C#.
The language is a tool, not your identity. And if you don't yet know the language you should use? Well, maybe it's time to learn it!
Liked this one? There are 221 more coming.
Two new tips every week, straight to your inbox.