Today’s issue: Lindsay Lohan convincing your boss to use AI, two very different ways of improving Cloudflare, and CSS cheat codes that big browser doesn’t want you to know about.
Welcome to #428.
Some tools have many uses
You’ve probably heard the joke about how Model Context Protocol (MCP) is the only piece of technology that has more builders than users – to which I say, “have we all forgotten about NFTs that quickly?”
But the Chrome team is out to change that. They just released a public preview of the Chrome DevTools MCP server, which lets your coding agent of choice control and inspect a live Chrome browser.
And that’s cool because until now, agents were “coding with a blindfold on.” They could spit out code, but they couldn’t see if that button was clickable, what your Lighthouse score actually looked like, or why your API calls were failing.
This new tool fixes that by wiring Chrome DevTools into a Puppeteer-powered MCP server that any AI can call. That gives your agent the “eyes” it needs to poke around in a sandboxed Chrome profile and do fun stuff like:
Debug like a developer – Inspect the DOM, read console logs, and check network requests directly through MCP, so your agent can troubleshoot real runtime errors instead of guessing.
Automate user flows – Click buttons, fill forms, upload files, and reproduce bugs by simulating actual user behavior.
Run perf audits – Trigger Chrome performance traces and extract actionable metrics like LCP and TBT. So now you can go back to blaming React for your bad Lighthouse scores instead of AI.
Bottom Line: If this really does enable coding agents to run, test, and debug code in a live browser, a lot of us you will need to apologize for your MCP slander. But don’t worry, it’s still safe to make fun of the crypto JPGs.
![]() ![]() ![]() ![]() |
Your team waiting on another QA cycle before they can deploy
That’s because their multi-agent system uses 150+ specialized agents that each do a specific task – like outlining tests, writing code, and verifying results.
Then, their human reviewers check the agents’ work to make sure nothing slipped through the cracks. That gets you:
5x faster for them to write and update your team’s tests
Sophisticated agents that have done over 50 million test runs
Huge savings on QA engineering (they saved Scope3 $300k/yr here)
Get a personalized demo for your team – and see why one Scope3 manager said that QA Wolf “lets us build faster, with the confidence that if something breaks, we’ll know right away.”
They created this complete guide to using AI coding assistants for large codebases, which shows you how to evaluate which AI tools will work at enterprise scale and how to integrate them.
function sumArgs() {
let sum = 0;
arguments.forEach((arg) => {
sum += arg;
});
return sum;
}
const result = sumArgs(1, 2, 3, 4, 5);
Chris Loy wrote about The AI coding trap. It’s kind of like The Parent Trap, but instead of Lindsay Lohan playing two different twins, Claude Code is playing your boss into thinking that your team is actually being more productive.
Courtney Hackshaw wrote a good breakdown of CSS Specificity.
Convex just released this TanStack Start Quickstart page in their docs to help you get set up quickly with Convex and TanStack Start v1.0 – the new React framework that’s “so hot right now.” [sponsored]
Right on cue, Catalin Pit wrote about migrating to TanStack Start, and how it helped him lose 25 pounds, save his marriage, and finally get his dad to say, “I’m glad we had you instead of buying those jet skis.”
Stef van Wijchen wrote about Redux in 2025 and makes the case for why it’s still a reliable choice for complex React projects.
The Clerk team created this in-depth guide on how to add authentication to a Next.js app. It covers some of the most common auth strategies and shows you step by step of how to add JWT auth to your Next app. [sponsored]
The Cloudflare team wrote about how they re-engineered their core proxy with a new, modular, Rust-based architecture to make it faster and more secure.
Speaking of things that could improve Cloudflare’s reliability, Nick van Dyke created this ESLint plugin to catch unnecessary useEffect
s in React.
CodeRabbit CLI gives you senior-level code reviews, so it can check all the code that AI tools like Claude, Codex, and Gemini write for you, directly from your terminal. [sponsored]
Ollie Williams wrote an article called Frontend complexity and the HTML renaissance. I appreciate how our industry has collectively started using the term “renaissance” to mean, “something we all hate less than we used to.”
Jimbly wrote about porting modern TypeScript to run on DOS.
The CSS Working Group just published a first draft of CSS Environment Variables. Thankfully, it reads a lot better than the first drafts I would write for my college term papers, which mostly consisted of Wikipedia copy-pasta + stream-of-consciousness rambling about the hidden meanings in Tony Hawk Pro Skater 2 cheat codes.
They created this complete guide to using AI coding assistants for large codebases, which shows you how to evaluate which AI tools will work at enterprise scale and how to integrate them.
In JavaScript, arguments
is not an array, it is an “array-like object” so you can use a for loop to iterate over it, but if you want to use array methods like forEach
, you need to convert it to an array first. There are a few different ways to do this.
function sumArgs() {
let sum = 0;
for (let i = 0; i < arguments.length; i++) {
sum += arguments[i];
}
return sum;
}
const result = sumArgs(1, 2, 3, 4, 5);
Or you can use the rest operator to get the arguments as an array:
function sumArgs(...args) {
let sum = 0;
args.forEach((arg) => {
sum += arg;
});
return sum;
}
const result = sumArgs(1, 2, 3, 4, 5);
Or you can use Array.from
to convert the arguments to an array:
function sumArgs() {
let sum = 0;
Array.from(arguments).forEach((arg) => {
sum += arg;
});
return sum;
}
const result = sumArgs(1, 2, 3, 4, 5);