Aubin 🇵🇸
atraversay.bsky.social
Aubin 🇵🇸
@atraversay.bsky.social
Frontend developer in Tokyo.
Focused on accessibility, performance, maintainable & sustainable software.
Craft beer & specialty coffee afficionado. Humanist
Reposted by Aubin 🇵🇸
Improved React 19 Transition handling coming to React Router soon! the flag was merged yesterday so it' in our nightly release snow, should land in a stable in the next week or so.

reactrouter.com/dev/explanat...
React Transitions (dev branch)
reactrouter.com
November 21, 2025 at 7:52 PM
Reposted by Aubin 🇵🇸
October 27, 2025 at 5:53 PM
Reposted by Aubin 🇵🇸
Perplexity is using stealth, undeclared crawlers to evade website no-crawl directives blog.cloudflare.com/perplexity-i... - ignoring your expressed lack of consent to misuse your bandwidth and steal your data. Classy.
Perplexity is using stealth, undeclared crawlers to evade website no-crawl directives
Perplexity is repeatedly modifying their user agent and changing IPs and ASNs to hide their crawling activity, in direct conflict with explicit no-crawl preferences expressed by websites.
blog.cloudflare.com
August 5, 2025 at 10:12 AM
Reposted by Aubin 🇵🇸
In our engineering book club at Vanta, we’re currently reading through _Learning Domain-Driven Design_ by Vlad Khononov, and in last week’s discussion I was forcefully reminded of the original definition of “tech debt” by Ward Cunningham: how your *knowledge* outstrips what’s actually in the code.
August 14, 2025 at 1:35 AM
I'm still struggling with this btw.
My @nextjs.org is all up-to-date, yet the devtools says the Timeline profiler is "only available for React >18", and exploring components or profiling is a festival of errors making it a terrible experience. I could not find anything in issues.
I feel an under-discussed negative aspect of Next.js is how it makes React Devtools error and crash all the time, that makes debugging and profiling very hard, or almost impossible. React's devtools overall have been very unstable for years IME, it's a very frustrating aspect of the framework.
August 11, 2025 at 2:52 AM
Reposted by Aubin 🇵🇸
Remember how @gitlab.com got 2.6x faster builds and ~100x less memory consumption when using @rolldown.rs?

Now, with all the native plugins enabled, they are down to 22s. That is ~7x faster than Vite, ~half the time compared to using native resolver before and 43x faster than their webpack build 🔥
ICYMI: GitLab saw their memory consumption reduced by 100x by using the @rolldown.rs powered @vite.dev version (in addition to a 2.6x speedup) 🤯
August 8, 2025 at 3:59 PM
Reposted by Aubin 🇵🇸
One of my favourite CoverDrop details: out-of-band verification of the trusted organization key which signs the entire key hierarchy. Its digest is included in the imprint of every printed Guardian newspaper, removing the need to trust CAs 🔑🗞️ more details: www.coverdrop.org
July 29, 2025 at 10:45 AM
Reposted by Aubin 🇵🇸
Because most client devices are now battery powered some (or all) of the time, we "get" more CPU every year, but when that only turns into more cheap, slow devices being sold, *the average speed can regress*.

And that's exactly what happened over the past decade.
July 18, 2025 at 3:26 AM
Wow #Github PR review's new UI is *not* a good experience. Things jumping everywhere, buttons have no immediate feedback (necessary when they still have high latency), disabling whitespace still refreshes the whole page but now with a CLS festival.
July 2, 2025 at 2:30 AM
I feel an under-discussed negative aspect of Next.js is how it makes React Devtools error and crash all the time, that makes debugging and profiling very hard, or almost impossible. React's devtools overall have been very unstable for years IME, it's a very frustrating aspect of the framework.
July 1, 2025 at 11:59 PM
Reposted by Aubin 🇵🇸
Rolling the ladder up behind us
The newest post on Xe Iaso's blog
xeiaso.net
June 20, 2025 at 3:50 PM
Reposted by Aubin 🇵🇸
Darklang has just made some big announcements:

- a new company, Darklang Inc
- shutting down the VC-backed startup, Dark Inc
- open sourcing Darklang
- new product direction

