arduino Make a digital dice using the ATOM Matrix A tutorial explaining how to program the ATOM Matrix with Arduino to act like a 6-sided dice.
arduino How to program ATOM Matrix and Lite with the Arduino IDE on Windows Step-by-step instructions for using the Arduino IDE on Windows to upload programs to the ATOM Matrix and ATOM Lite.
testing How to write a good unit test When writing unit tests, remember to make them BRIEF: Brief, Reliable, Independent, Explicit, Focused.
CMake Report __cplusplus correctly with CMake and Visual Studio How to ensure MSVC sets the __cplusplus macro correctly when managing the build with CMake.
CMake Percent-sign in preprocessor definition breaks CMake Visual Studio generator Percent-signs are special characters under certain circumstances on Windows. This can cause problems when configuring software builds with CMake.
CMake Path error when building with Conan and CMake An autorun registry entry left behind by Conda can cause Conan/CMake builds to fail on Windows
CMake Workaround for nvcc pthread issue There seems to be a bug in certain versions of CMake which cause the CUDA compiler (nvcc) to fail. Using another version of CMake resolves the problem.
email Importing email folders into Gmail POP doesn't support folders. This can make it tricky if you want to migrate emails which have been organised into folders. This article outlines some possible solutions when migrating into GMail.
python Why Python 3 doesn't write the Unicode BOM Python doesn't always output a Unicode Byte Order Mark. This can cause problems for programs which expect to see it. This post outlines when and why Python doesn't output the BOM, and how to fix it.
python Output file encoding in Python 3 How to specify which Unicode encoding to use for reading or writing text files in Python 3.
localisation Generate UTF-8 dictionaries using gettext How to force the gettext tools to generate a dictionary with UTF-8 encoding, even when the original translation strings only contain ASCII.
c++ Decimal places in a floating point number The floating point format has variable precision depending on the number it represents. This post examines how many decimal places would fit in a floating point number, and how useful that information really is.
batch Emit audible warning from a batch script How to make a Windows batch script emit an audible beep.
c++ How to check that a function is constexpr This post gives a simple technique to verify that a C++ function can be evaluated at compile time.
c++ C++ constexpr functions C++11 introduced constexpr functions which can be evaluated at compile time. This post outlines some ways of using this helpful feature.
c++ Using C++ templates for size-based type selection How to use std::conditional to automatically select an appropriate size of integer based on template parameters in C++.
c++ Pure virtual final functions in C++ A quirk of C++ allows you to define a member function which can never be implemented, in a class which can never be instantiated.
c++ Order of parameter evaluation in C++ When calling a function in C/C++, the parameters are not necessarily evaluated in the order you expect. This can lead to some tricky bugs if your code has conflicting side effects.
c++ MFC prevents bad_alloc from being thrown The MFC library interferes with standard behaviour of the new operator in C++. You may need to handle a different exception type to detect failed allocations.
c++ Convert a number to a binary string (and back) in C++ How to convert numbers to and from binary strings in C++ using the bitset class.
Windows Changing the emulation mode of the Microsoft Web Browser ActiveX control An ActiveX browser control may emulate IE7 by default. This behaviour can be changed using a registry key.
Windows NSIS Access Control problem with built-in users group User group names on Windows Vista onwards are localised strings. When setting file permissions in an installer, you may need to use a Security Identifier instead.
electronics What is a serial-to-parallel shift register? Serial-to-parallel shift registers are fairly simple components which can be helpful for increasing the number of outputs from devices like Raspberry Pi and Arduino.
visual-studio Automatically output the callstack on a breakpoint in Visual Studio How to automatically output a stack trace when a C++ breakpoint is hit in Visual Studio.