Crazy comeback win from the Cowboys. When they couldn’t score at the 1 yard line, down 21 points, I would not have predicted this, and in fact turned it off for a while. Gotta play the whole game. 🏈
Page 7 of 9
23/11/2025
# As we rush towards the end of November, I had largely intended (or, at least, expected) the new album to be my last creative output for the year.
This weekend, however, has seen something new emerging from the post-completion lull.
When I won my copy of the Roland Cloud TB-303 plugin, I said that it gave me the option of messing about in the DAW and transferring patterns to hardware later. That's exactly what I've done.
Having focused on the LM Drum recently, I just started playing with a couple of instances of the 303 and Ableton's core 909 kit — getting back to the techno basics. Something quickly formed and I put a quick loop on Bluesky.
This evening saw the start of the transition to hardware. While it doesn't have the exact same sound, I'm really liking it and have added some extra elements.
It's still in the development phase but definitely heading in the right direction.
I don't know if this will see the light of day before the end of the year. Maybe I'll keep working on more tracks ready for a release in January.
Thanks @numericcitizen for the new video about what’s new in Micro.blog! You can watch it on YouTube here and it should be available hosted directly on Micro.blog later too.
My Number One “Resource Not Found”
The data is in.
The number one requested resource on my blog which doesn’t exist is:
/robots.txt
According to Netlify’s analytics, that resources was requested 15,553 times over the last thirty days.
Same story for other personal projects I manage:
/robots.txt- iOS Icon Gallery: 18,531 requests.
- macOS Icon Gallery 10,565 requests.
“That many requests and it serves a 404? Damn Jim, you better fix that quick!”
Nah, I’m good.
Why fix it? I have very little faith that the people who I want most to respect what’s in that file are not going to do so.
So for now, I’m good serving a 404 for robots.txt.
Change my mind.

