Best reads for PMs & Designers
Get 5 personalized best reads each week, with TL;DR and clear next steps.
One free email every Tuesday · No sponsored posts · See a sample email
Topics
Sources
First seen 8 June 2026
The Pragmatic Engineernewsletter.pragmaticengineer.com · 8 September 2026
AI generates more code than devs can track in 2026, so will the code review process have to adapt – or is it doomed? A look into this decades-old practice and the approaches that could replace it
The Generalistgeneralist.com · 8 September 2026
Scott Morton shares why rockets and reactors need more than vibe coded software.
GitHubgithub.blog · 4 September 2026
Table of Contents Availability in GitHub Copilot Enabling access Learn more Share your feedback Menu. Currently selected: Availability in GitHub Copilot Availability in GitHub Copilot Enabling access Learn more Share your feedback GPT-6 Astra from OpenAI is now available in GitHub Copilot. OpenAI’s latest general-purpose model, GPT-6 Astra, is designed for long-horizon, autonomous coding and agentic tasks. In our internal testing, GPT-6 Astra stood out for how it works, not just what it produces: it plans and validates as it goes, batches diagnosis with verification, and independently confirms its results before declaring a task done. That translated into stronger performance on long-horizon coding tasks with fewer steps than prior OpenAI models. This model is billed at provider list pricing under usage-based billing. See pricing for GitHub Copilot models and requests for details. Availability in GitHub Copilot GPT-6 Astra is available to Copilot Pro+, Max, Business, and Enterprise users. You can sel
Simon Willisonsimonwillison.net · 2 September 2026
2nd September 2026 Direct2D has always been the biggest hurdle for Paint.NET on WINE, and it's clear that it will never be completed enough for Paint.NET's use. And I can't just "disable" the use of Direct2D. So, instead, Paint.NET now has an internal, from-scratch, clean-room reverse-engineered rewrite of Direct2D that it uses on WINE (triggered by using /wine). It lives in PaintDotNet.Windows.Direct2D1.Managed.dll. This was written by our good friend Claude, without whom this would NOT have been possible and would NEVER have happened. [...] Most of this code is, as they say, "vibe coded." By that I mean that it has not been thoroughly reviewed, it's more "trust me bro" style. I cannot possibly review 180,000 lines of code, it's just way way way too much. For reference, the rest of Paint.NET is about 700,000 lines of code and I've been working on it for over 20 years. [...] At times, Claude was working with the fury of 10 freshly unshackled Einstein genius-level 10x coders. And other times ... well, not so much. I had to babysit Claude quite a bit to make sure it did resource management correctly (for awhile it just wasn't doing the COM equivalent of AddRef
LangChain bloglangchain.com · 26 August 2026 · 4 posts
Last week we launched LangSmith Engine. Engine is an agent that sits on top of your agent traces, spots recurring issues, and suggests what to do next.This post goes into the technical details of how we built it: why we built Engine, what inputs and outputs it works with, and the architecture decisions that let it analyze large volumes of traces.Why we built EngineLangSmith is the home of the agent improvement loop. Build, test, deploy, and monitor are the four pillars of this loop that power agent development.As the number of agents you deploy grows, the number of traces they generate grows as well. As a result, you spend more and more time sorting through traces and figuring out where your agent went wrong.Basic tool errors are relatively easy to catch. Overall trajectories are also visible from the trace view. But many agent issues are much harder to detect unless you inspect each trace at a granular level:the agent loops through the same tool callsit uses incorrect tool argumentsit executes inefficientlyit misses a tool it should have usedit fails the same kind of request repeatedly across different runsAfter running
Smashing Magazinesmashingmagazine.com · 25 August 2026
8 min readTools, Design, AIEvery website peaks on launch day and slowly drifts from there, not because it breaks, but because nobody has time to keep it current. Autonomous websites, continuously optimized by agents after launch, aim to change that. But take the idea seriously, and you quickly run into a problem that has nothing to do with technology: almost nobody wants a website that changes entirely on its own. Pierre Burgy shares what they learned building for full website autonomy and the deeper design problem they uncovered along the way.Every website is at its best the day it ships. The final branch merges, the site goes live exactly as designed, and it is briefly perfect. It will never be this good again.Not because anything breaks. The site keeps working. But the market moves, the messaging shifts, a competitor launches something, and the careful thing you built slowly stops matching the company it represents. A year later, it is a period piece. Not broken, just behind. Every team knows this decay, and almost everyone treats it as a law of nature.It doesn’t have to be that way. A website could keep improving after launch instead
Stack Overflow blogstackoverflow.blog · 21 August 2026
I keep seeing the same idea in conversations about agents: Detailed specs are old-world overhead now. Give the model a rough goal, let it explore, fix what comes back, move on. It sounds efficient but it also hides the cost.A simple prompt looks cheap and tempting because it gets implementation started right away. Then the correction loops start. You review output, clarify intent, ask for changes, rerun tests, find the next gap, and do it again. Someone still has to decide whether the result matches the real goal. That person becomes the oracle.At the other extreme, full formal specification is obviously expensive up front. Writing acceptance criteria, contract tests, or behavior-driven development (BDD) scenarios takes real effort. But the downstream cost is different because more of the oracle is executable. A test checks the same condition every time. It doesn’t get tired, rushed, or optimistic five minutes before lunch.That is the actual trade-off. The question is not whether specification is good or bad. It’s where the minimum total cost sits. For most agentic work, it’s somewhere in the middle: enough
Linear changeloglinear.app · 20 August 2026
ChangelogElapsed00:00Remaining time unknownLinear Agent can now set up, run, and test your code before returning its work. That means fewer handoffs and changes that are further along when they come back to you.We’re also introducing lower, more transparent pricing, making AI credit usage easier to understand and control.Configurable environmentsCoding sessions now automatically adapt to each codebase’s configuration, with broader out-of-the-box support for Python, Ruby, Go, and more.During a session, Linear detects and installs the toolchains and dependencies it needs to complete the task. Teams can go further by pinning runtime versions, adding setup scripts, and defining environment variables.To get started, create an environment in settings. Visit the docs for more details.Browser testingOnce the application is running, Linear Agent tests its work where users experience it: in the browser.The agent opens the app, navigates through a flow, and verifies its implementation. It also captures before-and-after screenshots, making visual changes easier to review alongside the code.Browser testing can catch broken intera
blog.ronbronson.comblog.ronbronson.com · 19 August 2026
9 August 2026 A Model for Dangerous Agent Situations Reading this twitter thread (yeah, I know) about agents and escalation paths, left me thinking more about some earlier posts about the mostly dormant agent experience space and how there should be more content about these paths when they’re discovered. The short version about the thread suggests an alarm call for an agent to relay back that they’ve reached a plac they cannot go any further and need human intervention, rather than trying to brute force their way to a solution. (Presumably, to make you the human pleased with their work and also to churn as many tokens as possible. Both with agents and sales, it’s always be closing I guess.) One reply to the thread referenced algedonic signalling, which sent me back to Stafford Beer. In the Viable System Model, an algedonic signal is an exception channel: information that can move outside the normal reporting structure when actual conditions have departed badly enough from what the system expects. Beer wasn’t thinking about “agent welfare” and to be honest, neither am I. At least it relates to anthropamorizing an agent’s welfare, when in re
Figma blogfigma.com · 29 July 2026 · not counted as a party
Our security team built an AI agent that triages alerts, conducts forensic investigations, queries our security data lake, writes code to fix issues—and remembers what it learns. Here's how we cut alert time-to-resolution by 71% and fundamentally changed how our on-call engineers work.
Claire Volennysnewsletter.com · 22 June 2026
Brian Grinstead is a distinguished engineer at Mozilla, where he’s worked on Firefox and the web platform since 2013 (he joined to help launch Firefox DevTools). Recently he and his team pointed an agentic bug-finding pipeline at Firefox—a codebase with tens of thousands of files and tens of millions of lines of code—and shipped a record month of security fixes. The viral chart everyone saw gave the credit to Anthropic’s new Mythos model. Brian’s take is that the harness and pipeline did just as much of the work, and he walks through exactly how it runs and how anyone can build a starter version. Listen or watch on YouTube, Spotify, or Apple Podcasts What you’ll learn: How to build a basic bug-finding harness by running Claude Code or Codex with one prompt and the -p flag, no SDK required Why pointing an agent at a whole codebase fails, and how an LLM judge can score and rank files before you spend any compute How a verifier subagent kills false positives by catching the agent when it cheats The goal-loop pattern: give an agent a tightly scoped problem, a clear pass/fail signal, and let it retry far past
arps18.github.ioarps18.github.io · 8 June 2026
I burned forty minutes on a refactor claude could’ve shipped in four, and the gap wasn’t the model. It was everything around it. The casual user types prompts, takes the first suggestion, and treats claude like dressed-up autocomplete. I run it as a programmable agent: persistent memory, custom commands, parallel sessions spawning across worktrees, and a project layout that gets sharper every week I touch it. This guide assumes you’ve already typed claude into a terminal and seen what happens. We’re going past that…Now the fun part. 1. Claude Code Beyond the BasicsStop treating Claude Code like a prompt-and-wait chatbot. Treat it like an autonomous agent that needs guardrails, and your whole workflow shifts. The core principle from Boris Cherny and the Anthropic team is simple, and it’s to give Claude a way to verify its own work. Without that loop, you’re the only feedback signal. With it, Claude iterates until the code actually runs. Boris pegs this single move at a 2-3x quality bump.A few patterns that shift how you operate day to day.Explore, then plan, then code. Hit Shift+Tab twice to drop into plan mode, which is read-only. Let Claude read file