A fairly common anti-pattern found in Qt applications is to derive a class MyApplication from QApplication and to have it hand out pointers to a dozen or more major components of the application. Similar to Qt’s qApp macro, these applications introduce a macro myApp pointing to the single MyApplication object. The global variable myApp...
Burkhard on Qt Embedded Systems: No. 9
The August episode of my newsletter went out to over 190 people. Please sign up here, if you want to enjoy the full contents. The last three episodes are complimentary for your sign-up. Here is the table of contents of Episode 9 (August 2020). My Thoughts on Leveraging Usage Rights for IP Creation. How you...
CppDepend: A C++ Dependency Analyser
I evaluated the dependency analyser CppDepend on a real-life embedded application. My goal was to find all dependency cycles between classes in the application. I know that the application contains 50+ dependency cycles. CppDepend only found less than 10% of the cycles. Without rewriting the the source code, CppDepend would have found no cycles...
Burkhard on Qt Embedded Systems: No. 8
The July episode of my newsletter went out to over 160 people. Please sign up here, if you want to enjoy the full contents. The last three episodes are complimentary for your sign-up. Here is the table of contents of Episode 8 (July 2020). My Thoughts on Yocto Updates. Or: you never know what you’ll...
Webinar: Building Embedded Applications from QtCreator with Docker
In a webinar organised by The Qt Company on 8 July 2020, I showed how QtCreator builds an embedded application against a Qt SDK encapsulated in a Docker container. QtCreator doesn’t know which Yocto version was used for building the Qt SDK and which environment variables must be set for the SDK. QtCreator forwards...
Burkhard on Qt Embedded Systems: No. 7
Episode 7 went out to over 150 people. I provide insights on building Qt SDKs with Yocto, FOSS licensing, CMake, mocks for unit testing, C++ lambdas and more. Please sign up here, if you want to enjoy the full contents. Here is the table of contents. My Blog Posts Qt Embedded Systems – Part 2:...
Qt Embedded Systems – Part 2: Building a Qt SDK with Yocto
We want to develop the Internet radio application for the Raspberry Pi in the same way as for a PC. We change the source code in QtCreator and run the application. QtCreator cross-builds the application on the PC for the Raspberry Pi, deploys it with SSH to the Pi and runs it on the...
Burkhard on Qt Embedded Systems: No. 6
This episode of my newsletter went out to 130 people. You can read my take on eight talks from the Qt Virtual Tech Con and a retrospection on my seven years as a solo consultant. Please sign up here, if you want to enjoy the full contents. Here is the table of contents. My...
Qt Embedded Systems – Part 1: Building a Linux Image with Yocto
In Part 1 of the series on Qt Embedded Systems, we build a custom Linux image with Yocto for the Raspberry Pi 3B. When we power on the embedded device, it starts an Internet radio application – called Cuteradio. This QML application is very simple: it can only play a single, hard-wired station. Despite...
Book Review: “Accelerate” by Nicole Forsgren et al.
The book Accelerate – Building and Scaling High Performing Technology Organizations by Nicole Forsgren et al. is an eye opener and game changer for everyone involved in software development. Nicole provides empirical evidence why teams that apply best practices like test and deployment automation, continuous integration, loosely coupled architectures and team empowerment by far...