moderncppdevops.com
Breaking down the 2024 Survey Results | Modern C++ DevOps
Excerpt
- Among the three features surveyed (Concepts, Coroutines, and Modules), Modules have the lowest planned adoption rate, only 29.25% of respondents indicated their projects would allow module usage. As the article C++20 modules and Boost: an analysis highlights, concerns exist around managing the potential increase in complexity for build systems. This is likely in addition to modules introducing interoperability challenges between build systems and package managers - a concern that many of respondents are likely to have as usage of multiple build systems was very high - might delay the adoption process until broader tooling support matures. … ### Build times **Encouraging signs for build times!** So much so, it's included twice. Over the past four years, the survey data reveals a consistent downward trend in the percentage of developers reporting long build times as a major pain point. This decrease of 2.38% from 2021 to 2024 suggests that the C++ build ecosystem is becoming more efficient. There's a still a very slim number of developer who are not burdened by long times times. … ### Setting up a continuous integration pipeline from scratch The survey results indicate a persistent challenge. While there's a slight decrease in the percentage of developers reporting it as a major pain point (down to 1% from 2023 to 2024), it remains a significant hurdle for many (nearly a third of respondents!). There's little to no improvement over the 2021 data. … ### Setting up a development environment from scratch The data on setting up development environments reveals a fascinating trend. While there's a positive shift with more respondents finding it a "not significant" pain point (up to 31.93% in 2024), there's also a concerning slight increase in those reporting it as a major pain (26.27% in 2024). One explanation could be advancements in techniques for build script. There are some very high quality sources for CMake. That category saw a in the number of respondents experiencing pain that. However, the challenge of setting up the entire environment, especially for complex systems, seems to be persisting.
Related Pain Points
C++ modules cross-platform support is broken
7C++20 modules were introduced but cross-platform support remains extremely limited and too complicated for average developers. Existing implementations lack practical usability.
CMake complexity and poor developer experience
7CMake is widely recognized as painful and unintuitive for ordinary developers, forcing many to resort to Stack Overflow-driven development rather than understanding their build system.
Long Build Times
7Build time remains a significant pain point for C++ developers, with 43% reporting it as a major issue. Multiple systemic reasons contribute to slow builds, though there is a slight downward trend indicating some ecosystem improvement.
Toolchain and IDE setup
6Configuring development toolchains and integrated development environments presents a significant barrier for C++ developers.
Setting Up CI/CD Pipelines from Scratch
6Approximately 31% of C++ developers report setting up continuous integration pipelines as a major or minor pain point. The challenge involves automated builds, tests, and deployment—with persistent difficulty despite slight improvements.