[E-Lang] measurement of programming language popularity in the open source community
Zooko
zooko@zooko.com
Tue, 16 Oct 2001 13:59:22 -0700
In this post to e-lang, I reported on which programming languages were used for
Source Forge projects:
http://www.eros-os.org/pipermail/e-lang/2001-February/004594.html
Now I'm reporting on which programming languages are used for freshmeat
projects.
Freshmeat is probably more representative of the open source community as a
whole, because an open source project gets a freshmeat entry if any developer,
user, or freshmeat editor decides to list it, whereas it gets a SourceForge
entry only if the developer decides to make SourceForge her primary base of
operations.
C: 2673
Perl: 1361
C++: 1020
PHP: 740
Java: 726
Python: 403
Unix Shell: 246
Tcl: 190
SQL: 124
Other: 89
JavaScript: 85
Assembly: 83
Other Scripting Engines: 41
Lisp: 35
Scheme: 35
Ruby: 31
Objective C: 26
PL/SQL: 21
Fortran: 18
Eiffel: 16
Delphi: 15
Ada: 15
ML: 15
Pascal: 15
Awk: 13
Zope: 13
Forth: 11
ASP: 9
Emacs-Lisp: 9
Haskell: 8
Cold Fusion: 7
Visual Basic: 6
Modula: 5
Rexx: 5
Dylan: 4
Erlang: 4
Object Pascal: 4
APL: 3
Smalltalk: 3
PROGRESS: 2
Prolog: 2
Simula: 1
XBasic: 1
Euler: 1
Euphoria: 1
Basic: 1
Logo: 0
Next I tried to filter out the vaporous and moribund projects.
My methodology [shouldn't that be "method"? -Ed.] was to look at each
programming language and count how many projects had greater than 6%
popularity. I chose 6% because Cygwin has 6.52% popularity and I like Cygwin.
Popularity is defined as (record hits * URL hits * subscriptions)^(1/3), as
described in the freshmeat FAQ:
http://freshmeat.net/faq/view/30/
C: 67
C++: 23
PHP: 17
Perl: 10
Unix Shell: 8
Assembly: 5
Python: 3
Java: 2 (Hm... but they are Mozilla and Netscape)
JavaScript: 2 (Mozilla, Netscape)
Ada: 1
ASP: 1
PL/SQL: 1
SQL: 1
Scheme: 1
Tcl: 1
The rest all have 0:
APL, awk, Basic, Delphi, Cold Fusion, Dylan, Eiffel, Forth, Erlang, Euphoria,
Emacs-Lisp, Fortran, Haskell, Lisp, ML, Modula, Object Pascal, Objective C,
Other, Pascal, Prolog, PROGRESS, Rexx, Simula, Smalltalk, Ruby, Visual Basic,
XBasic, Zope
Regards,
Zooko