C: performance (low-latency), system (interface to most kernels), game-dev
JavaScript: UIs
Remark that I would not consider these languages my personal favourites, but in fact, you do not have much choice. C is enforced as it is tight to *nix which is the most spread OS, JavaScript as it allows you to build cross-platform UI's (that do not require user-installation) and Python because of its huge library diversity (in particular in the applied sciences).
If you speak them sufficient you can tackle most problems. If you then want to go further I suggest
Python: proof-of-concept, web-dev backend, scientific exploration
C: performance (low-latency), system (interface to most kernels), game-dev
JavaScript: UIs
Remark that I would not consider these languages my personal favourites, but in fact, you do not have much choice. C is enforced as it is tight to *nix which is the most spread OS, JavaScript as it allows you to build cross-platform UI's (that do not require user-installation) and Python because of its huge library diversity (in particular in the applied sciences).
If you speak them sufficient you can tackle most problems. If you then want to go further I suggest
Haskell: expressive, performance (through-put), reliability
Scheme (e.g. Chicken): expressive, simplicity, explorative computing
Additionally one might consider Java (and later Clojure, which should be easier if you already know Scheme and Java) to interface with the JVM world.