It attaches to the Canvas a school already runs, and opens an assignment as the thing it is rather than a box to upload a file into. So far that's 71 registered accounts and 39 signed in over the last 30 days. No paid tier, and I write all of the code.
An iPad app for reading and marking up PDFs with an Apple Pencil. It also runs Python, git, a shell, and a code editor on the device itself, so the problem set and the code for it sit in the same place. 874 tests underneath it.
A tutor that works only from your own course materials. It gives hints and steps rather than answers, and every claim points back to the page, slide, or moment in a lecture it came from. Named after George Pólya.
A browser extension that searches across your Canvas and Brightspace courses and answers questions with citations. The index stays on your own machine.
A memory server for AI assistants, so a conversation doesn't start from nothing every time. It keeps what it knows as a graph, tags each fact with where it came from, and stores everything locally. It's the memory my own coding sessions run on.
India's Supreme Court publishes tomorrow's hearing list as a PDF each evening, and if you're representing yourself, checking it every night is the whole job. This watches for your case and emails you when it appears. The court's server returns a 200 for files that don't exist, so the checker reads the body instead of trusting the status code. It's finished. I never deployed it.
A Raspberry Pi in my room that I can reach from anywhere. It backs up my machines, blocks ads for the house, and runs a few things I wrote for it: a status dashboard, a 7am brief, spoken alerts through a Google Home, a tracker for money people owe me. It's all on my own network, so there's nothing to link to.
The research behind Polya, pointed at the case a chatbot handles worst: a student's handwritten organic chemistry mechanism, curved arrows and all. Find the first step that is actually wrong, ask one question about it, don't give the answer away. The hard part is that a misread arrow and a real misconception look identical downstream, so a deterministic electron-accounting check rules on what counts as an error and the vision model only proposes. Nothing measured yet. The first benchmark run is the next thing.
Lab tooling that connects published human-microbiome studies to a knowledge graph, so you can ask what the microbes that shift in a disease have in common: what they eat, where they live, whether they tolerate oxygen. I wrote the part that turns each study's results into a trait table, 319 experiments across 127 traits. It's the lab's repository, not mine; my contribution was reviewed, merged, and is finished.
Predicting, second by second, the cortical response a video ad produces, and scoring that against real engagement before the media money is spent. It predicts cortical response, not thoughts, and the category it sits in is discredited for cause. The encoder beats chance on held-out validation, which is the floor, not a result. The comparison against a strong baseline is the piece that would settle it, and that run is what I am working toward.
An earlier version of the same question: whether a model trained across many people’s EEG recordings transfers to a new person without retraining. Set up on a 33-subject public dataset; the transfer evaluation is the part still to run.