C/C++
Experience: 4 years
Since I started programming with microcontrollers, C became my first “serious” language. But at some point I became interested in writing native desktop GUIs, and started to learn, how classes and templates can help me at large…
Note: I’m not interested in C/C++ at the moment.
RTOS
In C++, I developed an in-house Hard RTOS which is used in the control system of the rotorcraft UAV . Despite the widespread belief that “C++ has too big overhead for microcontrollers, especially for providing hard real-time capabilities”, everything somehow fitted in memory, and hard real-time was provided on microcontrollers with one CPU without a floating point coprocessor.
Before that, already in C, I worked with FreeRTOS , which I used to develop control systems for switched-mode power converters and for the firmware of a radio modems that worked with an Iridium satellite constellation and was used in then-developed UAV.
DSP
Since the embedded operating systems I worked with were written in C and C++, DSP modules were also written in the corresponding languages for the needs of control systems. Basically, it was highly simplified libraries for linear algebra and mathematical analysis for the implementation of various filters: Kalman , elliptic , FIR , IIR .
Simulation model
In the course of work on the UAV control system, I also developed a simulation model of the helicopter, which, among other things, had to work with full-fledged hardware versions of control units ( HIL ). This work was done using adevs , ODE solvers from SUNDIALS and linear algebra routines from Blaze .
Qt
Before switching to web-based solutions (see Python ), I spent some time developing interfaces for testing equipment in Qt. They’re responsive, indeed, but it’s too much boilerplate for a simple set of buttons, switches and graphs…
Illustration
-
Composition: covers of the cult C++ books from Addison-Wesley by Scott Myers and The “Gang of Four”: Design Patterns , Effective C++ , More Effective C++ , Effective STL .
-
It’s dangerous to go alone! Take this .
-
Perhaps, everyone who was in the C++ lands had visited the C++ standards committee secretary’s mill .
-
“Elements of Overcomplicated Designs” — it’s personal 😄
-
Magic square: since the cover of “Design Patterns” features Escher’s “Swans” , I wanted to put something like that on my quasi-cover. “Swans” somehow reminded me of the magic square from Dürer’s “Melencolia I” —perhaps, the same mathematical charm and engraving style…