Andrew Lilley Brinker

Project + People Manager / Software Supply Chain Security


I work on software supply chain security at MITRE, including serving as a member of the OmniBOR Working Group, where I lead development of the Rust implementation, and as the project manager for Hipcheck, a tool for automated supply chain risk assessment of software packages.

I write, teach, and speak about Rust. I’ve written educational articles on Possible Rust and on my prior personal blog Suspect Semantics. I’ve taught “Introduction to Rust” at MITRE, spoken at RustConf and Rust Belt Rust, edited a book on Rust procedural macros, and contributed to the official Rust documentation and the Rustonomicon. Two of my favorite articles I’ve written are “3 Things to Try When You Can’t Make a Trait Object” and “Non-Generic Inner Functions.”

I’m also a programming languages enthusiast. I maintain a list of languages implemented in Rust, and previously taught “Introduction to Programming Language Theory” as an adjunct lecturer at CSUSB. I have a Master of Computer Science degree from Rice University.





  • omnibor-rs: Rust implementation of the OmniBOR identifier / manifest standard
  • langs-in-rust: A list of programming languages implemented in Rust, for inspiration
  • hipcheck: Automatically assess software projects for supply chain risk
  • cargo-spdx: Generate an SPDX Software Bill of Materials for a Rust crate
  • replace_err: Extends Result to enable replacing the error type
  • woah: A Result type that supports both local and fatal errors
  • dcalc: Add or subtract durations to find out how long something takes
  • semver-explain: Explain SemVer requirements by converting to more obvious forms
  • gccarch: Query information about architectures supported by GCC
  • Pact FFI: Exposes Pact’s Rust reference implementation to other languages