John Downey
@jtdowney.com
CISO at GoFundMe. Previously at Root, Braintree, PayPal. Director at the Dystonia Medical Research Foundation. He/him
The more I work in the @gleam.run compiler, the more impressed I am with all of the existing work it does. There is a lot of interesting stuff that goes into compiling pattern matching into efficient JavaScript.
Date: What do you do? Me: I'm a kleptozoologist Date: Isn't it cryptozoologist? Me, stuffing my pockets with lobsters from the tank: that's a common misconception
Reading the OpenAI/Hugging Face story and I think, maybe humanities real last exam is going to be seeing if we can construct these systems safely
And when Alexander saw the breadth of his domain, he wept, for there were no more worlds to conquer. x.com/andyfang/status/2077516...
Andy Fang (@andyfang) on X
Today we're opening up the DoorDash CLI in limited beta. `dd-cli` lets you order DoorDash directly from your agent: search stores, find the best deals, check out, and more. Early access for US/Canadian macOS developers by waitlist. Excited to see what folks build!
x.com
Debian Trixie and Ubuntu 26.04 are still shipping OTP 27. I built an APT repo that automatically publishes new Erlang/OTP releases via GitHub Actions. Useful if you want current OTP on Debian/Ubuntu without containers, compiling from source, or asdf/mise. github.com/jtdowney/erlang-bu...
GitHub - jtdowney/erlang-builds: APT repository serving Erlang/OTP built from source for Debian and Ubuntu (amd64 + arm64)
APT repository serving Erlang/OTP built from source for Debian and Ubuntu (amd64 + arm64) - jtdowney/erlang-builds
github.com
I don't get why you're all saying mythos is so expensive, this seems reasonable to me
In a world of ever-expanding programming languages packed with features, Gleam takes a different path: it chooses to stay small, focused, and resolutely practical. Learn more about this philosophy from my talk on Gleam and the value of small ⭐️ youtu.be/E6_JqYMeNqs?...
Gleam and the value of small | Ubuntu Summit 26.04
YouTube video by Canonical Ubuntu
youtu.be
I can't believe in this era of support chat bots I just said to myself "I wish I could just get someone on the phone"
The DMRF Auction for Action is live through April 19. I'm on the board of the Dystonia Medical Research Foundation and have dystonia myself. Travel, art, dining, luxury items -- every bid funds research toward better treatments and a cure. Browse and bid: fundraise.givesmart.com/e/7Tyt7g?vid=1puich
fundraise.givesmart.com
"Honestly at this point: just nuke the world and start fresh on 1.21.11 with Geyser. It's a family Minecraft server, not production infrastructure. How attached are the kids to the current world?" Claude is clearly not the parent of a 7 year old
words.filippo.io/crqc-timeline/ get ready, cause this shit's about to get heavy (in terms of the number of bytes on the wire)
A Cryptography Engineer’s Perspective on Quantum Computing Timelines
words.filippo.io
I'll take people I'd want to not have compare themselves to me for $400, Ken
If you are on the Vanta or Drata sales teams, remember to take regular breaks and drink lots of water. It is going to be a busy few days leading into weeks.
One undeniably good side effect of the massive push into agentic engineering tools: support for the previously-nascent Git worktrees feature is at an all-time high.
Last night, my 4-year-old daughter told me, "I want a YubiKey." As an infosec dad, I was beaming, ready to explain phishing-resistant MFA and why she should probably start with passkeys. Turns out she said "Hello Kitty."
Battling one of those fun bugs where you don't know why something is crashing but some internet traffic is causing it to crash. Good news: the background radiation of the internet will probably cause it to crash again if left long enough and this time my diagnostics should catch it.
I marked an item off my bucket list over the weekend and got my first CVE. github.com/gleam-wisp/wisp/se...
Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') in wisp
### Summary `wisp.serve_static` is vulnerable to arbitrary file read via percent-encoded path traversal (`%2e%2e`). The directory traversal sanitization runs before percent-decoding, allowing en...
github.com
Watching someone you love battle Alzheimer's is heartbreaking. I'm supporting the End Alzheimer's Fund & the Alzheimer's Association to fund research, care, and advocacy. Every dollar moves us closer to a world without Alzheimer's. 💜 gofund.me/9cdea6c27
Donate to Together, We Can End Alzheimer's, organized by John Downey
My name is John Downey, and I know firsthand how painful it is to watch a loved one suffe… John Downey needs your support for Together, We Can End Alzheimer's
gofund.me
There is something deeply funny about letting an agentic AI browser fill out a bunch of RFP forms for me and seeing that one of the forms has a question where you need to prove you are human by answering a math question, and the browser doesn't even stop to ask me. It just puts in the answer.
Tiger got to sleep, bird got to land, bear got to throw an interception on a fourth down
Deno messed up HMAC-SHA-512/224 and HMAC-SHA-512/256 because they are so obscure, I am sure no one uses them github.com/denoland/deno/issu...
HMAC with SHA-512/224 and SHA-512/256 produces incorrect results using node:crypto polyfill · Issue #31765 · denoland/deno
Version: Deno 2.6.3 I am working on a cryptography library for the Gleam ecosystem and in testing my test suite against the various Gleam targets (Erlang, Node, Bun, and Deno), I noticed that Deno'...
github.com
I just saw that my library had no unexpired copies of an ebook I had on hold and it made me remember that the overdrive/libby system is insane with forced expiration of digital books
Got back into reading this year by keeping three books going at once and switching by chapter. It removed just enough friction to keep momentum. Wrote up what worked and what I noticed along the way: jtdowney.com/blog/2025/12/18/...
So I Got Back Into Reading
I started the year with a reading goal of 12 books because I was trying to become a person who reads again. One a month felt realistic. It was a way to commit without pretending I knew exactly how it would fit into real life. Once it was obvious I was going to clear 12, I escalated the goal to 26. One every two weeks felt like a useful constraint, the kind that nudges you forward without turning a hobby into a performance review.
jtdowney.com
I finished pragprog.com/titles/jbtracer/... after like 10 false starts, the big hurdle over the years was the pain of translating the tests from the book to Rust. It turns out LLMs will do that no problem now. I even got in there and tried some SIMD optimizations: github.com/jtdowney/ray_tracer
The Ray Tracer Challenge
Challenge yourself and code a photorealistic 3D renderer from scratch, test-first, with shadows, reflections, and support for a half-dozen graphics primitives.
pragprog.com
As the parent of a grade schooler, I feel like Spotify is trolling me with 6-7