In no particular order…
Speed or memory usage are sufficiently important | C++ |
You’re a Windows shop or you hate Java | C# |
You are writing a GUI and you’re allergic to Web Apps | C# (or Java) |
You think in threads | Erlang or Golang |
You like Lisp | Clojure or Racket |
You’re a web consultant | PHP/Javascript |
You prefer dynamic typing to static typing | Perl, Python or Ruby |
Else | Java |
You prefer a language written by a linguist so you can read your code 6 months later: Perl
Hi Shawn, Perl would be my preference in 90% of cases too, although a lot of that is probably down to familiarity.
How about if you need lots of parallel math?
Python and Ruby seem pretty widely used on the web these days, too.