Skip to main content


Schlimm project update: releases planned

I have assigned tickets to milestones representing the next releases of Schlimm (simple configurable human login management module, my fork of SLiM).

There is still some cleanup and abstraction work to be done before the release of version 1.4.0:

Version 1.5.0 will introduce new features:

Any help is welcome. The code repository and the bug tracker are on :

# # # # #


libcuwte progress: it renders basic jinja2 templates again, but with designed code

The original libcuwte source code was able to render a basic jinja2 template with placeholders in it using proof of concept code. I now converted the code into proper code after I thought of a design for it.

Now the evaluation of if-statements in Jinja2 has to be done. When if-statements can be evaluated, other Jinja2 statements (for, foreach, swich, while, ...) can be added quickly since they can be converted to if-statements. The next template language to be implemented will probably be ERB.

libcuwte source code:

libcuwte wiki (currently only a feature matrix):

# # # # # #


Coding during corona - suggestions for projects?

I want to continue writing software in my spare time during the corona crisis. But which project is the most important or most valuable under the current circumstances so that I should focus on it?

There is a list of my active projects I made a few days ago:

There are some more projects I started:

Besides my personal projects, I'm open for suggestions regarding the support of other free software (FLOSS) projects by programming for them. Projects written in C++ or PHP, without the requirement of signing up on non-free platforms to be able to contribute, are preferred.

What do you suggest?

# # # # # # #


Software and hardware projects I'm currently working on


My web browser engine written from scratch since 2011. Currently I'm rewriting the network components for better HTTP request handling. The current state of the rewrite is in the "network-refactorisation1" branch of the source code.

Project page:


Web template rendering in C++ using common template languages like Jinja2. The project just started but you can already replace variables in Jinja2 templates with it. Check out the test1 program in the source code repository for a demonstration.

Project page:


My fork of the SLiM desktop manager. Currently I'm refactorising the code, translating it to modern C++ and making it possible to use schlimm without any configuration file.

Project page:


This is a long-term hardware project where I'm trying to develop circuits and microcontroller code for compact cassette hardware to be able to record and playback digital music from a cassette using modern audio codecs like Speex and Opus. The current task is to find out how to connect GNURadio blocks correctly to input and output data at an acceptable rate using a sound card.

Project page:


This is a collection of tools that help with converting media files for recording compact cassettes and VHS tapes using a computer. The script for compact cassettes handles things like audio normalisation and pitch adjustment for tape recorders that don't record in standard speed. The encode_vhs script compiles all the source video files into one big video file using a Makefile for multitasking. The collection gets new scripts whenever I find a way to automate a part of the media conversion process.

Project page:

# # # # #

# # # # # #


Thoughts about: AUTHORS file and GDPR

I have created a fork of a GPL software project and would like to put all people who contributed source code into an AUTHORS file. I think that is unproblematic for those who left their name and mail addresses in the source code files since these personal data have already been published by them on a voluntary basis.

But I also would like to apply patches from Debian in my fork. Each patch contains the name and mail address of the author of the patch. According to the GPL, I must give credit to everyone who contributed source code but I'm unsure if that means I can just put someone into an AUTHORS file if they submitted a patch to "someone else", even if it happened in the public and the personal data were provided on a voluntary basis, too.

Are there examples on how other FLOSS software forks/folks deal with the GDPR in this matter?

# # # #


Friclicli update: moving to C++

I'm currently translating the source code of Friclicli (Friendica CLI client) from C to modern C++. Some code parts have already been rewritten and have been shortened by that due to the use of std::string instead of char arrays. The code translation process happens in the "move-to-cpp" branch to leave the master branch of the friclicli repository in a usable state.

At the moment there are linking errors because of undefined functions or functions whose definitions have been converted to class methods. It will take some time until the translation process has finished and I can continue to add new functionality to friclicli.

The source code repository is at codeberg:

# # # # # # #
I'm creating tasks on Codeberg for the C++ translation. The tasks are all placed under the following milestone so that you can view the progress:


Now that I have a Friendica account again, I also have a motivation to continue work on friclicli (Friendica CLI client):

Before I continue to implement features, the source code should be converted from C to modern C++ to make it more maintainable.

# # # #