Hey, I'm Milo. I'm an applications and systems developer, with professional experience in C, C++, and Python. At my current job, I maintain interfaces to scientific simulation software, bindings, unit tests, and continuous integration solutions. Outside of the professional sphere, I'm proficient in Rust, and am familiar with Kotlin, Java, Lua, R, and HTML. I've worked with Linux, macOS, and various BSDs.
This is my GitHub account, where I work, keep mirrors of projects I work on, and contribute to various open source projects.
I've moved over to SourceHut, and don't use this account much anymore. Mirrors are maintainted for projects I care more about. This is not a full list of all my personal projects, only the ones I would like to showcase here.
-
Koi (GitHub Mirror) - A compiler and full toolchain, written in C, featuring a custom, experimental backend architecture.
-
Ook (GitHub Mirror) - An investigative object-oriented kernel, written in C++.
-
Kojiki (GitHub Mirror) - A tool for converting GNU Makefiles to Ninja build files for faster iterative builds, written in C.
-
Sprite (GitHub Mirror) - A revival and modernization of the Sprite operating system originally developed at UC Berkeley.
- fxsdump - Utility to dump Firefox Memory Core files to JSON.
- face2ppm - Utility to convert FaceSave files into the PPM format.
- no-orm-sqlite-rust - Example (for a friend) of using SQLite, without an ORM, with Rust.
I will use GitHub now and again to contribute to various projects, as well as to the Divisions of Epidemiology and Biostatistics at the University of Utah. A non exhaustive list of projects that I've contributed to can be seen below, in no particular order. Some of these project I've contributed a lot to, and some very little.
- Epiworld – C++ library for agent-based epidemic simulations. (core team)
- EpiworldPy – Python bindings for Epiworld. (lead developer)
- EpiworldR – R bindings for Epiworld.
- EpiworldWeb – Web interface (Svelte) for Epiworld. (lead developer)
- Darling – macOS compatibility layer for Linux.
- Darling Docs – Documentation for the Darling project.
- GNUstep Tools & Scripts – Tools and scripts for GNUstep development.
- Rust's libc – Rust bindings for system libraries.
- metal-rs – Rust bindings for Apple’s Metal graphics API.
- XMake Docs – Documentation for the XMake build system.
- Meson WrapDB – Package management for the Meson build system.
- hashmap.c – A simple and efficient C hashmap implementation.
- RapidAssist – Utility library for C++ development.
- SNAFU – Error handling library for Rust.
- IPSD – Sandboxed remote execution server for software demos. (lead developer)
- Zig – Contributed to the Zig programming language.
- Awesome C – Curated list of awesome C resources.
- FTC Robot Controller – Android-based robotics control system for the FIRST Tech Challenge.
- Fortune Mod – Collection of fortune cookie-style quotes.
You can contact me the following ways:
- Email: [email protected] (alias)
- Website: milobanks.com
- SourceHut: ~milobanks
- GitHub: milobanks
- Stack Overflow: Milo Banks
- Reddit: Good Dimension
If you have something important you want to say to me, or want to verify that you're not dealing with an imposter, you can view my PGP public key online. Also, the FBI has not been here.