Here is a list of publicly available software I have developed or collaborated on. More information on each is available by following the each project's link.

Best Beans

Assisists coffee growers with pest and disease monitoring, management, and decision support.

The Best Beans mobile app enables production of the highest quality and yield of coffee from your fields by efficiently and accurately monitoring Coffee Leaf Rust and Coffee Berry Borer and providing decision support on their management. Jointly developed with Smart Yields.
Latest version: Check app stores
Release date: September 2020 (initial release)
Apple App Store | Google Play Store | More info


Simulates layout of traps in an area with insect outbreak and dispersal; calculates capture probability

TrapGrid simulates insect dispersal in a rectangular area containing traps. Each trap has a parameter indicating its attractiveness. Using this value, the escape probability for a given insect at a given distance from the trap can be calculated. An outbreak is determined by a quantity of insects released at a given point and having a certain diffusion coefficient. The simulation can be run for any number of days, and will calculate the daily average escape probability for the colony, as well as a cumulative escape probability.
This software was originally written by Brian Hall. Updated fork is linked below.
Latest version: 2020-09-20
Release Date: Septermber 2020


An Agent-Based Simulation of Invasive Pest Insects

MED-FOES is an implementation of a stochastic Agent-Based Simulation (ABS) system for analysing demographic changes in a single population of Medfly (Ceratitis capitata) over time. The simulation currently takes population extinction as a given because it aims to give us better estimates of necessary quarantine lengths in areas where Medfly is not currently established but does repeatedly invade. Thus the objective of this software is to estimate the time to local extirpation based on known ranges of developmental, survivorship and reproductive parameters, as well as assumed ranges of an eradication pressure parameter. For a complete analysis and estimate of time to extirpation one would execute a large number of individual simulations evenly distributed over parameter space to estimate the time at which an arbitrary percentage of the simulations show extirpation.
Latest version: 0.6.2
Release Date: August 2017
Project site


A Configurable and Extensible Graphical User Interface for Biological Analysis Software

GuiLiner is a generic, extensible and flexible front-end designed to "host" a wide variety of data analysis or simulation programs. Scientific application developers who produce a correctly formatted XML file describing their program's options and some of its documentation can immediately use GuiLiner to produce a carefully implemented GUI for their analysis or simulation programs.
Latest version: 0.4
Release date: November 2013
More information and download


Population Genetic File Creator and Converter

Formatomatic creates infiles for several population genetic analysis programs from csv, genepop or convert* (excel) files.
Latest version: 0.8.1
Release date: May 2008
More information and download

Calculating posterior probabilities from lnL

Developed for use with Structure program output. Computes posterior probabilities of K given a set of ln probabilities using Bayes' rule. See Structure documentation for more detail.
Latest version: 0.2
Release date: June 2003
More information and download