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%">Back to <a href="/~esr">Eric's Home Page</a></td>
26 <td width="30%" align="center">Up to <a href="/~esr/sitemap.html">Site Map</a></td>
27 <td width="30%" align="right">$Date: 2002/09/09 07:24:37 $</td>
32 <h1 class="c1">Trends in the fetchmail project's growth</h1>
34 <p>The scattergram below was made with Gnuplot 3.7 from data pulled
35 directly out of the project NEWS file using two custom
36 shellscripts, <a href="timeseries">timeseries</a> and <a
37 href="growthplot">growthplot</a>. If you see a broken-image icon,
39 href="http://www.libpng.org/pub/png/pngapbr.html">browser that can
42 <div class="c2"><img src="growth.png"
43 alt="Fetchmail trends graph" /></div>
45 <p>The graph shows the population growth of the fetchmail project.
46 The horizontal scale is days since baseline, which is when I
47 started collecting statistics in October 1996 at version 1.9.0.
48 Left vertical scale is number of participants. There is one data
49 point for each release; therefore, the changes in density of marks
50 indicate release frequency.</p>
52 <p>The peak in the earliest part of the graph (before the note "Bad
53 addresses dropped") seems to be an artifact; I was not regularly
54 dropping addresses that became invalid at the time. Turnover on the
55 list seems to be about 5% per month (but that's just my estimate, I
56 don't have numbers on this).</p>
58 <p>The <span class="c3">blue scatter of squares</span> is total
59 participants. The <span class="c4">green scatter of crosses</span>
60 is the count of people on fetchmail-friends after I split the list.
61 The <span class="c5">cyan scatter of diamonds</span> is the
62 population of fetchmail-announce after the split.</p>
64 <p>The <span class="c6">brown scatter of diamonds</span> tracks
65 project size in lines of code (right vertical axis). The scale
66 relationship between this scatter and the other three is
69 <p>This graph is quite revealing. Several trends stand out:</p>
73 <p>Over time, the project population displays rather consistent
78 <p>The key event in the project's lifetime was release 4.3.0 in
79 October 1997, when I declared the code to be out of development and
80 in maintainance mode, and split the fetchmail list.</p>
84 <p>The run-up to 4.3.0 saw the most intensive spate of releases in
85 the project's history (the gap in that run happened when I took a
86 two-week vacation). It was followed by a significant slowdown.</p>
90 <p>After 4.3.0, the developer population remained fairly stable
91 around an average of about 250 participants.</p>
95 <p>Essentially all population growth after 4.3.0 happened on the
96 announce list, among people using fetchmail but not active
101 <p>The growth trend in code size looks sublinear, perhaps
106 <p>The linear growth trend in population is particularly
107 interesting; a priori we might expect geometric or logistic growth,
108 given that the project spreads by word of mouth.</p>
110 <p>It has been suggested that the linear growth rate is the result
111 of a situation in which both number of projects and the population
112 of eligible programmers are rising on trend curves of the same
113 (probably exponential) rate.</p>
115 <p>There are some other pages doing similar things:</p>
119 <p><a href="http://kitenet.net/programs/debhelper/stats/">Here</a>
120 are growth statistics on the debhelper packaging utility.</p>
124 <p><a href="http://durak.org:81/sean/pubs/kfc/">Here</a> is a page
125 on the vocabulary of the Linux kernel.</p>
130 <table width="100%" cellpadding="0" summary="Canned page header">
132 <td width="30%">Back to <a href="/~esr">Eric's Home Page</a></td>
133 <td width="30%" align="center">Up to <a href="/~esr/sitemap.html">Site Map</a></td>
134 <td width="30%" align="right">$Date: 2002/09/09 07:24:37 $</td>
139 <address>Eric S. Raymond <a
140 href="mailto:esr@thyrsus.com"><esr@thyrsus.com></a></address>