Skip to main content

Open source contributions

Giving back to the community #

We get so much out of open source that it always feels good to give back to the community.

As a programmer, I regularly dive into codebases of open-source software to fix what ails me, and submit patches to the projects for integration. When I develop something for myself (not for a client), I release it as open source, hoping that it might be useful for others. It's a habit that goes back to 1999.

Here's a list of things I've created or contributed to:

Helping fix the PostgreSQL connection issue in early FrankenPHP #

FrankenPHP is a modern PHP app-server, written in GO. Since I ❤️ both languages, I was an early adopter, but the first few versions (1.0.0-1.1.0) suffered from a segfault when connecting to PostgreSQL databases, and I helped with exploring and debugging the issue, and having it fixed upstream.

🌳VMtree (an easy way to make ephemeral VMs) #

VMtree is a collection of scripts that turn a server into a "VM tree", on which you can quickly start up (and delete) ephemeral LXD containers. Especially useful when developing infrastructure-as-code, for example Ansible scripts.

Gitea (GitHub alternative in Go) #

Contributed project management screens, allowing Gitea to be used as a time tracker for development teams.

Security issue and workaround for Jumpcut #

Reported a security issue and provided a workaround for this great OS X clipboard history tool.

FastClick (network router with DPDK support) #

Contributed the SetTCPChecksumIP6 element to add the ability to calculate the TCP checksum for IPv6 packets (which in theory should be the same as for IPv4, but in reality it is not).

Click modular router toolkit #

Bugfix in FromDPDKDevice to correctly set the MAC header in the FromDPDKDevice element.

ParrotSec (security focused Linux distro) #

Introduced Wireguard VPN into this security-focused Linux distro.

KKRC dotfile management tool #

This script provides better way to install and maintain vimrc, screenrc and bashrc and other rc files.

Commodore 64 themed web placeholder #

You can have one too! :)

Timelord #

It's a python time stracking tool for freelancers. Works with plain-text files for simplicity and versatility.

XCACHE emulation with Memcached #

A small script acting as a drop-in replacement.

GIT-OSX-installer (source control system) #

Patch to fix a missing Term/ReadKey.pm PERL module issue.

Zend Framework (PHP framework) #

Better lighttpd rewrite rule in documentation.

vTiger (CRM system) #

Various bugfixes.
Better I18N code (sprintf-based).
WebService client library update functionality.

Meatball Wiki (wiki engine) #

Bugfix regarding page caching

Vim (programmer's editor) #

Patch to temporarily toggle the case sensitivity in search.
MySQL plugin for "netrw", to directly edit database content (not released).

Battle for Wesnoth (game) #

Multiplayer end-turn notification.

Feng Office (project management system) #

Minor fix to the RSS feed generator.

ELKS (embedded Linux kernel) #

Usage of a HGC/MDA monitor.

OpenBSD (super-secure Unix variant) #

Bug report re: NE1000 network cards.

Slash'em (game, a Nethack variant) #

Bugfixes regarding path-finding movement