Computer Language Trends in 2009
<p>Six years ago, in <cite>The Art of Unix Programming</cite>, I observed <a href="http://www.catb.org/esr/writings/taoup/html/ch14s05.html">some interesting trends</a> in the deployment of programming languages.  One Christer NyfÃ¤lt mailed me this morning reporting that he had followed up by collecting the analogous statistics from SourceForge for present time. Here&#8217;s what he said (lightly copy-edited as his English is a bit shaky):</p>
<p><span id="more-1016"></span></p>
<blockquote><p>
I took data from Freshmeat, but its interface has changed recently, so I had to search for how many projects were tagged with the name of each language. My data is from 2009-05-27, a little over six years since you wrote that chapter.</p>
<p>My observations:</p>
<p>C: from 4845 to 8944, 184%<br />
C++: from 2098 to 4824, 230%<br />
Emacs Lisp: from 31 to 60, 194%</p>
<p>These are the language you claimed have reached stability, so let&#8217;s call a doubling of projects a stable growth rate.</p>
<p>Perl: from 2508 to 3730, 149%</p>
<p>Here we see the noted stagnation of Perl, only 50% growth instead of doubling expected.</p>
<p>Tcl: from 328 to 480, 146%</p>
<p>Same situation as Perl. Also, Ruby has reached similar numbers (469) as Tcl.</p>
<p>Python: from 948 to 3161, 333%</p>
<p>A tripling. We can start to expect Python to pass Perl in a couple of years.</p>
<p>Java: from 1900 to 5316, 280%</p>
<p>Also a big growth, and it has passed both C++ and Perl in numbers.</p>
<p>Shell: from 487 to 1064, 218%</p>
<p>Normal growth here.</p>
<p>So, the losers are Perl and Tcl, and the winners are Java and Python. Two losers that you predicted, one winner that you predicted, and one winner  that&#8217;s probably due to policy changes by Sun.</p>
<p>I&#8217;m interested in your take on this subject. A blog entry from you on it would be interesting. Are there any other trends caused by new languages?  Anything surprising? Would Tcl still be listed as a major language in second edition? Will Perl survive in the long run?
</p></blockquote>
<p>Your wish is my command, Christer, especially when you&#8217;re making me look prescient.  Not that it took a lot of clue to foresee these trends; I&#8217;d been watching since &#8217;97 and there was a lot of momentum on them.  In answer to your questions&#8230;</p>
<p>1. Ruby is probably the biggest disruptor since 2003.  For a while there I thought it might do to Python what Python did to Perl, but it didn&#8217;t sustain its initial growth surge and seems to be having trouble getting design wins nowadays outside a small community of very hard-core supporters.  I&#8217;m not knocking the language, mind you &#8211; it has some attractive features &#8211; but it looks like Ruby is turning out not to be quite enough stronger than Python to take share away from it.</p>
<p>2. Tcl looks to me like it&#8217;s on life-support at this point, with the twin iron lungs being Expect and Tkinter.  I bet if you dug deep you&#8217;d find that&#8217;s what most of the new &#8220;Tcl&#8221; projects are actually using it for.</p>
<p>3. Yeah, Perl will survive &#8211; because there&#8217;s huge dark masses of legacy out there that we&#8217;ll be dealing with for decades.  Perl has become the COBOL of web design.</p>
