| 1 |
<?xml version="1.0" encoding="ISO-8859-1"?> |
| 2 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
| 3 |
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| 4 |
<html xmlns="http://www.w3.org/1999/xhtml"> |
| 5 |
<head> |
| 6 |
<link rev="made" href="mailto:esr@snark.thyrsus.com" /> |
| 7 |
<meta name="description" |
| 8 |
content="Fetchmail participation statistics" /> |
| 9 |
<meta name="keywords" content="fetchmail, growth, analysis" /> |
| 10 |
<title>Trends in the fetchmail project's growth</title> |
| 11 |
<style type="text/css"> |
| 12 |
/*<![CDATA[*/ |
| 13 |
span.c6 {color: brown} |
| 14 |
span.c5 {color: red} |
| 15 |
span.c4 {color: lime} |
| 16 |
span.c3 {color: blue} |
| 17 |
div.c2 {text-align: center} |
| 18 |
h1.c1 {text-align: center} |
| 19 |
/*]]>*/ |
| 20 |
</style> |
| 21 |
</head> |
| 22 |
<body> |
| 23 |
<table width="100%" cellpadding="0" summary="Canned page header"> |
| 24 |
<tr> |
| 25 |
<td width="30%" align="right">$Date$</td> |
| 26 |
</tr> |
| 27 |
</table> |
| 28 |
|
| 29 |
<hr /> |
| 30 |
<h1 class="c1">Trends in the fetchmail project's growth</h1> |
| 31 |
|
| 32 |
<p>The scattergram below was made with Gnuplot 3.7 from data pulled |
| 33 |
directly out of the project NEWS file using two custom |
| 34 |
shellscripts, <a href="timeseries">timeseries</a> and <a |
| 35 |
href="growthplot">growthplot</a>. If you see a broken-image icon, |
| 36 |
upgrade to a <a |
| 37 |
href="http://www.libpng.org/pub/png/pngapbr.html">browser that can |
| 38 |
view PNGs</a>.</p> |
| 39 |
|
| 40 |
<div class="c2"><img src="growth.png" |
| 41 |
alt="Fetchmail trends graph" /></div> |
| 42 |
|
| 43 |
<p>The graph shows the population growth of the fetchmail project. |
| 44 |
The horizontal scale is days since baseline, which is when I |
| 45 |
started collecting statistics in October 1996 at version 1.9.0. |
| 46 |
Left vertical scale is number of participants. There is one data |
| 47 |
point for each release; therefore, the changes in density of marks |
| 48 |
indicate release frequency.</p> |
| 49 |
|
| 50 |
<p>The peak in the earliest part of the graph (before the note "Bad |
| 51 |
addresses dropped") seems to be an artifact; I was not regularly |
| 52 |
dropping addresses that became invalid at the time. Turnover on the |
| 53 |
list seems to be about 5% per month (but that's just my estimate, I |
| 54 |
don't have numbers on this).</p> |
| 55 |
|
| 56 |
<p>The <span class="c3">blue scatter of squares</span> is total |
| 57 |
participants. The <span class="c4">green scatter of crosses</span> |
| 58 |
is the count of people on fetchmail-friends after I split the list. |
| 59 |
The <span class="c5">cyan scatter of diamonds</span> is the |
| 60 |
population of fetchmail-announce after the split.</p> |
| 61 |
|
| 62 |
<p>The <span class="c6">brown scatter of diamonds</span> tracks |
| 63 |
project size in lines of code (right vertical axis). The scale |
| 64 |
relationship between this scatter and the other three is |
| 65 |
arbitrary.</p> |
| 66 |
|
| 67 |
<p>This graph is quite revealing. Several trends stand out:</p> |
| 68 |
|
| 69 |
<ul> |
| 70 |
<li> |
| 71 |
<p>Over time, the project population displays rather consistent |
| 72 |
linear growth.</p> |
| 73 |
</li> |
| 74 |
|
| 75 |
<li> |
| 76 |
<p>The key event in the project's lifetime was release 4.3.0 in |
| 77 |
October 1997, when I declared the code to be out of development and |
| 78 |
in maintainance mode, and split the fetchmail list.</p> |
| 79 |
</li> |
| 80 |
|
| 81 |
<li> |
| 82 |
<p>The run-up to 4.3.0 saw the most intensive spate of releases in |
| 83 |
the project's history (the gap in that run happened when I took a |
| 84 |
two-week vacation). It was followed by a significant slowdown.</p> |
| 85 |
</li> |
| 86 |
|
| 87 |
<li> |
| 88 |
<p>After 4.3.0, the developer population remained fairly stable |
| 89 |
around an average of about 250 participants.</p> |
| 90 |
</li> |
| 91 |
|
| 92 |
<li> |
| 93 |
<p>Essentially all population growth after 4.3.0 happened on the |
| 94 |
announce list, among people using fetchmail but not active |
| 95 |
co-developers.</p> |
| 96 |
</li> |
| 97 |
|
| 98 |
<li> |
| 99 |
<p>The growth trend in code size looks sublinear, perhaps |
| 100 |
logarithmic.</p> |
| 101 |
</li> |
| 102 |
</ul> |
| 103 |
|
| 104 |
<p>The linear growth trend in population is particularly |
| 105 |
interesting; a priori we might expect geometric or logistic growth, |
| 106 |
given that the project spreads by word of mouth.</p> |
| 107 |
|
| 108 |
<p>It has been suggested that the linear growth rate is the result |
| 109 |
of a situation in which both number of projects and the population |
| 110 |
of eligible programmers are rising on trend curves of the same |
| 111 |
(probably exponential) rate.</p> |
| 112 |
|
| 113 |
<hr /> |
| 114 |
<table width="100%" cellpadding="0" summary="Canned page header"> |
| 115 |
<tr> |
| 116 |
<td width="30%" align="right">$Date$</td> |
| 117 |
</tr> |
| 118 |
</table> |
| 119 |
|
| 120 |
<br clear="left" /> |
| 121 |
<address>Eric S. Raymond <a |
| 122 |
href="mailto:esr@thyrsus.com"><esr@thyrsus.com></a></address> |
| 123 |
</body> |
| 124 |
</html> |