← Back to portfolio

Blog

Thoughts on development, AI, and building things.

architectureengineeringmigrationtechnical decisions2026-08-25

The copy nobody tested is not a backup

Every migration reaches the moment when someone suggests keeping both sides running, just in case. It sounds prudent and it rarely is. The three costs that decision hides, and the question I use to settle it.

databasespostgresqlarchitecturetechnical decisions2026-08-25

Deleting Is an Architecture Decision

Every system reaches the day someone asks for a delete button. What looks like a two-hour task is a decision that defines what the database will allow from then on. The hidden costs, and the rule I use to choose.

banco de dadospostgresqlarquiteturadecisão técnica2026-08-25

Apagar é uma decisão de arquitetura

Todo sistema chega no dia em que alguém pede um botão de excluir. O que parece uma tarefa de duas horas é uma decisão que define o que o banco vai permitir daqui em diante. Os custos escondidos e o critério que uso pra escolher.

arquiteturaengenhariamigraçãodecisão técnica2026-08-25

A cópia que ninguém testou não é backup

Toda migração chega no momento em que alguém propõe manter as duas pontas ligadas 'só por garantia'. Soa prudente e quase nunca é. Os três custos que essa decisão esconde, e o critério que uso pra decidir.

iaworkshopempresáriosautomaçãovitória2026-08-10

Workshop de IA para Empresários em Vitória, ES: 16 horas que podem mudar um negócio

Como foi o workshop imersivo de Inteligência Artificial para empresários realizado em Vitória, ES — dois dias de conteúdo prático sobre como aplicar IA nos processos de qualquer negócio.

developmentaiautomation2026-06-09

I Built a Blog Powered by Markdown and an AI Agent

How I set up an automated blog where an AI reads my daily conversations and turns them into posts — and why plain .md files were the right call.