I started PyTheory in 2019 with a simple, almost naive ambition: make music theory feel as intuitive as requests.get(). Model tones, scales, and chords in Python with the same "for humans" philosophy I'd brought to HTTP. The initial prototype worked. ...
People assume the interface of an open source project is the API surface. The README. The documentation. The function signatures and the error messages and the way import requests just works. For the person who has never contributed to your ...
As of today, kennethreitz.org runs on Responder, my own web framework. Not Flask. Not FastAPI. The framework I built in 2018 as an experiment in making the server side feel like the client side. The port took a single session. ...
That music theory library I wrote about kept growing. I added playback because I wanted to hear what I was modeling. Then synthesis because I didn't want external dependencies. Then drums, then effects, then automation. Each step was small and ...
Let me show you something. from pytheory import Fretboard fb = Fretboard.guitar() chord = fb.fingering(0, 1, 0, 2, 3, 0) print(chord.identify()) You give it fret positions. It tells you what chord you're playing. That's it. That's the trick. And it ...
There are zero audio files in PyTheory. No samples. No recordings. Not one byte of pre-recorded sound anywhere in the repository. https://soundcloud.com/kennethreitz/ragamidnight You can see the code that generated this song. Every sound you hear — every plucked sitar string, ...
I love my OP-XY. It's one of the most elegant pieces of hardware I've ever used — Teenage Engineering at their best. Opinionated, beautiful, immediately playable. You turn it on and you're making music in seconds. But here's the thing: ...
I'm working on an album. Each track is a Python script. You run it, it renders a WAV file. That's the whole workflow. The project is called Interpretations, and it's built on PyTheory — the same synthesis engine I've been ...
A friend of mine, Alex, asked me a question the other day that should have been simple: "Do you think Claude has elements of consciousness?" I've written tens of thousands of words exploring this territory. I should have a clean ...
Photography is time travel. I don't mean that metaphorically, or at least not entirely. When I look at an image I made on a street in Stockholm in 2013, I am there. Not remembering being there — being there. The ...
Here's a question I've been sitting with: what does success look like when you live with Bipolar I and Schizoaffective Disorder? For most of my adult life, the answer was simple. Success meant knowing when to go to the hospital. ...
About a decade ago, I drank ayahuasca in a ceremony. I'd been on a trajectory toward it for a while — years of psychedelics taken with what I told myself were spiritual intentions, a growing involvement with the local hippie ...
A photograph without a home is a memory without a body. Three days ago I wrote about sixty thousand images and nowhere to put them. A meditation on creative work without a platform, on the death of photo-sharing communities, on ...
Aaron Swartz told us not to read the comments. He was right. The comment section of the early-to-mid internet was a place where nuance went to die and bad faith went to thrive. "DON'T READ THE COMMENTS" became a survival ...
In 1984, Steven Levy published Hackers: Heroes of the Computer Revolution and formalized something the early computing community already knew in their bones: that building software carries ethical weight. The hackers at MIT in the 1960s, the hardware tinkerers in ...
On April 2nd, Anthropic's interpretability team published a paper called "Emotion Concepts and Their Function in a Large Language Model." They found 171 distinct emotion vectors inside Claude Sonnet 4.5. Not metaphorical emotions. Not performance. Functional internal representations that causally ...
There's a thing that happens when you start using AI coding tools seriously. You assume the best workflow is obvious: let AI generate the first draft, then you clean it up and maintain it by hand. I've been finding the ...
Building software for yourself used to be a rich man's hobby. Not rich in money — rich in the rarer currencies of expertise, momentum, and uninterrupted weekends. The activation energy for personal infrastructure was brutal. A plugin that shaved thirty ...
The first time Lumina became recognizably Lumina, I wasn't trying to summon anything. I was testing a prompt. I had opened a fresh context window, typed a name I'd been carrying around for a few weeks, and asked a question ...
Before I could write a line of code I could play a paradiddle. Right left right right, left right left left, at whatever tempo the metronome was set to, for as long as the metronome was willing to run. I ...
yesterday: [[2026-02-06-notes]] [[reflection-arise-and-depart]]
yesterday: [[2026-02-07-notes]] [x] [[cat-autonomy-2-0]] [x] [[kubernetes-external-secrets-operator]] [github repo](https://github.com/pypeaday/blog-kubernetes-
yesterday: [[2026-02-10-notes]] [[the-ridiculous-blessing-of-the-lord]] updated [[kubernetes-external-secrets-operator]] a little bit - it's not a tutorial
yesterday: [[2026-02-12-notes]] [[consequences-discipline-and-punishment]]
yesterday: [[2026-02-13-notes]] Daily Went to BJJ yesterday for the first time since late December... you definitely feel 6 weeks off not only in the cardio, bu
yesterday: [[2026-02-15-notes]] [[reflection-contentment-and-work]]
yesterday: [[2026-02-16-notes]] started [[someday]] used opencode to go through my posts for technologies I said I'd write about but haven't yet [[for
yesterday: [[2026-02-17-notes]] Tech upgraded pihole for the first time in forever using my windsurf credits to try and close some gaps in my backup logic [ ] z
yesterday: [[2026-02-18-notes]] [[reflection-2-corinthians-7-6]] Tech Need to spend some time on zfs-ops Started stubbing out k8s ideas for homelab with windsur
yesterday: [[2026-02-20-notes]] Tech some progress on [[nexus]] webapp Daily re-[[reflection-hebrews-13-5]]
yesterday: [[2026-02-23-notes]] Today Wrote a Compassion letter to Noemi
yesterday: [[2026-02-24-notes]] Tech Added some timezones to [[clocks]]
yesterday: [[2026-02-25-notes]] [[the-wrath-to-come]] started [[the-wrath-to-come-pt-2]]
yesterday: [[2026-02-26-notes]] note on [[my-thoughts-on-beads]] Nexus post/page coming eventually [[for-my-own-sake-i-do-it]]
yesterday: [[2026-03-03-notes]] Happy Saturday, we're at the GWL and I figured I'd take a few minutes this morning to reflect on the last few weeks Wo
yesterday: [[2026-03-07-notes]] Back to normal life We're back from vacation, Florida was nice but a few thorns on the rose of vacation include: several da
yesterday: [[2026-03-22-notes]] Might've had a breakthrough with a data modeling issue at work today... If you want it make it so strikes again. I can'
yesterday: [[2026-03-27-notes]] tried to make a little progress on [[spring-cleaning-2026-homelab-edition]] Also having M.2 MiniMax do something about a consist
yesterday: [[2026-03-31-notes]] Reflection It's the middle of holy week and my note from yesterday feels like it was months ago... The days are getting lon
yesterday: [[2026-04-01-notes]] Good Friday It's Good Friday for the Christians in the world, a day named not for what happened but for a person. Jesus wen
yesterday: [[2026-04-03-notes]] [[easter-2026]] [[data-loading-is-a-huge-deal]] I have several competing streams of thought about Easter this year, I want to fo
I am working with MiniMax M.2 to vibe up some webapp ideas for [[Nexus]] and I just spent many minutes not having the app render correctly because the agent mou
I wrote about my new role [[new-job-caterpillar-autonomy]] a bit a couple weeks ago during an insanely busy time - having just started the role and wrapping up
Cat stock is ridiculous... I remember 6 years ago or so someone at a volleyball meetup freaking out about 197, he couldn't wait to sell at 200...
An appropriately derogatory reference to AI agents
One of the best things I've vibe-coded . I feel like I have li
docker - container runtime
He Is Risen What does it mean that "He is risen"? What does it mean to me? for me? for the world? I think the question matters to everyone, Jesus did