REPOST: Re: Python Popularity, python at sourceforge

Ron Stephens rdsteph at earthlink.net
Sat Dec 29 16:36:20 CET 2001


Wow. Thanks, very interesting "gossip" which i enjoy ;-))))


Roeland Rengelink wrote:

> Hi,
>
> As was remarked earlier in this thread, a measure of Python's
> popularity, if not quality, can be obtained by looking at the number
> of sourceforge projects using Python. Below you'll find a number of
> tables comparing sourceforge projects using Python to those using
> Perl, PHP, Java, C and C++. These numbers were obtained by
> screen-scraping the sourceforge trove pages.
>
> I started this analysis expecting to find clear evidence for Python's
> - exploding popularity
> - cross-platform usability
> - ease of development
>
> Alas, the numbers are far more ambigious than I'd hoped. To summarize:
>
> 1. Python is the smallest of the 6 languages discussed here.
> 2. Python is currently growing slower than PHP and Java, but faster
>    than C and Perl.
>    - Python has only been gaining on Perl for the last 6 months
>    - the difference in growth w.r.t PHP and Java may be getting smaller
> 3. Java is more cross-platform than Python. Perl, C, C++ are less.
> 4. There is no clear evidence for Python's ease of development.
>
> The most interesting result (I think) is Python's changing role from a
> glue/scripting language to a stand-alone development language.
> Cross-language development statistics are investigated at the end of
> this post.
>
> 1. All projects
>
> The following two tables list the cumulative number and quarterly
> growth rates of sourceforge projects using Python, Perl, PHP, Java or
> C++ as one of their programming languages. Note that projects using
> more than one of these languages contribute to the numbers of each of
> those languages.
>
> The following conclusions can be drawn
> - Python is only half as big as any of the other languages.
> - The growth rate of Perl, as compared to Python, has been steadily
>   declining since ther third quarter of 2000. It has become smaller
>   than Python's growth rate in the third quarter of 2001.
> - The growth rates of PHP and Java have been much larger than
>   Python's. However, up to the third quarter of 2001 their growth rates
>   declined relative to Python.
> - Since the third quarter of 2000, C has been the slowest growing
>   language.
> - The growth rate of Python is most similar to that of C++
>
> To summarize:
>
> Early 2000 Python was the slowest growing language. Currently only PHP
> and Java are growing faster, and the gap is closing
>
> Table 1a. Cumulative number of projects
>                                                 Python=1
>          Python Perl  PHP Java    C  C++   Perl  PHP Java    C  C++
> 00-03-01     98  172   84  139  529  361    1.8  0.9  1.4  5.4  3.7
> 00-06-01    221  417  251  371 1220  882    1.9  1.1  1.7  5.5  4.0
> 00-09-01    374  785  555  756 2030 1518    2.1  1.5  2.0  5.4  4.1
> 00-12-01    528 1178  883 1257 2827 2220    2.2  1.7  2.4  5.4  4.2
> 01-03-01    701 1575 1328 1841 3706 2949    2.2  1.9  2.6  5.3  4.2
> 01-06-01    898 2020 1867 2539 4652 3806    2.2  2.1  2.8  5.2  4.2
> 01-09-01   1097 2406 2326 3164 5513 4589    2.2  2.1  2.9  5.0  4.2
> 01-12-01   1266 2690 2745 3774 6189 5285    2.1  2.2  3.0  4.9  4.2
>
> Table 1b. Quarterly growth rates
>              Percentage growth             Python=1
>           Pyth Prl PHP Jav   C C++   Perl  PHP Java    C  C++
> 00-06-01   125 142 198 166 130 144    1.1  1.6  1.3  1.0  1.1
> 00-09-01    69  88 121 103  66  72    1.3  1.7  1.5  1.0  1.0
> 00-12-01    41  50  59  66  39  46    1.2  1.4  1.6  1.0  1.1
> 01-03-01    32  33  50  46  31  32    1.0  1.5  1.4  0.9  1.0
> 01-06-01    28  28  40  37  25  29    1.0  1.4  1.3  0.9  1.0
> 01-09-01    22  19  24  24  18  20    0.9  1.1  1.1  0.8  0.9
> 01-12-01    15  11  18  19  12  15    0.8  1.2  1.3  0.8  1.0
>
> 2. Cross platform projects
>
> Python advertises itself as a cross-platform development language.
> Here, I assume that cross-platform means either OS-independent, or for
> 2 or more of the the different OS families [Unix, Win, Mac]
>
> The conclusion here is pretty much expected:
> - Python is more 'cross-platform' than Perl, C and C++, but less so
>   than Java, and comparable to PHP
>
> Table 2a Cumulative number of cross-platform projects
>                                                 Python=1
>          Python Perl  PHP Java    C  C++   Perl  PHP Java    C  C++
> 00-06-01    157  273  172  311  590  484    1.7  1.1  2.0  3.8  3.1
> 00-12-01    365  722  598 1047 1317 1159    2.0  1.6  2.9  3.6  3.2
> 01-06-01    626 1243 1298 2135 2122 1939    2.0  2.1  3.4  3.4  3.1
> 01-12-01    900 1658 1959 3198 2836 2701    1.8  2.2  3.6  3.2  3.0
>
> Table 2b Cross-platform projects as fraction of all new projects
>                                            Python=1
>           Pyth Prl PHP Jav   C C++   Perl  PHP Java    C  C++
> 00-06-01    71  65  68  83  48  54    0.9  1.0  1.2  0.7  0.8
> 00-12-01    67  59  67  83  45  50    0.9  1.0  1.2  0.7  0.7
> 01-06-01    70  61  71  84  44  49    0.9  1.0  1.2  0.6  0.7
> 01-12-01    74  61  75  86  46  51    0.8  1.0  1.2  0.6  0.7
>
> 3. Active projects
>
> Python also advertises itself for its ease of development. One could
> expect that easy projects are more active than difficult projects.
>
> The following tables list statistics for projects that have an
> activiy_ranking of more than 80 %. Since I don't know how this
> activity is measured I can't really interpret these numbers.
>
> Activity ranking is a relative measure of a projects activity, which
> is computed over all sourceforge projects. An activity ranking of 80%
> means 80% as active as the most active sourceforge project. Activity
> seemt to comprise both developer activity (checkins, bug fixes) and
> user activity (downloads, bug reports).
>
> The most notable result from these tables is probably that the numbers
> are so similiar. Hence, my tentative conclusion:
>
> - Project activity is largely independent from the choice of
>   programming language and therefore also independent of the
>   'accessability' of the language
>
> Table 3a Cumulative number of active projects
>                                                 Python=1
>          Python Perl  PHP Java    C  C++   Perl  PHP Java    C  C++
> 00-06-01     24   36   21   33  156   94    1.5  0.9  1.4  6.5  3.9
> 00-12-01     43   59   49   74  268  174    1.4  1.1  1.7  6.2  4.0
> 01-06-01     59   95   81  127  368  263    1.6  1.4  2.2  6.2  4.5
> 01-12-01     74  120  128  182  441  347    1.6  1.7  2.5  6.0  4.7
>
> Table 3b Percentage active as fraction of all projects
>                                            Python=1
>           Pyth Prl PHP Jav   C C++   Perl  PHP Java    C  C++
> 00-06-01    10   8   8   8  12  10    0.8  0.8  0.8  1.2  1.0
> 00-12-01     6   3   4   4   6   5    0.5  0.7  0.7  1.1  1.0
> 01-06-01     4   4   3   4   5   5    1.0  0.8  1.0  1.3  1.3
> 01-12-01     4   3   5   4   4   5    0.9  1.3  1.1  1.2  1.4
>
> 4 Mature projects
>
> Ease of development may also be reflected in what percentage of
> projects reaches a mature development status. The following tables
> give numbers for projects that reached a mature or production/stable
> development status.
>
> The data suggest that Perl and C project reach a mature development
> status more often than Python, PHP, Java and C++ projects.
>
> Note that development status is assessed by the project developers
> themselves
>
> Table 4a Cumulative number of mature projects
>                                                 Python=1
>          Python Perl  PHP Java    C  C++   Perl  PHP Java    C  C++
> 00-06-01     43  118   41   59  294  168    2.7  1.0  1.4  6.8  3.9
> 00-12-01     87  233  109  161  599  342    2.7  1.3  1.9  6.9  3.9
> 01-06-01    122  367  194  286  887  503    3.0  1.6  2.3  7.3  4.1
> 01-12-01    160  455  280  399 1110  644    2.8  1.8  2.5  6.9  4.0
>
> Table 4b Percentage mature as fraction of all projects started.
>                                            Python=1
>           Pyth Prl PHP Jav   C C++   Perl  PHP Java    C  C++
> 00-06-01    19  28  16  15  24  19    1.5  0.8  0.8  1.2  1.0
> 00-12-01    14  15  10  11  18  13    1.1  0.8  0.8  1.3  0.9
> 01-06-01     9  15   8   9  15  10    1.7  0.9  1.0  1.7  1.1
> 01-12-01    10  13   9   9  14   9    1.3  0.9  0.9  1.4  0.9
>
> 5. Cross language development
>
> The most interesting results are obtained when we compare projects
> that use a single language with those that use multiple languages. The
> follwing tables compare the fraction of projects that use more than
> one language, to those that only use a single language.
>
> There are many trends here.
>
> - Python, Perl, PHP and Java projects are increasingly becoming
>   single-language projects.
> - The percentage of cross-language projects in cross-platform projects
>   is lower for Python, Perl, PHP and Java, while its substantially
>   higher for C and C++ projects.
> - Of the currently active Python projects nearly all old projects
>   included other languages, while only a third of the new projects
>   does so.
> - Perl is the only language for which the fraction of multi-language
>   projects is larger for active projects.
> - For the mature Python projects there is also a large difference in
>   the fraction of cross-language projects between old and new
>   projects.
> - For all languages the percentage of mature projects that use more
>   than one language is smaller.
>
> One conclusion
>
> - Python is increasingly used a stand-alone development language,
>   especially in active and mature projects.
>
> Table 5a  Percentage of all new projects
>           Pyth Prl PHP Jav   C C++   Perl  PHP Java    C  C++
> 00-06-01    55  51  41  35  47  46    0.9  0.8  0.6  0.9  0.8
> 00-12-01    52  42  37  33  47  46    0.8  0.7  0.6  0.9  0.9
> 01-06-01    51  48  39  30  46  46    0.9  0.8  0.6  0.9  0.9
> 01-12-01    45  42  31  26  47  43    0.9  0.7  0.6  1.0  1.0
>
> Table 5b  Percentage of new cross platform projects
>           Pyth Prl PHP Jav   C C++   Perl  PHP Java    C  C++
> 00-06-01    52  47  44  32  56  51    0.9  0.8  0.6  1.1  1.0
> 00-12-01    50  40  33  30  54  50    0.8  0.7  0.6  1.1  1.0
> 01-06-01    51  43  36  27  54  52    0.8  0.7  0.5  1.1  1.0
> 01-12-01    44  39  28  24  56  48    0.9  0.7  0.6  1.3  1.1
>
> Table 5c  Percentage of active projects
>           Pyth Prl PHP Jav   C C++   Perl  PHP Java    C  C++
> 00-06-01    87  58  19  12  51  44    0.7  0.2  0.1  0.6  0.5
> 00-12-01    68  60  17  46  44  51    0.9  0.3  0.7  0.7  0.7
> 01-06-01    50  55  40  32  47  37    1.1  0.8  0.6  0.9  0.7
> 01-12-01    33  64  25  19  52  47    1.9  0.8  0.6  1.6  1.4
>
> Table 5c  Percentage of mature projects
>           Pyth Prl PHP Jav   C C++   Perl  PHP Java    C  C++
> 00-06-01    58  36  34  27  37  37    0.6  0.6  0.5  0.6  0.6
> 00-12-01    47  26  20  32  37  44    0.5  0.4  0.7  0.8  0.9
> 01-06-01    45  37  32  24  34  36    0.8  0.7  0.5  0.8  0.8
> 01-12-01    34  31  25  22  36  40    0.9  0.7  0.6  1.1  1.2
>
> Undoubtedly there's more to be gained from these numbers. But this is
> starting to look like work, so...
>
> Roeland
>
> --
> r.b.rigilink at chello.nl
>
> "Half of what I say is nonsense. Unfortunately I don't know which half"

