¬ just serendipity 🍀

¬ just serendipity 🍀

Thiago Perrotta

Welcome to my digital garden – a space dedicated to exploring technology and sharing what I’ve been learning. This site reflects my passion for continuous learning and open-source software, wherein I document my journey, offer insights, and dive into miscellaneous topics that reflect my interest. My goal is to maintain a corner of the Web for self-expression focused on valuable, distraction-free content. I believe in the power of the Open Web as a platform for sharing knowledge.

Latest Posts

Google: First, it’s Gen AI, not “““AI”””. You’ve already been doing machine learning in our inboxes for ages now. Second: no, thank you. Settings > Inbox > AI Inbox > [ ] Show AI Inbox: Show AI Inbox — See a separate view of your inbox...
LLM: Paste me the IPs (2-3 of them) and I’ll draft the gitops PR for the allowlist files. Me: You can run that yourself. What kind of agent are you??!? Do not be lazy! — § —Reply via email#ai #dev #serenity
It’s 2026. Whenever I’m idle in the gym, or in public transit, or in a queue, or waiting for GitHub to become available again (boooo!), I can simply open Claude Code on my phone and unleash my boredom creativity. I can open my corporate...
When enrolled in a Claude Enterprise plan, /usage (or /cost) are useless. Instead, head over to https://claude.ai/settings/usage to assess your usage limits. Usage limits normally reset at the beginning of the month. Your plan admin can...
Previously. Scenario: machine 1, day 1: run a bunch of commands machine 2, day 2: I’d like to run a subset of the commands I ran yesterday. If only I could remember them! I do not have access to machine 1 at the moment. Enter atuin...
In the spirit of RSS Club by Dave Rupert: Congratulations on joining a secret society! RSS Club is a collection of blogs (personal and otherwise) committed to providing RSS-only content. It’s like a newsletter delivered to your feed...
An addition to the “No Hello” series: No (AI) Slop Grenade: Stop throwing AI-generated walls of text into conversations. Don’t do this: You: Should we use Redis or Memcached? Them: Great question! The choice between Redis and Memcached...
fast-resume (fr), via Stanislas: I use many coding agents these days: Claude Code, Codex, OpenCode, Copilot, and more. Sometimes I remember that I, or the agent, mentioned something specific in a previous session, and I want to go back...
Matt Pocock (via Sebastian de Deyne): This is an intro to the /grill-me skill, separate from my video on my top 5 skills. It’s the most flexible skill I’ve ever created, and one I use outside of coding too. Here is the skill in all its...
Worktrunk: Git worktree management for parallel AI agent workflows I stumbled upon worktrunk (wt) due to a fortunate coincidence, serendipity at its best. I was pitching my own pancake wt to someone, and this person asked if I hadn’t...
I’ve noticed that travel has become, of late, an act of collecting places. I’ve literally heard people referring to visiting a place as doing that place, as in “Have you done Japan?”, assuming that one can do an entire country, and once...
Problem statement: given two distinct devices with Brave, access tabs from one device in the other device. In this example: access mobile tabs from a desktop device. This assumes both devices are already enrolled in Sync. Clicking...
Previously. Problem statement: An ArgoCD application shows a persistent diff on a PodDisruptionBudget — spec.selector.matchExpressions is in the rendered manifest but missing from the live object. Sync doesn’t clear it. Hard refresh...
Problem statement: Claude Code likes to declare “done” without running tests. Said no overconfident LLM ever. prove_it by Justin Searls is a config-driven hook framework that intercepts Claude’s lifecycle events (SessionStart,...
Previously. Problem statement: my wt tool’s cd subcommand does not survive a terminal split — the new pane opens at the original directory, not the worktree. worktrunk’s wt does(!) A subprocess cannot change its parent’s working...
Search Random