Learn more programming languages, even if you won’t use them
Each language contains a different mental model, a different perspective for thinking about computation and how to write programs. Or in C. Imagine what a multi-player game server looks like in Python, in Haskell, in Erlang; streaming and processing terabytes of data in C, in Go, in Clojure; a user interface in Tcl, in Lua, in JavaScript. By learning a new language, even if it stays in your toolbox for all eternity, you gain a new perspective and a different way of thinking about problems.
Source: thorstenball.com