Grid Paper
I’ve been getting into drawing dungeons on isomorphic grids. It’s fun but I was a little frustrated with the process of sourcing and printing out graph paper with an isomorphic grid on it. You have two bad options, basically:
- Download a low-res JPG you found on Google Image search where the grid sizes are wonky and it has a giant URL on it. I needed something clean and simple.
- Buy grid paper on Amazon in bulk. Now I’m thinking about centimeters vs. inches, cost, color, paper size, style, and quantity before I draw a single dungeon. I needed something ad hoc and with less commitment.
After 15 minutes of getting frustrated I said “I can build this.” And so I did using HTML, CSS, and the tiniest bit of JavaScript. And because it’s a webpage… why limit myself to one kind of grid? I’m able to support ~7 grids types using different kinds of background gradients:
- Grids
- Dot Grids
- Isomorphic Grids
- Isomorphic Dot Grids
- Dual Hex Grids
- Perspective Grids
- Two-Point Perspective Grids
Feeling good about this little tool. The quality can be a bit blurry but background gradients and printers are weird. It’d be nice to make it crisper and I might put some effort at the task (use SVG patterns?)… but at less than 5kb and a couple of nights worth of work, I’m happy with the result. It “made the rounds” as they say on the socials and seems to be a common issue other people experience, so I’ll call that a success.
Doubling down on love
Human Stuff is a free weekly-ish newsletter. You’re welcome to share parts of this letter that connect with you on social media, or send to someone you love. Thank you for reading, ‘heart’ing, commenting, sharing, for helping this newsletter continue by being here. It truly means something.
A song I’m loving (one that was on repeat in my house growing up):
I woke up under the weather, which isn’t abnormal for a parent of a four-year-old, but I still find myself wanting to write to you. It feels good to want to write to you. It’s foggy out the window, the time of morning where dozens of seagulls start flying across the sky to their next place. My daughter just performed a check-up on me with her trusty doctor bag before heading out the door for a scooter ride around the neighborhood with dada.
Life has been tenderizing me and I’m thinking about love, as I often do. Do you let love in when it’s available? Do you allow care to seep past your protectors and be truly felt? I’ve been asking myself these questions as I notice love permeating the places that once didn’t know how to truly welcome it; when my spine tingles with warmth while my daughter checked my ears and blood pressure with her little tools, while my body registered her precise actions and her widened eyes filled with care, it’s a gift to get to answer “yes”. It’s a gift to notice when love is available, and to let it in.
I am longing to double down on my love practice — on the reality that it’s the practice I want to orient toward most while also being the most tender practice to let ripen as widely as it’s asking to. There are so many layers that can get in the way, often at no fault of our own; it feels like an act of maturation to be willing to sift through those layers with intention and reverence.
I want to share some ways I’m sifting, some practices to let love and care in and out amid the rising darkness, alongside the descent toward winter, right in the middle of the murky unfolding of life:
— Say yes to bids for care… even when they come in the form of play. Notice how the hairs on your arms raise when you feel yourself being cared for in the smallest of ways. Let the noticing signal to your body: this is for me. I get to have this. It’s real.
— Ask yourself, what is my rage on behalf of? When I move closer to the center of my answer, how might I also be moving closer to love?
— Let saying sorry be a practice of love instead of a deepening of shame. Let yourself have the grace for not always getting it right, and let this truth not be a place of punishment but a place of learning, of recognition, of coming into fuller congruence with yourself and those you love.
— Follow the breadcrumbs of your longings. Let what you want point you toward what you love. Let what you love direct you toward what you need next. Let your needs be symbols of what you care about instead of signs of your too-muchness.
— When you feel stuck in your own head, your own story, your own neuroses, your own spiraling… turn outward and ask how you can help. Helping helps us see more clearly. Helping helps us come out of the hole we might fall into from time to time. Helping embeds us in something bigger than ourselves. Helping is medicine.
— Be in the practice of receiving compliments, admiration, gifts, and praise with more openheartedness. Trust that the practice of receiving won’t inflate your sense of self when you see it as a practice of intimacy; trust that the practice of receiving is actually never only about you, but is also about letting others engage in their own practice of generosity and love, too.
— Sit with these words from bell hooks: “To be loving is to be open to grief, to be touched by sorrow, even sorrow that is unending.”
— Get to know the birds that frequent your yard/neighborhood/ecosystem. See them as part of your family, as part of your belonging.
— Let others see you in whatever ways they need to, while not letting their gaze of you shape your own gaze of yourself.
— Extend your gifts outward; let what you have to offer reach the hearts and bodies and minds of those who need them; see the sharing of your gifts not as a way of bolstering your own ego, but as a way of more deeply connecting you to the wider world through generosity, through care, through love.
— Make soup. Make extra. Text someone you know is holding a lot and ask if you can drop off a batch on their porch. Maybe add some herbs or flowers or a homemade card to leave with the soup. See it all as loving.
— Take your time. Follow your pace. Stay with yourself.
— Be tender when you notice yourself coming up against the ways you’ve learned to keep love out, the ways you’ve learned to be skeptical, the ways your hurt has shaped what you let in. Let this noticing feel more like gentle permission than ripping off a bandaid that might still be needed in some ways. Let this noticing inform your longings; let it be a place to return to when you’re wanting to remember.
— Feel the way your grief for the world’s hurts is a direct pathway toward your love for the world. Feel the way your grief is inherently tethered to what you love. Feel the way your grief is a map of love, a stamp of love, a longing for love, a missing of love, a remembrance of love. Feel the way staying in close contact with your grief is just another way of letting more love in, and then more, and then more.
— Look for love everywhere and watch how it shows up in unexpected ways when you’re open to seeing it.
— Trust there is a never-ending capacity for love’s presence… that there can never be too much of it… that the more it’s allowed, the more it extends outward… that the more it extends outward, the more we can be mirrors of it for one another… that the more we can be mirrors for love, the worse anything but love looks… that the worse anything but love looks, the more power love has.
— Let loving be so small, quiet, and subtle: letting yourself mean it when you say thank you. Asking for help as a symbol of intimacy. Saying keep the change to a small business. Seeing someone’s dignity. Letting someone merge in front of you. Withholding judgment. Staying curious. Helping a neighbor. An extra long hug. Stirring the soup. Tidying your home as an act of care instead of a chore. Reaching out to say hello. Standing humbly in a forest. Looking up at the stars. Sharing what’s stirring in your heart. Writing a poem. Calling representatives. Softening your shoulders. Giving yourself a massage behind your ears. A genuine smile. Allowing sadness. The willingness to be wrong. Singing. Crying. Dreaming. Imagining something brighter than you see. Let it all be love. Let it all be love. Let it all be love.
Thank you, as always, for being here.
△ Currently reading this stirring new collection
△ Can confirm, watching this film will rearrange your heart
△ The way this essay brought so many tears (The New Yorker)
△ “When I used to focus on the worries, everybody was ahead of me.”
△ An existential guide to making friends
△ California November with my loves and the moon
With care,
Lisa
Human Stuff is a reader-supported publication. To receive new letters and support my work, consider becoming a subscriber.
[Note] Happy Polyamory Day 2025
Happy Polyamory Day y’all. (Plus max props to Petra without whom I’d have forgotten about it, like most years.)
Closest thing I did to celebrating it was going out to the pub last night for beer and food with my metamour, while our partner-in-common took our kids to see a film. Polyfam life isn’t always glamorous; but it is full of love.
❤️🔥 You're reading this post via the RSS feed. You're on fire! 🔥
[Article] Pushing RSS to WhatsApp (for free?)
I’m always keen to experiment with new ways to subscribe to my blog. Obviously RSS is the best and everybody who can use it should. But some people, for their own reasons1, prefer to learn about updates to their favourite sites via the Fediverse, or Facebook, or Telegram, or… I don’t know… LiveJournal or something (yes, those are all places you can follow this blog, if you really wanted to).
But I’m pretty sure there are some people who’d rather receive updates to my blog via WhatsApp. And now, they can. Here’s how I set up an RSS-to-WhatsApp gateway, in case you want to run one of your own2.
Prerequisites
You will need:
- A GitHub account – a free one is fine
- A Whapi account connected to your WhatsApp account3 – when you set up an account you’ll get a free trial; when it ends you need to find the link to say that you want to carry on with the free tier (or upgrade to the paid tier if you expect to send more messages than the free tier’s limit)
- A WhatsApp channel to which you want to push your RSS feed: I’d recommend that you make a newsletter (from the Updates tab in WhatsApp, press the kekab menu then Create Channel) rather than a traditional group: groups are designed for multiple people to talk and discuss and everybody can see one another’s identity, but a newsletter keeps everybody’s identity private and only allows the administrator(s) permission to post updates.

