Blog Archive
2022
- A small review of - C# 10 in a Nutshell
- Code-based UML diagramming - A quick and easy way to creating your diagrams
- A Project - Automation of a Virtual Production Plant
- A small review of - Software Architecture Patterns
2021
- A small review of - Catching the Process Fieldbus: An Introduction to Profibus and Profinet
- Completion of course - KUKA (KRC4) industrial robot operator and programmer training - advanced programming level
- A quick overview of - The Arcadia model-based systems engineering method
- A small review of - Model Based System and Architecture Engineering with Arcadia
- A small review of - Taschenbuch der Automatisierung
- A small review of - Grafcet Step-by-Step
- A small review of - UML 2.5: Das umfassende Handbuch
- A small review of - Speicherprogrammierbare Steuerungen für die Fabrik- und Prozessautomation
2020
- Completion of online course - 'The Complete Traefik Training Course'
- A small review of - Industrial Robots and Cobots
- Competion of online course - 'Javascript: Understanding the weird parts'
- Completion of online course - 'Docker for Node.js Projects from a Docker Captain'
- github - Tinycards Data Converter now available
- A quick overview of - Docker
- Completion of online course - 'Docker Mastery: with Kubernetes + Swarm from a Docker Captain'
- Completion of online course - 'Introduction to Node-RED'
- Completion of online course - 'Siemens TIA Portal Step 7 WinCC'
- Completion of online course - 'CompTIA Network+'
- Completion of online course - 'Industrial Communication by Siemens S7-1200 PLC'
- A quick guide - Setting up your home network for home office usage to minimize exposure of private data flow and network layout to company tech
- Lesson of the day - Creating a C++ abstract class without a custom pure virtual function
2019
- Status update - German translations finished
- Some thoughts on writing an application
- Lesson of the day - Running multiple QtTest classes within a single project the easy way
- A small status update
- Getting over 2000 cards with Duolingo's Tinycards!
- Lesson of the day - Setting up a project in Qt Creator with unit testing - The proper way
- Lesson of the day - Use lambdas to help function overload resolution
- Cheat Sheet - Qt display hierarchy
- 3 years - 9000 km
- Lesson of the day - Using ref-qualifiers to determine the r/lvalueness of an object a function is called from
- Lesson of the day - Reusing parameterized test classes in Google Test
- Lesson of the day - Setting up a project in Qt Creator with unit testing - The easy way
- A small review of - Learning OpenCV 3
- A small review of - Computer Vision with OpenCV and Qt5
- Lesson of the day - Converting between styles to access ui elements in Qt
- Lesson of the day - Generate OpenCV offline documentation for Qt Creator
- A small review of - C++ Concurrency in Action
- A quick overview of - C++ concurrency - Part 2
- Completion of online course - 'Process Visualisation with HMI / SCADA'
- A quick overview of - C++ concurrency - Part 1
- An analysis - Active Queue Management (AQM or SQM) with OpenWRT
- Lesson of the day - Little design, ton of work
- Completion of online course - 'Practical PLC Programming'
- Lesson of the day - Classes, Callback functions and friends
- Completion of online course - 'PLC Programming from Scratch'
- Lesson of the day - Compiling and related topics
- A quick guide - Fixing mouse double-click problem
- Lesson of the day - A better understanding of cv::namedWindow usage and its memory management
- Lesson of the day - Making your optimization efforts in a switch statement work
2018
- A small status update: digging a bit more into Qt and OpenCV
- Salvaging a bike lamp with the help of 3D printing -- UPDATED
- A small review of - Modern C++ Programming with Test-Driven Development
- Getting over 1000 cards with Duolingo's Tinycards!
- Cheat Sheet - UML class diagrams
- Lesson of the day - Getting to know the diamond problem
- A small review of - Design Patterns Explained Simply
- Translating Head First Design Patterns Java code to C++
- A small review of - Head First Design Patterns
- Lesson of the day - Output operator overloading and class inheritance
- Lesson of the day - Using std::make_unique and std::make_shared with private constructors
- A small review of - A Tour of C++ (2ed)
- Lesson of the day - The order of deriving classes does matter
- Lesson of the day - Remember the destructor
- Lesson of the day - Examining the usage of C++17's structured binding
- My first experience with Qt (and a comparison of qmake and CMake project files)
- Lesson of the day - Enabling auto resize for your Qt widgets with a layout
- Another year, another website overhaul
- Lesson of the day - Start organizing your classes visually as you write them
- Lesson of the day - Using 'static' and 'auto' together in a class
- Lesson of the day - Don't overthink function parameters
- Lesson of the day - Don't overuse smart pointers, don't underuse * and &
- 2 years - 6000 km
- Finding a more suitable OS for my old Raspberry Pi
- An analysis - Thinkpad power consumption evolution over 4 generations
- A quick guide - Fixing Sony MiniDisc deck 'won't eject disc' issue
- A small review of - Grokking Algorithms
- Completion of online course - 'Embedded Systems Programming on ARM Cortex-M3/M4 Processor'
- A small review of - Soft Skills
- A small review of - Effective Modern C++
- A small review of - Learn C the Hard Way
- A tic-tac-toe game written purely in bash
- Spectre and Meltdown, patches, and CPU microcode updates for Sandy Bridge and Kaby Lake PCs
- A small review of - The Art of Unit Testing
2017
- A milestone - KDevelop template downloaded well over 1000 times
- A small review of - Clean Code
- Completion of German skill tree on Duolingo!
- Completion of online course - 'Mastering RTOS: Hands on with FreeRTOS, Arduino and STM32Fx'
- Completion of online course - 'Ultimate Microsoft Access 2013 Training Bundle'
- A small review of - Programming: Principles and Practice Using C++
- A gallery of the feature images of my (as of Aug. 2018: previous) site
- Migrating my website to Jekyll
- Update list for Windows Updates Downloader
- 1 year - 3000 km
- Getting an old Pi and what to do with it
- Es lohnt sich eine Sprache zu lernen! - Learning a language is worth it!
- A quick guide - Cleaning your bike chain in less than a minute
- A quick guide - Fixing your vintage stereo amplifier
- Your hardware is too new! - Or how Microsoft tries to trick you into upgrading to Windows 10 again
- A quick guide - Replacing a broken LCD in a Nokia 1208
- Finnish lyrics translation - Tulimyrsky (Moonsorrow)
- A quick guide - Secure erasing your (dead) HDD
- C++ coding right on track! (code+github account now available)
2016
- Punk-O-Matic is the real fun-o-matic!
- A CAD rendition - of a meat grinder made in the USSR, 1984
- A CAD rendition - of an external HDD storage
- Finnish lyrics translation - Jotunheim (Moonsorrow)
- My first programming experience with C++
- Finnish lyrics translation - Kaiku (Moonsorrow)
- A quick guide - The 'helicomputer' issue, or how not to listen to your cooling fan all the time – a general guide to re-greasing
- A small review of - Bike frame protection with „liquid rubber” spray
- How old is human music? – A bit more scientific approach
- Language learning and the things it teaches – Perception (or why native speakers don’t see the obvious...)
- A gallery of some of my better photos