Agile Software Development
29. May 2015
This article is an overview of Scrum and XP. Roles There are three main roles in Scrum. Each of it has some special responsibility. Product…
29. May 2015
This article is an overview of Scrum and XP. Roles There are three main roles in Scrum. Each of it has some special responsibility. Product…
5. September 2019
Rotation of a body in space can be represented with a unit rotation vector (axis) and an angle of rotation around this axis. The angular…
3. July 2015
This page collects my notes about the Cortex-M3 architecture. In particular I use the EFM32TG840F32 processor on a STK3300 starter kit by…
20. September 2015
This page contains notes about the usual stack frame layout (calling convention) on ARM processors. Most information is taken from ARM…
15. July 2015
Arrays are simple but quite powerful constructs in C/C++. They are merely a representation of consecutive data in memory. They don’t contain…
3. May 2015
Keys Command Description - artist-mode Start artist mode C-c C-c artist-mode-off End artist mode C-c ^ Move (and draw) up (north) C-c…
14. April 2018
Right-handed (Rechtshändiges) Cartesian coordinate system. Axes: : width, red : depth, green : height, blue Mesh: vertices (3D points…
21. June 2023
Boot Sequence 1. ROM Code Runs directly after power up Provided by chip manufacturer Can usually only access SRAM (no DRAM) Capable of…
8. April 2022
Functions : Create socket descriptor : Associate socket with a local IP address and port : Put connection-oriented socket in waiting mode…
14. September 2018
Joints Every joint connects exactly two links. A joint: provides freedoms to allow one rigid body to move relative to another. provides…
13. October 2016
There are 2 concepts that are called closure Lambdas Closures are (anonymous) functions with free variables that capture the context of the…
5. September 2022
Serial Peripheral Interface (SPI) serial full-duplex master-slave (one master, multiple slaves) 4 wires: SCLK: Serial Clock (output from…
5. January 2021
Analogies Rotations Rigid-Body Motions Rotation Matrix Homogeneous Tranformation Matrix Rotation Axis Screw Axis Angular Velocity Twist…
17. May 2023
Imaginary Unit The imaginary number is defined: it is often named instead of . But this can be confused with the electrical current…
8. January 2017
This page is work in progress “Halving the size of the problem at each step is the distinguishing characteristic of logarithmic growth” SICP…
28. July 2015
Core Requirements to OOP Languages Highly dynamic execution model Cooperating program parts with well defined interfaces Classification…
1. July 2025
Ordinary Differential Equation Mathematical description of physical system State-space representation Matrix form () Used in Modern Control…
31. August 2023
Ordinary Differential Equation For homogeneous () linear error dynamics: Using coupled first order ODE’s defining where: The ODE can be…
8. January 2016
useful in spaces that have dimensions Euclidian spaces Discrete euclidian spaces (i.e vectors of integers, vector of bools) … Points are…
31. March 2017
This page is still work in progress No Exceptions (-fno-exception) What do std functions that throw exeptions What happens with library…
20. March 2017
From: Smart Pointers to boost your code unique ownership copying prevented use to transfer ownership const prevents transfer can’t be used…
17. August 2025
DH - Parameters Serial-link manipulator Links are rigid Joints connect links can move revolute or prismatic Every link connects 2 joints…
17. September 2015
Overview of Design Patterns Creational Patterns Structural Patterns Behavioral Patterns Other Patterns Abstract Factory Adapter Chain of…
26. September 2015
Distant Functions A distant function works on two elements (i.e. vectors, sets…). A given distance function needs to fulfill properties…
19. March 2018
See also: Docker Documentation. Setup Start the daemon (on Fedora): Start the daemon on boot (on Fedora): Run as user: First create a…
5. January 2020
Introduction Domain Driven Design (DDD) is a set of methodologies, tools and patterns that help to develop complex software systems. The…
1. July 2025
Creating a dynamic model of a system involves multiple steps. Identify objective for simulation what do we want to accomplish define which…
9. February 2019
An eigenvector of a linear transformation is a vector (non-zero) that, when the linear transformation is applied to it, changes by only a…
5. January 2019
This page is work in progress AC Motors High power, single- or multi-phase, constant torque and speed, large loads DC Motors Normal DC…
17. June 2015
The endianness means the representation of a variable (if it is bigger than one byte) in the memory. Big-Endian: Most Significant Byte (MSB…
16. April 2015
Enums in C and C++ are a very simple construct. It’s just a collection of identifiers that have (usually) distinctive values. By default the…
27. January 2021
See also: Wikipedia: Evaluation strategy Applicative order evaluation (eager evaluation) All arguments to procedures are evaluated when…
11. August 2015
Most information of this page is taken from Calling conventions for different C++ compilers and operating systems. Some other good…
2. January 2021
Every displacement of a rigid body can be expressed as a displacement along a fixed screw axis (Chasles-Mozzi theorem). Exponential…
3. June 2016
Some information on this page is taken from here (German). Process Control Block (PCB) Contains the information about a process. C struct…
26. February 2018
This article is work in progress Present Value (Barwert): value of expected income stream as of the valuation date (i.e. present). Concept…
28. August 2025
Sometimes also referred to as the First-Order Plus Time Delay model. It’s often used to model the dynamic behavior of systems. where: : The…
21. September 2025
There are multiple flash storage options for embedded devices. NOR Flash can be mapped directly int address space code can be directly…
1. December 2021
30. January 2026
The goal of a Free-Body diagram is to identify all the forces acting on an object and then to draw a diagram for that system. Divide the…
4. August 2017
This page contains some random notes for FreeRTOS. See also: FreeRtosExamples and FreeRtos Configuration The configuration of the kernel is…
22. February 2018
Work in Progress! ld Flags If the linker is called through the compler the linker flags need to be added with . : Symbols are resolved at…
17. March 2021
Diese Notizen sind grösstenteils inspiriert von: “Atomic Habits” - James Clear Nicht auf Motivation setzen! Manchmal hilft Motivation um…
18. November 2015
If a has to be reset to a older version this is a possible workflow. The solution is from stackoverflow First checkout the version that…
30. June 2017
Some notes about the contents of the directory that resides in the root of a git repository. file: contains project-specific…
28. September 2017
The command is not very easy and can be dangerous in some cases. The command does similar things. This overview is taken from the Pro Git…
18. April 2015
Pre- and postfixes for printf and scanf There are quite a lot of functions in the and scanff amily. It might not be very clear when to use…
12. December 2020
Planar rigid-body motions A planar rigid body motion is defined as: Where: : A real matrix representig a rigid body motion in : Rotational…
15. November 2015
0. Overview Specification and Models of Computation State-Charts Kahn Process Networks Design Space Exploration Mapping Partitioning Multi…
22. June 2015
On this page I write down some notes about the Intel architecture (x86). Part of the notes here are for Intel 80186. But some sections are…
17. October 2017
Program Format Typical sections of an assembler program are: section: declaration and definition of initialized data section: declaration…
5. November 2017
There are a lot of different calling conventions fir x86 processors. See also Wikipedia:x86 calling conventions Unix System V AMD64 ABI…
28. July 2017
Contents Understanding Financial Markets General Introduction and Key Concepts Investment Management in a nutshell Investment management is…
5. April 2026
Digital Audio Processing Sampling Rate and Sampling Period with: : Sampling rate in : Sampling period in Samples and Frames A frame is a…
8. January 2016
L2-Norm A vector has the -Norm: : Dimensions : -th element of L2-Distance The -Distance between two vectors and is:
26. December 2017
This page collects notes and citations from the book: Language Implementation Patterns by Terence Parr Some of my examples can be found here…
16. February 2021
Vorgang Umfang/Thema definieren Lernmaterialien zusammentragen Überblick verschaffen Text überfliegen/querlesen Grafiken studieren evtl…
24. November 2017
The different forms of Linking There are two major forms of linking: static and dynamic. But there are some subtle details in each form of…
6. November 2017
A system call is the basic interface between applications and the kernel. Linux has more than 300 system calls. The syscalls are implemented…
15. May 2015
Macro Tricks Stringification The operator allows to create a string out of a macro parameter. With the ‘stringize’ trick any defined…
29. November 2017
Make can be seen as a multi-paradigm programming language. It supports at least three paradigms: Declarative Imperative Functional…
7. October 2018
Pfaffian Constraints A Pfaffian constraint is a set of () linearly independent constraints so that: Where: : derivative of with respect…
9. June 2015
When a process is started the operating system allocates memory for this process. On modern systems this memory is usually mapped to an…
5. June 2018
Panels Keys Function Swap panels Switch listing mode (full, brief, long …) Show current directory in other panel (synchronize) Toggle…
29. February 2016
Boolean Circuits AND/OR/NOT gates Gate: function Inputs: arguments to function In-/Outputs: wires Circuits: combination of gates Truth table…
3. January 2017
Part I. Techniques Policy-Based Class Design The Benefit of Templates “Templates are a good candidate for coping with combinatorial…
2. April 2015
This page collects some notes about different Operating System approaches. Most of the information gathered here is from the course Advanced…
20. April 2016
Motivation Information Systems Design Conceptual Design -> Technical Design -> Implementation Orthogonal Persistence Data has to outlive the…
6. August 2015
Most information of this page is taken from Calling conventions for different C++ compilers and operating systems. Overview Object Format…
14. December 2021
This page collects just some random, incomplete information about ODBC and PostgreSQL on Linux. Tools : Command line tool to access the…
31. May 2018
General Use Coding conventions Keep it simple, stupid (KISS) Boy Scout Rule: “Always leave the campground cleaner than you found it…
8. January 2017
Most material on this page is from Udacity: Programming Languages Lexical Analysis (Lexing): String -> Token List Syntatical Analysis…
1. December 2021
17. March 2021
Die Pomodoro-Technik ist eine simple Methode für das persönliche Zeitmanagement. Anstehende Aufgaben werden in kleine Einheiten aufgeteilt…
10. November 2018
This page is work in progress Position Position of point relative to point : In 3D space positions are represented by vectors It is…
17. October 2018
Notes taken from: Practical C++ Metaprogramming Edouard Alligand and Joel Falcou O’Reilly Media, Inc. My repository with examples on Github…
11. August 2015
Preprocessor Defines This page lists commonly used preprocessor defines for C/C++ Programming Language Language Define C++ C 99 Compiler…
6. March 2018
This shows a basic use for QEMU. See also QEMU Documentation QEMU can emulate different processor architectures: : ARM : MIPS : PowerPC : x…
25. August 2025
Quaternions are an extension to the real numbers. They have some similarities with Complex Numbers. The Quaternions are denoted with the…
7. October 2016
See also the Python Standard Library Documentation My Repository on GitHub Metacharacters Twelve Metacharacters: Backslash Caret Dollar…
27. June 2016
This article is work in progress. Conceptual Design => Technical Design => Implementation Actors, Personas Mock-ups (for non-engineer) Paper…
8. October 2019
Axis-Angle Representation of Rotation An alternative representation to rotation matrices is the axis-angle representation in the form: Where…
19. April 2019
Currently I’m using Melodic Morenia. There is -completion for almost everything Load ROS Environment For Bash: or Zsh: Commands Command…
9. October 2018
This page is work in progress Rotation The configuration of a point is fully described by a position, bodies additionally require a rotation…
7. April 2016
Read-Modify-Write Compare-And-Swap Todo Load-Link/Store-Conditional This works: But this fails: Test and Set Pseudo code: Reset: Generic RWM…
5. March 2018
Sanitizers Address Sanitizer (and Leak Sanitizer) Compile and link with the flag It might be necessary to link with with older gcc/ld…
1. February 2021
This page collects notes about Scheme (an Lisp in general). Sources Most information is taken from: Structure and Interpretation of Computer…
14. October 2016
Pairs (, and ) : Construct a pair : Get first element of pair (or list) : Get second element of pair (or rest of list) Lists : create a…
27. December 2018
Screw A rigid body can be moved from one position to any other by rotation around a line (vector) and translation along that line. This is…
19. September 2018
Some notes on what to do to setup a new machine for my development projects. Linux Install: with package manager: Editor: code/codium (Snap…
14. May 2020
This page collects notes taken from Seven Concurrency Models in Seven Weeks When Threads Unravel by Paul Butcher Some of my examples are…
1. December 2021
10. November 2016
Notes to the book Structure and Interpretation of Computer Programs, Second Edition Harold Abelson, Gerald Jay Sussman, Julie Sussman MIT…
30. August 2019
A skew-symmetric matrix has the property: or expressed differently: It can be formed from a vector as For real valued skew-symmetric…
2. October 2025
Cyber Resilience Act (CRA): Ensure cybersecurity for software products in the EU market. General Data Protection Regulation (GDPR, DSGVO…
31. March 2017
This page is still work in progress When developping software the priorities are as following: correctness maintainability efficiency…
10. May 2021
The Single Responsibility Principle (SRP) A class (function, module…) should have only one reason to change. A responsibility is “a reason…
19. September 2018
Space Topology Euclidian space: or Sphere: Torus: () is the -dimensional Euclidian space, the -dimensional surface of a sphere and is…
30. September 2021
Dependency Injection and Inversion of Control The Spring IoC container needs to know which beans to create for Dependency Injection. Define…
13. April 2015
Most notes taken here are from the Udacity SQL course and PostgreSQL Essentials: Leveling Up Your Data Work by Haki Benita. Aggregations…
8. July 2025
Differential Equation of a Dynamic System Causality: Only causal systems can be realized Relative Degree: State-Space Representation…
4. July 2016
“The purpose of an expression is to be evaluated to produce another expression; a statement, on the other hand, is evaluated to make some…
22. May 2015
This article is still work in progress! The notes on this page are taken from: Udacity: Intro to Statistics. Packt: Statistics for Data…
1. July 2019
There is a good documentaion at cppreference.com General Use only for legacy code and debugging Use explicit casts ( and ) only when…
7. November 2015
My Notes for the System Construction Course at ETH Minos on Raspberry PI 2 (Case Study 1) ARM A7 The ARM Architecture is not the same thing…
15. February 2016
SystemC is a system-level modeling language. It’s implemented as a C++ library. The library is open source and platform independent. It…
27. October 2021
This is a brief history of Test Driven Development. Kent Beck claimed to have rediscovered the concept of Test Driven Development. 1968 Alan…
11. March 2023
Test are written for getting confidence about the software. There are a lot of kinds of feedback that give confidence about the system…
3. July 2018
Prefix Key The prefix key combination needs to be pressed before any command for tmux (when tmux is running). By default the is: Sessions…
2. September 2023
Toolchains The GNU toolchain consists of these components: Binutils: Assembler, linker, (ld) and other tools GCC: Compilers for C, C…
1. January 2021
Linear and Angular (Spacial) Velocities Given a transformation matrix that represents the configuration as seen from the spacial velocity…
1. July 2019
There is an extensive time zones database maintained by IANA: tz database Informations about time zones supported by the systems are found…
12. September 2016
This page collects notes and citations from the book: Understanding Computation by Tom Stuart I. Programs and Machines “To create an…
5. March 2017
Device files provide access to drivers through files. They are listed under . There are two kinds of device drivers (as shown with…
30. September 2016
Linux See also the Filesystem Hierarchy Standard. Directory Content Essential commands and programs for all users System binaries: mainly…
8. April 2022
File Access Permissions (POSIX) Additional Bits Three additional bits with special meanings are available: (4): Change the of the process…
6. March 2017
Contains user informations. The information fields are separated by a colon. : The name that the user needs to log in. : Usually the entry…
9. September 2015
Some notes about Vector Calculus. Mainly Divergence, Gradient and Curl. Nabla Operator () For a 3-dimensional cartesian coordinate system…
4. April 2019
Modes Key Mode Insert at current cursor position Insert at beginning of line Insert after current cursor position Insert at end of line…
3. April 2018
Some notes how to visualize mathematical functions. Domain and Range Input space: domain Output space: range or codomain Graphs (single…
4. January 2021
A linear force acting on a rigid body at point creates a torque (moment) that can be represented in a reference frame as: With: : Torque…
1. March 2018
Allgemeines Bereiche Ziele Übersicht Prioritäten Plan Motivation Ziele Realisierare Ziele Kurz-, mittel- und langfristige Ziele Wo will ich…