powRSS
Home Recent Glimpses Shuffle Blogs Random

Β¬ 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.

July 2026

August 2026

September 2026

Top Words

  • claude
  • code
  • reply
  • github
  • script
  • homebrew
  • commit
  • shell
  • atuin
  • update

All posts (395)

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 very clearly stated in the homepage. I take it as a badge of honor. That said, I...
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 my own, I usually just ship it as a Ruby gem or an npm package, because I had...
Previously. I configured my Claude Code instance at work to include exactly 3 MCP servers: github playwright (browser automation / testing) atlassian (JIRA, Confluence, etc) Sensible, right? It’s not like I’m a heavy user of MCPs. I mostly care about: PR introspection / creation occasional unit / integration testing...
Problem statement: Given an existing repository whose default branch is master, make it become β€œfresh” (=fully reset it), as if it had just been created. # backup the current default branch, just in case git branch backup-old-master git push origin backup-old-master # create an orphan branch git checkout --orphan...
Replaced all occurrences of pipx run in my projects with uvx. uvx docs: The uvx command invokes a tool without installing it. Perfect for one-off tool executions (β€œone-shots”). For example: % cat ~/.bin/az_switch #!/bin/sh # Switch active account in Azure exec uvx az-account-switcher "$@"
Alpine Linux: The Alpine Linux Technical Steering Committee (TSC) has decided to change the base filesystem hierarchy. In the future, /lib, /bin, and /sbin will be symbolic links to their /usr counterparts, and every package shall be installed under the /usr paths. For now, /usr/bin and /usr/sbin will continue to be...
OR: β€œcherry-pick a cherry-pick”. Adam Johnson: git cherry-pick allows you to copy a commit another branch to your current one. […] One limitation with a straight-up git cherry-pick, as above, is that it always copies the entire commit. If a commit contains multiple changes, but you only want one of them, you’ll need...
Tweak ~/.gitconfig: [alias] xl = branch -vv [branch] sort = -committerdate Result: git xl will print your repository branches sorted by the most recent ones in terms of activity, instead of the alphabetical default. I have this setting for a long time, and IMHO it’s a better default. This post by Tekin SΓΌleyman...
You are sending a PR upstream. You accidentally commit it with the wrong email. First, you prevent this mistake from happening again by updating your ~/.gitconfig. And now you need to fix the most recent commit. You can easily do so with: % git commit --amend --reset-author --no-edit Alternatively, with my aliases:...
Problem statement: get a random word via shell scripting. Assume a typical Unix / POSIX environment is available. There are various ways to do so. Dictionary shuffle Pick a random word from the system dictionary: % shuf -n 1 /usr/share/dict/words acrochordon -n controls how many words to pick. Or use sort -R: % sort...

Page 37 of 40