========= WAS CANCELLED BY =======:
Path: news.sol.net!spool1-milwwi.newsops.execpc.com!newsfeeds.sol.net!news-out.visi.com!hermes.visi.com!newsfeed.direct.ca!look.ca!newsfeed.dacom.co.kr!feeder.kornet.net!news1.kornet.net!ua4canc3ll3r
From: Ron Stephens <rdsteph at earthlink.net>
Newsgroups: comp.lang.python
Subject: cmsg cancel <3C2DE34A.4C30FAD2 at earthlink.net>
Control: cancel <3C2DE34A.4C30FAD2 at earthlink.net>
Date: Mon, 31 Dec 2001 02:00:40 GMT
Organization: A poorly-installed InterNetNews site
Lines: 2
Message-ID: <cancel.3C2DE34A.4C30FAD2 at earthlink.net>
NNTP-Posting-Host: 211.57.49.2
X-Trace: news2.kornet.net 1009774733 27193 211.57.49.2 (31 Dec 2001 04:58:53 GMT)
X-Complaints-To: usenet at news2.kornet.net
NNTP-Posting-Date: Mon, 31 Dec 2001 04:58:53 +0000 (UTC)
X-No-Archive: yes
X-Unac4ncel: yes
X-Commentary: I love NewsAgent 1.10 and the Sandblaster Cancel Engine Build 74 (19 March 1999)

This message was cancelled from within Mozilla.



More information about the Python-list mailing list