I am the author and maintainer of two open source software packages, macroeco and BatID, that support reproducible and efficient ecological research. Aside from extensively commented and validated low-level functionality, both packages are built with graphical interfaces and user guides to support the use of the software by non-programmers. Other projects can be found in my GitHub repository.


macroeco is an open source Python package for ecological pattern analysis. It contains functions to analysis macroecological patterns such as species area relationships, species abundance distributions, and species turnover in empirical data sets, predict the forms of these metrics from ecological theory, and compare data to predictions. The included MacroecoDesktop provides external command line and graphical interfaces that allows the package to be used without writing Python code.


BatID is an open source package with a graphical, web-based interface that provides automated call identification for California bat species. This is currently the only open source bat call identification software and one of the only packages that can automatically identify calls recorded in the common zero-crossing format. Please contact me for information about a new beta version that has no additional installation requirements.