The Developer Ecosystem in 2018: Key Trends for C and C++

For the second year in a row, we have polled thousands of people to learn what’s hot and what’s not in the world of developers in 2018. The Developer Ecosystem survey aims to reveal which technologies are trending today, how languages are evolving, and which tools developers are adopting the most. The results are finally in, so go ahead and get the full scoop!

Later we will also publish (anonymized) raw data for everyone interested in taking a look for themselves. Now, let me share the most interesting findings from this year’s study relating to C and C++.

For C, the most interesting questions are about the tooling being adopted, while for C++ we were squirming to know “Which C++ standard do developers mostly use?”. Since this is a second such study, we can also compare the results to those from 2017 and identify some fascinating trends.

View The State of Developer Ecosystem 2018 Report

Top C facts

It seems that among all the respondents developing in C, 48% have abandoned all unit testing frameworks. This is a hike of 18% compared with last year. In contrast, among C++ developers the abandon rate soared by 20% this year. If we speculate about why this is happening, could it be that unit testing frameworks don’t fit the C/C++ developer ecosystem? Is the entry level too high? Or maybe there’s a lack of documentation and learning resources? What’s your take on this?

Makefiles were probably expected to come in as the most popular project model, but second place now goes to CMake (among C developers). Interestingly, Xcode project model has moved up from 5% to 9%.
deveco_c_2018_build_system

In terms of IDEs, both CLion and Visual Studio Code have gained a lot of popularity among C developers. Still, the top honor this year goes to Vi/Vim! By the way, if you’re accustomed to Vim, you can install a Vim-emulation mode in CLion to benefit from familiar Vim key bindings and the functionality of CLion at the same time.

Top C++ facts

The C++17 standard was officially signed last year and is now seeing growing adoption numbers: 18%, compared with 12% last year. However, while nearly half of all respondents who are not on C++17 yet plan to upgrade to one or another new standard, only 8% of those who are not on C++17 yet are considering moving to C++17 in the next 12 months.
deveco_cpp_standard

CMake, Visual Studio project, and Makefiles are still the hottest build systems. However, the order has changed. CMake has finally prevailed over Visual Studio project! It’s also great to still see SCons and Bazel in the top 10.

Talking about other languages, it’s worth mentioning Java and Python as the languages most frequently used together with C++, as well as Rust, which 8% of C++ developers plan to adopt / migrate to in the next 12 months. If you’re looking for a Rust IDE, try the Rust plugin for CLion, which comes with Cargo build system and debugger support!

View The State of Developer Ecosystem 2018 Report

What do you think about these trends? Sound off in the comments section below!

Your CLion Team
JetBrains
The Drive to Develop

This entry was posted in Uncategorized and tagged , , . Bookmark the permalink.

10 Responses to The Developer Ecosystem in 2018: Key Trends for C and C++

  1. Tano says:

    “By the way, if you’re accustomed to Vim, you can install a Vim-emulation mode in CLion to benefit from familiar Vim key bindings and the functionality of CLion at the same time.”

    The reason people use vim is the speed, the archenemy of CLion.:)

    • Anastasia Kazakova says:

      It depends I guess. Mostly yes, vim is used for quick editing actions. But sometimes people need full IDE functionality while still would like to stay with Vim key bindings.

      • Tano says:

        Believe me, there are a lot of programmers that use vim as an IDE, with a lot of plugins, not just as a quick editor.Some of my colleagues use vim better than I use CLion, they know zillions of shortcuts :)).Atoogle also a lot of people use vim for development, because they have big repos and IDEs are too slow when dealing with too many files.

      • Tano says:

        See the isocpp survey, vim is the second IDE used in c/c++, after vstudio
        https://isocpp.org/blog/2018/03/results-summary-cpp-foundation-developer-survey-lite-2018-02

        • Anastasia Kazakova says:

          Thanks. We saw that survey of course.

          I personally was using Vim for many years in my C++ development. And I believe it’s a good choice for many cases (and indeed Vim is more than just an editor, especially with all the plugins). But I would not call Vim an IDE.

          However, I’m happy to see Vim in top of most used C/C++ IDE. As it sets a great performance goal for the others 😉

        • Woody says:

          Also, keep in mind that VStudio offer a Vim plugin. While my answer would also likely be VStudio, it’s only because I can also use Vim keybindings. If the plugin were not available, I would likely have stayed back on a version that supports it, or moved to CMake (as I have for projects not based in MS world, where I use Vim/YouCompleteMe).

  2. Tano says:

    At Google*

  3. Sergei Vlasov says:

    VS developers sat quietly in a corner, chuckled and .. just worked.

  4. deeds says:

    “If we speculate about why this is happening, could it be that unit testing frameworks don’t fit the C/C++ developer ecosystem? Is the entry level too high? Or maybe there’s a lack of documentation and learning resources? What’s your take on this?”

    This question seems odd. Particularly the second part. They’re abandoning these frameworks, and the rate of abandonment is increasing. That means they’ve entered already, so entry level is not likely a factor, and they’ve (seemingly) been using them for long enough to be beyond needing documentation and learning resources. And they’re C++ and C developers. There’s a good case to be made that they’re of the ilk and talent beyond which these are significant factors, anyways.

    As to whether or not they fit the C/C++ developer ecosystem, this sounds like an attempt to pose a question without considering the creation of a question, for the purpose of (probably) avoiding what might be more obvious: that there’s something very wrong with the frameworks.

    The numbers are staggeringly high. That indicates a fundamental problem, of some sort, that is probably well known and likely being openly acknowledged and discussed, hence the increasing rate of abandonment of these frameworks.

    Perhaps there are few frameworks and they’ve traditionally been imposed upon, rather than suggested by, the programmers. And perhaps that tide is turning, or some other aspect of the flaws that cause this degree of abandonment has surfaced, and become public knowledge.

    I’m speculating because I’m not a C++ or C programmer, but am from a field where market stats are interpreted frequently. When we see numbers like this, we know there’s something fundamentally wrong with the manner in which the products work. They likely don’t, and the industry is beginning to realise they’ve been sold a lie.

    it is an astonishing abandonment rate for any class or tier of product category.

    The questions that need to be asked: what are they doing instead? The ship has sailed.

Leave a Reply

Your email address will not be published. Required fields are marked *