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">
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">
13 span.c6 {color: brown}
17 div.c2 {text-align: center}
18 h1.c1 {text-align: center}
23 <table width="100%" cellpadding="0" summary="Canned page header">
25 <td width="30%" align="right">$Date$</td>
30 <h1 class="c1">Trends in the fetchmail project's growth</h1>
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,
37 href="http://www.libpng.org/pub/png/pngapbr.html">browser that can
40 <div class="c2"><img src="growth.png"
41 alt="Fetchmail trends graph" /></div>
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>
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>
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>
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
67 <p>This graph is quite revealing. Several trends stand out:</p>
71 <p>Over time, the project population displays rather consistent
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>
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>
88 <p>After 4.3.0, the developer population remained fairly stable
89 around an average of about 250 participants.</p>
93 <p>Essentially all population growth after 4.3.0 happened on the
94 announce list, among people using fetchmail but not active
99 <p>The growth trend in code size looks sublinear, perhaps
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>
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>
114 <table width="100%" cellpadding="0" summary="Canned page header">
116 <td width="30%" align="right">$Date$</td>
121 <address>Eric S. Raymond <a
122 href="mailto:esr@thyrsus.com"><esr@thyrsus.com></a></address>