Hi, I'm Andrew! 👋
I am a Principal Engineer at MITRE, where I work on a few different things:
- 🔍 Lead the development of Hipcheck, a tool for automated supply chain risk assessment of software repositories.
- 🖇️ Contribute to OmniBOR (formerly GitBOM), a standard and tooling for recording build inputs for software artifacts.
- 🗒️ Write on my personal blog about topics like memory safety, Rust, open source software, and software supply chain security.
- 🦀 Write at Possible Rust (on hiatus).
- 🗨️ Keep a list of languages written in Rust.
⁉️ Maintain woah, aResult
type that separates errors you can handle from errors you can't.- 🏷️ Maintain semver-explain, a CLI tool for explaining SemVer requirements.
- 🛑 Maintain replace_err, which adds a
replace_err
method forResult
. - 🏗️ Maintain pathbuf, a convenient macro for building
PathBuf
s. - 🪄 Created FindCargo.cmake, a CMake module for interoperating with Cargo.
- ⏲️ Wrote dcalc, a CLI duration calculator.
- 🐱 Wrote good-cat, a cat that hates pipes.
- 📎 Wrote gccarch, a tool for getting info on GCC's supported architectures.
- 📆 Wrote skej, a little analyzer for concurrent schedules.
- 🖨️ Building cargo-spdx, a tool for generating SPDX Software Bills of Materials for Rust builds.
- 🌐 Creating Tin, a currently ill-defined programming language.
- 📊 Want to build epss, a library and CLI for interacting with the Exploit Prediction Scoring System API.
- 💭 Want to finish building shy, a POSIX shell static site generator I can use on tilde.institute.
- ⛓️ Built the first FFI interface for Pact, a framework for testing APIs.
- 🖋️ Wrote the old Rust FAQ.
- 👨🏫 Taught programming language theory to undergrads.
- 🎒 Spoke at RustConf 2017 about teaching Rust in a programming language theory class.
- 📖 Spoke at Rust Belt Rust 2016 about how to write good documentation.