A summary of software I've helped develop, as well as some software that I like and use. Most of my projects involve Python and MATLAB, but I've recently become enamoured with Julia.

Software I've Worked On

Extrinsic Sensor Calibration

I am actively researching new methods for "hand-eye" or "egomotion sensor" calibration. My colleagues and I have implemented some of these algorithms in certifiable-calibration, a Python and MATLAB repository.

Stay tuned for newer and shinier algorithms implemented in Julia with ROS integration!

Inverse Kinematics

My colleague Filip Marić and I are actively developing graphIK, a Python library for research into distance-geometric solutions to inverse kinematics for redundant manipulators in the presence of obstacles. We also developed MATLAB code for a sparse sum-of-squares approach to planar and spherical IK.

Representing Rotations in Deep Learning

I worked with Valentin Peretrouhkin on bingham-rotation-learning, a novel differentiable representation of SO(3)\text{SO}(3) as a Bingham distribution for deep learning.

Resource-Efficient Cooperative SLAM

I worked with my colleagues at MIT on MATLAB code for resource-efficient "communication policies" for multi-robot cooperative SLAM.

Software I Like

Here's a list of tools I think everyone should know about!


I've never been a big fan of productivity software or fancy note-taking apps, but Obsidian's simplicity has charmed me! Simple hyperlinked markdown files that support LaTeX with little to no fuss.


Texpad is easy to configure and wonderful to look at - worth every penny!


I built this website with Franklin! I find it much easier to configure than Jekyll, and it's highly integrated with Julia.