I make software almost daily for my research, business, and writing. Some of it eventually becomes open source. Enjoy! :)


  • University of Miami Wave Model: A parallel spectral ocean wave model. It’s been used in research and production for a variety of applications. It’s particularly good for coupling with weather and ocean circulation models. Read the paper here.
  • wavy: A library to build a hierarchy of ocean wave models. Useful for research and toy models, less so for production.
  • tsunami: A parallel shallow water solver used to teach modern and parallel Fortran. Developed as the running example for the Modern Fortran book.

Machine learning

  • neural-fortran: A parallel neural net microframework. Proof-of-concept with promising performance and ease of use. It supports deep feed-forward networks of arbitrary size, several activations functions, and data-based parallelism. Read the paper here.

General purpose

Devices / embedded

  • scanivalve-mps-python: A high-level interface to a 64-port miniature pressure sensor, built on top of the TCP protocol.
  • arduino-wavemaker: Programming Arduino Uno to power a linear actuator for making waves in a tank.