Technical debt is the bane of most established libraries, whether it is standard library or boost or local library developed in house. Paying this debt is expensive and in many cases seems infeasible.
As a result of several (justified at the time) decisions Google accumulated serious technical debt in how we use std::string. This became a blocking issue in our effort to open source Google’s common libraries.
To fix this we needed to break libstdc++ std::string ABI. This is the story of how we survived it kept Google still running.
Gennadiy Rozental is the long time contributor to Boost libraries and a developer and maintainer for Boost.Test library. After working on core infrastructure for financial markets data and quantitative research libraries he is now a member of the common libraries team in Google... Read More →
Thursday September 28, 2017 4:45pm - 5:45pm PDT Manchester (407)Meydenbauer Center