Nicholas Miklaucic

Projects

Curium
Alongside my other research, I'm working on a library, Curium, that implements the computational tools of crystallography in Rust—written from the ground up, not just a wrapper for cctbx orspglib.

Curium aims to be the fastest implementation of various primitives needed for machine learning available, with significant improvements over other libraries for existing functionality. Beyond that, the goal is to create a library that uses the type system and a thoughtfully-designed API to make doing the right thing easy.

Curium is the foundation for what I hope will be state-of-the-art machine learning models that push the limits of what AI can do for crystallography.
Constellate
Constellate is a tool that publishes Jupyter notebooks as interactive web applications. It supports a wide variety of Python data visualization libraries, and it takes care of all of the web development work so you don't have to!
Pollard's Rho
Pollard's Rho is a blog of sorts using Constellate. I write about a variety of topics: you might be interested in an exploration of names and gender using language models or my misadventures trying to efficiently compute Fibonacci numbers.
AISpell
AISpell uses both a language model and a model of how people type to intelligently correct spelling. It can correct errors in real time, on consumer hardware, by fusing the power of deep learning and classical statistics.
Rho+
Rho+ provides two useful things:
  • A theme with harmonious light and dark versions, defined for all of the major Python dataviz libraries.
  • A set of useful addons to matplotlib that make it easier to produce beautiful graphs quickly
Nano, the fictional namesake of the bot
Nano
I moderate a homework help Discord server with over 1,700 members. Nano is a bot I wrote to make life on there easier. Some features:
  • Automatic recognition and translation of non-English
  • A reputation system to encourage participation
  • Easy access to Merriam Webster, Wikipedia, and the weather without leaving the chat