http://www.perlmonks.org?node_id=672408


in reply to LUI: Language Usage Indicators page

An interesting concept, but any attempt to bring popularity by numbers into an argument isn't going to hold as much water as it might first appear.

Age has a lot to do with it. Newer languages could naturally be expected to be "better" (based on more experience/research/whatever going into their design, learning from the older guys) but they will still take awhile to catch up with say, C++'s or Java's huge head start.
Or, for years and years native Windows development had to be done in old VB or C++; now you can use C#. In fact, it's almost the automatic choice for it these days (or VB.NET), but lots of stuff was already done in C(++), lots of people had to learn it, now people have to maintain it, and most people are naturally opposed to change, and that influences the metrics.

And what about versioning? Person A might use Python over Ruby until Ruby 1.9 finalizes with those whatever really important features he was looking for.

Anyway, cool nonetheless, I guess I'm just saying it seems to be more useful to look to the future than to the past when deciding which languages to learn or whatever.
  • Comment on Re: LUI: Language Usage Indicators page

Replies are listed 'Best First'.
Re^2: LUI: Language Usage Indicators page
by arbingersys (Pilgrim) on Mar 06, 2008 at 15:54 UTC

    ... it seems to be more useful to look to the future than to the past when deciding which languages to learn or whatever.

    It's just that I'm not sure how to graph the future :)

    You make some good points however. In reviewing LUI, I've realized that most of the metrics are affected by the past (which I don't think is a bad thing, but must be accounted for). For instance, C/C++ have such high numbers partly because they've had so much more time to accumulate write-ups.

    How about some metrics that try to look at the present? I've got one more SourceForge metric I want to add, the "Most Active" projects, and as I mention above I want a metric that looks at "community" activity, which is obviously both a past and present metric.

    Part of the value, of course, in a site like LUI, is not what it can give you immediately, but what can be mined at some later date. Patterns emerge from the past that can help you guess at the future.

    A blog among millions.
      It's just that I'm not sure how to graph the future :)
      A valid point :)

      Perhaps the opposite approach could also be considered? That is, metrics of projects that have failed and projects that are being rewritten in a different language. (True, there can be just as many non-language-related reasons for those things too, but hey.)

      Another cool thing would be more comparisons relative to the same "field" of programming. Comparing C++ to PHP, for example, doesn't make much sense, as you couldn't use one for the other even if you wanted to. (Going out on a limb here by assuming that anyone would want to use C++ or PHP for anything :P) Of course it can get somewhat complicated when looking at, for example, Java, where people have tried to make it do everything including web programming, which is why you can't just say "well, only look at PHP numbers compared to Perl numbers then."

      Some ideas anyway. Godspeed!
Re^2: LUI: Language Usage Indicators page
by sundialsvc4 (Abbot) on Mar 07, 2008 at 19:27 UTC

    Let's talk about the real world. You work for a moderately-sized major retailer with about 700 stores around the country, hundreds of thousands of transactions per day every day, and you do all the back-end processing in Perl. There are about 4,730 Perl programs and associated libraries that figure into some part of that operation. They're working on a cluster of 64 blade-server computers located at 7 data-centers around the country, around the clock, not to mention the back-end processing controllers located in every store. And then there are the distribution-centers, the warehouses... 24/7/365, the processing never ceases.

    All in Perl... all on Linux.

    Now, what were you saying about “C++'s or Java's huge head-start?” How, exactly, do you propose that this company is going to accomplish this “change” that you speak of, let alone pay for it? Do we shut-down 700 stores for the interim, and stop making money and all that?