We increasingly find that computational and programming concerns limit progress more than do challenges within application domains. I work to correct this imbalance through a combination of academic research, open source software development, and teaching.

Current Research

My current work at Sandia National Labs is on algorithmic development in large complex networks.

This work benefits from my simultaneous open source work on PyToolz, a functional standard library for Python.

General Research

I am broadly interested in mathematical software engineering. That is I study and improve how mathematicians and domain scientists develop and distribute software. My goal is not to solve any particular single problem but rather to isolate and automate many of the decisions experts make in developing a solution.

This work benefits from my involvement in the SymPy library for symbolic computer algebra.

Software Development

I write code. I also think about how we write code as a community. My work is usually open source and my recent workflow and thoughts are frequently published online.


My background is in physics and engineering. Historically I have been interested in structured light scanning, astronomy, and gravitation.


There exists an imbalance between computer science and the physical, life, and social sciences. The maturity of solutions in computer science has outpaced the knowledge of computational methods in these domains. This is despite their relevance in today’s dominant issues.

Because of this imbalance I prefer to teach methods courses in technical fields outside of computer science. While at UChicago I traditionally served as lab instructor for CMSC-12100. and lectured a similar course during the Summer.

Matthew Rocklin

Matthew Rocklin

Postdoctoral Researcher at Sandia National Labs