Alan Gaudet

Alan Gaudet

I build Android apps, Rust engines, firmware, a phone ROM and agent systems. I work shifts on a plant floor and build these on my own time. I want to move into engineering work on developer tools and agent platforms.

Runs on
Android · Linux desktop · a 320×240 music player · a spare Pixel 6
Written in
Rust · Kotlin · C · Python · Bash · COBOL · OpenSCAD
Shipping
Google Play, crates.io, a server in my house
Contact
aglabs090@gmail.com

The bench

Screenshots from real builds. The terminal talks to a live COBOL server, and the music player is a redrawn UI you can drive. Scroll sideways, use the arrow keys, or press the buttons.

Debt Tracker home screen: net balance across four people and a list of balances.
AND-01

Debt Tracker

Live on Google Play. Groups travel between phones as a file.

Live on Google Play

Recorded
> GET /api/fortune HTTP/1.1
> Host: cobweb.alangaudet.dev

< HTTP/1.1 200 OK
< Content-Type: application/json

{"fortune":"COBOL: still running the world's payrolls while you pick a framework."}
WEB-01

cobweb

Press a request. nginx forwards it to cobweb, and COBOL on my home server writes the answer.

Live

DAYLIGHT Home screen from the Rockbox simulator: Shuffle All selected.

FW-01

Rockbox DAYLIGHT

Redrawn in the browser from the firmware's layout, colours and key map. Try the wheel.

Tested on device; rebase not yet flashed

Under Pressure Today screen with sample readings: last reading, band strip and ESH 2023 citation.
AND-02

Under Pressure

A Rust core under a Kotlin app, on closed testing. Sample readings.

Closed testing on Google Play

Wariarr · admin
Wariarr admin overview: invitation and user counts, live playback cards and a recently watched table.
WEB-02

Wariarr

Invite links and an admin dashboard for my Plex server. Synthetic fixtures.

Running on the home server

manifests/M8_RECORD (excerpt)
flashed_slot=_b
build_type=user
build_flavor=lineage_oriole-user
lineage_version=23.2-20260912-UNOFFICIAL-oriole
verifiedbootstate=orange
veritymode=enforcing
wifi_validated=true
FW-02

Oriole ROM

An excerpt of the record read back from the Pixel 6 after the ROM's first boot.

Boots on the test phone

crab-home app list with themed icons coloured from the system palette.
AND-04

crab-home

An Android launcher with no Kotlin UI. Slint draws the whole launcher interface.

Phone trial before 1.0.0

COD of Tanks · Ultra
COD of Tanks port at the Ultra tier: a desert-camouflage tank on a dirt road, seen from the chase camera.
GFX-01

COD of Tanks

The port's Ultra tier, from the parity camera.

In development

MediaLint
MediaLint dashboard: severity counters, library health and finding trend.
RST-03

MediaLint

Audits a Plex library and never moves a file without a journal.

Released; no public download

kinlens Send screen: a snap preview above two destination buttons the parent set up.
AND-03

kinlens

A kids' AR camera with no network permission at all.

In development

Phones at Pixel 8 size on a 96 dpi display · the player drawn at its 320×240 pixels AND-01 · 1 of 10

Catalog

Grouped by what the work runs on. Green lamps are released and in use. Amber lamps are in development. Hollow lamps are archived. Every part has a datasheet with its decisions and its known faults.

Android

Rust tools and engines

Games and graphics

Firmware and OS

Web services

Agents and AI

Hardware

The day job

At work I am a Team Second at Procter & Gamble in Belleville, the deputy to a production team's leader: equipment ownership under autonomous maintenance, root-cause work on stops, and the shift's daily management routines. Before that I led a customer support team for six years.

The plant floor is where I learned to write a procedure someone else can follow at 3 a.m., and to trust a reading over a guess. The projects here follow the same habits.

Read the résumé

How I build

I am the systems architect and planner. I design each system, plan most projects in milestones with written acceptance gates, and set the gate a release must pass. Most repositories carry an AGENTS.md brief with the rules the agents follow. I build with AI models and coding agents (Claude, Codex, Gemini, Grok and Muse) working inside those gates, and a change lands when the project's gate passes: tests and lints, plus type checks where the language has them.

Building something that has to keep running?

I want to work on developer tools and agent platforms, and on production services with real users. Email is the fastest way to reach me.