Java tops C as most popular language in developer index

Discussion in 'C Programming' started by Lynn McGuire, Aug 14, 2013.

  1. Lynn McGuire

    Lynn McGuire Guest

    Lynn McGuire, Aug 14, 2013
    #1
    1. Advertisements

  2. That information seems to come from
    http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
    where they explain how a change in their method has affected C and
    Objective-C negatively. So either they've been wrong in the past having
    C ahead of Java, or they're wrong now. But with only a 0.004%
    difference, and no margin of error given, it really doesn't matter
    anyway.
     
    Mark Storkamp, Aug 14, 2013
    #2
    1. Advertisements

  3. Why not add Ada, Haskell and Python, while you are at it? C++ and
    Objective C are not C. You might just as well, and probably more
    justifiably, add them to Java instead.
     
    Jens Stuckelberger, Aug 14, 2013
    #3
  4. Lynn McGuire

    Lynn McGuire Guest

    The margin of error is probably +-5%.

    Lynn
     
    Lynn McGuire, Aug 14, 2013
    #4
  5. It always seemed to me that Java was more C-like than C++,
    so why not add Java and C?

    Just because they have the letter C in the name doesn't
    make them similar. Might as well ad COBOL, too.

    -- glen
     
    glen herrmannsfeldt, Aug 14, 2013
    #5
  6. Lynn McGuire

    Lynn McGuire Guest

    To me, C++ and Objective C are extensions of
    C. Java is a do-over of C.

    Lynn
     
    Lynn McGuire, Aug 14, 2013
    #6
  7. Lynn McGuire

    Melzzzzz Guest

    Melzzzzz, Aug 14, 2013
    #7
  8. Lynn McGuire

    James Kuyper Guest

    Your basis for that estimate is what, exactly? Like most other survey
    reports where no attempt is made to estimate the margin of error, it
    also doesn't contain enough information to make your own estimate.
    Therefore, presumably your estimate is based upon some other source?
     
    James Kuyper, Aug 14, 2013
    #8
  9. Lynn McGuire

    James Kuyper Guest

    Before making a big deal about those results, take a careful look at the
    Java and C lines on the "Long term trends" plot for the report that the
    article mentioned above was based upon:
    <http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html>
     
    James Kuyper, Aug 14, 2013
    #9
  10. Java tends to be used a lot in universities as an introductory programming
    language. Since the statistics measure websites that use the language for
    pedagogical or demonstrative purposes, that will skew the results.

    Most interesting or important functions are coded in C. But a lot of actual
    applications are a layer of another language put on top. For instance a typical
    application might query a database, and display results on a webpage. The
    databases will have a query parsing engine and indexing and caching algorithms,
    which are likely to be written in C. The web browser will call code to render
    text and images into windows, which will also likely be written in C. But the
    two are glued together by a high-level language, which may well not be C.
     
    Malcolm McLean, Aug 14, 2013
    #10
  11. (snip on poll results)
    Without many assumptions, the uncertainty in a count, such as
    the number of poll respondants, is the square root of that number.

    A 5% uncertainty, 1 in 20, would be usual if 400 people were
    in that sample. It then takes 625 people to get 4%, about 1000
    to get 3%, and 2500 to get 2%. Assuming the cost is linear in the
    number of people polled, note that the cost starts to go up
    pretty fast at that point.

    It should be done separately for each category, but some will do it
    based on the total number of responders.

    Worse than 5%, it is probably not worth doing at all, so
    about 5% is pretty usual.

    -- glen
     
    glen herrmannsfeldt, Aug 14, 2013
    #11
  12. (snip, I wrote)
    I suppose, but it always seemed to met that C++ tried to be
    a little more different than was needed. Well, partly that is
    because I never liked the C++ << and >> I/O operators.

    Java tried for a reasonable balance, but also not to alienate
    C programmers.

    -- glen
     
    glen herrmannsfeldt, Aug 14, 2013
    #12
  13. Lynn McGuire

    James Kuyper Guest

    We were given neither a count, nor the number of respondents, so that
    wouldn't be a very useful rule even if it were applicable.

    The number we were given is a percentage. If p is the population average
    for the fraction of the population for which something is true, the
    margin of error when estimating p using a sample size of n is
    sqrt(p*(1-p)/n). IIRC, using the sample mean to estimate the value of p
    for purposes of applying this equation make it an under-estimate, but
    that's less of a problem for sufficiently large n.

    But we weren't given the sample size, either.
    The testing methodology involves searching for references to a given
    programming language on a variety of web sites. The cost per data point
    is pretty small, and the number of samples taken should be pretty large.
    I'd suspect that the errors in their results are dominated by systematic
    error associated with their sampling technique, rather than statistical
    error due to sample size.
    As far as I know, we have no information from which to estimate those
    systematic errors.
     
    James Kuyper, Aug 14, 2013
    #13
  14. Lynn McGuire

    Jorgen Grahn Guest

    Are you seriously suggesting that C programmers would feel more at
    home in Java than in C++, because Java doesn't overload the <<
    operator?

    Java:
    - everything is a reference
    - pointers don't exist (except as NullPointerExceptions)
    - there are no functions, only classes with methods
    - your usual OS APIs and libraries don't exist; use the-framework-
    of-the-month instead!

    C++:
    - don't use void*, and your C programs will pretty much
    work as before

    (Yes, I'm biased.)

    /Jorgen
     
    Jorgen Grahn, Aug 14, 2013
    #14
  15. They're not sampling. They're taking a whole population, measuring it,
    then drawing conclusions about the factors that underlie those measurements.
    But you can't be perfect. In any census, there'll be some you miss, some
    you count twice, and some marginal cases where it's not clear whether they
    should be counted or not. Then conclusions don't necessarily follow.
    For instance if you do an census of English people, you'll find that the
    number claiming to be "Anglican" is about five times as large as the number
    claiming to be "Catholic". So you'd assume that Anglican congregations are
    about five times as large. Actually they're about equal, and asking people
    to self-identify with a religion isn't a good way of predicting behaviour.
     
    Malcolm McLean, Aug 14, 2013
    #15
  16. Lynn McGuire

    Jorgen Grahn Guest

    The thing the C* languages mentioned (except COBOL) *do* have in
    common is that they can easily call C APIs. (I was about to add
    "and survive without a large runtime environment", but I don't know
    how Objective C works in that respect).

    Not that this makes summing up their numbers appropriate ...

    /Jorgen
     
    Jorgen Grahn, Aug 14, 2013
    #16
  17. Lynn McGuire

    Lynn McGuire Guest

    SWAG - Scientific Wild Ass Guess.

    Lynn
     
    Lynn McGuire, Aug 14, 2013
    #17
  18. Lynn McGuire

    Lynn McGuire Guest

    Yes. All iOS and Mac OS apps have their user
    interface written in Objective C.

    Lynn
     
    Lynn McGuire, Aug 14, 2013
    #18
  19. Lynn McGuire

    Lynn McGuire Guest

    Fat Browser clients, such as google apps (gmail),
    are written in Java and compiled down to Javascript.
    We are getting ready to convert our software from
    C++ to Java for this reason.

    Lynn
     
    Lynn McGuire, Aug 14, 2013
    #19
  20. Lynn McGuire

    Nobody Guest

    Note that the "index" in question is tiobe, which monitors web traffic
    relating to a language, not the actual use of the language (and defining
    the latter is almost as hard as measuring it).
     
    Nobody, Aug 15, 2013
    #20
    1. Advertisements

Ask a Question

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

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.