Sign in

Alex Rios

@alexrios.me
73 followers 21 following 204 posts

Former Carioca 🏖 living in Curitiba 🏔 ⛩️ Supreme Leader ⛩️ Author of System Programming Essentials with Go & Learning Zig. Posts about Tech Leadership, Go and Zig. He/Him

PostsRepliesMedia
Alex Rios @alexrios.me · 01/10/2026
Atualizei o material sobre Go Modules em português até o Go 1.27 💚 Saímos do GitBook e ganhamos casa nova: gomodules.alexrios.me Exemplos revisados e contribuições abertas. Material em português merece circular 🇧🇷
000
Reposted by Alex Rios
nark3d @nark3d.bsky.social · 29/09/2026
Simplicity gets agreed and then broken by a flag added for one caller. Hard caps beat intentions, because the linter doesn't get tired at 5pm. Tenets don't stop the deadline, but a cap the build enforces does. prickles.org/tenet/simpli...
prickles.org
F4 Simplicity · Prickles
F4 Simplicity: No line of code is cheaper than the one you didn't write. Reasoning, evidence, the counter-argument and the reply, on Prickles.
011
Alex Rios @alexrios.me · 28/09/2026
Moving slogbox to Go 1.27 made me revisit what the library promises when serializing logs and serving them over HTTP. Changing the version in go.mod was the easy part 😅.
000
Alex Rios @alexrios.me · 28/09/2026
I updated slogbox for Go 1.27 and JSON v2. I wrote about the migration decisions: what to preserve in the JSON output and how to handle errors after part of an HTTP response has already been sent. alexrios.me/blog/slogbox...
alexrios.me
Updating slogbox for Go 1.27
A Go 1.27 upgrade exposed a JSON contract, an HTTP error-design flaw, and a benchmark that looked fast because it failed early
100
Alex Rios @alexrios.me · 28/09/2026
Na migração do slogbox para Go 1.27, precisei rever o que a biblioteca promete ao serializar logs e entregá-los por HTTP. Trocar a versão no go.mod foi a parte fácil 😅.
000
Alex Rios @alexrios.me · 28/09/2026
Atualizei o slogbox para Go 1.27 e JSON v2. Escrevi sobre as decisões da migração: o que preservar no JSON e como lidar com erros quando parte da resposta HTTP já foi enviada. alexrios.me/blog/slogbox...
alexrios.me
Atualizando o slogbox para o Go 1.27
A atualização para Go 1.27 expôs um contrato JSON, uma falha no design de erros HTTP e um benchmark que parecia rápido porque falhava cedo
100
Alex Rios @alexrios.me · 28/09/2026
That's a good one! Thanks!
010
Alex Rios @alexrios.me · 27/09/2026
Hey Gophers, I need your help! What theme should I send to @gophercon.jp call for papers? I have only 2 submissions! Don't say Green Tea GC internals. It's the first one 🤓.
110
Alex Rios @alexrios.me · 18/09/2026
For more complex lifecycles, I'd use an explicit state machine to define allowed transitions and their guards. I'd still expose operations like publish() and archive(), with those rules enforced inside, though. For a handful of states, checks in those methods may be enough.
010
Alex Rios @alexrios.me · 15/09/2026
What transition, for instance? (Any that you have in mind)
100
Alex Rios @alexrios.me · 14/09/2026
A module can look encapsulated while another reaches straight into its state. I wrote about transparent boundaries, with a Go example that moves mutation back to its owner. alexrios.me/blog/patholo...
000
Alex Rios @alexrios.me · 14/09/2026
Continuando os posts sobre aspectos fundamentais de design 🌞 Nesse post, exploro as "fronteiras transparentes". alexrios.me/blog/patholo...
alexrios.me
Fronteiras transparentes
O encapsulamento que só existe na aparência
000
Alex Rios @alexrios.me · 07/09/2026
Seguindo a série sobre fundamentos de design de software: flags booleanas e estados que não deveriam existir. alexrios.me/blog/bool-fl...
alexrios.me
Flags booleanas e estados que não deveriam existir
De parâmetros booleanos ambíguos a campos contraditórios: explicite as operações e modele apenas os estados que o domínio permite.
001
Alex Rios @alexrios.me · 07/09/2026
In the post, I connect this to product and sum types, then work through a small Go implementation. I also cover zero values, parsing external data, and why valid states do not guarantee valid transitions. alexrios.me/blog/bool-fl...
alexrios.me
Boolean flags and states that should not exist
From ambiguous boolean parameters to contradictory struct fields: make operations explicit and model only the states the domain allows.
010
Alex Rios @alexrios.me · 07/09/2026
Continuing my posts on software design fundamentals, this time I’m looking at boolean flags and states our types should not allow.
alexrios.me
Boolean flags and states that should not exist
From ambiguous boolean parameters to contradictory struct fields: make operations explicit and model only the states the domain allows.
300
Alex Rios @alexrios.me · 07/09/2026
Not only me! We have a lot of amazing speakers this year: @alexdaubois.bsky.social @goinggo.net @danicat83.bsky.social @mvdan.cc @dario.cat @davideimola.dev @jespino.bsky.social @empijei.bsky.social l @deadprogram.com
050
Alex Rios @alexrios.me · 07/09/2026
The world tour continues relentlessly. I keep submitting talks and somehow people keep accepting them. Next stop: GoLab 2026, Bologna 🇮🇹 Talking about Green Tea GC, Go’s new garbage collector, and why “scan spans, not objects” turns out to be a much bigger idea than it first appears.
131
Alex Rios @alexrios.me · 07/09/2026
My slides from GopherCon LATAM 2026 are now available: 🇧🇷 PT-BR talks.alexrios.me/gc-latam-26-... 🇪🇸 ES talks.alexrios.me/gc-latam-26-... 🌎 EN talks.alexrios.me/gc-latam-26-... Hope they’re useful even if you couldn’t make it to the talk.
000
Reposted by Alex Rios
Konrad Reiche @konradreiche.com · 02/09/2026
Great talk from @alexrios.me on spin locks in Go at GopherCon Latam. They can outperform sync.Mutex, but only under a narrow set of conditions: a critical section under 100 ns, proven contention, multi-core deployment, and why Go generally favors safety, portability, and fairness over exposing them.
031
Alex Rios @alexrios.me · 22/08/2026
aqueminteressa.substack.com/p/o-crime-qu...
aqueminteressa.substack.com
O crime que Roma alegou e a regra que Roma escreveu
Tito Lívio atribui a repressão romana às Bacanais a assassinato, veneno e fraude. O único documento oficial contemporâneo que sobreviveu não menciona esses crimes. Ele regula caixa, juramento, cargos ...
000
Alex Rios @alexrios.me · 22/08/2026
Tito Lívio diz que Roma reprimiu as Bacanais por assassinato, uso de veneno e fraude. O único documento oficial contemporâneo que sobreviveu não menciona nada disso. Ele fala de caixa, juramentos, cargos e reuniões. O que essa diferença revela?
100
Alex Rios @alexrios.me · 20/08/2026
Most Go design problems don't start with architecture. They start with a function accepting more than it needs. I shared thoughts about precise signatures, small interfaces, and why every parameter should be an honest contract. alexrios.me/blog/stamp-c...
alexrios.me
Precision is the missing virtue in Go interfaces
Every parameter is a contract. Make it small enough to honor
000
Alex Rios @alexrios.me · 19/08/2026
alexriosbr.substack.com/p/processo-e...
alexriosbr.substack.com
Processo é o placebo favorito da empresa grande
Quando algo dá errado, adicionar uma etapa produz alívio imediato. O problema é que alívio gerencial e melhoria operacional não são a mesma coisa.
000
Alex Rios @alexrios.me · 19/08/2026
O problema é quando organizar o trabalho vira substituto para melhorar o trabalho.
alexriosbr.substack.com
Processo é o placebo favorito da empresa grande
Quando algo dá errado, adicionar uma etapa produz alívio imediato. O problema é que alívio gerencial e melhoria operacional não são a mesma coisa.
100
Alex Rios @alexrios.me · 19/08/2026
Processo dá uma sensação poderosa de controle. Quando a org cresce, essa sensação pode virar uma armadilha: mais etapas, mais aprovações, mais rituais e mais governança começam a parecer uma resposta para problemas que, muitas vezes, são de contexto, autonomia, competência ou desenho da cia.
100
Alex Rios @alexrios.me · 17/08/2026
Cortar design aumenta o custo total de um projeto, como a cultura do MVP continua empurrando times pro lado mais caro da curva. Além disso, um pouco de o que “suficiente design” significa na prática. alexrios.me/blog/underbu...
alexrios.me
Cortar design aumenta o custo total
Por que seu MVP continua levando dezoito meses
000
Alex Rios @alexrios.me · 17/08/2026
Times raramente pulam design porque não se importam. Pulam porque design parece custoso hoje, enquanto fazem debugging, retrabalho e dor operacional chegam aos poucos durante os próximos dezoito meses. Essa troca quase sempre sai cara 😅 .
alexrios.me
Cortar design aumenta o custo total
Por que seu MVP continua levando dezoito meses
100
Alex Rios @alexrios.me · 17/08/2026
I wrote about why underbudgeting design increases a project's total cost, why "MVP culture" keeps choosing the expensive side of the curve, and what “enough design” looks like in practice. alexrios.me/blog/underbu...
alexrios.me
Underbudgeting design increases total cost
Why your MVP keeps taking eighteen months
000
Alex Rios @alexrios.me · 17/08/2026
Teams rarely skip design because they do not care. They skip it because design looks expensive today, while debugging, rework, and operational pain arrive quietly over the next eighteen months. That trade is usually a bad one.
alexrios.me
Underbudgeting design increases total cost
Why your MVP keeps taking eighteen months
100
Alex Rios @alexrios.me · 12/08/2026
This is a premium post (and a long one). alexriosme.substack.com/p/the-cost-o...
alexriosme.substack.com
The cost of caring about software
AI made generating code cheap. Verifying it stayed expensive. The difference lands on whoever still checks.
000
Alex Rios @alexrios.me · 11/08/2026
That's also why heuristics age badly: they're yesterday's consensus about yesterday's problems. The problem shape doesn't move; the agreement about what "solves it" does.
010
Alex Rios @alexrios.me · 11/08/2026
The problem obeys physics; the solution obeys people, in a sense. Both concrete things in the universe 😁
100
Alex Rios @alexrios.me · 11/08/2026
Answering your question: Close, but not the same, I think. Your "first principles" map to my problem shape. But I wouldn't call the solution side "opinions", and those are real constraints, just human ones: what the group can understand, apply, and maintain.
100
Alex Rios @alexrios.me · 11/08/2026
aqueminteressa.substack.com/p/a-bolha-da...
aqueminteressa.substack.com
A bolha da autoconfiança
De carros usados à WeWork: por que parecer seguro virou um atalho para parecer competente
000
Alex Rios @alexrios.me · 11/08/2026
A gente aprendeu a confundir confiança com competência. A WeWork chegou a valer US$ 47 bilhões porque Adam Neumann não vendia escritórios. Vendia certeza
100
Alex Rios @alexrios.me · 11/08/2026
In other words, heuristics is a function that have time as the main variable and the solution is trapped on the common agreement on "it solves the problem" by the people involved in the solution.
100
Alex Rios @alexrios.me · 11/08/2026
humm... I'm not really sure, but I see heuristics as a trend that tries to sew the problem space and solution with a cognitive shortcut, while the solution itself, even if it has its own constraints, is capped by the group's ability to understand, apply, and maintain it.
100
Alex Rios @alexrios.me · 11/08/2026
It makes total sense. Thanks for adding this!
010
Alex Rios @alexrios.me · 11/08/2026
I wrote about the five binding times, named by what each one actually costs to change. From "a code change in every copy" down to "a provider update". alexrios.me/blog/late-bi...
alexrios.me
What does it take to change this?
Five binding times, named by what it costs to change them
000
Alex Rios @alexrios.me · 11/08/2026
"Should this be a constant or a config value?" "Should we use DI here or construct it inline?" Same question, dressed up: when does this identifier get its final value?
alexrios.me
What does it take to change this?
Five binding times, named by what it costs to change them
100
Alex Rios @alexrios.me · 07/08/2026
I wrote about it here: alexrios.me/blog/problem...
alexrios.me
Clean code loses to the shape of the problem
The argument that quietly invalidates half of clean code advice
100
Alex Rios @alexrios.me · 07/08/2026
We often call something a “heuristic” when, in practice, it’s just a way to avoid understanding the problem. When a solution starts accumulating exceptions, weights, thresholds, and special rules, maybe the problem isn’t the algorithm. Maybe it’s the structure we chose to represent the problem.
alexrios.me
Clean code loses to the shape of the problem
The argument that quietly invalidates half of clean code advice
110
Alex Rios @alexrios.me · 07/08/2026
alexriosme.substack.com/p/running-fi...
alexriosme.substack.com
Running five agents in parallel is being interrupted at scale
The productivity advice of the moment says to orchestrate a fleet of coding agents. The science of interruptions, measured twenty years earlier, says to do the math first.
010
Alex Rios @alexrios.me · 07/08/2026
Five AI agents don't give you five brains. They give one brain five sources of interruption. The numbers make the current multi-agent coding playbook look different. I wrote about the hidden cognitive cost of orchestrating agents, and the simple change that makes the model work much better.
200
Reposted by Alex Rios
Raphael Amorim @raphamorim.bsky.social · 06/08/2026
Announcing Canario, a new terminal for macOS. It uses Rio under the hood 🐤 Spaces with their own colors (⌘1–9), splits, a ⌘K command bar, live tab previews, session restore, and a floating quick terminal on ⌥⌘T. macOS only for now, Linux and Windows are coming. rapha.land/canario
021
Alex Rios @alexrios.me · 23/07/2026
open.substack.com/pub/alexrios...
open.substack.com
The bottleneck was never writing code
AI took the easy part of the job off our hands: typing. What's left is the part that was always the real limit: understanding.
000
Alex Rios @alexrios.me · 23/07/2026
Saying review is the bottleneck isn't news. In my new post, I explore why your seniority works through "chunking," why AI diffs blow your cognitive budget, and how to survive reviewing code written at industrial volume.
100
Alex Rios @alexrios.me · 15/07/2026
Hey! Almost forgot to share the slides from GopherCon Europe 2026 Here goes nothing: docs.google.com/presentation... #gopherconEU
docs.google.com
Alex Rios - Green Tea GC - Gophercon EU 26
Green Tea The Insight Behind Go's New Garbage Collector Berlin, Jun 15 2026 Alex Rios Memed alexrios.me
000
Alex Rios @alexrios.me · 13/07/2026
open.substack.com/pub/aquemint...
open.substack.com
O manual que explica por que desastres fazem os ricos mais ricos
Milton Friedman disse em voz alta o que outros só pensavam: crises são oportunidades. Naomi Klein mostrou como isso funciona na prática.
000
Alex Rios @alexrios.me · 13/07/2026
"Só uma crise, real ou percebida, produz mudança real." - Milton Friedman, 1982. Chile 73, Rússia 91, Iraque 03, Nova Orleans 05, COVID 20. Mesmo padrão, cinco vezes. Escrevi sobre como isso funciona (e por que talvez nem precise ser conspiração).
100