Why Anthropic bought Bun

Issue #445.December 3, 2025.2 Minute read.
Bytes

Today’s issue: Linux usage as a recession indicator, new ways to avoid slop, and the 18th-Century German Lutherans who are smiling upon the Svelte Society in 2025.

Welcome to #445.


Eyeballs logo

The Main Thing

That's so Raven waving flirtatiously

Me to all the AI labs looking for JavaScript newsletters

Why Anthropic bought Bun

We probably should’ve seen this coming after Jarred Sumner spent the last few months tweeting suspiciously positive things about Claude Code – but even though I’ve predicted seven of the last three OSS acquisitions, I’m just as shocked by yesterday’s announcement as everyone else.

But why exactly did this marriage happen between a $350-billion AI lab and… one very fast JavaScript runtime? Let’s take a closer look at both sides of the aisle.

Why Anthropic wants this: Claude Code already ships to millions of developers as a Bun executable, which means “if Bun breaks, Claude Code breaks,” according to Jarred. And considering CC just hit $1 billion in run rate revenue in six months, Anthropic really doesn’t want it to break – so it makes sense to bring Bun in house.

But beyond the insurance, acquiring Bun also gives Anthropic:

  • Direct control over the infrastructure powering all of their AI coding products
  • Jarred & team shaping Bun around Anthropic’s roadmap, while also making Claude Code faster and smaller
  • A faster, more predictable foundation for agent-generated code

Why Bun wants this: They make $0. And now, instead of gritting their teeth and pretending to be excited about building yet another cloud platform, they get to spend all their time making Bun better and shipping even faster. Bun also gets long-term stability, a war chest to hire more Zig engineers (all 12 of them), and freedom from the VC hamster wheel. Oh, and they’re rich now.

Bottom Line: Sorry Clayton Christensen, but it turns out you don’t need a business model if you can just build your way into becoming an existential dependency for one of the fastest-growing products of all time.


QA Wolf logo

Our Friends
(With Benefits)

Eric Andre holding old-fashioned binoculars

Watching your team wait around for two hours before they can deploy

Help your team ship faster with AI in 2026 – free demo

If you want to help your team actually ship faster next year, you should book a free demo with QA Wolf.

Their AI-native testing service saved Meow Wolf 40+ hours of testing time each release cycle – and they’ve had similar results with hundreds of other customers.

Here’s how it works:

  • They create and maintain automated Playwright tests to cover your entire app
  • They provide unlimited parallel test runs on their infrastructure, so you get pass/fail results in under 3 min
  • You get zero flakes, because every failed test is reviewed by their team of human QA engineers

Get a personalized demo for your team – and see how they help their average customer do 5x more releases.


Spot the Bug logo

Spot the Bug

Sponsored by Sentry

They just launched a new Cursor integration that lets Seer, Sentry’s AI debugger, pass bugs to Cursor, which then writes a fix and creates a PR for you – using all of Sentry’s context.

function getRandomChoice (array) {
  return array[Math.floor((Math.random() * array.length) + 1)]
}

getRandomChoice(["jersey mikes", "firehouse", "subway"])

Cool Bits logo

Cool Bits

  1. Sir Tanner Linsley, Lord of the Stack, wrote about The State of TanStack after two years of full-time OSS work. Congratulations in advance on being acquired by OpenAI.

  2. Prettier 3.7 comes with improved Typescript formatting and new APIs for plugin developers.

  3. The Front-end Developer Kit gives you instant access to Datadog’s best practices guide for front-end testing strategies, a solutions brief showing how to catch and resolve issues proactively, and more. [sponsored]

  4. Steven Vaughan-Nichols wrote about why people are flocking to Linux in 2025, which is probably a recession indicator.

  5. ChatGPT just turned three, and Tega Brain celebrated by creating a new browser extension called Slop Evader – which only returns content created before Gippity’s first public release on Nov 30, 2022.

  6. You already tuned your AI agents with .cursorrules, CLAUDE.md, Agents.md, and Copilot-instructions. CodeRabbit reads those guideline files and uses them to enforce code quality in every PR review, so comments line up with the rules you have already written. [sponsored]

  7. Jacob Filipp made a tutorial on designing elements of identical width through the medium of Victorian-style lines for the Web. How posh.

  8. Stephanie Eckles explained how to tackle layering issues caused by HTML’s new Popover API.

  9. Rocket is pioneering Vibe Solutioning, turning prompts or Figma designs into production-ready web and mobile apps. Use / and @ commands to execute tasks with precision and context, making repetitive workflows fast, accurate, and effortless. [sponsored]

  10. Kerrick Long shared some confessions of a software developer. It’s a lot like Confessions of a Shopaholic, but with less credit card debt (we hope).

  11. Manish Hatwalne wrote about why you might not need microservices on the Docker blog.

  12. ‘Tis the season of advent calendars. Eric Wastl’s Advent of Code is back with a new series of puzzles you can solve with any language, Advent of Svelte gives 24 days of Svelte tips, and my wife just opened her Bonne Maman advent calendar full of mini jams and jellies. If only those 19th Century German Lutherans could see how far we’ve come with their invention.


Spot the Bug logo

Spot the Bug: Solution

Sponsored by Sentry

By adding 1 to the result of Math.random() * array.length, it will always be greater than 1 which means the first element in the array (jersey mikes) will never be chosen.

You’ll either want to put subway first so it never gets chosen (cause it’s gross) or remove the + 1

function getRandomChoice (array) {
  return array[Math.floor((Math.random() * array.length))]
}

getRandomChoice(["jersey mikes", "firehouse", "subway"])