Frank Xue — software engineer
Building useful software with AI.
I build software with AI coding assistants and share selected work, with each project's status, evidence and limits made clear. The projects here are mostly in Rust: a cryptography library for China's SM2, SM3 and SM4 standards, released on crates.io; private tools for AI coding agents and CI runners; and a public-source, pre-release pipeline for explainer videos, written in Python.
View selected work(02) About
A short version, for the impatient.
In a sentence
I'm a software engineer who cares about clarity: code that can be audited, tools that explain their state, and interfaces that do not make routine work feel mysterious.
Read the longer version(03) Selected work
One project, in depth.
Case study
gm-crypto-rs is a pure-Rust library for China's SM2, SM3 and SM4 cryptography standards, published on crates.io. I started it after encountering gaps in the Rust tooling available for my needs. The case study covers the problem, how the work was divided, the evidence, and what it doesn't claim, including that it has not been independently audited.
Read the case study(04) Notes
Working through a problem.
-
Sharing code is not the same decision as sharing a package
The reflexive move when two things share code is to extract it into its own package. That's the wrong test. The right one is a trigger, decided and named before anyone needs it. Read →
-
A constant-time claim is a trust problem, not a comprehension problem
Explaining constant-time execution is the easy part, and it isn't what a skeptical reader needs. What transfers warrant is a leak detector that must fail on purpose, and a caveat written before anyone asks for it. Read →
-
Skipping the releases that change nothing
A published version is a promise about bytes, not a diary of work. Here's why some of gm-crypto-rs's hardest cycles never got a version of their own. Read →
(05) Contact
Say hello.
Direct
GitHub is the most direct way right now — @frankxue831. An issue or discussion on any of my repos reaches me too; for other conversations, LinkedIn works.
How to get in touch