User:Robida.net

From IndieWeb

Heya, I'm Beto Dealmeida!

Beto Dealmeida

(photo)

Pronouns: they/he 🌈

Musician and software engineer. Former climate scientist. Always a webmaster.

https://robida.net

Chat Nickname: robida

Contact: contact@robida.net

I started my first blog back in 2000, and since then I've written a good dozen custom blog engines. I mostly program in Python, but I also enjoy Guile, and started my career as a webmaster using PHP. My current blog is πŸ’ž open source and still and early work in progress β€” I do like to implement things from scratch so I can learn and understand how they work.

My blog

My main goal for the blog is to:

  1. Have a place to store my data. I've integrated it with Strava, my Withings smart scale, and my Oura ring, so I can keep track of my health. I've also added an endpoint where I can upload a photo of what I eat, and have AI to determine the nutritional contents (calories, proteins, carbs, fat).
  2. Have a place to store my social interactions. I participate in FAWM, an yearly challenge to write 14 songs in February. The site gets wiped out every March, and I lose all the comments people have made on my songs. I'm using POSSE and backfeed to preserve these comments.
  3. Have a better way of consuming news, at my own pace, using my own algorithm. I've been using an RSS reader for a while, but I want to like and comment on things. So I implemented Microsub and Micropub on my blog, and I'm using IndiePass for Android to follow people and news, while being able to have a voice.

My blog is simple: it has one table where I store mf2json for everything. My h-card is there, my posts are there, the posts from feeds I follow get stored there. If I want to follow someone in I just posts a u-follow-of, and my hourly cronjob will pick it up and fetch posts from that person, in addition to storing their h-card in the table.

I'm using Litestar, a super clean Python web framework, and PicoCSS, with plain Javascript. As much as I have mixed feelings about AI, I've been building the latest version of my blog with the help of Claude Code, which I use as a fancy autocomplete -- heavily constrained so it writes the code that I would write.

human.json

I created a specification called human.json to indicate content that is human-created (as opposed to AI-generated). Still a work in progress.

Robida?

Robida is a contraction of my full name: Roberto Antonio Ferreira De Almeida.