A Report on Software- and Algorithm Optimization

Writing this article while listening to Falco’s Vienna Calling brought up some memories of the software projects nurturing my interest in software optimization. The open source mp3 audio encoder lame is one of those and serves as a good motivational example for today’s topic. Made possible thanks to - at the time - innovative algorithms and a considerable amount of software optimization. More modern examples include projects like OpenCV, compiler frameworks like llvm or video decoders like dav1d. All of these projects have in common that they would be much less useful without optimization. In this blog post I’d like to share some of my thoughts on optimization approaches and the possibilities (GPU programming, vector instructions, parallelization, …) at our fingertips.

Read more →

Google Pixel 4a: The Easy Choice?

Last year I wrote an article about the OnePlus Nord I had acquired. Initially quite excited about the amazing bang for the buck ratio I noticed a few shortcomings throughout the last few months. Based on those I decided to give the Pixel 4a a chance to shine. Ron Amadeo over on arstechnica.com quite clearly calls the OnePlus Nord the better option and recommends it over the Pixel 4a. I think that’s not telling the whole story. The Pixel 4a has a few unique aspects which might make it preferable to some and offer an overall worry-free package.

Read more →

C++20: Building a Thread-Pool With Coroutines

Read more →

Prusa Mini+: On the Path Towards Becoming a Maker…

Recently an eagerly expected parcel has shown up at my doorstep. Within: an amazing piece of Lego for grown-ups. Or to be more specific an assembly-kit for the Prusa Mini+ 3d printer.

Read more →

C++20: An Introduction. The Update We’ve All Been Waiting For?

A few months ago the ISO C++ standard committee has completed the newest revision of the C++ programming language and it’s companion the standard template library. As per usual they followed the mantra “good things take time” and focused on including well thought out extensions and improvements. Fortunately, a lot of these new additions have been in the making for many years, in which they were debated, refined and iterated upon. This has allowed C++20 to become a fantastic release, probably the largest one since 2011 - which marked the beginning of what we call modern C++.

Read more →

HEVC Decoding on the RPI4 Optimized With arm64 Assembly Code

Read more →

2.5G-Ethernet Featuring the Gigabyte B550 Aorus Pro

Read more →

C++ Project Maintenance: Cmake and Conan by Example

Can too much choice be a disadvantage? Build systems and dependency management for C++ sometimes might give the impression. Ever cloned a repository and had a really hard time to build the project? Chances are that the build scripts were over engineered or used a build system one was not familiar with. In this post I try to sum up how I currently manage my C++ based projects with an in my opinion reasonable amount of effort.

Read more →

Hardware Video Transconding on the Raspberry PI 4 and AMD Graphics

Read more →

OnePlus Nord: Did I Jump Aboard the Hype Train?

Chances are most people coming across this post have already heard about this new phone. OnePlus certainly managed to capture a lot of media attention. It just so happens that I was in the need of a different phone and bought a Nord as well. I’d like to share some of my thoughts in this blog post about why I chose this phone and what my experience has been since receiving the Nord.
Read more →

Raspberry Pi 4 as a Nas: How to Reach the 110 MB/s Read and Write Performance

Read more →

Amd Ryzen 7 3700x AKA Zen 2 - a Brief Review

Read more →

How to Over-Engineer Home Automation (Or Also Called Not-Invented-Here Syndrome)

Read more →

2010s in Review: From Eating Raspberries, to Working out in the Alps and Hacking on Amazing Software

This decade has been truly amazing from a technological point of view. Bridging the gap between sports and technology by introducing e-bikes, drones and fitness gadgets. Pushing the maker community forward with the introduction of the Raspberry Pi. Changing how we work with software thanks to containers and other extremely clever innovations. Let’s have a look at some of these achievements.

Read more →

Signal Processing and Image Data Compression (DCT, JPEG)

Read more →