In 1998, a proposal for a C++ Library Repository Web Site was posted by Beman G. Dawes. The original vision aimed to satisfy two major goals:
- A world-wide website containing a repository of free C++ class libraries would be of great benefit to the C++ community. Although other sites supply specific libraries or provide links to libraries, there is currently no well-known website that acts as a general repository for C++ libraries. The vision is this: a site where programmers can find the libraries they need, post libraries they would like to share, and which can act as a focal point to encourage innovative C++ library development. An online peer review process is envisioned to ensure library quality with a minimum of bureaucracy.
- Secondary goals include encouraging effective programming techniques and providing a focal point for C++ programmers to participate in a wider community. Additionally, such a site might foster C++ standards activity by helping to establish existing practice.
And as explained in the proposal:
A guiding principal is to encourage wide participation and interaction. Get people involved, in newsgroups, mailing lists, as peer reviewers, library contributors and maintainers, and as moderators and webmasters. And, of course, as library users. The idea is not to set up an organization which happens to have a website. Rather, the website is the organization. Like all good websites, and all good organizations, it will evolve over time.
After 20 years of Boost development, has the library achieved these goals?
Today, Boost is recognized as a very powerful collection of C++ libraries; with each major version, new libraries from the community have been added. Boost reviewers have advanced C++ expertise, and their contributions have helped maintain a high level of quality for many years. From the beginning, Boost's creators chose to use modern C++ techniques. However, the barrier to entry is very high: relatively few C++ developers can develop new libraries that comply with the Boost guidelines. For example, we recently reviewed the Boost proposal library for dependency injection and found that it uses advanced modern C++ techniques. Developing libraries like this requires a high level of C++ expertise.
The main problem is that modern C++ was not widely adopted between 2000 and 2010; developers preferred the OOP approach instead of the generic programming paradigm. We had to wait until 2011, the year of the C++ revival, to see many open-source libraries adopt modern C++ techniques.
Today, developers are more experienced as library users, but as modern C++ becomes more widely adopted, they may also become more comfortable contributing to Boost.
The current Boost version is 1.64, and we can say that the first goal has been achieved: many valuable libraries are now part of Boost. But what about the second goal? Have the website and the library helped developers program more effectively?
As a long-time Boost user, I visit the Boost website mainly to download the library. The original vision was to have a website-centric solution, but we ended up with more of a library-centric one. Developers generally don't use the website to improve their modern C++ skills.
This goal is very difficult to achieve with a dedicated website. However, many experts and websites are trying to promote the use of modern C++. Below are some examples of websites that reference the “Modern C++” keyword. You can visit them using TouchGraph.

As we can see, “Modern C++” was promoted by:
- Well-known C++ experts such as Herb Sutter, Andrei Alexandrescu, Scott Meyers, and many others.
- Community websites like Stack Overflow.
- Many books published in recent years.
We can say that the original creators were visionaries and that the main goal of building a high-quality, peer-reviewed library has been achieved. We hope that Boost will see even broader adoption among C++ developers in the near future.
