Code / Data


Happy to be involved with the 2017 & 2018 Google Summer of Code (GSoC) program as mentor for students working on projects for The Julia Language.


githubSome of my scientific programming code is publicly available through GitHub here.


In this section, I list the programming languages I use, and briefly discuss the the scientific, mathematical, and simulation approaches I use in my work.


Programming languages I have used in my research include: Python/Cython, Mathematica, Fortran 77/90, C, MATLAB, R and Julia.



As a scientist with formal training in pure mathematics and ecology, I develop a computational and flexible approach to answering interesting scientific questions.


I apply my training in several broad scientific approaches, including applied dynamical systems theory and statistical model fitting (information criteria approaches, maximum likelihood, and Bayesian) to applied projects and work in this area.


My graduate research included classical random community matrix modelling and non-linear population and community stability analysis (e.g. eigenvalues, bifurcation analysis, Lyapunov exponents, Floquet multipliers). Extending this training, my postdoctoral work includes basic singular perturbations approaches as well as stochastic dynamical systems theory. My quantitative skills have been honed through formal training, research and practice.


As many of these traditional mathematical approaches can be quite difficult to apply to large ecological models, I also use simulation approaches that use numerical parameter studies to try and uncover similar phenomena in a qualitative fashion. Numerical considerations have involved learning approaches from computer science, such as object oriented design, functional/pure programming, compiler technologies, as well as software engineering (e.g. unit testing, version control systems and documentation tools).


More information about my code, data and scientific programming coming soon!