Boost logo

Boost :

Subject: Re: [boost] Summer of Code 2010
From: Andrew Sutton (andrew.n.sutton_at_[hidden])
Date: 2010-03-07 15:25:54

> I'll try to spend the next couple of hours compiling that information. I'll
> see if I can't find out the status of past projects..

That was a tedious several hours... I've gone thru and collected all of the
accepted projects and posted links to their proposals.

It looks like we are not doing a very good job keeping up with past SoC work
:) but the results are encouraging (I think, given the nature of Boost).

There have been 33 accepted proposals in 4 years of participation
(2006-2009). As far as I can tell 7 were not completed (21%). The program
success rate last year was 15%, so we're lagging a little.

The number of slots allocated to Boost has been declining each year. From
2006 to 2009 we had 9, 9, 8, and 7 slots to fund students. This is not a
particularly good trend, but that number seems to depend on the number and
quality of ideas and the availability of mentors.

As far as I can see, only one SoC project has been accepted as an entirely
new library: Boost.Bimap. There have been a handful of projects that
resulted in extensions to existing libraries (2 for Boost.Graph, 2 for
Boost.Math, I think). There are probably another 3 that need to be
shepherded into existing projects, if they haven't already been done so
(YAML, relation types, graph partitioning, others?).

Others may have influenced the design or evolution of existing libraries,
but this impact is hard to measure.

Many of the libraries may be viable (I've labeled them as "viable" on trac)
as independent libraries. I'm not sure about the status of some, but they
seemed relatively complete and may be publishable. Some may even have users.
They are:

2006 - Process, Coroutine, Concurrency*
2007 - CGI, Dataflow, Visualization, Extension/Reflection
2008 - ???
2009 - ???

I actually can't measure the impact of the last 2 years on Boost. 2008 seems
to have been a little more on the experimental side, and 2009... it might
just be too soon to tell. I'm confident that at least 4 projects from 2009
will be integrated into existing Boost libraries, and I have high hopes for
the unicode work.

There are a number of projects that have been worked on or proposed a number
of times. BigInt is the poster-child of these submissions, tries are common,
trees, hypergraphs, C++0x upgrades... 3 projects targetted bigint and tries.
None seems to have been particularly successful.

I would guess that about 50% of completed projects will eventually (with 2
years?) have a directly measurable impact on Boost. That seems pretty low,
but I'm not sure how to compare it against the "adoption rate" of other SoC
projects. It would be nice to a number closer to 70% within 1 year, but I
see two impediments. First, it's tough for students to get up to speed with
Boost and meet the exacting requirements of reviewers. Second, but the time
the students are really up to speed, it's back to school and the work
basically stop.

One way to improve those numbers is to develop a set of goal projects with
precisely specified requirements... We want to have this data structure,
that implements these operations, and no, you can't use libgmp. These
projects should define a clear path to acceptance (testing, docs, formal
review, etc.).

That's all I've got for now. We need to start building a body of possible
projects. It's one of the criteria by which organizations are selected. That
reminds me... I suppose I should file a proposal tomorrow.

If anybody who worked on a project as a student or mentor and has
> information about it or its status, please let me know.

Still a valid request :)

Andrew Sutton

Boost list run by bdawes at, gregod at, cpdaniel at, john at