Embedded

Share:

For this section we choose those who checked “Hardware” or “Home automation” in the question “What types of software do you develop?”

Top 15 languages by shares of Embedded Development

40%

Assembly

34%

C

20%

C++

19%

Objective-C

14%

Rust

12%

MATLAB

12%

Delphi

Which C standard do you regularly use?

47%

C99

41%

C11

16%

C17/C18

30%

Embedded C

10%

I'm not sure

3%

Other

Which C++ standards do you regularly use?

12%

C++98 / C++03

33%

C++11

24%

C++14

41%

C++17

23%

C++20

12%

I'm not sure

C++ developers tend to adopt the newest language standards more actively, while C developers are more conservative and stick to older ones.

Ilia Motornyi

CLion Developer, Embedded development hobbyist

Which IDE / editor do you use the most?

RowColumnValue
C++CRust
33%30%43%Visual Studio Code
25%21%31%CLion
23%10%1%Visual Studio
3%11%6%Vi / Vim
8%IntelliJ IDEA
3%5%Eclipse CDT
2%3%5%Emacs
3%2%QtCreator
1%2%Xcode
7%15%5%Other
043%

If you are interested in trying CLion for embedded development, check out this overview article and setup instructions.

Which IDE or editor do you use the most for Python development?

38%

Visual Studio Code

30%

PyCharm Professional Edition

17%

PyCharm Community Edition

6%

Vim

2%

Sublime Text

1%

Datalore

1%

IntelliJ IDEA

6%

Other

Which unit-testing frameworks do you regularly use?

34%

15%

Google Test

14%

4%

Catch

14%

4%

CppUnit

7%

3%

Boost.Test

5%

3%

CppUTest

More and more developers write tests, though many C developers don't use test frameworks. There likely are no decent ones yet.

Ilia Motornyi

CLion Developer, Embedded development hobbyist

Which project models or build systems do you regularly use?

69%

78%

CMake

50%

58%

Makefiles

32%

29%

Visual Studio project

16%

13%

Ninja

14%

11%

Qmake

CMake is very popular among embedded developers and MCU vendors. The Zephyr project, ESP IDF, and nRF SDK have been migrated to CMake.

Ilia Motornyi

CLion Developer, Embedded development hobbyist

Dependencies management

28%

The library source code is part of my build

26%

I compile the libraries separately using their instructions

24%

25%

I use a system package manager

21%

I download prebuilt libraries from the internet

7%

7%

Nuget

Compiler

71%

80%

GCC

34%

42%

Clang

30%

25%

MSVC

24%

44%

Compiler for microcontrollers

14%

Clang-cl

Embedded:

2022

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.