+ 2
the problem with demand, is that it has the possibility of changing. what is demanded today may change in 3 years, or in 30 years. unless you know how the landscape of programming is shifting, maling such decisions is extremely risky.
being "the best" on the other hand will give you more opportunities. maybe some language that is not much demanded, but when it is, everyone wants to work with "the best".
what i would advise is: whatever you choose, try to become the best.