Jordan Anderson

Independent technical & policy consulting

Find the gap.
Make it work.

I find what stops a system from working—and build the fix.

ML systems, GPU debugging, software security, and industrial policy. Tested work, with evidence you can inspect.

Open code. Written reasoning. Evidence you can inspect.

The work goes all the way
to the implementation.

Diagnosing the failure is the beginning. I build the fix, test it on the hardware, and work it through upstream review.

Selected work / Machine learning systems

More from the
hardware you own.

Train large Mixture-of-Experts models on a single GPU. Loggetta checks the hardware, plans the run, and saves a report. One install includes the runtime and 4-bit kernels.

Measured runtime comparison

1.92×

Unsloth's GPU time per training step, against e4b's

Qwen3-30B-A3B QLoRA · one RTX 5090
Both frameworks on one software stack, with matched adapters, initialization, and tokens, and e4b at its defaults. Held-out loss comparable. Wall-clock: 2.80× on an AMD EPYC 7713 host.

The tradeoff: Unsloth peaked lower, 24.27 against 26.16 GB. Wall-clock ratios depend on the host, because Unsloth spends more of each step on the CPU. Earlier wall-clock readings, before e4b’s current defaults: 2.352× and 2.468×.

New in Loggetta 0.6.0: an AMD GPU is found and refused by name, and with experts4bit-qlora 0.53.0 or later the grouped_nf4 MoE backward is priced once. The speed result above is the runtime underneath.

GPU correctness / OpenVINO

From a driver mismatch
to an upstream fix.

Intel GPU kernels assumed an OpenCL operation the driver no longer provided. I traced the failure, developed the shared-header replacement, migrated affected kernels, and added a regression test for the bug class.

Three merged PRs carry the repair and test. On the measured UHD P630 / TinyLlama int4 setup, the fixed GPU path decoded at 18.4 tokens/s against 13.9 on CPU fallback. Energy was not measured.

Security research / ZisK zkVM

Read what the proof
actually proves.

A signed-remainder constraint checked magnitude but left the sign free for negative dividends. The ZisK team published the finding as a Critical advisory and credited me as a reporter.

The report checked constraints and witness components; it did not produce an end-to-end forged proof. The final fix came from Cody Gunton’s independent report of the sibling quotient-sign bug.

More systems work · upstream fixes, kernels, and security

Fix the tools the work depends on.

Merged fixes stop training caches from retaining dequantized weights, correct end-of-sequence handling, and repair MoE weight preprocessing.

Compute on the packed weights.

grouped-nf4-gemm and experts4bit-qlora run MoE computation directly on low-bit weights. The research records performance, byte-level checks, and the experiments that failed.

Make recovery part of the tool.

asahi-luks-setup adds disk encryption to existing Fedora Asahi installations. Hardware testing informed both the installation paths and a recovery command for interrupted reencryption.

Check what actually arrived.

arr-malware-screen checks the files discovered after extraction, closing the gap left by queue-time screening in the *arr media stack.

The same questions,
at institutional scale.

Analysis of industrial capacity, trade, and who owns the infrastructure that people depend on.

Trade & regulation

Friction by Other Means

How regulatory infrastructure can preserve the effects of a tariff regime after its legal basis falls away—and why the headline rate tells only part of the story.

Essay · 2026 · ~7,600 words

Computing & public power

The Great Recentralization

What is at stake as computation moves from machines people own to infrastructure they rent—and the institutional choices that could preserve local control.

Essay · 2026 · ~9,000 words

I serve on the board of Oteco, Inc., a Houston industrial manufacturer founded in 1948. That experience informs the questions I bring to policy work.

Browse all essays

Start with the problem
you need to understand.

Technical projects and policy retainers for engineering teams, industrial and defense organizations, investment firms, and policy shops.

  1. A focused first conversation

    Send a short description of the problem and what you have tried. An initial conversation, usually 30–45 minutes, establishes whether the work fits.

  2. A scope you can evaluate

    Scope and rates go in writing before work begins. A specific diagnosis typically takes two to six weeks; retainer work runs longer.

  3. Something you can act on

    A tested fix, an upstream contribution, or a recommendation with a written account of the evidence. The reasoning stays with you.

Public GPG key & fingerprint

Download public key · Ed25519 · expires 11 June 2028DAEF C03B 9188 793C 80E5 20C8 68F0 6663 C7FB 250F