Sign in

Norberto Lopes

@nlopes.dev
159 followers 265 following 212 posts

Engineering @incident_io nlopes.dev acdc.nlopes.dev haveyouaskedclaude.com dbschemer.dev securitytxts.com github.com/nlopes

PostsRepliesMedia
Norberto Lopes @nlopes.dev · 13h
I love when this kind of technological convergence kicks off. Yes, we had internet on planes for a while but only in the past 5y did it become quite good (same goes for underground trains etc). And now, we also have high quality LLMs. Each one is a marvel, but together? Mind-blowing.
010
Norberto Lopes @nlopes.dev · 16/09/2026
Book 4 of Saga just arrived. So excited about this.
010
Norberto Lopes @nlopes.dev · 02/09/2026
One aspect that I'm proud of is giving feedback to candidates if they get rejected at the end of the interview process. I posted about this on LinkedIn and got a bunch of messages asking about how I approach these conversations so decided to write about it.
nlopes.dev
Tell candidates why and how they failed
When a candidate goes through your entire interview process, and you end up deciding not to hire, they deserve to know why.
000
Reposted by Norberto Lopes
Lawrence Jones @lawrencejones.dev · 01/09/2026
Wrote about how MCPs and skills are implemented in agent harnesses and how skills can help consolidate many specialised agents into one. This is a write-up of a “skills and MCPs 101” we’ve had several times at incident while building this into our harness. blog.lawrencejones.dev/demystifying...
blog.lawrencejones.dev
Demystifying skills and MCPs
The AI ecosystem can be really confusing: Agents, MCPs, skills, plugins, everything is an overloaded term and a fuzzy concept. This is an explanation of how these constructs work in plain terms, usefu...
131
Norberto Lopes @nlopes.dev · 30/08/2026
LLMs are so good at writing fixtures. Makes a lot of the boring work a breeze.
000
Norberto Lopes @nlopes.dev · 28/08/2026
Working with AI is either "Just do it, no need to always ask me" or "That is so stupid, please always ask me before making changes"
001
Norberto Lopes @nlopes.dev · 28/08/2026
I keep finding stuff I hadn't clocked in cargo nextest. I said it before but I'll say it again: I wish all software was this good. Big fan. I can't remember the last project where I didn't use cargo nextest instead of cargo test. (except for --doc)
1200
Norberto Lopes @nlopes.dev · 24/08/2026
Who called it cargo clippy instead of rustycop?
000
Reposted by Norberto Lopes
Ally Weir @allyjweir.co.uk · 19/08/2026
This blog post from @incident.io absolutely rips. - Great technical detail - Solving a real problem - Leveraging open-source projects I wasn't familiar with but am now super curious Excellent writing and great to promote the rigour they put into system fundamentals ❤️ incident.io/blog/we-turn...
incident.io
We turned off Pub/Sub and nobody noticed | Blog | incident.io
Our entire event-driven platform ran through a single message broker, which made it a single point of failure. So we added a second one. This is the story of building an event load balancer, the queue...
163
Norberto Lopes @nlopes.dev · 24/08/2026
There are two things that I find are not great UX in jujutsu: jj bookmark move --to @- main # git just moving main makes UX overall better jj file search --pattern "<pattern>" # git grep just clicks more for me
000
Norberto Lopes @nlopes.dev · 14/08/2026
Read receipts are "opened" receipts and they mean nothing at this point. I guarantee you I've "opened" plenty of emails because I'm navigating the inbox, read none of them, prioritised based on Subject and From and then a month later sent a "sorry, not sure how I missed this" because I did.
041
Norberto Lopes @nlopes.dev · 12/08/2026
I would love 10 minutes with whoever leads the customer support team for the Google Store. I think 10 minutes of showing them how their system is actively anti customer would do more good than all the metrics/SLAs they might have internally.
000
Norberto Lopes @nlopes.dev · 11/08/2026
Niiiice. Been looking out for this for a while.
010
Norberto Lopes @nlopes.dev · 30/07/2026
This is cute but also... you ok github?
010
Norberto Lopes @nlopes.dev · 30/07/2026
This visual bug has to be the most annoying bug in @github.com that I am faced with every single day. Unless this is on purpose but I don't quite get the point.
000
Norberto Lopes @nlopes.dev · 30/07/2026
One of my favourite things about the Google keyboard/android keyboard is that if I have text selected and press shift repeatedly, it rotates through types of capitalisation. It makes it so easy to fix things. I wish other OSs had this by default.
000
Norberto Lopes @nlopes.dev · 25/07/2026
Just passed the 2k test mark for the AsciiDoc toolkit test suite in github.com/nlopes/acdc. cargo-nextest is one of my favourite tools in rust right now. It just works. Every time. Doesn't get in the way, it's fast, and has great UX. For me, github.com/nextest-rs/n... resolved makes it perfect.
1130
Norberto Lopes @nlopes.dev · 25/07/2026
We're at that stage I have to politely say "you're holding it wrong" whenever someone has a strong take on "AI is useless and garbage and doesn't help me". It's no longer a toy. I will respect folks that have ethical objections to it but I object to the "it's useless".
000
Norberto Lopes @nlopes.dev · 23/07/2026
GPT 5.6 sol is very very good. I'm enjoying a fair amount how it goes about things and the results. Opus 4.8 can still beat it in some stuff but I think this is the first time since late last year that I feel OpenAI truly catching up and perhaps overtaking.
000
Reposted by Norberto Lopes
johanna @jola.dev · 21/07/2026
Wrote about our experiences at @incident.io of migrating our codebase to routing most DB queries to the read replica and some useful patterns that came out of it, including LSN checking! incident.io/blog/dont-ad...
incident.io
Don't add a read replica until you've read this | Blog | incident.io
Our learnings from implementing a product-wide read replica migrations, including some useful patterns for routing queries to replica and primary
1273
Norberto Lopes @nlopes.dev · 19/07/2026
The things one finds doing a deep cleaning. Farewell dear hp-ux and Veritas. You won't be missed.
020
Norberto Lopes @nlopes.dev · 18/07/2026
I've updated the AsciiDoc lsp github.com/nlopes/acdc/... to detect: - if a conditional is inactive (does not match the condition) - if a conditional doesn't close/is invalid - if a conditional is valid and active And you can also configure which "backend" it should use to parse your document as.
000
Norberto Lopes @nlopes.dev · 16/06/2026
This was brewing in my mind for some time now. Finally put "pen to paper". nlopes.dev/writing/grow...
nlopes.dev
Growing as an engineer in a world of AI
AI removes the friction where learning used to happen. Choose the friction. At least sometimes.
020
Norberto Lopes @nlopes.dev · 14/06/2026
> I just wanted to express my deepest appreciation for the work you are doing with acdc. At the end of the day this is why I keep doing OSS.
010
Norberto Lopes @nlopes.dev · 13/06/2026
Opus 4.8 on the left, my own on the right.
000
Norberto Lopes @nlopes.dev · 07/06/2026
It still boggles my mind that I can write this at 30000 ft like it's nothing.
030
Norberto Lopes @nlopes.dev · 05/06/2026
I'm adding asciicast support to acdc... which meant creating this today: github.com/nlopes/ascii... I'd rather have this from the asciinema folks but they don't expose the format as a library :(
github.com
GitHub - nlopes/asciicast-rs: An `asciicast` file format parser
An `asciicast` file format parser. Contribute to nlopes/asciicast-rs development by creating an account on GitHub.
020
Norberto Lopes @nlopes.dev · 05/06/2026
OMG yes! I didn't realise jj allowed for "private" commits. That's awesome.
0191
Reposted by Norberto Lopes
incident.io @incident.io · 05/06/2026
99.99% isn't a faster version of 99.95%. It's a different problem entirely. 🔥 Our VP of Engineering @nlopes.dev writes on what autonomous recovery, dependency ceilings, and CI/CD speed actually look like at four nines: incident.io/blog/humans-arent-fast-enough-for-4-nines
021
Norberto Lopes @nlopes.dev · 05/06/2026
With a day out of work to relax, I never thought I'd end learning the spec for the various asciicast version formats. But here we are.
000
Norberto Lopes @nlopes.dev · 05/06/2026
Gosh, having a lot of fun with asciidoc today. I had added a terminal replay feature earlier and now I've been adding asciicast format so if you record something with asciinema you are able to see it being played out in the generated html 👌 Animated gif in the threaded post.
100
Norberto Lopes @nlopes.dev · 05/06/2026
Very much worth a read.
041
Norberto Lopes @nlopes.dev · 05/06/2026
I've added a `[terminal%replay]` block to `acdc`. And then created an `adoc` with the full result of a `cargo nextest`, which now generates this lovely terminal replay in html (using libghostty-vt). github.com/nlopes/acdc/...
241
Norberto Lopes @nlopes.dev · 27/05/2026
Yeah, rust error messages are in a different category altogether.
020
Norberto Lopes @nlopes.dev · 26/05/2026
Michael if it's any consolation, I've just bought Ouros and will be recommending it to everyone. I wish more devs made games like this one, great work!
010
Norberto Lopes @nlopes.dev · 25/05/2026
Google customers: we really need good customer support. Google: here are our new icons. Rejoice.
030
Norberto Lopes @nlopes.dev · 25/05/2026
You're giving too much credit to LLMs. You're not giving enough credit to LLMs. Both can be true. I don't understand what's so complicated about this. And the argument that using LLMs is *only* bad and destructive no longer flies. Even if there's a bubble. Even if said bubble bursts.
000
Norberto Lopes @nlopes.dev · 24/05/2026
Wrote a bunch of words on building acdc: nlopes.dev/writing/buil...
nlopes.dev
Building an AsciiDoc toolchain in Rust
What building an AsciiDoc toolchaing looks like after 18 months, a parser rewrite, and a bunch of experiments.
021
Norberto Lopes @nlopes.dev · 24/05/2026
New release of slack-go (pkg.go.dev/github.com/s...) adding support for the Data Table block (docs.slack.dev/reference/bl...).
pkg.go.dev
slack package - github.com/slack-go/slack - Go Packages
000
Norberto Lopes @nlopes.dev · 24/05/2026
It's wild that a human can look at jj b m main -t @ and just know what it does. wth
000
Norberto Lopes @nlopes.dev · 23/05/2026
I should say that one of my favourite things about jj is how much faster/better it seems for claude code/codex/etc. I never fear a mess up that is irrecoverable.
001
Norberto Lopes @nlopes.dev · 23/05/2026
Now that jj is in my muscle memory, git is feeling clunkier and clunkier, even though I think I'm pretty good with git plumbing. I still think jj has a way to go to nail the ergonomic for some flows. Not having a staging area, when you get so used to it really messes you up.
220
Reposted by Norberto Lopes
Lawrence Jones @lawrencejones.dev · 19/05/2026
Have been speaking with a load of companies adopting AI and there are some clear trends emerging. Written up my thoughts and predictions for those also trying to think ahead! incident.io/blog/eng-in-...
incident.io
Engineering teams in 2027 | Blog | incident.io
A forward look at where engineering teams are heading with AI, based on conversations with design partners who are visibly six-to-twelve months ahead of the average. Tailored code agents, MCP gateways...
031
Norberto Lopes @nlopes.dev · 18/05/2026
I've added a :terminal-preview: attribute to acdc (github.com/nlopes/acdc/...) that uses libghostty-vt to generate html with the actual terminal with the right ansi colors 👌 #asciidoc #asciidoctor #libghostty
040
Reposted by Norberto Lopes
Carl Lerche @carllerche.com · 16/05/2026
This undercurrent within the #rustlang community (and others) has to stop. The attacks on people simply because they are using developer tools that make them productive is 100% out of line. I can respect the anti-LLM arguments, but let's agree to disagree, respect each other as humans, and move on.
3295
Norberto Lopes @nlopes.dev · 16/05/2026
An homage to rust: nlopes.dev/rust-timeline/
nlopes.dev
The Rust Annals
A typographically-refined archive of every Rust release, issue by issue.
020
Norberto Lopes @nlopes.dev · 14/05/2026
JUST ANOTHER DAY OF
110
Reposted by Norberto Lopes
Lawrence Jones @lawrencejones.dev · 11/05/2026
There is a great book called Checklist Manifesto which is about how aviation and medicine adopted checklists to improve safety. I’ve found it super useful as an SRE building runbooks, but turns out it applies to AI too. blog.lawrencejones.dev/building-ai-...
blog.lawrencejones.dev
Building AI skills like checklists
First-draft AI skills are usually broken in ways the author can't see. A walk through how I built our daily AI spend report skill, with iteration discipline borrowed from Atul Gawande's Checklist Mani...
121
Norberto Lopes @nlopes.dev · 10/05/2026
Been vibe coding a neat rust release timeline but taking inspiration from newspaper styles. Any folks out there from #rustlang have opinions?
340
Norberto Lopes @nlopes.dev · 09/05/2026
This is such a nerdy movie that I keep re-watching - some parts are really good, others boring. And sometimes the soundtrack is bang on, other times so annoying (the void of space sound that drives me up the walls)
000