I have recently created a new library called libMariaS3 for a couple of teams at MariaDB which provides a simple C API to Amazon’s S3. This was created because we needed a library which could link to GPLv2 software and Amazon’s own library is Apache 2.0 licensed which is incompatible.

It is not a perfect code base because I had a very short amount of time to get the first release out but it was a very fun project to work on. It led me to take a quick look this morning at a couple of other things I have created in the past to see where they are at today.


Around 5 years ago I worked for HP’s Advanced Technology Group and I worked on several different Open Source projects during that time. One of those projects was called libAttachSQL which was a very fast, asynchronous, Apache 2.0 licensed C connector for MySQL servers.

This project wasn’t very successful but the ideas were born out of another project I created which was almost a complete re-write of libdrizzle.

libdrizzle was a BSD licensed high-performance MySQL compatible connector which was part of the Drizzle project (Drizzle itself being a microkernel fork of MySQL). When development of Drizzle stalled I took on developing libdrizzle under a new name “libdrizzle-redux”.

Work commitments got in the way and development stalled, but I was contacted one day by someone who was very interested in the work I did in that project. I helped them setup a fork and gave them the general direction I was going with the project. Today libdrizzle-redux is still developed by a company called Sociomantic and the GitHub page can be found here.

Jenkins Job Builder

In early 2012 I was a member of the core OpenStack Infrastructure team. Jenkins was used as the CI platform then and we needed a way to make minor changes to a few hundred Jenkins jobs at a time. Every time we did this something broke and releases were stalled as a result. We needed a more automated way of making changes to Jenkins jobs and I created something which was eventually called “Jenkins Job Builder” to solve this. It had a different name originally but was changed very early on.

I soon moved on to lead another project in OpenStack which was HP’s LBaaS project called “Libra”. This unfortunately didn’t live on but a lot of the design ideas can be seen in the Octavia project.

As for Jenkins Job Builder? I’m told that many companies use it today and I’ve found it in the repositories of Ubuntu and Fedora. Although I suspect a lot has changed since my original code for the project.

Honorable Mention – mydumper

One honourable mention I can think of is “mydumper“. I did not create the project but I wrote a large amount of the code and led the maintenance for a while. The lead developer of this is now Max Bubenick and it appears to be still maintained.

I get a lot of people contacting me asking me to write certain patches to mydumper. Maybe one day I will, unfortunately work commitments often get in the way of Open Source projects I would like to work on.