Warp wants it all

Issue #421.September 4, 2025.2 Minute read.
Bytes

Today’s issue: Squinting to see React Native 1.0, Vercel’s pledge of allegiance, and finding love without JavaScript.

Welcome to #421.


Eyeballs logo

The Main Thing

Kermit the frog staring down a bunch of cowboys

Me looking at all the AI tools that I don’t remember installing on my machine

Warp wants it all

As a two-time sheep-riding champion participant in the Oakley, Utah Kids’ Rodeo back in the ’90s, I feel qualified to say that building software in 2025 feels a lot like wrangling cattle – we’ve got endless tools, but figuring out how and when to use them all together is the real challenge.

Warp wants to tame that chaos, which is why they just launched Warp Code yesterday. It’s a new suite of features that merges their terminal and IDE into one environment designed to help you take AI-generated code “all the way from prompt to production.”

The clever part is that they don’t pretend agents can magically one-shot your spaghetti prompt into production-ready code. Instead, they built Warp Code around tight feedback loops – so you can plan, prompt, review, edit, test, and repeat without bouncing between five different platforms.

Here’s what that looks like:

  • Leaderboard champ – Warp agents rank #1 on Terminal-bench and #3 on SWE-bench Verified, and the entire Warp Code UI is built from the ground up for agentic coding.

  • Code reviews – A dedicated panel where you can diff, line-edit, and ask your agent to tweak things without hopping back and forth to GitHub every 5 minutes.

  • Lightweight editor – A native code editor comes with tabs, a file tree, syntax highlighting, and vim bindings, so you can jump in to make quick edits to your agent-generated code that’s 90% of the way there.

  • Project rules and commands – Each repo can define its own rules and agent profiles via a WARP.md file (plays nice with Claude.MD, Agents.MD, Cursor rules, etc.). It’s basically a dotfile for steering your agents on a per-project basis.

Bottom Line: The AI coding agent space is more crowded than the first-aid tent at a children’s rodeo (which I can confirm is also full of tears).

But if Warp can really become a true one-stop shop for shipping production-ready code with agents, they’ll have unlocked the Holy Grail. And with 700k developers already using it, they might just rope it in.


QA Wolf logo

Our Friends
(With Benefits)

People at NASA celebrating

When your team doesn't have to wait 90 minutes to deploy anymore

Speed up your team’s release cycles – with the power of AI

That’s exactly what QA Wolf has done for hundreds of companies, helping teams increase their releases by 5x and save 9 hours/week per engineer (on average).

And later this month, they’re leading a free workshop on How to choose the right AI tools for QA, based on the specific size and needs of your team.

Their Staff Engineering Lead, Yurij Mikhalevich will teach you:

  • The three main paradigms for AI-powered QA testing
  • The benefits and tradeoffs of each method
  • A practical framework to evaluate these tools and find the best fit for your team

RSVP for the workshop here – or get your own personalized demo for your team to see it in action.


Pop Quiz logo

Pop Quiz

Sponsored by Clerk

They just launched free trials in Clerk Billing, so you can easily give your users a risk-free preview of premium features.

What gets logged?

let sharedVariable = "initial";

setTimeout(() => {
  sharedVariable = "updated by first timeout";
}, 500);

setTimeout(() => {
  if (sharedVariable === "initial") {
    console.log("Shared variable not yet updated");
  } else {
    console.log("Shared variable was already updated");
  }
}, 500);

Cool Bits logo

Cool Bits

  1. Check out the Warp Code announcement post if you want a deeper dive on everything they just launched, without me trauma dumping about my youth rodeo career. You can also use code BYTES if you want to try a month of Warp Pro for just $1.

  2. React Native 1.0 is officially “on the horizon” – which sounds great, until you realize that the Earth is round 🙃.

  3. Nick Khami wrote about building SSR with Vite to create a custom replacement for getStaticProps.

  4. @convex-dev/agent is Convex’s new open source component for building AI agents with just TypeScript. [sponsored]

  5. Deno’s Fresh framework just released a v2.0 beta with Vite support, so you can now run Fresh as a Vite plugin with all that sweet Vitey goodness baked right in.

  6. Dimitri Mitropoulos wrote about stress testing Biome’s noFloatingPromises lint rule – which is like that one time I stress tested my heart by speed running a haunted house while on MDMA.

  7. Google just released EmbeddingGemma, an open embedding model designed to deliver high performance for on-device AI.

  8. Vercel just shared their Open SDK strategy to “articulate their commitment” to open source, community, portability, freedom of choice, democracy, America, world peace, Taylor Swift, and those weird little stamp tattoos that come in the Cracker Jacks box 🫡.

  9. Datadog created a free ebook called 5 ways to reduce container costs, and I’m 90% sure this isn’t a Pyrex vs. Tupperware debate. [sponsored]

  10. TkDodo wrote about deriving client state from server state.

  11. Lyra wrote an article called You no longer need JavaScript – unless you want to find romantic love and feel accepted by your peers at some point in your life.

  12. Jake Archibald wrote about making XML human-readable without XSLT, which he calls an “esoteric corner of the web.” But if you could see my Chrome history, you would know that I was born in the dark esoteric, molded by it.


Pop Quiz logo

Pop Quiz: Answer

Sponsored by Clerk

What gets logged?

let sharedVariable = "initial";

setTimeout(() => {
  sharedVariable = "updated by first timeout";
}, 500);

setTimeout(() => {
  if (sharedVariable === "initial") {
    console.log("Shared variable not yet updated");
  } else {
    console.log("Shared variable was already updated");
  }
}, 500);

In JavaScript, the execution order for setTimeout callbacks with identical delays aren’t deterministic. This means we aren’t guaranteed that the first timeout callback will execute first (which can be the cause of some nasty and difficult to reproduce bugs). In reality it’s almost always what you’d expect (“Shared variable was already updated”), but it’s best not to rely on that behavior.

Here’s a famous talk by Philip Roberts to learn more about the event loop and how JavaScript handles asynchronous code.