Post B2igSDU4sWCMckj9do by woe2you@beige.party
(DIR) More posts by woe2you@beige.party
(DIR) Post #B2igCgtdkxRrDAHTHs by aral@mastodon.ar.al
2026-01-27T19:16:42Z
0 likes, 0 repeats
So guess who wrote a convoluted date comparison conditional instead of using `Temporal.ZonedDateTime.compare()` like an intelligent human being and ended up hitting an edge case where future scheduled calls started getting cleaned off the database instead of past ones?I’ll give you a hint: has two thumbs and his name is Aral 🤦♂️Anyway, just restored things from yesterday’s backup and sent a direct message to everyone scheduled for a Gaza Verified video verification call apologising for the confusion and explaining what happened.Moral of the story: stick to the Temporal API and use its methods if you’re implementing anything even remotely non-trivial involving dates, especially if there are timezones involved. (You can use a Temporal API polyfill in Node.js – I’ve been using temporal-polyfill.)Now I’m going to expire for the evening.💕#GazaVerified #TemporalAPI #calendars #dates #timezones
(DIR) Post #B2igSDU4sWCMckj9do by woe2you@beige.party
2026-01-27T19:19:34Z
0 likes, 0 repeats
@aral Isn't timezone handling #2 on the Do Not Roll Your Own list, right after cryptography?
(DIR) Post #B2ihBGebwJAxUE8VKC by aral@mastodon.ar.al
2026-01-27T19:27:34Z
0 likes, 0 repeats
@woe2you Oh, I didn’t roll my own (that’s why I was using the Temporal API, which is excellent). This was just one date comparison where past me clearly tried to be overly clever :)
(DIR) Post #B2ihfM7qA3ht8x9gJM by woe2you@beige.party
2026-01-27T19:30:50Z
0 likes, 0 repeats
@aral That guy is always causing problems. You should fire him and give his job to future-Aral. At least he's never committed anything broken.
(DIR) Post #B2ihpHLamV85DhJqd6 by aral@mastodon.ar.al
2026-01-27T19:32:55Z
0 likes, 0 repeats
@woe2you I know, right, what a dickhead :)