🧵👇 1/5
June 16, 2025 at 4:45 PM
Got confused by React Router's useBlocker API again today. I guess that's a good example of how a few bad decisions ruin an API. Using more than 2 `useBlocker` on a page is disallowed and will show a warning but... the warning doesn't tell you why.
June 16, 2025 at 1:07 PM
Reposted by Aubin 🇵🇸
📢 New video and a big announcement!

briefs.video/videos/intro...
Introducing: Webbed Sites
A video from Webbed Briefs
briefs.video
May 28, 2025 at 10:58 AM
Reposted by Aubin 🇵🇸
React Router RSC Preview is now available

This brings support for all of React's API in a way that is incrementally adoptable by the millions of React Router apps in production today, but also feels great for a greenfield React Router app

remix.run/blog/rsc-pre...
React Router RSC Preview
React Router's preview support for React Server Components is now available
remix.run
May 16, 2025 at 3:23 PM
Adobe couln't buy Figma, so Figma made its best to become Adobe
danabra.mov dan @danabra.mov · May 10
can’t exactly blame it because figma started as a tool detached from the medium. the designers are into it but it never accurately conveyed the target. figma is following and encouraging the “designer handoff” waterfall model that sucks holistically. poor output is just a consequence of that choice.
May 11, 2025 at 1:20 PM
Reposted by Aubin 🇵🇸
why haven't design apps realized trying to copy photoshop's "save for web" from the early 2000s is a metric ton of BS?

what's been released is embarrassing. & that's not meant to be a critique on the people who did the work. but rather, the person(s) that said "yeah, this is good enough. publish!"
May 9, 2025 at 10:46 PM
Reposted by Aubin 🇵🇸
if a prototype isn't accessible, then it is likely not something that can be tested by people with disabilities.

and if that's the case, any UX decisions made based on such a prototype will be biased away from inclusive design / UX decisions.
May 10, 2025 at 3:12 PM
Reposted by Aubin 🇵🇸
Some might say I'm being too harsh on Figma but I actually think I'm not being harsh *enough.*

For better or worse, Figma is the industry-default design tool. When they select their priorities, it communicates to designers *what they should consider important* both as a role model and as a tool.
We're time traveling back to 1997 today, when WISYWIG editors were all the rage. In the decades since, web technology has clawed its way from that primitive state with semantic HTML that made accessibility possible and let content drive appearance rather than vice-versa.

Then Figma blew it all up.
Figma Dreamweaver
The dream of being able to generate working websites will remain out of reach until UX redefines its practice around semantic structure rather than layouts.
productpicnic.beehiiv.com
May 9, 2025 at 10:25 PM
Reposted by Aubin 🇵🇸
For all they shout about DEI, if a woman or PoC did any of this chat leaking nonsense, they would cancel us forever.

Where are the arguments about “competency” now?
March 26, 2025 at 3:11 PM
Setup vitest in a project today, really impressed by what the browser mode has become, it's fast and full featured. Unfortunately programming is hard and I can't just test Remix routes in it, I guess due to environment issues I'm failing to debug. Javascript is a constant struggle 🫠
February 26, 2025 at 12:04 PM
Reposted by Aubin 🇵🇸
Dark patterns, literally 🤪
February 17, 2025 at 8:14 PM
Frontend work is sometimes surprisingly hard (pareto, etc). But trying to work with a blackbox k8s platform is hard and not fun at all.
As someone trying very hard to make my code fully-typed, the magic string incantations of yaml-based development is an endless source of frustration.
January 23, 2025 at 12:30 PM
Reposted by Aubin 🇵🇸
Today I Learnt

The difference between `@__PURE__` and `@__NO_SIDE_EFFECTS__`.

As @antfu.me said: "[`@__NO_SIDE_EFFECTS__`] is designed to solve that [distinguishing pure functions in user land] by moving the notation from end-user side to library authors".
December 26, 2024 at 5:57 AM
Reposted by Aubin 🇵🇸
To share files or folders between jobs on GitHub Actions, cache them using the current run ID as the key.

This allows you to restore the cache in dependent jobs, which is much faster than uploading and downloading artifacts.
November 12, 2024 at 12:05 PM