Instructions
- Fork the
Dan-Q/rss-to-whapi.cloudrepository into your own GitHub account. - In Settings > Secrets and Variables > Actions, add two new Repository Secrets:
WHATSAPP_API_TOKEN: set to the token on your Whapi dashboardWHATSAPP_CHANNEL: set to your newsletter ID (will look like123456789012345678@newsletter) or group ID (will look like123456789012345678@g.us): you can get this from the Newsletters or Groups section of Whapi by executing a test GET /newsletters or GET /groups request4.
- Make a
feeds.jsonfile (afeeds.json.exampleis provided as a guide) containing the URLs of the RSS feeds you’d like to subscribe to. - Do a test run: from the Actions tab select the “Process feeds” action and click “Run workflow”. If it finishes successfully (and you get the WhatsApp message), you’re done! If it fails, click on the failed action and drill-in to the failed task to see the error message and correct accordingly.
By default, the processor will run on-demand and every 30 minutes, but you can modify that in .github/workflows/process-feeds.yml. It’s configured to send the single oldest un-sent item in any of the RSS feeds it’s subscribed to, on each run (it tracks which ones it’s sent already by their guids, in a "seen": [...] array in feeds.json): sending a single link per run ensures that WhatsApp’s link previews work as expected. At that rate, you could theoretically run it once every 10 minutes and never hit the 150-messages-per-day limit of Whapi’s free tier5), but you’ll want to work out your own optimal rate based on the anticipated update frequency of your feeds and the number of RSS-to-WhatsApp channels you’re running.
You can, of course, run it on your own infrastructure in a similar way. Just check out the repository to your local system with Ruby 3.2+ running, run bundle to install the dependencies, then set up a cron job or some other automation to run ./process_feeds.rb. Doing this could be used to hook it up to your RSS feed updating pipeline, for example, to check for new feed items right after a new post is published.
Footnotes
1 Their own incomprehensible, illogical, weird reasons.
2 I hope that the title gives it away, but you can do this completely for free. So long as you keep your fork of the GitHub repository open-source then you can run GitHub Actions for free, and so long as you’re pushing out no more than 150 updates per day to no more than 5 different channels in a month then you can do it within Whapi’s free tier: that’s probably fine for a personal blogger, and there’s a reasonable pricing structure (plus some value-added extras) for companies that want to use this same workflow as part of a grander WhatsApp offering.
3 Setting this up requires giving Whapi access to your WhatsApp account. If you don’t like the security implications of that, you could get a cheap eSIM, set that up with WhatsApp, and use that account: if you do this, just remember to “warm up” your new WhatsApp account with some conversations with yourself so it doesn’t look so much like a spammer! Also note that the way Whapi works “uses up” one of the ~4 devices on which you can simultaneously use WhatsApp Web/WhatsApp Desktop etc.
4 Prefer the command-line? So long as you’ve got curl and jq then you can get a list of your newsletters (or groups) and their IDs with curl -H 'Authorization: Bearer YOUR_API_TOKEN' -H 'accept: application/json' https://gate.whapi.cloud/newsletters?count=100 | jq '.newsletters[] | { id: .id, name: .name }' or curl -H 'Authorization: Bearer YOUR_API_TOKEN' -H 'accept: application/json' https://gate.whapi.cloud/groups?count=100 | jq '.groups[] | { id: .id, name: .name }', respectively.
5 Going beyond the free tier would require sending one message, on average, every 9 minutes and 36 seconds.
🧨 RSS is dynamite! Thanks for subscribing to my blog. 💥





