Bytes

Today’s issue: Getting solicited by swingers, pure CSS parallax keeping me regular, and figuring out if Hilary Swank is actually hot.

Welcome to #492.


Eyeballs logo

The Main Thing

Tony Hawk playing Tony Hawk's Pro Skater

Holding on to what I am, pretending I'm Superman

Making Jam for the love of the game

Raphael Amorim just announced a new programming language called Jam, a compiled language built on top of the LLVM compiler and written in C++.

It’s pretty rare these days to see someone building a project like this from scratch (without AI), but Rapha is like the teenage Juggalo who showed up to roller skate at our elementary school’s fundraiser. He’s doing it for the love of the game.

The backstory:

Raphael used to be like us, a lowly React developer, but after building things like React TV, a custom renderer for React that let him target low-memory devices, he realized he needed more. So naturally, like many other disenfranchised JS devs, he started writing Rust.

This journey into the depths of hell led to him creating one of the more successful open-source Rust projects - Rio Terminal. The problem with Rust is that it has a steep learning curve, and getting quality contributions from normie devs is… unrealistic. So instead of opting for a language like Zig (which isn’t memory safe), he decided to build his own.

The language:

I may not be a programming language sommelier, but here are some of Jam’s ingredients that I am getting hints of.

  • Rust: Memory safety and high-performance systems programming.
  • Swift: Mutable value semantics and explicit mutation.
  • Zig: Explicit language design, a flat compiler architecture, and aggressive type interning.
  • Elixir: Pattern matching and expression-oriented programming.
  • JavaScript: Familiar, approachable syntax and developer ergonomics.

Bottom Line: Yes, Jam is brand new and has a long way to go before it can be used in production, but I appreciate that there are still devs out there pushing back against the sloppocalypse and shipping for the love of the game.


QA Wolf logo

Our Friends
(With Benefits)

Michael Cera wearing a banana costume

When your agent writes all the code and you're stuck doing QA

Map workflows, automate E2E tests, and ship faster with QA Wolf

QA Wolf’s AI agent maps and tests your app’s most complex user flows. It turns your prompts into real Playwright and Appium code that runs 12x faster and more reliably than other computer-use agents.

What sets their AI apart:

  • Maps 200+ workflows in minutes instead of weeks of manual planning.

  • Executes tests 12x faster than computer-use agents.

  • Runs entire suites 100% parallel with consistent results.

  • Produces open-source tests your team owns, with zero vendor lock-in.

Trusted by engineering teams at Drata, Salesloft, Figma, Metronome, and many others.

Rated 4.8/5 on G2.

Get started.


Spot the Bug logo

Spot the Bug

Spot the Bug – Sponsored by SurveyJS

They built an open-source form library for React, Angular, and Vue that integrates with any backend and has no usage limits.

function calculateAverage(arr) {
  let sum = 0;
  let count = 0;

  for (let i = 0; i < arr.length; i++) {
    if (arr[i] && typeof arr[i] === "number") {
      sum += arr[i];
      count++;
    }
  }

  return sum / count;
}

Cool Bits logo

Cool Bits

  1. David K Piano released XState Store v4. It’s type-safe, event-driven, and “really agent friendly.” FYI, “really friendly” usually means you’re about to get an invite to a swinger party.

  2. Dan Depietri wrote about how to parallax with pure CSS. Just remember, anything more than a half scoop of lax is asking for trouble.

  3. Orkes is hosting a webinar on how to architect durable runtimes for agents. Registration is free. [sponsored]

  4. Addy Osmani wrote about the Orchestration Tax, which is kinda like sales tax but for neurodivergent developers.

  5. Evan Bacon created a chat app template for Expo + Expo Router that runs on iOS, Android, and the web. He then proceeded to quit his job, which means this project is either next-level or terrible - you never can tell.

  6. Jenna Smith wrote about how the best loading states are no loading states.

  7. Your AI agent doesn’t know your pipelines, your security backlog, or what shipped last week. GitLab Orbit does. Watch it work at GitLab Transcend on June 10. Live demos, hands-on workshops, The Developer Show from London. Free to register. [sponsored]

  8. Zack Radisic has been wondering why tsgo uses so much memory, so he wrote a post that gets to the bottom of it.

  9. Amadeus Demarzi wrote about how The Pierre Computer Company renders diffs without making the browser grind to a complete halt. Naturally, this post enraged nerds on the orange site because they didn’t like where they put the text on their blog post.

  10. Depot’s Sherlock can now analyze your CI builds, break down your pipeline analytics, and open support tickets on your behalf – all without leaving your dashboard. [sponsored]

  11. Dennis Brotzky cataloged how Conductor was able to 2x its performance, in part by migrating from react-router to @tanstack/react-router.

  12. Joost de Valk made a site that tries to define the platform-agnostic specification of the technical features every decent website should have. It’s not unlike trying to define whether or not Hilary Swank is actually hot.


Spot the Bug logo

Spot the Bug: Solution

Sponsored by SurveyJS

function calculateAverage(arr) {
  let sum = 0;
  let count = 0;

  for (let i = 0; i < arr.length; i++) {
    if (arr[i] && typeof arr[i] === "number") {
      sum += arr[i];
      count++;
    }
  }

  return sum / count;
}

If we pass calculateAverage an array that contains a 0, because we’re filtering out falsy values (of which 0 is one), our calculation will be wrong.

To fix our function, we can get rid of our truthy check (arr[i]) and just verify the element is a number.

function calculateAverage(arr) {
  let sum = 0;
  let count = 0;

  for (let i = 0; i < arr.length; i++) {
    if (typeof arr[i] === "number") {
      sum += arr[i];
      count++;
    }
  }

  return sum / count;
}
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