Number of languages known [was Re: Python is readable] - somewhat OT

Steven D'Aprano steve+comp.lang.python at pearwood.info
Thu Mar 22 21:11:49 EDT 2012


On Fri, 23 Mar 2012 06:14:46 +1100, Chris Angelico wrote:

> On Fri, Mar 23, 2012 at 4:44 AM, Steven D'Aprano
> <steve+comp.lang.python at pearwood.info> wrote:
>> The typical developer knows three, maybe four languages moderately
>> well, if you include SQL and regexes as languages, and might have a
>> nodding acquaintance with one or two more.
> 
> I'm not entirely sure what you mean by "moderately well", 

I mean more than "poorly" but less than "very well".

Until somebody invents a universal, objective scale for rating relative 
knowledge in a problem domain (in this case, knowledge of a programming 
language), we're stuck with fuzzy quantities like "guru", "expert", "deep 
and complete knowledge of the language and its idioms", all the way down 
to "can write Hello World" and "never used or seen the language before".

Here's a joke version:

http://www.ariel.com.au/jokes/The_Evolution_of_a_Programmer.html


and here's a more serious version:

http://www.yacoset.com/Home/signs-that-you-re-a-bad-programmer


> nor
> "languages", but I'm of the opinion that a good developer should be able
> to learn a new language very efficiently. 

Should be, absolutely. Does, perhaps not. Some good developers spend 
their entire life working in one language and have become expert on every 
part of it. Some learn twenty different languages, and barely get beyond 
"Hello World" in any of them.


> Do you count Python 2 and 3 as the same language? 

Absolutely.


> What about all the versions of the C standard?

Probably. I'm not familiar with the C standard.


> In any case, though, I agree that there's a lot of people professionally
> writing code who would know about the 3-4 that you say. I'm just not
> sure that they're any good at coding, even in those few languages. All
> the best people I've ever known have had experience with quite a lot of
> languages.

I dare say that experience with many languages is a good thing, but it's 
not a prerequisite for mastery of a single language.

In any case, I'm not talking about the best developers. I'm talking about 
the typical developer, who by definition is just average. They probably 
know reasonably well one to three of the half dozen most popular 
languages (VB, Java, C, C+, Javascript, PHP, Perl?) plus regexes and SQL, 
and are unlikely to know any of Prolog, Lisp, Haskell, Hypertalk, 
Mercury, Cobra, Smalltalk, Ada, APL, Emerald, Inform, Forth, ... 

Or even in most cases *heard* of them.


-- 
Steven



More information about the Python-list mailing list