¬ 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
When editing complex documents that warrant multiple revisions (iterations) and peer reviews, it is often helpful to make prominent distinctions within sentences, in order to track authorship and readiness. I enjoy making such...
The title is foreshadowing. Problem statement: when using an iPhone as a pager device for oncall duties, disable airplane mode / “do not disturb” programmatically at the beginning of your shift. I find it’s a good practice to disable...
Previously. Whenever I am submitting forms in the Web, I have the habit (tendency?) to keep hitting Cmd-A Cmd-C every once in a while, with the goal of saving all the text I’ve typed so far in a given text input field to the system...
Previously. When playing badminton, the serving side (left or right) depends on the current score of the serving team: Left side: 1, 3, 5, … Right side: 0, 2, 4, … For many months (years?), I kept confounding the two. Even field...
Previously, previously. After experiencing almost daily frustration because of this SSH auth issue, I decided to script a solution out of it: and now ssh_mux_restart was born. A copy of the README.md follows below for ease of reference....
Claude Code supports images as input. Absolutely incredible; considering that it is a TUI, one would usually not expect the ability to do so. Copy the image to your clipboard as usual, and then paste it in with Ctrl + V, as you would in...
Problem statement: grep1 for a given string in a multitude of multi-page PDF files: % du -sh very_large_file.zip 513M very_large_file.zip % unzip very_large_file.zip [...] % ls -1 *.pdf | wc -l 6816 There’s a tool called ripgrep-all...
Problem statement: Given a PostgreSQL DB, obtain its total size, preferably in a human-readable format (pretty-printed). Option 1: SQL query SELECT pg_size_pretty(pg_database_size('dbname')); 11 GB Option 2: psql CLI \l+ dbname List of...
.terraform-version at the root of a git repository is recognized by various tools: tfenv tfswitch terrateam You would expect the hashicorp/setup-terraform github action would also recognize it out-of-the-box, but it does not. We can...
Previously. When a package is installed with --HEAD: % brew install --HEAD pancake …brew upgrade won’t automatically fetch its latest version. In order to do so, run: % brew upgrade --fetch-HEAD [package...] Source1. I answered it there,...
Error message when doing git push: % git push ERROR: The '{corp}' organization has enabled or enforced SAML SSO. To access this repository, you must use the HTTPS remote with a personal access token or SSH with an SSH key and passphrase...
Sometimes connections simply fade away. Life happens. Privacy prevails. Then why don’t people remove them both ways (follower + following)? If you don’t want to stay connected with someone any longer, it is good courtesy to do so...
After owning an iPhone 14 Pro for more than two and a half years, its maximum battery capacity degraded to ~76%. It is not a terrible number, but the general recommendation is to take action whenever it goes below 80%, which happened a...
I famously do not run any kind of analytics in this blog, neither server-side or client-side. I genuinely have no idea how many people subscribe to it via RSS, and how many “page hits” it has been accumulating over its lifetime. This is...
Thanks Justin Searls for the idea: I use Homebrew all the time. Whenever I see a new CLI that offers an npm or uv install path alongside a brew one, I choose brew every single time. Me too. And yet, when it comes time to publish a CLI of...