Learning a new syntax is not the same as actually learning the idioms (pythonic?) that are considered good practice. And after that you'll get into the field of infrastructure around that language. I guess if you've never heard of Python and the company is looking for a decent programmer to help in a (making something up as I type) medium sized Django application then you end up with
- you don't know Python at all
- if you learn it (might be very fast to learn to read it, fast to get into the basics) you're still missing out a lot (Maybe they use IronPython. Or Pypy. You need to learn the eco system: virtualenv et al?)
- even if you mastered that, you still don't know the basic technology they are using (in my sample: Django)
Compare that to a guy that used Python for a couple years. That one only needs to get into your code base and can start working right away.
of course you are right: someone who knows Python well may be better than someone who doesn't.
But if you look at the recruiters experience, who finds only two qualified applications, then I say: find a good programmer among the applicants who really wants to get into Python and you will get someone who comes to speed very quickly.
You might even find someone who is enthusiastic about his new job, instead of someone who does the same thing since 1996, who is good at what he does, but a bit bored too.
These recruiters always think in their own minds cage: according to them, you start something once, and do it for the rest of your life, because nobody will let you do something different. Most software developers are much too smart for that cage only.
Some software developers are much too smart for that cage only.
A large percentage of the population here falls in that category, but we aren't representative of the industry as a whole. What do you think a Blub programmer actually is?
I'll take the better programmer over the one who knows python already, any day and every time.
I think once you've learned enough languages, they become like lenses on a camera. You're as good a photographer as you are, whether you use one lens or a different lens.
The lens doesn't make a bad photographer good, and a good photographer will be just as good using a lens they've never used before, given a short period of time to familiarize themselves with it.
The environment of a particular job you always have to learn, even if you've used the exact tools at a previous job.
After a year, it is the strength of the photographer or programmer that is going to determine how much and how good their work is, not whether they knew the tool before they took the job.
- you don't know Python at all
- if you learn it (might be very fast to learn to read it, fast to get into the basics) you're still missing out a lot (Maybe they use IronPython. Or Pypy. You need to learn the eco system: virtualenv et al?)
- even if you mastered that, you still don't know the basic technology they are using (in my sample: Django)
Compare that to a guy that used Python for a couple years. That one only needs to get into your code base and can start working right away.