Very recently having been in a similar situation as you, I've decided to:
- Use Java for the time being
- At the same time keeping an eye on the progress of the D programming language.
I'm going with Java, since as somebody pointed out, there's really a lot of tools already available in Java, Java has over the years come to have very good speed (I've heard things like 90% of the speed of C/C++ code), and you get going much faster since you have garbage collection and a much cleaner language than C/C++. (Also Eclipse is a great platform, on which you can build interesting, very modular stuff, such as Bioclipse)
I keep an eye at D, since from almost everybody I hear it is a great, clean and powerful language, that fixes the annoying flaws in i.e. C++, while still being a compiled (and thus potentially fast) language. Like Java, it has garbage collection, but the syntax is said to be even cleaner than that of Java, plus you can do really close-to-the system programming/optimization (even write inline assembler code) if needed.
(Much of this, you can read in this question on D, here on BioStar)
Finally a word on python: I think python's ability to compile to C-code with just the addition of typing the variables, with the Cython package, is very neat, and might solve many performance-demanding tasks, if you have reasons to stay in the scripting-world.
can I vote twice ?
You mean computing is meant to be fun?!? x_o --> +1
Inspiring! From now on, I'm writing all my programs in なでしこ！ ;)
Claiming that programming should be related to programmer's happiness is a TOTAL lack of respect to a lot of people dedicated to computer programming pedagogy. And YES it hurts to learn programming languages, because 1) you need TIME, and 2) you must un-learn all the bad habits of crappy programming languages. It is really SAD how experts bioinformaticians support this naive opinion of it's ok to learn everything or anything. For the love of all gods, take seriously what you put in your head, learn how and why some programming languages were invented.
@michaelfaraday, I can't tell if you're agreeing or disagreeing (likely the latter). Can you elaborate on what you think is SAD? in the context of what you're replying to above?
@michaelfaraday What languages do you use that are so perfect and serious?
Why would people DO programming if it didn't make them happy? What is so wrong with enjoying what you're doing?
"it's ok to learn everything or anything" Sounds like a good life to me.