Writing

Notes, now and then.

About work, what I'm reading and whatever else catches my attention. Some posts are in Portuguese.

Subscribe via RSS
  1. Fiambre de Peru

    Quando faço uma sanduíche de fiambre de peru sinto que realmente estou comprometido com a minha saúde. Mais até do que com a minha felicidade...
  2. November '25 Stars 📚

    In November I read 172 articles from 48 feeds and I starred 15 articles, here they are:

    1. Google Antigravity Exfiltrates Data by Simon Willinson
    2. Claude Opus 4.5, and why evaluating new LLMs is increasingly difficult by Simon Willinson
    3. Hot take on Google’s Gemini 3 by Gary Marcus
    4. BREAKING: The AI 2027 doomsday scenario has officially been postponed by Gary Marcus
    5. Quoting Ethan Mollick by Simon Willinson
    6. Cause or Correlation? by Jason Gorman
    7. Glimpses of the Future: Speed & Swarms by Drew Breunig
    8. Maybe I don't need to know about everything by Tom Burkert
    9. Quoting Josh Cohenzadeh by Simon Willinson
    10. “Productivity”. You Keep Using That Word. by Jason Gorman
    11. The Learning Loop and LLMs by Martin Fowler
    12. Don't let Claude Code delete your session logs by Simon Willinson
    13. New prompt injection papers: Agents Rule of Two and The Attacker Moves Second
    14. Too big to fail? by Gary Marcus
    15. The AI-Ready Software Developer #16 – A Token of Our eXtreme by Jason Gorman

    Clearly out of my 48 feeds I have some favourites or there are people that write things that resonate more with me.

    I will try to start taking notes about what leads me to star articles so that I can bring more value to these posts. But if you do enjoy any of the articles make sure to follow their blogs. As much as it might seem... I haven't starred all of the articles that they published! 😅
    Continue reading →
  3. Back in Cambridge

    This weekend me and the family went back to Cambridge.

    It was very good to revisit it and to see how it has, and is evolving.
    It was great to see that none of our favourite restaurants are still open.
    It was nice to meet old friends, and their old and new offsprings.
    It was not enough time to do and see all the things
    that would have been great to see.
    It was tiring, because little children have lots of energy and amazing ideas on how to play
    out of the box, or inside the box, or on the box...
    It was surely a visit to remember, and above all to know that we want to do more of it.

    This weekend was just the first time we traveled abroad with the kids, and it won't be the last for sure.
  4. October '25 Stars 📚

    In October I read ~301 articles from the 44 blogs that I follow on my feed reader. These are the ones that really caught my interested and which I starred:

    1. ChatGPT's Atlas: The Browser That's Anti-Web by Anil Dash
    2. Sabbaticals keep our attrition at bay by DHH
    3. Quoting Geoffrey Litt by Simon Willison
    4. Agentic AI and Security
    5. Could China devastate the US without firing a shot? by Gary Marcus
    6. Wax On, Wax Off by Jason Gorman
    7. Avoid the nightmare bicycle by Geoffrey Litt
    8. Dane Stuckey (OpenAI CISO) on prompt injection risks for ChatGPT Atlas by Simon Willison
    9. Is vibe coding dying? by Gary Marcus
    10. AI Will Destroy Everything by Will Locket
    11. Game over. AGI is not imminent, and LLMs are not the royal road to getting there. by Gary Marcus
    12. Andrej Karpathy — AGI is still a decade away by Simon Willison
    13. Is AGI the right goal for AI? by Gary Marcus
    14. Is Your Development Team “AI-Ready”? by Jason Gorman
    15. Coding without typing the code by Simon Willison
    16. Just Talk To It - the no-bs Way of Agentic Engineering by Simon Willison
    17. Why You (Probably) Won’t Get Rich Building With LLMs by Jason Gorman
    18. The Passionate Programmer: Too Passionate, Perhaps? by Jason Gorman
    19. Quoting Gergely Orosz by Simon Willison
    20. “You have 18 months” by Derek Thompson
    21. Vibe engineering by Simon Willison
    22. The developer role is evolving. Here’s how to stay ahead. by Gwen Davis
    23. Quoting Nadia Eghbal by Simon Willison
    24. Comprehension Debt: The Ticking Time Bomb of LLM-Generated Code by Jason Gorman
    Continue reading →
  5. Hurdles of building with AI agents

    Over the past few weeks I have been testing a few AI code assistants like Claude Code, OpenAI Codex and Github Copilot. I'm using to vibe engineer some personal projects but also to try out new ways of building software at Mindera.

    Using AI to write most of my code makes me think that the role of a developer might evolve to more of an architect. Someone who thinks about what they need/want to build and then orchestrates AI to actually get it built. But as I do this, I am seeing two types of situations that will make a full evolution like this a bit slower than some predict, or  even challenge it. Namely:

    1. When I'm building something that is not as standard as most of the things I build (ie: something that isn't just CRUD pages and typical interfaces), AI tends to struggle more to deliver working solutions. Or at least takes longer to get it right than more conventional examples. I've seen this described as building things that fall off the distribution curve. The tech stack also has an influence here. AI might push for more standardisation as many of these models are much better trained on stacks like ReactJS. Tech choices will need to consider this. 
    2. When I'm building something that I've never built before versus something that I have built before. For example, the other day I was building user invitation system for a project, similar to the one I built for Kronflow earlier this year. So I was able to see that Claude Code wasn't building the feature in the right way, and I could intervene and ask it to adjust its approach. This means that when I'm building something that I haven't built before, there is a higher chance that it will be written poorly without me realising.
    Point number one might be a bigger issue than point number two, because "poor" might still be acceptable, as long as it's not insecure and bug-ridden. But if AI doesn't build the thing properly, a human will still need to step in.

    What this tells me is that to guide AI adoption we probably want to categorise the projects that our teams are working on by tech stack in use, and by "distance to distribution curve". This can help us deliver training where it's most impactful and allocate the best people to the projects where AI can't be relied on as much.

    The other topic that I think will continue to be hot is how to train juniors to become good in the age of AI, when we know that experience and knowledge remain key, but the temptation of AI and the shifting roles might make it harder for that experience to be developed.

    Lots to figure it out still.
    Continue reading →
  6. Enumerable#partition

    Today as I was working on a simple feature on a project I asked Github Copilot to review a piece of code and got back the following feedback:

    The collection is iterated twice unnecessarily. Consider using `partition` to split it in a single pass, e.g.:
    (1..6).partition { |v| v.even? }
    => [[2, 4, 6], [1, 3, 5]]

    I gotta thank Copilot. This is a very nice method to know about.
  7. Hello World

    This is the initial post of this blog.

    The question is: will there be more?