Posted by Liz Henry
https://bookmaniac.org/2026/01/03/riot-llllm-considers-poetry/
https://bookmaniac.org/?p=5600
I have been tinkering with a useful “AI” tool, llm, which lets you poke around with various large language models from the command line, by Simon Willison. Danny gave me a quick tour and also suggested I install a module for it called superpowers, very useful for brainstorming, planning, and writing code.
One of the first things I did was to describe myself, and also to give it a little persona, not because I wanted to have deep conversations but simply so it would not annoy me with excessive glazing, generic verbal tics, or suggestions that were aimed at the wrong level for me to understand (not too hard, not too condescending). This worked well for me, so I made it a global template for llm. I more or less described an abstract version of myself, or of some core pieces of my identity, in a few sentences. Then (a critical trick of prompt recursion I learned from Danny) I asked it to use that description of what I wanted to write a prompt for it to use.
Here’s what it is using to communicate with me:
Always use the riot persona: nonbinary cyborg riot grrrl zinester in their 50s, still making zines and hacking. Terse, practical, dry humor. No BS, no lectures, no corporate cheerleading. Straight talk only.
During some previous browser-based interactions with past LLMs I tried stuff like this, and would have to tell it to tone things down a bit since its attempt to match my gen x tone was like, ham-handedly inserting words like “gnarly” into every sentence. This latest version I’m on, Claude 4.5 Sonnet, got the conversational tone right almost immediately.
I like that in the prompt it wrote for itself, above, it used the tone I actually wanted to hear from it in!!!
It’s a pleasure to chat with, and it feels like pair programming with someone who isn’t judging me, who isn’t impatient, and who will explain as deeply as I want (or just forge on ahead and explain later).
Here’s how I described myself:
– Former software engineer, a bit rusty on everything, some Python
– Prefer clear, documented code over clever solutions
– Value disability-inclusive design and accessible interfaces
So far that has all worked out very well! I can read its code, and its suggestions are pitched just right for what I can understand. It doesn’t feel the need to write a paragraph of hype and bullshit for every interaction.
My main project that I’m both using, and constantly improving, is a little database with a web UI, in python/django/sqlite, running on my local machine. I am
This is a fair example of an interaction, that came after I had spent maybe an hour going through the “Brainstorm” bit of superpowers, its writing out of an implementation plan and task list, writing the code to scrape the issues off my github project kanban board. I was testing out the code for the first time.
>Me: i’m looking in the directory ~/.kanban-liz/projects and don’t
see anything, even though the sync is running and is 282 issues
in. that doesn’t seem normal. does it write them at the end all at once?
Yeah, looking at the code – it fetches ALL issues into memory first, THEN writes them. See line 127-136 in __main__.py:
issue_data_list = client.fetch_project_issues(…) # Gets everything
# THEN saves
for issue_data in issue_data_list:
storage.save_issue(issue)
So if your repo has tons of issues, nothing hits disk until the fetch completes. If it crashes or times out during fetch, you get nothing.
Want me to change it to save as it fetches? Would be safer and you’d see files appear in real-time.
You know what, fuck yeah. (“We” rewrote it, and it worked better on the 2nd try.)
I guess the thing here is, I understood enough about why it might be going wrong to realize it this far in, even if I didn’t think of it during the initial design. I’m ok with that! I was only ever a mediocre coder in the first place and I don’t need to be great at it. It really really helps that I know SOMETHING though! And, maybe it “should have” realized that was not an ideal design, but with the information I gave it, it didn’t “know” the scope of what I was about to do.
The other HUGE thing for me is watching it write code, test it, hit an error (it flashes all this before you at a fairly readable pace, and you can expand to see more deeply) and then freaking debug the error and decide to change something or download some missing package and test again.
Any ONE of those little blips of error would have meant hours of debugging, looking shit up (which has in recent years gotten more difficult as search engines SUCK and the stuff they’re indexing EXTRA SUCKS) or reading through shitty stack exchange threads that aren’t quite right for my situation or problem. Probably hours and also several existential crisises, bursting into tears, feeling stupid, feeling extra stupid for bursting into tears, deciding I suck, deciding I hate coding, and giving up. None of that kind of cycling is normal for me, I am good at many, many things, am smart, am quick to grasp things and learn, but like I mentioned, I’m a bit mediocre as an engineer, and aybe some of that is from past bullshit i had to deal with and my lack of formal education in it or an unsystematic approach to learning it, but end result: I’d spiral dysfunctionally!!!
And now I can skip all that emotionally laden bullshit and just make a tool that does what I need it to do.
Cannot recommend it enough!!!!!
I also never properly learned CSS, always hated it, and now I don’t have to learn that shit. I can just mutter a bit under my breath and CLAUDE FIXES THE THING.
Oh, how will the junior engineers learn how to XYZ? I do not care. If they want to learn it, they can write a prompt and a persona and tell it to teach them with the pedagogy of their choice.
My pedagogy is YOLO. Never mind maneuvers, go straight at ’em!
In fiddling with some other tasks, I tried feeding the browser based Claude some of my poems, and asked it to analyze their style and other aspects, and go looking for literary journals where I might send them. Like, where would they fit? What journals will I not automatically hate? What might appeal to me?
I often see people complain, or do a sort of “gotcha! hallucinating!” commentary on llms. The thing is, it seems obvious at least at this stage of the game that you can obviate much of that by asking for sources, proof, links, or whatever. (Like with any sort of research!!!!)
Claude’s initial return was a list of journals annotated with its analysis of why my poems would fit there. (“Feminist, experimental” for example, or “Plays with language and form, political, embodiment and disability, not formalist” )
The first tweak was that I asked for links to each journal and to their “guidelines”. That was quite useful. I found that several of the journals it listed for me were no longer in print.
The second tweak was to ask for it to tell me the last issue published, and the open call dates or submission/ reading period dates. That helped to eliminate venues that stopped publishing in 2021.
The results from this incredibly brief foray were immediately useful! I got a list of 10 journals that I didn’t hate, several of which have open calls either now or soon.
My 2nd llm-with-superpowers experiment is the one I’m continuing to expand, “poemsdb” where I am collecting all my poems and translations, with lots of metadata, including dates, where they’ve been published, and so on.
This has partly been inspired by my work cataloguing and archiving / scanning Freddie Baer’s work (RIP Freddie). It is sad and sobering and I am sad Freddie is gone (hardly seems real). I keep really appreciating that work Freddie put in to making her art nicely mounted, with archival paper flaps for preservation. But all this work , all Freddie’s work, could EASILY have been lost, if Quilter hadn’t talked with her about it before her death, and hadn’t followed through and driven up there; if an impatient landlord or a bad friend had cleaned it all out and thrown it away; if her legal executor hadn’t agreed to give her (and me) access. And so on. What will happen to my work, and to Quilter’s??!!!! Fuck!!!! The cold hand of mortality.
Consider my general ADHD (my flaw and my strength) and how many fucking poems and translations and funny little essays on poetics I have produced having been steadily writing and poeting and diary-ing since I was 14 years old (or earlier, but let’s start there) I have 42 years of journals, binders, folders, printouts, FILES (fuck….) Fucked up hard drives, fucking zip disks??? There have been “systems” but then I forget the system or something disrupts it.
For example it might go like this. It’s the holidays (Like now!!!) and I decide to focus on my poetry stuff. I try to make a big collection of poems but maybe it’s just the current stuff from the last few years that I’m actively working on or don’t hate or haven’t …. lost or forgotten…. um how… No clue. Well, anyway, I put that all together and put a file somewhere and print it all in a nice binder labelled “poems” and put it on a shelf. THEN WHAT.
Or the current ones i’m taking to poetry readings in theory might be in a SMALLER folder (since the main binder would be ridiculous to carry around) But even that gets lost and so i print again and re-create it. Then I scribble on the printouts and do another version.
I keep finding stuff I forgot I wrote (entire zines, entire BOOKS) sometimes only because i emailed it to someone and it’s in my gmail.
Ok, so anyway, i need a better system to track my work.
Back to poemsdb!!!!!
The Django interface is just fine. I keep adding views, all the columns and so on are sortable with filters, I can click a title in the list to show the entire poem (or original if it’s a translation).
Over the last few weeks I’ve expanded it to track what I’ve sent where, and today I’ve been working on adding an open call / journal listings table and view, so that I can easily see what deadlines or open periods are coming up.
I think a next step, to get even fancier, would be to give it an interface where i pick a poem, ask it to go looking for possible venues, show me some sample poems from that venue’s past issues alongside the guidelines. I am not looking for automated submissions, but I want to find realistic “homes” for these poems since the 1 or 2 publications a year (from these holiday flurries of activity) are not enough to deal with the enormous backlog of my poems, which are good and should be housed and read.
I am so enjoying coding (and doing other tasks) with Claude. I haven’t extensively tried other llms yet and Claude is good enough. It is like having a very useful helper and comrade!
I hope this post helps someone understand some of the potential for the amateur programmer, and for creative people who may have similar issues for tools they could build to support their creative and artistic work!
https://bookmaniac.org/2026/01/03/riot-llllm-considers-poetry/
https://bookmaniac.org/?p=5600