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

Discussion in 'Python' started by Chris Angelico, Mar 22, 2012.

  1. On Fri, Mar 23, 2012 at 4:44 AM, Steven D'Aprano
    <> 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", nor
    "languages", but I'm of the opinion that a good developer should be
    able to learn a new language very efficiently. Do you count Python 2
    and 3 as the same language? What about all the versions of 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.

    ChrisA
     
    Chris Angelico, Mar 22, 2012
    #1
    1. Advertising

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

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

    > On Fri, Mar 23, 2012 at 4:44 AM, Steven D'Aprano
    > <> 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
     
    Steven D'Aprano, Mar 23, 2012
    #2
    1. Advertising

  3. Chris Angelico

    Steve Howell Guest

    On Mar 22, 6:11 pm, Steven D'Aprano <steve
    > wrote:
    > On Fri, 23 Mar 2012 06:14:46 +1100, Chris Angelico wrote:
    > > 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, ...


    I love how you can rattle off 20 or so languages, just off the top of
    your head, and not even mention Ruby. ;)

    (Although Perl was close enough.)
     
    Steve Howell, Mar 23, 2012
    #3
  4. Chris Angelico

    Steve Howell Guest

    On Mar 22, 12:14 pm, Chris Angelico <> wrote:
    > On Fri, Mar 23, 2012 at 4:44 AM, Steven D'Aprano
    >
    > <> 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", nor
    > "languages", but I'm of the opinion that a good developer should be
    > able to learn a new language very efficiently. Do you count Python 2
    > and 3 as the same language? What about all the versions of the C
    > standard?
    >


    Not only is it hard to define what we precisely mean when we say
    "[knows] moderately well" or "[n number of] languages", but what in
    the world are we talking about with respect to "the typical
    developer"? How do we even begin to define that term?
     
    Steve Howell, Mar 23, 2012
    #4
  5. Re: Number of languages known [was Re: Python is readable] - somewhatOT

    On Thu, 22 Mar 2012 19:48:19 -0700 (PDT), Steve Howell
    <> declaimed the following in
    gmane.comp.python.general:


    > I love how you can rattle off 20 or so languages, just off the top of
    > your head, and not even mention Ruby. ;)
    >

    Ruby -- a translucent to transparent reddish stone in the corundum
    family... Extremely hard; poorer specimens grate and cut softer
    materials, but sometimes can be found in polished and highly attractive
    form.
    --
    Wulfraed Dennis Lee Bieber AF6VN
    HTTP://wlfraed.home.netcom.com/
     
    Dennis Lee Bieber, Mar 23, 2012
    #5
  6. Re: Number of languages known [was Re: Python is readable] - somewhatOT

    On Fri, Mar 23, 2012 at 1:48 PM, Steve Howell <> wrote:
    > On Mar 22, 6:11 pm, Steven D'Aprano <steve
    > > wrote:
    >> 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, ...

    >
    > I love how you can rattle off 20 or so languages, just off the top of
    > your head, and not even mention Ruby. ;)


    If I were to rattle off a couple dozen languages, it probably wouldn't
    include Ruby either. Never learned it, don't (as yet) know what its
    advantage domain is. My list "runs somewhat thus": BASIC, 80x86
    Assembly, C, C++, Java, REXX, Pascal, Pike, Perl, PHP, Javascript,
    DeScribe Macro Language, Scheme, Python, ActionScript, DOS Batch, Lua,
    COBOL, FORTRAN, Ada, Modula-2, LPC, Erlang, Haskell... and that's not
    counting things like POV-Ray or LilyPond that aren't exactly
    _programming_ languages, although in some cases you could shoehorn an
    application into them. Granted, I do have some rather strange and
    esoteric interests, and I'm sure that Ruby is far better known than
    DeScribe Macro Language (!!), but I think first of those I've used,
    and then of the most famous.

    Sorry Ruby. No slight meant! :)

    ChrisA
     
    Chris Angelico, Mar 23, 2012
    #6
  7. Chris Angelico

    Steve Howell Guest

    On Mar 22, 6:11 pm, Steven D'Aprano <steve
    > wrote:
    > On Fri, 23 Mar 2012 06:14:46 +1100, Chris Angelico wrote:
    > > On Fri, Mar 23, 2012 at 4:44 AM, Steven D'Aprano
    > > <> 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.


    I agree. It's certainly true for spoken languages. The only
    programming language that I ever learned without experience in other
    languages was BASIC (because only one language can be our first). I
    believe I mastered BASIC, not that that is saying a whole lot.

    > 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, ...
    >


    VB, Java, C, C++, JS, PHP, and Perl are all 20th century languages
    FWIW. PHP, Java, and JS all emerged circa 1995 (17 years ago); C, C+
    +, and VB are even older. (And so is Python.)

    A future version of Python itself, or some language largely inspired
    by Python (CoffeeScript 3.0 maybe?), will eventually squeeze out Perl,
    PHP, and JS in the popularity contests. At least I'm crossing my
    fingers.

    VB will die with no obvious successors.

    C++ was never very distinct from C to begin with, and the two
    languages will eventually converge, die off, or be supplanted.

    In ten years we'll basically have only three 20th-century-ish
    languages in the top ten: Python', C', and Java'. The rest of the top
    ten most popular languages will be something truly 21st-century.
    They'll be languages that either haven't been invented yet or
    modernized derivatives of languages that we view as "fringe" today
    (Lisp'/Haskell'/etc.).
     
    Steve Howell, Mar 23, 2012
    #7
  8. Chris Angelico

    Steve Howell Guest

    On Mar 23, 12:05 am, Chris Angelico <> wrote:
    > On Fri, Mar 23, 2012 at 1:48 PM, Steve Howell <> wrote:
    > > On Mar 22, 6:11 pm, Steven D'Aprano <steve
    > > > wrote:
    > >> 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, ...

    >
    > > I love how you can rattle off 20 or so languages, just off the top of
    > > your head, and not even mention Ruby. ;)

    >
    > If I were to rattle off a couple dozen languages, it probably wouldn't
    > include Ruby either. Never learned it, don't (as yet) know what its
    > advantage domain is.


    Hype?

    > My list "runs somewhat thus": BASIC, 80x86
    > Assembly, C, C++, Java, REXX, Pascal, Pike, Perl, PHP, Javascript,
    > DeScribe Macro Language, Scheme, Python, ActionScript, DOS Batch, Lua,
    > COBOL, FORTRAN, Ada, Modula-2, LPC, Erlang, Haskell... and that's not
    > counting things like POV-Ray or LilyPond that aren't exactly
    > _programming_ languages, although in some cases you could shoehorn an
    > application into them. Granted, I do have some rather strange and
    > esoteric interests, and I'm sure that Ruby is far better known than
    > DeScribe Macro Language (!!), but I think first of those I've used,
    > and then of the most famous.
    >
    > Sorry Ruby. No slight meant! :)
    >


    If you're that adept at learning languages, then I recommend learning
    Ruby just for kicks, but you're not missing *that* much, trust me.
    I'd skip past Ruby and learn CoffeeScript.

    Of the languages that are in the scripting family, you already know
    REXX (supreme elegance for its time), Perl (I hate it now, but loved
    it before Python), PHP (truly easy to learn, you can never take that
    away from it), and Javascript (horrible syntax, awful platform, but at
    least they have first-class functions).

    You have the Assembly/C/C++/Java progression--definitely good stuff,
    even if the ending to the movie was a bit of a letdown.

    COBOL/Fortran/Ada gives you instance "old school" street cred.

    Haskell/Erlang/Scheme means you can hang out with the cool grad school
    kids in the CS/Math departments (no oxymoron intended).

    I confess--I've never learned LilyPond, Modula-2, or LPC! I mean, of
    course they're on my resume, just to get by HR screening, but that's
    just between you and me...
     
    Steve Howell, Mar 23, 2012
    #8
  9. Re: Number of languages known [was Re: Python is readable] - somewhatOT

    On Fri, Mar 23, 2012 at 7:04 PM, Steve Howell <> wrote:
    > If you're that adept at learning languages, then I recommend learning
    > Ruby just for kicks, but you're not missing *that* much, trust me.
    > I'd skip past Ruby and learn CoffeeScript.


    Sure. When I have some spare time... lessee, I think I have two spare
    minutes in the year 2015 that aren't allocated yet! Oops. There they
    go.

    > Of the languages that are in the scripting family, you already know
    > REXX (supreme elegance for its time), Perl (I hate it now, but loved
    > it before Python), PHP (truly easy to learn, you can never take that
    > away from it), and Javascript (horrible syntax, awful platform, but at
    > least they have first-class functions).
    >
    > You have the Assembly/C/C++/Java progression--definitely good stuff,
    > even if the ending to the movie was a bit of a letdown.


    +1 on the description, heh.

    > COBOL/Fortran/Ada gives you instance "old school" street cred.
    >
    > Haskell/Erlang/Scheme means you can hang out with the cool grad school
    > kids in the CS/Math departments (no oxymoron intended).


    Ehh, the ones from COBOL on were because I ran out of languages that
    I'm really familiar with, and enumerated a few famous ones. But the
    rest, I do actually know, and that's why I thought of them.

    > I confess--I've never learned LilyPond, Modula-2, or LPC!  I mean, of
    > course they're on my resume, just to get by HR screening, but that's
    > just between you and me...


    GNU LilyPond is a music publishing language (it's to music what TeX is
    to English, kinda). Awesome language and system. I can show you a few
    pieces I've done with Ly, it's beautiful music score from a very clean
    input file. Modula-2 is a Pascal-derived language that I haven't
    actually used, but it's cited as an influence in the development of
    several others that I have used. LPC is Lars Somebody's C, originally
    written as the basis for Lars Somebody's MUD or LPMUD, and was the
    basis for Pike (with which I'm very familiar, as readers of this list
    probably know).

    Half the above languages aren't on my resume, mainly because I don't
    really care about HR screening :)

    ChrisA
     
    Chris Angelico, Mar 23, 2012
    #9
  10. Chris Angelico

    Nathan Rice Guest

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

    Logo. It's turtles all the way down.
     
    Nathan Rice, Mar 23, 2012
    #10
  11. RE: Number of languages known [was Re: Python is readable] -somewhat OT

    > I confess--I've never learned LilyPond, Modula-2, or LPC! I mean, of

    > course they're on my resume, just to get by HR screening, but that's
    > just between you and me...


    You mean, you, him, this mailing list, and anyone that looks on the
    archives...

    Ramit


    Ramit Prasad | JPMorgan Chase Investment Bank | Currencies Technology
    712 Main Street | Houston, TX 77002
    work phone: 713 - 216 - 5423

    --
    This email is confidential and subject to important disclaimers and
    conditions including on offers forthe purchase or sale of
    securities, accuracy and completeness of information, viruses,
    confidentiality, legal privilege, and legal entity disclaimers,
    available at http://www.jpmorgan.com/pages/disclosures/email.
     
    Prasad, Ramit, Mar 23, 2012
    #11
  12. RE: Number of languages known [was Re: Python is readable] -somewhat OT

    > Logo. It's turtles all the way down.
    I had forgotten all about that, I should add that to my resume!
    I wonder what kind of job I could get writing primarily in Logo?

    Ramit


    Ramit Prasad | JPMorgan Chase Investment Bank | Currencies Technology
    712 MainStreet | Houston, TX 77002
    work phone: 713 - 216 - 5423

    --

    This email is confidential and subject to important disclaimersand
    conditions including on offers for the purchase or sale of
    securities, accuracy and completeness of information, viruses,
    confidentiality, legal privilege, and legal entity disclaimers,
    available at http://www.jpmorgan.com/pages/disclosures/email.
     
    Prasad, Ramit, Mar 23, 2012
    #12
  13. Chris Angelico

    Ethan Furman Guest

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

    Nathan Rice wrote:
    > Logo. It's turtles all the way down.


    +1 QOTW
     
    Ethan Furman, Mar 23, 2012
    #13
  14. Chris Angelico

    Peter Otten Guest

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

    Ethan Furman wrote:

    > Nathan Rice wrote:
    >> Logo. It's turtles all the way down.

    >
    > +1 QOTW


    Surely you're joking, Mr Furman!
     
    Peter Otten, Mar 23, 2012
    #14
  15. Re: Number of languages known [was Re: Python is readable] - somewhatOT

    On Fri, 23 Mar 2012 19:28:29 +0100, Peter Otten <>
    declaimed the following in gmane.comp.python.general:

    > Ethan Furman wrote:
    >
    > > Nathan Rice wrote:
    > >> Logo. It's turtles all the way down.

    > >
    > > +1 QOTW

    >
    > Surely you're joking, Mr Furman!


    No doubt... Everyone knows you have to get past the four elephants
    before you get to the turtles...
    --
    Wulfraed Dennis Lee Bieber AF6VN
    HTTP://wlfraed.home.netcom.com/
     
    Dennis Lee Bieber, Mar 23, 2012
    #15
  16. Chris Angelico

    Dave Angel Guest

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

    On 03/23/2012 02:28 PM, Peter Otten wrote:
    > Ethan Furman wrote:
    >
    >> Nathan Rice wrote:
    >>> Logo. It's turtles all the way down.

    >> +1 QOTW

    > Surely you're joking, Mr Furman!
    >


    Cracking safes was the best chapter.

    --

    DaveA
     
    Dave Angel, Mar 24, 2012
    #16
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. PhilC
    Replies:
    4
    Views:
    364
    PhilC
    Oct 30, 2004
  2. Adonis

    Python in the news, somewhat

    Adonis, May 14, 2005, in forum: Python
    Replies:
    0
    Views:
    273
    Adonis
    May 14, 2005
  3. Alex Willmer

    Human readable number formatting

    Alex Willmer, Sep 28, 2005, in forum: Python
    Replies:
    9
    Views:
    656
  4. Chris Angelico
    Replies:
    4
    Views:
    274
    Chris Angelico
    Apr 3, 2012
  5. Nathan Rice
    Replies:
    30
    Views:
    764
    Steve Howell
    Apr 4, 2012
Loading...

Share This Page