First, thanks for visiting my blog and personal site!

A note on the posts’ content

I started this site as a way to publish some of my findings along my journey through data science and machine learning. Everything shown here is solely my own work. The posts help me record my methods so that I can reference them later. Most of them are going to be less formal than an academic paper, but are often written in an academic style. Namely, I’ve tried to be very thorough in documenting the steps of my experiments. Sometimes I’ll also highlight pertinent pieces of code. But, it would be a stretch to call any post a true code walkthrough or step-by-step guide. I tend to focus more on key high-level concepts and explaining results.

My academic life


I’m originally from Maryland and went to school up through undergrad there. I was a physics major and math minor at University of Maryland, College Park (graduated in 2013). During my time there I was deeply curious about nearly all the core branches of science, as well as philosophy, visual art, and music. I was fortunate enough to take courses in all these areas. On the whole, they granted me a much broader view into how the universe works than I would have seen from the perspective of physics alone. The ascending “ladder” of the sciences (mathematics, physics, chemistry, biology, psychology, and sociology) allowed me to see how things work at multiple scales of organization: from atoms to molecules to cells to organisms to groups of organisms to society.

During this time, I began working at a granular/soft-matter and biophysics lab with Dr. Wolfgang Losert. I performed experiments studying the motion of spherical glass beads under shearing deformations. This was my first exposure to scientific research, and importantly, to large volumes of data. Using a laser-sheet-based 3D scanning system, we could record the location and orientation of each and every particle in a 3D volume. As the beads were stirred by a rotating disk from below, we obtained a spatial trajectory for each bead. It was my job to make sense of these trajectories through novel data analysis techniques. I also came up with new image processing techniques that allowed us to measure the rotation rates of the beads. This was thus my first exposure to computer vision as well! So much of my later ideas, interests, and creations would stem from this early experience—even to this day. I was forever hooked on the power and beauty of data.

A) The chamber containing glass beads and index-matched fluid. B) Experiment schematic. A laser sheet shines horizontally through the chamber, revealing a cross section of the beads. A camera records the cross sectional image from above. All slices are later fused into a single 3D image. C) I plotted each layer 3D image as points where black represents the interior of beads. These beads have perpendicular holes drilled. I developed code to compute the principle axes from this data (red and blue lines), allowing 3D orientation (and thus rotation) to be measured. D) Trajectories of a sample of beads in the chamber. Black lines show the orientation of the bead axis over time. Color indicates bead ID#

Grad school

I completed my PhD program in “Applied Mathematics for the Life and Social Sciences” at Arizona State University in Tempe, AZ (2021). Coming to grad school, I wanted to extend the tools I had used with computer vision and particle ensembles to study agents less passive than glass beads. While the beads only react to physical forces, social insects such as ants actually take actions and interact—allowing them to build complex structures and societies. Ants can also be tracked as they move across a 2D surface. I won’t go into my research here, but ultimately I used similar tracking techniques to analyze ants’ movement following an alarmed disturbance in the nest.

I was exposed to a huge suite of computational analysis and modeling techniques; I applied them to research in the field of social insect behavior. Many of these I took upon myself to learn, simply because I found them fascinating. I learned that I had a passion for creating computational tools and visualizing data in new ways.

These tools can often act as novel probes of nature, revealing patterns that humans would ordinarily have difficulty perceiving.

Here is a list of areas that I focused extensively on. I conducted more experiments than I can count and wrote a lot of code implementing these methods from scratch.

  • Modelling and analysis of “Complex Adaptive Systems”
  • Data visualization
  • Particle simulation
  • Dynamical systems and chaos
  • Dimensionality reduction
  • Clustering
  • Network analysis and temporal networks
  • Agent-based modeling,
  • Deep learning (esp. Convolutional networks for CV)
  • Reinforcement learning

During grad school I became very frustrated with the slow pace of the publishing process. This blog started to become an outlet where I could get my ideas out there without having to wait. Things tend to become stale the longer you wait.