Theo Beers @t6e.dev · 30/04/2026Reading a ghazal of Sanā’i, translated by Frank Lewis (excerpt from a somewhat longer video) 021
Theo Beers @t6e.dev · 29/04/2026Finally took the time to edit this blog post that I drafted last summer, on the nuts and bolts of the Unicode Collation Algorithm. Code examples are in Zig.theobeers.comHow Unicode Collation WorksLearn how the Unicode Collation Algorithm solves the problem of sorting text beyond the basic Latin alphabet. A detailed overview with code examples in Zig. 100
Theo Beers @t6e.dev · 12/04/2026~30 seconds of Monty Alexander playing "Amazing Grace" with a nice harmony. (From the intro to a duet on "I wish I knew how it would feel to be free," with Billy Taylor, who can be seen in the background.) 010
Theo Beers @t6e.dev · 08/04/2026Reading a quatrain I know I've shared before, and recently, but only in text. Recorded on the morning of the maybe-ceasefire. 363
Theo Beers @t6e.dev · 28/02/2026I wish we had Frank Lewis’ voice in these days. Everyone knew that when humans hurt anywhere in the world, he hurt – a true child of Adam. Given his leadership in the Baha’i community, no one could level at him cheap accusations of regime-friendliness. He would have opposed this war unequivocally. 010
Theo Beers @t6e.dev · 22/02/2026Supporting a regime change war (or whatever tf this is going to be) instigated by an illegitimate American government is not just obviously wrong, it’s lazy. It disgusts me. I’ll remember everyone I know who lines up behind this. 140
Theo Beers @t6e.dev · 09/02/2026A friend of mine with a corporate job in the entertainment industry told me that he and all of his coworkers are now "required to use AI tools" for their jobs. What does that even mean? It seems like a positively insane placement of means above ends. 110
Theo Beers @t6e.dev · 27/01/2026There's this whole new level of public outcry and outpouring when the martyr is an actual hero. 010
Theo Beers @t6e.dev · 14/01/2026Israel and the US have given the Iranian regime: a) no reason to play by any set of rules other than sheer self-preservation (they’ll get attacked regardless); and b) examples of the effectiveness of unrestrained brutality and completely amoral conduct. 110
Theo Beers @t6e.dev · 13/12/2025I volunteered for some years as webmaster for a small learned society. Was it a big commitment, no. Did I do the best job at it, probably not. But I left things in a *much* better situation than I found them in. I was surprised by how unceremoniously I was cut loose. 230
Theo Beers @t6e.dev · 07/12/2025Until further notice I’m a single-issue voter (at the national level), and that issue is gambling. I’ll vote for whichever candidate is more anti-gambling regardless of party or anything else they believe. 010
Theo Beers @t6e.dev · 01/12/2025The realest line in any holiday song is “Mom and dad can barely wait for school to start again” (from “It’s Beginning to Look a Lot Like Christmas”). 040
Theo Beers @t6e.dev · 28/11/2025The date conversion library underlying Muqawwim has always been open-source, but now it's also published in the NPM package registry. I'll put links below. I'm interested in adding more test cases to document the correctness of the code. 100
Theo Beers @t6e.dev · 27/11/2025Of these two men, neither was stirred by love. Wisdom was far off, the face of love not seen. From fishes in the sea to wild horses on The plain, all beasts can recognize their young. But man who's blinded by his wretched pride, Cannot distinguish son from foe. (tr. Clinton) 110
Theo Beers @t6e.dev · 25/11/2025Our son had a classmate/friend over yesterday, a boy whose mom lost her life in a freak accident last month. I made a pumpkin pie for the kids. My wife explained that I like baking, and the boy said, “So did my mom.” It was almost the saddest I ever felt, to hear that from a nine-year-old. 140
Theo Beers @t6e.dev · 22/11/2025The value of an XML sitemap in anno domini 2025 is dubious at best. That being said, we were using an old abandoned NPM package for sitemap generation at work, and I took a bit of time to modernize it and publish a new version. Maybe it will be of use. www.npmjs.com/package/@t6e...npmjs.com 100
Theo Beers @t6e.dev · 21/11/2025My son is one of the best pistachio eaters in the world, but he won’t touch them if they’re already shelled. Somehow the experience of cracking the nut is essential for him to know it’s legit. 070
Theo Beers @t6e.dev · 14/11/2025The work goes on. I already post about these Shāhnāma projects as I make progress on them; a talk is a good way to force myself to keep moving forward. 140
Theo Beers @t6e.dev · 12/11/2025Looks like something went horribly wrong over at Twitter/X with the YubiKey re-enrollment process. Like many others, I'm locked out of my account. Maybe this is how I finally permanently stop using it? A blessing in disguise? 241
Theo Beers @t6e.dev · 30/10/2025*Every* software dev I know agrees that GitHub has absolutely butchered their web front end in the last year or so. It's gotten unbelievably bad! How is it possible for a product used by the whole world, operated by a corporation with bottomless pockets, to just shit the bed like this? 120
Theo Beers @t6e.dev · 30/10/2025Xunzi on serving as minister to a ruler: “Treat him like riding an unbroken horse, like caring for a newborn, like feeding a starving person.” I have often been reminded of Ghaznavid court literature while reading Xunzi. 010
Theo Beers @t6e.dev · 19/08/2025I finally wrote a blog post to share some of what I learned from implementing the Unicode Collation Algorithm in two languages. Maybe there are people out there nerdy enough to be interested in stuff like this!theobeers.comUnicode Collation for DummiesLearn how the Unicode Collation Algorithm solves the problem of sorting text beyond the basic Latin alphabet. A detailed overview with code examples in Zig. 020
Theo Beers @t6e.dev · 15/08/2025If I’d known I would be employed again at the end of the summer, I would have enjoyed it a lot more. 000
Theo Beers @t6e.dev · 03/08/2025The one context in which I've ever used bubble sort for real. Does anyone recognize this function? I asked a few LLMs, and they all identified it at once. Bonus question: how much better can this be done? 000
Theo Beers @t6e.dev · 31/07/2025For those who use Claude Desktop or similar MCP clients (a niche group, I know): I just wrote an MCP server to facilitate use of my API for Steingass' Persian-English dictionary. It works! A link to the GitHub repo with installation instructions: github.com/theodore-s-b... 100
Theo Beers @t6e.dev · 29/07/2025I recently trained an ML model, fine-tuning XLM-RoBERTa and using data from Ganjoor, to predict the meter of a hemistich of classical Persian poetry. Still early days, but results are promising. Perhaps colleagues will find this interesting. Model on Hugging Face: huggingface.co/katomyomachi... 130
Theo Beers @t6e.dev · 25/05/2025Identitarian progressives bear significant responsibility for the destruction of American institutions that we are now living through. I will neither forget nor forgive how they drove the country toward this nightmarish situation. 120
Theo Beers @t6e.dev · 20/05/2025Some of you may have noticed that Etymonline's website has been redesigned this year—multiple times, I think. I try to keep up with changes to their markup so that my `gloss` CLI util still works (link in reply). 110
Theo Beers @t6e.dev · 13/05/2025I recently published basic (really preliminary) Python bindings for my Rust implementation of the Unicode Collation Algorithm. My first PyPI package, at least for a project of my own. pypi.org/project/feru...pypi.orgferucaPython bindings for feruca, a Rust implementation of the Unicode Collation Algorithm 100
Reposted by Theo BeersTheo Beers @t6e.dev · 08/05/2025I have a little web app that gives examples of how Arabic numbers and their counted nouns work from 1 through 100, masculine and feminine, all three cases. This is of course only part of the story! www.theobeers.com/arabic-numbe...theobeers.comArabic number expanderEnter a number to see how it should properly be written in Arabic 022
Theo Beers @t6e.dev · 25/04/2025Depressing how DJT supporters are legit too ignorant to realize that what they’re doing, e.g. demanding the arrest of “activist judges,” is exactly what people descending into fascism have always done. Naïvely playing their role in a remake of an old movie they somehow haven’t seen. 020
Theo Beers @t6e.dev · 11/03/2025I remember when I was a finalist for what would have been a life-changing professorship, I would think, Ok, it may or may not be me, but someone is going to be made very happy. It’s cool that someone gets to experience that. And in any case, I can find my own way. It helped me deal with it. 030
Theo Beers @t6e.dev · 16/02/2025MAGA has ruined my family. We all still talk and get together, but it’s not like it used to be. We tiptoe around each other. I wonder if we’ll ever be able to put it behind us and feel normal again. 240
Theo Beers @t6e.dev · 14/02/2025Ich bin zutiefst beschämt über das, was Vance heute in München getan hat, und möchte hiermit meinen kleinen Widerspruch und meine Entschuldigung gegenüber meinen europäischen Freunden, insbesondere in Deutschland, ausdrücken. 130
Theo Beers @t6e.dev · 06/02/2025I don't blame Trump for $7 eggs any more than I blamed Biden for $5 eggs, but like… seriously? It could not be more on the nose. 010
Theo Beers @t6e.dev · 06/02/2025Publicly speaking out against what he and his cronies and zealots are doing to this country will be remembered as better than nothing. I hope we can actually fight back, but just publicly refusing to legitimate any of this is meaningful. 000
Theo Beers @t6e.dev · 04/02/2025You have to go back. The other place is still where the action is, and it’s been completely ceded to fascists, in a way that might shock you if you haven’t been there in a while 100
Theo Beers @t6e.dev · 02/02/2025I have a very simple paper in this issue on occasional literature that recently came out (with a backdated publication date). There are some fascinating studies in this collection; just please don't read too much into mine if you happen to look at it. riviste.unimi.it/index.php/in... 041
Theo Beers @t6e.dev · 24/01/2025Sometimes I like to sketch an idea in a conference paper abstract that is probably not tenable. It might pan out, and I have many months to see about that. If not, a) who cares? and b) I can still do something useful with the paper. 010
Theo Beers @t6e.dev · 24/12/2024I named her Samak when I adopted her in the fall of 2011 because I was taking Frank Lewis’ Samak-e ‘Ayyār seminar. She lives with my parents now (never moved to Germany) but is doing well, finding warm spots in a big house. 070
Theo Beers @t6e.dev · 22/12/2024Did not have “return of asinine taqiyya discourse” on my 2024 bingo card 010
Theo Beers @t6e.dev · 20/12/2024The place around the corner from our apartment makes a pretty good cheesesteak, and they’re almost never crowded. I can walk in by myself for lunch, sit where I please, order, get my sandwich, and eat at a leisurely pace—all within 20–25 minutes. Hard to beat that. 100
Theo Beers @t6e.dev · 19/12/2024I lost most of a work day to learn that I had to add these lines to a config file 010
Theo Beers @t6e.dev · 15/12/2024I’ve been sent the most fascinating paper for peer review. What a privilege 020
Theo Beers @t6e.dev · 14/12/2024A couple years ago I bought one of these old Bell telephones, and this week I finally got an ATA and a number from a VoIP provider. The ringtone is quite nostalgia-inducing. 030
Theo Beers @t6e.dev · 10/12/2024Classical music provides the best reference points for prodigy. Mendelssohn wrote this string octet at age sixteen, as a birthday present for a friend. One of my favorite passages in the first movement (starts quiet)… I listen to a lot of Mendelssohn in the cold season and will post more. 140