Computer Programming

I completed a minor in Computer Science during my B.Sc., and have continued to hone my programming abilities on scientific problems. I have experience with procedural programming (Assembly, C, Pascal), object-oriented programming (C++, Java, Visual Basic, etc.), expression programming (Mathematica, Matlab, shell scripts, etc.), markup languages (HTML, SVG, etc.) and web technologies (Apache, PHP), database syntax (MySQL, etc.), and alternative environments (Igor Pro, LabVIEW, etc.).

I am particularly fond of Python and associated scientific libraries (numpy, scipy, matplotlib, lmfit, scikit-learn, etc.) to solve scientific data problems. For instance, I released SciAnalysis, a package for analyzing two-dimensional datasets, with particular focus on x-ray scattering data analysis, as well as image analysis targeting SEM and AFM images of self-assembled morphologies. I developed ScatterSim, a package that can quantitatively model and fit x-ray scattering data from nanoparticle superlattices.

I have more recently become involved in several collaborations that leverage machine-learning (especially convolutional neural networks) for the automatic clustering and tagging of scientific datasets.

Web & Servers

I have a longstanding hobby in running web servers, and designing and deploying web-pages, going back to the days of hand-coding in HTML. Modernly, I use content management systems, built using the familiar open-source tools (Linux, Apache, MySQL, PHP, etc.).


During grad school, I was as a teaching assistant for the upper-level physical chemistry laboratory for several years. I also taught several guest-lectures for undergraduate courses in nanotechnology and polymer science.

I developed a and taught a one-semester class for honours students (at Stony Brook University): “Introduction to Nanoscience”.

Through my role as a beamline scientist, I have had the opportunity to train, teach, and mentor a wide variety of scientists (>150 visiting users), including undergraduate students, graduate students, and postdoctoral researchers.

I created and maintain, a wiki that brings together tutorials, reference articles, and other resources for the x-ray scattering community.


I enjoy combining 3D rendering and vector-based methods to generate artistic renderings of scientific concepts. More details here.