software

Seit einigen Jahren arbeite ich hauptsächlich in C++11. Außerdem habe ich ein wenig in Python, R, und C gearbeitet. Davor habe ich VB.NET, ein wenig Java, und vor langer Zeit auch php und VB5 genutzt.

In der Software-Entwicklung ist mein Ansatz, sauber und einfach zu programmieren, sodass andere meinen Code leicht verstehen können. Wenn möglich, vermeide ich unnötige Design-Patterns, sondern nutze zweck-orientierte Klassen und Funktionen, die darauf arbeiten. Außerdem habe ich Spaß an Optimierung und daran, effizienten Code zu schreiben.

projekte

Meine primäre Software-Bibliothek während meiner Doktorarbeit ist genesis. Die Bibliothek bietet sämtliche Funktionalität, die ich für meine Datenanalysen und Visualisierungen meiner Forschungsprojekte und Veröffentlichungen benötigt habe. Ich habe sie mit dem Ziel entworfen und umgesetzt, eine einfache API für Standard-Fälle zu bieten, und gleichzeitig flexibel und effizient zu sein. Da sie sowohl für Produktion (Durchführung von Datenanalysen), als auch für Entwicklung (schnelle Prototypen) geeignet ist, hat sich genesis in vielen Projekten als nützlich erwiesen.

Für End-Anwender, die einfach ihre Daten analysieren willen, habe ich das Kommandozeilen-Programm gappa entwickelt. Es implementiert alle Methoden, die unter Forschung beschrieben werden, und hat eine einfache Bedienung mit vielen Optionen für die meisten Anwendungsfälle.

Sowohl genesis als auch gappa sind in unserer Application Note Genesis and Gappa: Processing, Analyzing and Visualizing Phylogenetic (Placement) Data beschrieben, und kostenlos unter GPLv3 hier zu finden:

Weitere meiner Projekte sind außerdem auf meiner github Seite zu finden.