C++
Share:
These questions were shown only to the developers who chose C++ as one of their three primary programming languages.
Share:
Diego Rodriguez-Losada Gonzalez
Lead Architect, JFrog
No surprises in the level of adoption of C++23 and earlier standards: The adoption patterns are practically the same as in recent years, just a sliding time window. C++23 shows 10% adoption in 2023, a bit lower than C++20 adoption in 2020 (12%), which is probably related to the number of new features that C++20 brought compared with C++23.
Inbal Levi
Lead Software Engineer at MPGC Services Ltd (Millennium), WG21 committee member
It’s great to see such a significant portion of the Embedded and Games industry working with C++20 already. This version extends compile time abilities, which is very beneficial for these industries with a lot of emphasis on runtime performance. I hope to see similar adoption rates for C++23 in the upcoming years.
Bryce Adelstein Lelbach
Principal Architect at NVIDIA
A large jump in the adoption of C++20 makes sense, as implementations have grown a lot more mature and feature-complete. I think we'll see a big shift from C++17 to C++20 as the "base" dialect for much of the community over the next few years.
Diego Rodriguez-Losada Gonzalez
Lead Architect, JFrog
57% of those using C++98/03 are not planning to move to another standard? That could be disappointing, but given that generally, only 8% of respondents are still on C++98/03, it means that only around 4% of the world’s C++ code is staying with that old standard, which is not bad and similar to other programming languages.
Diego Rodriguez-Losada Gonzalez
Lead Architect, JFrog
While lots of progress has been made recently in build systems and the ecosystem to support C++20 modules, half of the respondents planning to use C++20 modules (I assume in production) in the next year seems overly optimistic in my opinion. I don’t think we will be there in the next 12 months.
Inbal Levi
Lead Software Engineer at MPGC Services Ltd (Millennium), WG21 committee member
I’m really happy to see the fast adoption rate of features in the Embedded world, which has traditionally been known to adopt things slowly. I believe this is also related to the great benefits C++20 can provide to the embedded domain.
Bryce Adelstein Lelbach
Principal Architect at NVIDIA
I wonder how many people have actually tried to use modules. There's a lot of interest but not so much adoption.
Diego Rodriguez-Losada Gonzalez
Lead Architect, JFrog
The market is clearly dominated by Microsoft and JetBrains. It seems the quick growth of VS Code is finally slowing down (at least among the C++ audience) and has started to stabilize in equal quotas for the three major players – CLion, VS, and VS Code.
Diego Rodriguez-Losada Gonzalez
Lead Architect, JFrog
29% still don’t write unit tests for their C++ code, which is sad. Even if the number keeps slowly declining over the years, it’s not fast enough. The future of the language also depends on fixing things like this.
Inbal Levi
Lead Software Engineer at MPGC Services Ltd (Millennium), WG21 committee member
I’m surprised to see the number of developers writing unit tests without frameworks. There’s an effort in the committee to promote the topic of package managers, which I hope will affect the reduction of these numbers in the upcoming years – both for those who don’t write unit tests and for those who do so without a framework.
Diego Rodriguez-Losada Gonzalez
Lead Architect, JFrog
It is good to see that fewer developers are manually compiling libraries using their instructions. There is hope that using automated solutions will further reduce this practice, which is unique to the C and C++ ecosystems.
Inbal Levi
Lead Software Engineer at MPGC Services Ltd (Millennium), WG21 committee member
I think this is a great indication that wide support of package managers across the C++ community is necessary.
Bryce Adelstein Lelbach
Principal Architect at NVIDIA
Sooner or later, we may reach an inflection point where these package managers (vcpkg, Conan, etc.) are mature enough and sufficiently widely used that they become a defacto standard. But, we're not there yet.
Bryce Adelstein Lelbach
Principal Architect at NVIDIA
Very interesting to see CMake drop in market share and Ninja increase in market share. This isn't a trend I was aware of. Perhaps it's just noise, but given CMake's rapid growth until now, this data suggests that it has reached peak saturation.
Diego Rodriguez-Losada Gonzalez
Lead Architect, JFrog
Python is yet another very useful tool for the C++ developer toolbelt.
Bryce Adelstein Lelbach
Principal Architect at NVIDIA
More JavaScript and Rust being used in combination with C++ seems to be the trend here. Given the rising popularity of Rust, it's surprising that there's not a more rapid growth of Rust + C++. That suggests it may be harder to use Rust in existing projects (as opposed to new projects).
Bryce Adelstein Lelbach
Principal Architect at NVIDIA
I think the decrease in IDE-provided analysis tools here is indicative of people incorporating static analysis into their CI, like running the Clang-tidy/ClangFormat/Clang static analyzer in GitHub Actions.
Diego Rodriguez-Losada Gonzalez
Lead Architect, JFrog
Five to 10 years ago, the C++ IDE market was essentially dominated by one product, Visual Studio, which was Windows-specific. People used to develop on Windows solely to have access to a good IDE. Today, we have two major vendors in this space – JetBrains and Microsoft – which is great for users. With Visual Studio Code and CLion, IDEs are now much more accessible for non-Windows developers.
Thank you for your time!
We hope you found our report useful. Share this report with your friends and colleagues.
If you have any questions or suggestions, please contact us at surveys@jetbrains.com.