Include the right version right in your repo; provide a custom command to update CPM.cmake — example Setup cmake_modules path — example CMake Best Practices CMake is a cross-platform build system that can be used to build, test, and package software projects. One of the most powerful features of CMake is the ability to manage... » read more
CMake is an open-source, cross-platform build system that helps developers to manage their projects and build them on different platforms. It is widely used in the software development community, especially for C and C++ projects. In this blog post, we will explore how to use CMake effectively to manage your projects and improve your workflow... » read more
C++17 is a version of the C++ programming language that was standardized in 2017, and adds additonal new features and improvements to what is considered “modern C++”. Some major new features that I have really loved in C++17 include: In embedded systems, support for C++17 will depend on the compiler and platform you are using.... » read more
I recently had the opportunity, or the critical need rather, to optimize the boot time of some applications on an iMX6ULL processor. For anyone unfamiliar with this processor, it is a single core ARM processor running a Cortex-A7 core at up to 900 MHz. It provides a number of common interfaces for a microprocessor, including... » read more
Generating a kernel configuration fragment is a common task in kernel development when working with the Yocto Project. Configuration fragments are extremely useful to define groups of kernel configuration options that you can then reuse between projects simply by adding the fragment to your kernel bbappend file. For example, if I wanted to enable USB... » read more
When you think of a great developer, I’m sure someone who writes good comments often is not at the top of the list. However, writing good comments is one of the most important skills a developer can have. Good comments not only help you understand your code better, but they also make it easier for... » read more
Be careful in your choice of object model in use in Python because it can cause strange behavior in multithreaded applications!
When designing a new API one of the things I put a lot of thought into is how the user will know if the API call was successful or not. std::tuple and std::tie are two useful C++ features that can help you return multiple values from a function.
C++17 introduced a language feature called "structured bindings" which can make your life a lot easier when dealing with accessing elements of an object!