<!DOCTYPE html>
<html>
<head>
<title>Bytes: Why Anthropic bought Bun</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="color-scheme" content="light dark">
<meta name="supported-color-schemes" content="light dark">
<link href="https://fonts.googleapis.com/css2?family=Fira+Mono&family=Outfit:wght@400;500;700;900&family=Paytone+One" rel="stylesheet">
<style>@media (prefers-color-scheme: dark) {
.email-wrapper {
color: #F9F4DA !important;
background-color: #0F0D0E !important;
}
hr {
border-color: #262422 !important;
}
mark {
background-color: #231F20 !important;
color: #F9F4DA !important;
}
pre {
background-color: #231F20 !important;
border: 1px solid #231F20 !important;
color: #F9F4DA !important;
}
.bg-alt {
background-color: #231F20 !important;
}
.unsubscribe-link {
color: #504C48 !important;
}
.token.punctuation {
color: #f9f4da !important;
}
}
@media screen and (min-width: 600px) {
.mobile-break {
display: none;
}
}</style>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<table class="email-wrapper" border="0" cellspacing="0" width="100%" style="background-color: #FFF; border-collapse: collapse; color: #231F20; font-family: Outfit, sans-serif; font-size: 16px; width: 100%;"><tbody><tr>
<td style="border-collapse: collapse !important; word-break: normal;"></td>
<td width="600px" style="border-collapse: collapse !important; width: 600px; word-break: normal;"><div style="max-width:600px;padding-top:80px">
<div style="text-align:center"><img width="600" style="max-width: 100%; padding-bottom: 40px;" src="https://bytes.dev/images/bytes-banner-rounded.png" alt="Bytes"></div>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;"><strong style="font-weight: 600;">Today’s issue:</strong> 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.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">Welcome to <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/e0hph0u744zd09t8/aHR0cHM6Ly9ieXRlcy5kZXYvYXJjaGl2ZXMvNDQ1" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481600">#445</a>.</p>
<hr style="border: 0; border-bottom: 5px solid; border-color: #f5f5f5; margin-bottom: 100px; margin-top: 100px;">
<div style="text-align:center;margin-bottom:36px">
<img width="80" src="https://bytes.dev/images/content/eyes.png" alt="Eyeballs logo" style="max-width: 100%;"><h2 style="font-family: Paytone One, sans-serif; font-size: 28px; margin-top: 10px; text-transform: uppercase;">The Main Thing</h2>
</div>
<div class="bg-alt" style="background-color: #f5f5f5; border-radius: 16px; margin-bottom: 40px; max-width: 100%; padding: 24px; padding-bottom: 12px;">
<img src="https://bytes.dev/images/content/raven-wave.jpg" alt="That's so Raven waving flirtatiously" width="600" style="border-radius: 5px; max-width: 100%;"><p style="font-family: Outfit, sans-serif; font-size: 15px; font-style: italic; line-height: 1; margin: 0; padding-bottom: 4px; padding-left: 24px; padding-right: 24px; padding-top: 10px; text-align: center;">Me to all the AI labs looking for JavaScript newsletters<!-- --> </p>
</div>
<h3 style="font-size: 24px; margin-bottom: 0; padding-left: 24px; padding-right: 24px;">Why Anthropic bought Bun</h3>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">We probably should’ve seen this coming after Jarred Sumner spent the last few months tweeting <em>suspiciously positive</em> things about Claude Code – but even though I’ve predicted seven of the last three OSS acquisitions, I’m just as shocked by <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/7qh7h2u9zzexokuz/aHR0cHM6Ly9idW4uY29tL2Jsb2cvYnVuLWpvaW5zLWFudGhyb3BpYw==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481601">yesterday’s announcement</a> as everyone else.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">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.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;"><strong style="font-weight: 600;">Why Anthropic wants this:</strong> 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 <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/owhkhwuwooe0r6cv/aHR0cHM6Ly93d3cuYW50aHJvcGljLmNvbS9uZXdzL2FudGhyb3BpYy1hY3F1aXJlcy1idW4tYXMtY2xhdWRlLWNvZGUtcmVhY2hlcy11c2QxYi1taWxlc3RvbmU=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481602">$1 billion in run rate revenue in six months</a>, Anthropic really doesn’t want it to break – so it makes sense to bring Bun in house.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">But beyond the insurance, acquiring Bun also gives Anthropic:</p>
<ul>
<li>Direct control over the infrastructure powering all of their AI coding products</li>
<li>Jarred & team shaping Bun around Anthropic’s roadmap, while also making Claude Code faster and smaller</li>
<li>A faster, more predictable foundation for agent-generated code</li>
</ul>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;"><strong style="font-weight: 600;">Why Bun wants this:</strong> 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.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;"><strong style="font-weight: 600;">Bottom Line:</strong> 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.</p>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border-collapse: collapse; margin-top: 40px; text-align: center;"><tbody><tr><td style="border-collapse: collapse !important; padding-top: 12px; word-break: normal;">
<a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/z2hgh7uewwzm37bp/aHR0cHM6Ly9mYWNlYm9vay5jb20vc2hhcmVyL3NoYXJlci5waHA_dT1odHRwcyUzQSUyRiUyRmJ5dGVzLmRldiUyRmFyY2hpdmVzJTJGNDQ1" rel="noopener" style="color: #12b5e5; font-weight: 600; padding-left: 5px; text-decoration: none;" target="_blank" url-id="1811481603"><img alt="" style="display: inline-block; max-width: 100%; width: 32px;" width="25" src="https://bytes.dev/images/fb-share-icon.png"></a><a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/p8hehqu4xxepz5hq/aHR0cHM6Ly93d3cubGlua2VkaW4uY29tL3NoYXJpbmcvc2hhcmUtb2Zmc2l0ZS8_dXJsPWh0dHBzJTNBJTJGJTJGYnl0ZXMuZGV2JTJGYXJjaGl2ZXMlMkY0NDU=" rel="noopener" style="color: #12b5e5; font-weight: 600; padding-left: 5px; text-decoration: none;" target="_blank" url-id="1811481604"><img alt="" style="display: inline-block; max-width: 100%; width: 32px;" width="25" src="https://bytes.dev/images/li-share-icon.png"></a><a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/x0hph3ue33m4wlu5/aHR0cHM6Ly90d2l0dGVyLmNvbS9pbnRlbnQvdHdlZXQvP3RleHQ9SXQlMjB0dXJucyUyMG91dCUyMHlvdSUyMGRvbiUyN3QlMjBuZWVkJTIwYSUyMGJ1c2luZXNzJTIwbW9kZWwlMjBpZiUyMHlvdSUyMGNhbiUyMGp1c3QlMjBidWlsZCUyMHlvdXIlMjB3YXklMjBpbnRvJTIwYmVjb21pbmclMjBhbiUyMGV4aXN0ZW50aWFsJTIwZGVwZW5kZW5jeSUyMGZvciUyMG9uZSUyMG9mJTIwdGhlJTIwZmFzdGVzdC1ncm93aW5nJTIwcHJvZHVjdHMlMjBvZiUyMGFsbCUyMHRpbWUuJnVybD1odHRwcyUzQSUyRiUyRmJ5dGVzLmRldiUyRmFyY2hpdmVzJTJGNDQ1" rel="noopener" style="color: #12b5e5; font-weight: 600; padding-left: 5px; text-decoration: none;" target="_blank" url-id="1811481605"><img alt="" style="display: inline-block; max-width: 100%; width: 32px;" width="25" src="https://bytes.dev/images/tw-share-icon.png"></a><a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/6qhehouloo4372fo/bWFpbHRvOj9ib2R5PVRob3VnaHQlMjB5b3UlMjdkJTIwbG92ZSUyMHRoaXMlMjB3ZWVrJTI3cyUyMEJ5dGVzJTBBLS0tJTBBSXQlMjB0dXJucyUyMG91dCUyMHlvdSUyMGRvbiUyN3QlMjBuZWVkJTIwYSUyMGJ1c2luZXNzJTIwbW9kZWwlMjBpZiUyMHlvdSUyMGNhbiUyMGp1c3QlMjBidWlsZCUyMHlvdXIlMjB3YXklMjBpbnRvJTIwYmVjb21pbmclMjBhbiUyMGV4aXN0ZW50aWFsJTIwZGVwZW5kZW5jeSUyMGZvciUyMG9uZSUyMG9mJTIwdGhlJTIwZmFzdGVzdC1ncm93aW5nJTIwcHJvZHVjdHMlMjBvZiUyMGFsbCUyMHRpbWUuJTBBaHR0cHMlM0ElMkYlMkZieXRlcy5kZXYlMkZhcmNoaXZlcyUyRjQ0NSZzdWJqZWN0PVlvdSUyMGxpa2UlMjBjb3JuYnJlYWQlM0Y=" rel="noopener" style="color: #12b5e5; font-weight: 600; padding-left: 5px; text-decoration: none;" target="_blank" url-id="1811481606"><img alt="" style="display: inline-block; max-width: 100%; width: 32px;" width="25" src="https://bytes.dev/images/em-share-icon.png"></a>
</td></tr></tbody></table>
<hr style="border: 0; border-bottom: 5px solid; border-color: #f5f5f5; margin-bottom: 100px; margin-top: 100px;">
<div style="text-align:center;margin-bottom:36px">
<img width="150" src="https://bytes.dev/images/content/qa-wolf-logo.png" alt="QA Wolf logo" style="max-width: 100%;"><h2 style="font-family: Paytone One, sans-serif; font-size: 28px; margin-top: 10px; text-transform: uppercase;"><span>Our Friends <br class="mobile-break">(With Benefits)</span></h2>
</div>
<div class="bg-alt" style="background-color: #f5f5f5; border-radius: 16px; margin-bottom: 40px; max-width: 100%; padding: 24px; padding-bottom: 12px;">
<img src="https://bytes.dev/images/content/eric-binoculars.jpg" alt="Eric Andre holding old-fashioned binoculars" width="600" style="border-radius: 5px; max-width: 100%;"><p style="font-family: Outfit, sans-serif; font-size: 15px; font-style: italic; line-height: 1; margin: 0; padding-bottom: 4px; padding-left: 24px; padding-right: 24px; padding-top: 10px; text-align: center;">Watching your team wait around for two hours before they can deploy<!-- --> </p>
</div>
<h3 style="font-size: 24px; margin-bottom: 0; padding-left: 24px; padding-right: 24px;"><a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/kkhmh2unmmpol8cl/aHR0cHM6Ly93d3cucWF3b2xmLmNvbS8_dXRtX2NhbXBhaWduPUFDUV9BbGxfRXZlbnQlMjBSZWdpc3RyYXRpb25zX19OZXdzbGV0dGVyQXVkaWVuY2VfLV9OZXdzbGV0dGVyX0Zhc3RlclJlbGVhc2VzV2l0aEFJXzIwMjUxMjAyLU5vbmVfRXhwZXJpbWVudC1GQUxTRSZ1dG1fY29udGVudD1GYXN0ZXJSZWxlYXNlc1dpdGhBSV9UcnlUaGVGcmVlUGVyc29uYWxpemVkRGVtb0ZvcllvdXJUZWFtX05vbmVfSGVhZGxpbmUlM0FIZWxwWW91clRlYW1TaGlwRmFzdGVyV2l0aEFJSW4yMDI2RnJlZURlbW9fX19fTmV3c2xldHRlci1QcmltYXJ5UGxhY2VtZW50XzIwMjUxMjAyX3YxXyZ1dG1fbWVkaXVtPW5ld3NsZXR0ZXImdXRtX3NvdXJjZT1ieXRlcyZ1dG1fdGVybT1oZWFkbGluZS1IZWxwWW91clRlYW1TaGlwRmFzdGVyV2l0aEFJSW4yMDI2RnJlZURlbW8=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481607">Help your team ship faster with AI in 2026 – free demo</a></h3>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">If you want to help your team actually ship faster next year, you should book a <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/58hvh8ug77w4mmc6/aHR0cHM6Ly93d3cucWF3b2xmLmNvbS8_dXRtX2NhbXBhaWduPUFDUV9BbGxfRXZlbnQlMjBSZWdpc3RyYXRpb25zX19OZXdzbGV0dGVyQXVkaWVuY2VfLV9OZXdzbGV0dGVyX0Zhc3RlclJlbGVhc2VzV2l0aEFJXzIwMjUxMjAyLU5vbmVfRXhwZXJpbWVudC1GQUxTRSZ1dG1fY29udGVudD1GYXN0ZXJSZWxlYXNlc1dpdGhBSV9UcnlUaGVGcmVlUGVyc29uYWxpemVkRGVtb0ZvcllvdXJUZWFtX05vbmVfSGVhZGxpbmUlM0FIZWxwWW91clRlYW1TaGlwRmFzdGVyV2l0aEFJSW4yMDI2RnJlZURlbW9fX19fTmV3c2xldHRlci1QcmltYXJ5UGxhY2VtZW50XzIwMjUxMjAyX3YxXyZ1dG1fbWVkaXVtPW5ld3NsZXR0ZXImdXRtX3NvdXJjZT1ieXRlcyZ1dG1fdGVybT1ib2R5LUJvb2tBRnJlZURlbW8=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481608">free demo</a> with QA Wolf.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">Their AI-native testing service saved Meow Wolf <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/25h2h9u3ddxq23f3/aHR0cHM6Ly93d3cucWF3b2xmLmNvbS9jYXNlLXN0dWRpZXMvcWEtd29sZi1wdXRzLXRoZS1tYWdpYy1pbi1tZW93LXdvbGZzLW1vYmlsZS10ZXN0aW5nP3V0bV9jYW1wYWlnbj1BQ1FfQWxsX0V2ZW50JTIwUmVnaXN0cmF0aW9uc19fTmV3c2xldHRlckF1ZGllbmNlXy1fTmV3c2xldHRlcl9GYXN0ZXJSZWxlYXNlc1dpdGhBSV8yMDI1MTIwMi1Ob25lX0V4cGVyaW1lbnQtRkFMU0UmdXRtX2NvbnRlbnQ9RmFzdGVyUmVsZWFzZXNXaXRoQUlfVHJ5VGhlRnJlZVBlcnNvbmFsaXplZERlbW9Gb3JZb3VyVGVhbV9Ob25lX0hlYWRsaW5lJTNBSGVscFlvdXJUZWFtU2hpcEZhc3RlcldpdGhBSUluMjAyNkZyZWVEZW1vX19fX05ld3NsZXR0ZXItUHJpbWFyeVBsYWNlbWVudF8yMDI1MTIwMl92MV8mdXRtX21lZGl1bT1uZXdzbGV0dGVyJnV0bV9zb3VyY2U9Ynl0ZXMmdXRtX3Rlcm09Ym9keS00MFBsdXNIb3Vyc09mVGVzdGluZ1RpbWVFYWNoUmVsZWFzZUN5Y2xl" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481609">40+ hours of testing time each release cycle</a> – and they’ve had similar results with hundreds of other customers.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">Here’s how it works:</p>
<ul>
<li>They create and maintain automated Playwright tests to cover your entire app</li>
<li>They provide unlimited parallel test runs on their infrastructure, so you get pass/fail results in under 3 min</li>
<li>You get <strong style="font-weight: 600;">zero flakes</strong>, because every failed test is reviewed by their team of human QA engineers</li>
</ul>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;"><a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/qvh8h8udnn3lroul/aHR0cHM6Ly93d3cucWF3b2xmLmNvbT91dG1fY2FtcGFpZ249QUNRX0FsbF9FdmVudCUyMFJlZ2lzdHJhdGlvbnNfX05ld3NsZXR0ZXJBdWRpZW5jZV8tX05ld3NsZXR0ZXJfRmFzdGVyUmVsZWFzZXNXaXRoQUlfMjAyNTEyMDItTm9uZV9FeHBlcmltZW50LUZBTFNFJnV0bV9jb250ZW50PUZhc3RlclJlbGVhc2VzV2l0aEFJX1RyeVRoZUZyZWVQZXJzb25hbGl6ZWREZW1vRm9yWW91clRlYW1fTm9uZV9IZWFkbGluZSUzQUhlbHBZb3VyVGVhbVNoaXBGYXN0ZXJXaXRoQUlJbjIwMjZGcmVlRGVtb19fX19OZXdzbGV0dGVyLVByaW1hcnlQbGFjZW1lbnRfMjAyNTEyMDJfdjFfJnV0bV9tZWRpdW09bmV3c2xldHRlciZ1dG1fc291cmNlPWJ5dGVzJnV0bV90ZXJtPWN0YS1HZXRBUGVyc29uYWxpemVkRGVtb0ZvcllvdXJUZWFt" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481610">Get a personalized demo for your team</a> – and see how they help their average customer do 5x more releases.</p>
<hr style="border: 0; border-bottom: 5px solid; border-color: #f5f5f5; margin-bottom: 100px; margin-top: 100px;">
<div style="text-align:center;margin-bottom:36px">
<img width="110" src="https://bytes.dev/images/content/spot-the-bug.png" alt="Spot the Bug logo" style="max-width: 100%;"><h2 style="font-family: Paytone One, sans-serif; font-size: 28px; margin-top: 10px; text-transform: uppercase;">Spot the Bug</h2>
<div class="section-presenter" style="margin-bottom:50px;margin-top:15px">
<h4 style="font-size: 19px; margin-bottom: 0; padding-left: 24px; padding-right: 24px;">Sponsored by <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/g3hnhwumpp203pbr/aHR0cHM6Ly9ibG9nLnNlbnRyeS5pby9zZWVyLWNhbi1ub3ctdHJpZ2dlci1jdXJzb3ItYWdlbnRzLXRvLWZpeC15b3VyLWJ1Z3MvP3V0bV9jYW1wYWlnbj1zZWVyLWZ5MjZxNC1jdXJzb3JhZ2VudHMmdXRtX2NvbnRlbnQ9bmV3c2xldHRlci1jdXJzb3ItYmxvZy1sZWFybm1vcmUmdXRtX21lZGl1bT1wYWlkLWNvbW11bml0eSZ1dG1fc291cmNlPWJ5dGVz" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481611">Sentry</a>
</h4>
<p style="font-family: Outfit, sans-serif; font-size: 16px; line-height: 1.5; margin-top: 5px; padding-left: 24px; padding-right: 24px;"><em>They just launched a <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/g3hnhwumpp203pbr/aHR0cHM6Ly9ibG9nLnNlbnRyeS5pby9zZWVyLWNhbi1ub3ctdHJpZ2dlci1jdXJzb3ItYWdlbnRzLXRvLWZpeC15b3VyLWJ1Z3MvP3V0bV9jYW1wYWlnbj1zZWVyLWZ5MjZxNC1jdXJzb3JhZ2VudHMmdXRtX2NvbnRlbnQ9bmV3c2xldHRlci1jdXJzb3ItYmxvZy1sZWFybm1vcmUmdXRtX21lZGl1bT1wYWlkLWNvbW11bml0eSZ1dG1fc291cmNlPWJ5dGVz" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481611">new Cursor integration</a> 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.</em></p>
</div>
</div>
<pre class="language-js" style="background-color: #f9f9f9; border: 1px solid #f9f9f9; border-radius: 8px; color: #231F20; overflow: auto; padding: 24px;"><code class="language-js" style="font-size: 14px;"><span class="token keyword" style="color: #f38ba3; font-size: 14px;">function</span> <span class="token function" style="color: #9d7dce; font-size: 14px;">getRandomChoice</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token parameter" style="color: #f38ba3; font-size: 14px;">array</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">return</span> array<span class="token punctuation" style="color: #231F20; font-size: 14px;">[</span>Math<span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span><span class="token function" style="color: #9d7dce; font-size: 14px;">floor</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span>Math<span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span><span class="token function" style="color: #9d7dce; font-size: 14px;">random</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token operator" style="color: #12b5e5; font-size: 14px;">*</span> array<span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>length<span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token operator" style="color: #12b5e5; font-size: 14px;">+</span> <span class="token number" style="color: #fcba28; font-size: 14px;">1</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">]</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token function" style="color: #9d7dce; font-size: 14px;">getRandomChoice</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">[</span><span class="token string" style="color: #f99157; font-size: 14px;">"jersey mikes"</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">,</span> <span class="token string" style="color: #f99157; font-size: 14px;">"firehouse"</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">,</span> <span class="token string" style="color: #f99157; font-size: 14px;">"subway"</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">]</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span>
</code></pre>
<hr style="border: 0; border-bottom: 5px solid; border-color: #f5f5f5; margin-bottom: 100px; margin-top: 100px;">
<div style="text-align:center;margin-bottom:36px">
<img width="110" src="https://bytes.dev/images/content/cool-bits.png" alt="Cool Bits logo" style="max-width: 100%;"><h2 style="font-family: Paytone One, sans-serif; font-size: 28px; margin-top: 10px; text-transform: uppercase;">Cool Bits</h2>
</div>
<ol>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Sir Tanner Linsley, Lord of the Stack, wrote about <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/9qhzhdud998epnf9/aHR0cHM6Ly90YW5zdGFjay5jb20vYmxvZy90YW5zdGFjay0yLXllYXJz" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481612">The State of TanStack after two years of full-time OSS work</a>. Congratulations in advance on being acquired by OpenAI.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/3ohphdu3zz8k7xar/aHR0cHM6Ly9wcmV0dGllci5pby9ibG9nLzIwMjUvMTEvMjcvMy43LjA=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481613">Prettier 3.7</a> comes with improved Typescript formatting and new APIs for plugin developers.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/n2hohquvrr4l3ma6/aHR0cHM6Ly93d3cuZGF0YWRvZ2hxLmNvbS9yZXNvdXJjZXMvZnJvbnRlbmQtZGV2ZWxvcGVyLWtpdC8_dXRtX2NhbXBhaWduPWRnLWNvcmVwbGF0Zm9ybS13dy1mcm9udGVuZC1kZXYta2l0LWJ5dGVzJnV0bV9tZWRpdW09bmV3c2xldHRlciZ1dG1fc291cmNlPWJ5dGVzZGV2" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481614">The Front-end Developer Kit</a> 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]</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Steven Vaughan-Nichols wrote about <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/48hvh7umgg37rlfx/aHR0cHM6Ly93d3cuemRuZXQuY29tL2FydGljbGUvd2h5LXBlb3BsZS1rZWVwLWZsb2NraW5nLXRvLWxpbnV4LWluLTIwMjUtYW5kLWl0cy1ub3QtanVzdC10by1lc2NhcGUtd2luZG93cy8=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481615">why people are flocking to Linux in 2025</a>, which is probably a recession indicator.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">ChatGPT just turned three, and Tega Brain celebrated by creating a new browser extension called <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/wnh2h6uqggdlw6s7/aHR0cHM6Ly90ZWdhYnJhaW4uY29tL1Nsb3AtRXZhZGVy" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481616">Slop Evader</a> – which only returns content created before Gippity’s first public release on Nov 30, 2022.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">You already tuned your AI agents with .cursorrules, CLAUDE.md, Agents.md, and Copilot-instructions. <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/reh8h9umxxpo0ru2/aHR0cHM6Ly9jb2RlcmFiYml0LmxpbmsvYnl0ZXM=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481617">CodeRabbit reads those guideline files</a> and uses them to enforce code quality in every PR review, so comments line up with the rules you have already written. [sponsored]</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Jacob Filipp made a tutorial on designing <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/08hwhgu2zz4pd6sl/aHR0cHM6Ly9qYWNvYmZpbGlwcC5jb20vdmljdG9yaWFuLWxpbmUv" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481618">elements of identical width</a> through the medium of Victorian-style lines for the Web. How posh.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Stephanie Eckles explained <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/8ghqh3uo9987lmuk/aHR0cHM6Ly9odG1oZWxsLmRldi9hZHZlbnRjYWxlbmRhci8yMDI1LzEv" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481619">how to tackle layering issues</a> caused by HTML’s new Popover API.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/vqh3hmuogg6qpwig/aHR0cHM6Ly93d3cucm9ja2V0Lm5ldy8_dXRtX2NhbXBhaWduPTNyZGRlY3NlY29uZGFyeSZ1dG1fbWVkaXVtPWJ5dGVzJnV0bV9zb3VyY2U9bmV3c2xldHRlcg==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481620">Rocket</a> is pioneering Vibe Solutioning, turning prompts or Figma designs into production-ready web and mobile apps. Use <code style="font-size: 14px;">/</code> and <code style="font-size: 14px;">@</code> commands to execute tasks with precision and context, making repetitive workflows fast, accurate, and effortless. [sponsored]</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Kerrick Long shared some <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/l2heh6ulrrpd3dh6/aHR0cHM6Ly9rZXJyaWNrLmJsb2cvYXJ0aWNsZXMvMjAyNS9jb25mZXNzaW9ucy1vZi1hLXNvZnR3YXJlLWRldmVsb3Blci1uby1tb3JlLXNlbGYtY2Vuc29yc2hpcC8=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481621">confessions of a software developer</a>. It’s a lot like <em>Confessions of a Shopaholic,</em> but with less credit card debt (we hope).</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Manish Hatwalne wrote about <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/dphehmue55x203um/aHR0cHM6Ly93d3cuZG9ja2VyLmNvbS9ibG9nL2RvLXlvdS1yZWFsbHktbmVlZC1taWNyb3NlcnZpY2VzLw==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481623">why you might not need microservices</a> on the Docker blog.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">‘Tis the season of advent calendars. Eric Wastl’s <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/e0hph0u744zd79u8/aHR0cHM6Ly9hZHZlbnRvZmNvZGUuY29tLzIwMjUvYWJvdXQ=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481624">Advent of Code</a> is back with a new series of puzzles you can solve with any language, <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/7qh7h2u9zzex9kaz/aHR0cHM6Ly9hZHZlbnQuc3ZlbHRlc29jaWV0eS5kZXYvMjAyNQ==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481625">Advent of Svelte</a> 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.</p>
</li>
</ol>
<hr style="border: 0; border-bottom: 5px solid; border-color: #f5f5f5; margin-bottom: 100px; margin-top: 100px;">
<div style="text-align:center;margin-bottom:36px">
<img width="110" src="https://bytes.dev/images/content/spot-the-bug.png" alt="Spot the Bug logo" style="max-width: 100%;"><h2 style="font-family: Paytone One, sans-serif; font-size: 28px; margin-top: 10px; text-transform: uppercase;">Spot the Bug: Solution</h2>
<div class="section-presenter" style="margin-bottom:50px;margin-top:15px"><h4 style="font-size: 19px; margin-bottom: 0; padding-left: 24px; padding-right: 24px;">Sponsored by <a href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/g3hnhwumpp203pbr/aHR0cHM6Ly9ibG9nLnNlbnRyeS5pby9zZWVyLWNhbi1ub3ctdHJpZ2dlci1jdXJzb3ItYWdlbnRzLXRvLWZpeC15b3VyLWJ1Z3MvP3V0bV9jYW1wYWlnbj1zZWVyLWZ5MjZxNC1jdXJzb3JhZ2VudHMmdXRtX2NvbnRlbnQ9bmV3c2xldHRlci1jdXJzb3ItYmxvZy1sZWFybm1vcmUmdXRtX21lZGl1bT1wYWlkLWNvbW11bml0eSZ1dG1fc291cmNlPWJ5dGVz" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1811481611">Sentry</a>
</h4></div>
</div>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">By adding <code style="font-size: 14px;">1</code> to the result of <code style="font-size: 14px;">Math.random() * array.length</code>, it will always be greater than <code style="font-size: 14px;">1</code> which means the first element in the array (<code style="font-size: 14px;">jersey mikes</code>) will never be chosen.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">You’ll either want to put <code style="font-size: 14px;">subway</code> first so it never gets chosen (cause it’s gross) or remove the <code style="font-size: 14px;">+ 1</code></p>
<pre class="language-js" style="background-color: #f9f9f9; border: 1px solid #f9f9f9; border-radius: 8px; color: #231F20; overflow: auto; padding: 24px;"><code class="language-js" style="font-size: 14px;"><span class="token keyword" style="color: #f38ba3; font-size: 14px;">function</span> <span class="token function" style="color: #9d7dce; font-size: 14px;">getRandomChoice</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token parameter" style="color: #f38ba3; font-size: 14px;">array</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">return</span> array<span class="token punctuation" style="color: #231F20; font-size: 14px;">[</span>Math<span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span><span class="token function" style="color: #9d7dce; font-size: 14px;">floor</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span>Math<span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span><span class="token function" style="color: #9d7dce; font-size: 14px;">random</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token operator" style="color: #12b5e5; font-size: 14px;">*</span> array<span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>length<span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">]</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token function" style="color: #9d7dce; font-size: 14px;">getRandomChoice</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">[</span><span class="token string" style="color: #f99157; font-size: 14px;">"jersey mikes"</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">,</span> <span class="token string" style="color: #f99157; font-size: 14px;">"firehouse"</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">,</span> <span class="token string" style="color: #f99157; font-size: 14px;">"subway"</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">]</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span>
</code></pre>
<div style="text-align:center;padding-bottom:80px;padding-top:80px">
<div class="bg-alt" style="background-color: #f5f5f5; border-radius: 16px; margin-bottom: 40px; padding: 24px;"><div style="margin-top:-40px">
<img src="https://bytes.dev/images/bytes-icon.png" alt="Bytes" width="55px" style="max-width: 100%; width: 55px;"><h5 style="font-size:18px;font-weight:400;margin-bottom:24px">Want us to say nice things <br> about your company?</h5>
<div style="margin-bottom:16px"><a style="background-color: #FCBA28; border: 1px solid #231F20; border-radius: 100px; color: #231F20; font-size: 14px; font-weight: 600; padding: 8px 14px; text-decoration: none;" href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/owhkhwuwooe0w6sv/aHR0cHM6Ly9ieXRlcy5kZXYvYWR2ZXJ0aXNl" url-id="1811481626">Sponsor Bytes</a></div>
<div style="margin-bottom:20px"><a style="color: #FCBA28; font-size: 14px; font-weight: 600; text-decoration: underline;" href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/z2hgh7uewwzme7cp/aHR0cHM6Ly9ieXRlcy5kZXYvc2hhcmU=" url-id="1811481627">or share it</a></div>
<p style="font-family: Outfit, sans-serif; font-size: 14px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">Built with ❤️ by<!-- --> <a style="color: #ed203d; font-weight: 600; text-decoration: underline;" href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/p8hehqu4xxep45sq/aHR0cHM6Ly91aS5kZXY=" url-id="1811481628">ui.dev</a></p>
</div></div>
<p style="font-family: Outfit, sans-serif; font-size: 14px; line-height: 1.5; opacity: 0.5; padding-left: 24px; padding-right: 24px;">50 W Broadway Ste 333 PMB 51647 Salt Lake City, Utah 84101</p>
<div style="font-family:Papyrus, cursive"><a class="unsubscribe-link" href="https://click.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3/x0hph3ue33m4ela5/aHR0cHM6Ly9ieXRlcy5kZXYvdW5zdWJzY3JpYmU=" style="color: #9B9890;" url-id="1811481629">Unsubscribe from Bytes</a></div>
</div>
</div></td>
<td style="border-collapse: collapse !important; word-break: normal;"></td>
</tr></tbody></table>
<span style="display: none"><a href="https://unsubscribe.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3">Unsubscribe</a></span>
<!-- -->
<img src="https://open.kit-mail6.com/27uepe0gddioh8n8pnrc3hgzn2w44hghm2v3" alt="">
</body>
</html>