rendezvous with cassidoo logo

rendezvous with cassidoo

Archives
Sponsor
April 13, 2026

🧑‍🚀 "We will always choose Earth. We will always choose each other." - Christina Koch

Hey friends!

I hope you've had a good week! Mine has been very jet lagged (I flew back from Korea this week), but also very full of wonderful people and work to keep me busy.

Was this forwarded to you? You can subscribe here!


Web links of the week

How I remember link and image Markdown syntax
Wind Waker JS
Moving Railway's Frontend Off Next.js
The Git Commands I Run Before Reading Any Code


Something that interested me this week

This is a talk-heavy month! Last weekend (I didn't talk about it as much in the last issue because it was this newsletter's anniversary), I gave a few talks in Seoul, South Korea, and this weekend I spoke at Deep Dish Swift here in Chicago! I have one more big conference to go next week (Codemotion Madrid), and then I have a lull until Microsoft Build out in June.

I also did an interview on the Write That Blog! newsletter all about technical blogging! You should blog more.


Sponsor

One Command, Zero Friction: Developer Environments That Just Work

Wasting hours on "README archaeology" and broken dev setups? Flox delivers portable, reproducible environments that span the entire SDLC—from local dev to CI/CD and production.

It's powered by Nix, and built for everyone. Flox lets you manage 190,000+ packages without polluting your global system. Run flox activate to instantly layer your project’s dependencies, environment variables, and services.

Whether you’re onboarding teammates or switching between complex microservices, Flox works on every machine, every time.

Check out Flox →


Interview question of the week

Last week, I had you return combinations of Perrin numbers! Good work Thulasi, Donato, Amine, Toni, Paul, Ten, Nico, Christian, Alberto, Philip John, Ender, and the fine folks in the Ruby Users Forum!

This week's question:
You're building a pizza ordering system that enforces strict ingredient layering rules. Given an array of pizza layers (bottom to top) and a set of rules where each rule states that ingredient A must appear somewhere below ingredient B, write a function that determines whether the pizza is valid. If any rule is violated, return the pair [A, B] that was violated first (in the order the rules are given). If the pizza is valid, return true.

Examples:

const layers = ["dough", "sauce", "cheese", "pepperoni", "basil"];
const rules = [
  ["sauce", "cheese"],
  ["cheese", "pepperoni"],
  ["dough", "basil"],
];
const rules2 = [
  ["cheese", "pepperoni"],
  ["cheese", "sauce"], // "it's under the sauce"
];

validatePizza(layers, rules);
> true

validatePizza(layers, rules2);
> ['cheese', 'sauce']

(you can submit your answers by replying to this email with a link to your solution, or share on Bluesky, Twitter, LinkedIn, or Mastodon)


Cool things from around the internet

Artemis II - Mission Communications Archive
Most people can't juggle one ball
Early Efforts in Sticker Making
Typing test: CSTM80 keyboard with DSA Royal Navy and Gateron Yellow switches (video)


Joke

My friend Sid was a sudden ID theft victim.
Now they're just S!


That's all for now, folks! Have a great week. Be safe, make good choices, and dream bigger!

Special thanks to Ben, Kinetic Labs, and Marta for supporting my Patreon and this newsletter!

cassidoo

website | blog | github | bluesky | youtube | twitch | twitter | patreon | codepen | mastodon

Don't miss what's next. Subscribe to rendezvous with cassidoo:
Share this email:
Share on Twitter Share on LinkedIn Share on Hacker News Share on Reddit Share via email
GitHub
cassidoo.co
LinkedIn