Providing custom software development, software project rescue, high-performance numerical computing (C, C++, Python, GPGPU), AI/machine learning, and applied mathematics consulting.

See my résumé for more information.

Blog Posts

- - -

NEAT-python

A pure Python implementation of NEAT (NeuroEvolution of Augmenting Topologies).

NeatEvolution.jl

A pure Julia implementation of NEAT compliant with the original paper. Supports feed-forward, recurrent, CTRNN (continuous-time), and Izhikevich spiking network types. Registered in the Julia general package registry.

Arborist.jl

A generic, extensible genetic programming framework for Julia. Follows the Problem/Algorithm/Solve pattern from the SciML ecosystem and offers first-class support for NEAT neural topology evolution, multi-objective optimization (NSGA-II), quality-diversity search, and LLM-as-operator workflows.

Morphe

A platform-agnostic framework for representing 2D sketch geometry and constraints in a standardized format. Morphe enables sketches created in one CAD system to be transferred, stored, and manipulated in others without loss of information. Includes adapters for FreeCAD, Autodesk Fusion 360, SolidWorks, and Autodesk Inventor.

SketchBridge

A desktop application for transferring 2D sketches across multiple CAD platforms. Built on top of Morphe, SketchBridge provides a graphical interface for exporting sketches from one CAD system and importing them into another, with support for visual preview and geometric transformations.