There are several command line incantations that I have had to look up at least a dozen times. Finding a string in Python files grep -r --include \*.py 'string I am looking for' . Find files by name find . -name '*partial_name*'
Brandon Rohrer
@brandonrohrer.com
Robotics and Reinforcement Learning tinkerer. brandonrohrer.org Wrangler of algorithms. Eater of bread. Sipper of whisky. Reports to a Shih Tzu.
Listening to the Dungeon Crawler Carl books with Soundbooth Theater leads to really long walks because I can't stop listening. They are a blast!
Heads up ruff users - with the release of 0.16.0 this week the number of default rules went up from 59 to to 413. This means that if you're ruff version auto updates, your CI pipelines might start failing on you all of a sudden.
Ruff 0.16.0 - Astral's fast Python linter - came out a few days ago and increased the number of default-enabled rules from 59 to 413, which highlighted all sorts of problems across my projects (1618 in sqlite-utils alone) simonwillison.net/2026/Jul/25/...
Living small is part of the artisanal process. The constraints are not a barrier to the final product. They are an important shaping force. You can't come in at the end and magically shrink it. You can only build small if you start small and work with what you've got as you go. brandonrohrer.org
Artisanal Language Models take a step closer to being able to do proofreading. Trained and hosted on an old Mac. These are small but mighty. Kind of. Aspirationally mighty, at least. brandonrohrer.org/alms_data.html
It took a little time to figure out how to properly download Project Gutenberg texts at scale, but I finally set up three new training corpuses:
brandonrohrer.org
the biggest difference I've noticed between data scientists and machine learning engineers is that MLEs will do absolutely anything to avoid looking at their data
don't touch those! those are my emotional support patreons!
My favorite thing to do is find a narrow problem that doesn't have a good solution, and then build one. Here are the highlights, from my blog. brandonrohrer.org/blog.html#al...
I shut down by online courses at End-to-End Machine Learning 18 months ago. Wrote a blog post and everything. But the platform I was using hasn't bothered to take them down. So they're just sitting there, all for free. Prego. end-to-end-machine-learning.teachable.com
Efficiency maxxing is problematic for lots of reasons but a fundamental reason is that it always implies near term efficiency.
This next round of Artisanal Language Model improvements are mostly focused on efficiency rather than dramatic algorithmic improvements. This ALM is a proofreading tool for English prose. brandonrohrer.org/alms_somm_sp...
After some trial and error with a few sparse representation concepts, I settled on one that takes advantage of one of Python's strengths: dictionaries. The sparse second-order model keeps two running dictionaries: one full of bigram counts and one for trigram counts.
brandonrohrer.org
The Cheers restaurant is in my neighborhood. Kilts and bagpipes now on every corner. www.youtube.com/watch?v=nprg...
Rosco McLelland's World Cup anthem! #BreakingTheNews
YouTube video by BBC Scotland
youtube.com
Old school language models, part 2: Second-order Markov Models This is the next stop in my Artisanal Language Model development tour. If a first-order Markov model has a context length of 1, then a second-order has a context length of 2. brandonrohrer.org/alms_somm.html
I don't often brag about my company, but today I make an exception. Our CEO, folks: youtu.be/36jxNeV5L1Q?... (part of the ongoing Reckless Ben / Bricks and Minifigs / American Fork PD drama)
Take Down Notification: Reckless Ben’s Patreon Account
YouTube video by JackConteExtras
youtu.be
Sometimes AI scraper bots need a rest. You can give them a peaceful little playground to romp around in. Just drop this URL as a tiny hyperlink somewhere on your blog. Reviews are flooding in. Bots like this tarpit so much that they never leave. scienceispoetry.net
SEANCE IS POTTERY
scienceispoetry.net
The earliest Large Language Models were Markov models (a.k.a. Markov chains). They are like LLMs with a context window of 1 token. As you might guess, they are OK at some things but not awesome.
So apparently you can become a Patreon creator just put stuff up. For free. Or for money. Up to you. www.patreon.com/posts/findin...
Finding Your Way | Brandon Rohrer
Finding Your Way by Brandon Rohrer on Patreon. Join Brandon Rohrer's community for exclusive content and updates.
patreon.com
Hi Data Scientist friends! Come work with me at Patreon. Our DS team is hiring a Senior DS for some really fun work on recommender systems. (This is someone I'll be talking with a lot, so I'm heavily invested.) jobs.ashbyhq.com/patreon/f8f0... #DataScience
Senior Data Scientist, Feed Relevance
Senior Data Scientist, Feed Relevance
jobs.ashbyhq.com
Look, there’s only so much I can do. Any effort I put into my appearance comes out of something else. I’ve decided to adopt the practice of looksminning. I now identify as an erudite bog-goblin.
*smashes the Buy Now button*
In less than an hour I'll be giving a talk on my book, online and free to all, for the storied institution of PARC / SRI. I am now so concerned about over-use of AI that it will be primarily about when we SHOULDN'T use AI. I hope you'll join me at noon eastern: www.sri.com/events/parc-...
It is once again time for me to reintroduce myself, I think. I'm Iris: I write a blog at deadsimpletech.com/blog about the impacts of the tech industry on culture and humanity in general. I also work as a technical consultant and coach/mentor in the data, infrastructure and web spaces.
Coding Hobgoblins Consistent style makes code easier to read and helps bugs to be more visible. I aim to keep my code mostly consistent and mostly in line with the recommendations of PEP 8, but if I have good reason to deviate I don't hesitate.
This from @anildash.com gives me hope. www.anildash.com/2026/04/28/o... It's a success story of people who have a problem and use ML to solve it. It features 1. domain experts 2. curated training data 3. generous open source sharing 4. a flood of community support This is what ML can be
(One) Good AI Is Here - Anil Dash
A blog about making culture. Since 1999.
anildash.com
"I am not hackable" remains our blindspot. How reluctant we are to let go this belief. joinreboot.org/p/ai-psychosis
Surviving AI Psychosis
"I should have been more informed about the psychological dangers of AI chatbots than the average person. I was not."
joinreboot.org
This gem from @awoodruff.bsky.social sits in the Venn diagram intersection of data, art, and Beantown. andywoodruff.com/posts/2026/b...
in fantasy stories I've seen a recurring theme of naming things. A true name of a thing has great power and is inconveniently long. Ents in Lord of the Rings. Wolves in Wheel of Time. Sorcery in A Wizard of Earthsea. This is how I like to name my Python variables.
I wrote about why I quit my job, and how weird and tiring tech feels these days.
Do I belong in tech anymore?
On quitting, the spread of AI, and the loss of an ideal.
ky.fyi