Bytes

Today’s issue: Being absorbed into the type realm, titillating Hacker News, and fending off Sama’s advances.

Welcome to #470.


Eyeballs logo

The Main Thing

Old lady staring into the void

When they finally fix JavaScript dates just in time for AI to write all your code

Waiting and dating

If it feels like you’ve been hearing about the Temporal API for the past decade, it’s because you have. But salvation is finally nigh, because it just hit Stage 4 this week and will officially be added to ES2026 this summer.

But how did JavaScript dates get so screwed up, and why did it take 30 years to fix? Let’s dive in.

Quick history lesson: When Brendan Eich went on his 10-day bender to build the world’s most popular programming language back in 1995, he had to cut a few corners. One of those was to copy-paste Java’s Date implementation directly into JavaScript to make it look more like Java.

Sounds reasonable, but turned out to be very horrible.

Date is mutable, has hazardous behavior, and doesn’t work well with timezones and daylight savings (same here, brother). It was painful enough that full libraries like Moment.js sprung up as workarounds, even though they were also imperfect and very heavy.

So back in 2017, the initial Temporal proposal was submitted to fix dates once and for all at the JavaScript language level.

So why has it taken 9 more years to ship?

  • It’s huge – Temporal brings more changes to JavaScript than any other proposal in JS history. It’s a ton of work for developers to implement, and it has needed to be refactored multiple times over the years

  • It’s hard for browser engines – Every engine had to implement it independently from scratch, which was a huge undertaking. Not every team had the bandwidth to prioritize it, which led to long delays for everyone to reach Stage 3.

  • A shared Rust library saved the day – In 2024, Google and Boa collaborated on temporal_rs, a Rust library that both V8 and Boa engines can build on. This decouples the implementation from engine context, and provided a shared foundation that helped get Temporal across the line.

It’s taken a ton of work, but it was all worth it to get immutable, DST-aware JavaScript dates, along with some very helpful date type constructors.

Bottom Line: I just hope Codex appreciates this as much as I do 🥲.


QA Wolf logo

Our Friends
(With Benefits)

Dwight Schrute playing the recorder by a dumpster

My test suite might be flaky, but it's also slow

AI sped up PRs. Don’t let QA slow the ship.

Testing is the #1 reason releases get delayed.

On Thu, Mar 26 @ 12 PM PT, QA Wolf co-founder & CEO Jon Perl is hosting a free, no-fluff live workshop showing how QA Wolf’s AI actually works—running the full E2E lifecycle end-to-end.

You’ll see:

  • Mapping AI autonomously explore your app and map workflows
  • Automation AI generate deterministic, code-based tests
  • 100% parallel runs across web, iOS, and Android—results in minutes

Reserve your spot here


Cool Bits logo

Cool Bits

  1. Vite 8.0 just launched with the new Rolldown bundler, along with a few surprising twists we’ll break down next week.

  2. The Chrome team wrote about when to use WebMCP and MCP. I thought we had all agreed that the answer to this question was never?

  3. SerpApi gives you simple search engine APIs to scrape Google, Amazon, and 40+ other services - returning real-time, structured JSON. Check out the free plan to get 250 searches per month. Used by companies like Nvidia, Adobe, and Ahrefs. [sponsored]

  4. RedwoodSDK 1.0 just launched and is going all-in on Cloudflare.

  5. Jökull Sólberg wrote about absorbing unknown into the Type realm. I was absorbed into the Type realm one night when walking home in the snow, and the things I saw can never be unseen.

  6. Mike Cann made a video testing out the top 9 AI code review bots on a React+Vite+Convex app. He said he wanted to see which ones could “spot the bugs”, and I’ve already instructed my lawyer to send a cease-and-desist. [sponsored]

  7. Sarah Gooding broke down why Node.js is moving to an annual release schedule.

  8. TanStack AI shipped generation hooks, a unified set of framework-agnostic hooks that give you first-class primitives for non-chat AI tasks. Sam Altman doesn’t understand what that means but he’s already offered them $75 million for it.

  9. EAS Workflows is mobile CI/CD purpose-built for React Native. It knows when you actually need a native build vs. a quick JS update, so you skip builds you don’t need. And it runs alongside your existing pipeline, so you don’t have to rip out GitHub Actions. [sponsored]

  10. Nitro v3 Beta just launched with Vite 8 + Rolldown integration, a new npm package, and the ability to take full control of your server.ts entry file for custom framework routing.

  11. Andrew Nesbitt pushed just used Postgres to its limit.

  12. Right off the back of his recent 30k line PR, Matt Lugg broke down Zig’s type resolution redesign, which simplifies the Zig compiler’s internal logic. HN hasn’t been this titilated since they first watched Angelina Jolie scream “Hack the planet!!” back in 1995.

Bytes
Want us to say nice things
about your company?

Built with ❤️ by Fireship

50 W Broadway Ste 333 PMB 51647 Salt Lake City, Utah 84101

Unsubscribe