I wanted an app that would let me see my remaining Codex and GitHub Copilot usage quotas as easily as I can see my remaining battery life. Prompted Codex, went to the gym, came back to this. Nice.
Posts by arv
Amazing post. I hope web devs understand this as downstream of antitrust pressure on Apple re: iOS & other browsers.
@open-web-advocacy.org won the headcount Apple poured in since '20 because it allowed them to claim engagement w/o threatening the app store:
blog.gitbutler.com/the-great-cs...
This always makes me sad.
Fixing it requires that I update a bunch of upstream dependencies which I'm unlikely to do.
The Change — A recent change to CSS fixes this issue: position: sticky can now track the nearest scrolling container per axis.
A nine-year-old CSS spec issue has been resolved! 🎉
`position: sticky` now tracks the nearest scrolling container per axis. Want to stick an element to a scroll container AND the document? Soon possible.
Chromium only for now, but great to see this land!
https://www.bram.us/2026
A detailed digital illustration of a Casio F-91W digital watch on a dark background, showing the time 09:25:38 on Saturday the 4th. The watch features the classic black resin case and band with blue accent lines and the iconic WR (water resist) badge.
This is absolutely beautiful and very well done.
> Nothing you own is finished. Everything exists in a state of permanent incompletion, permanently needing.
https://www.terrygodier
However, if the string is a `SeqTwoByteString` and large it has to do a linear scan which of course is not so fast.
Anyone have any tricks up their sleeves to detect if a string is a a two byte string in O(1)?
This RegExp is O(1) if the string is `SeqOneByteString` 🎉
```js
const isOneByte = !/[^\x00-\xff]/.test(str);
```
We're officially one dot oh now 🎉
Zero to 1.0
After two years of work, 50+ releases, thousands of commits, and hundreds of bugfixes, we are officially declaring Zero stable and ready for production workloads.
zero.rocicorp.dev/docs/release...
@diabrowser.com bsky.app/profile/orpa...
Opensearch please.
@vite.dev 8
I need to figure this one out...
This will greatly simplify our tests!
♥️
Slide comparing manual vs automatic handling of fake timers in a Vitest test. Top-left code shows a test using fake timers manually: • vi.runAllTimersAsync() to flush framework internals (e.g. Angular sync) • vi.advanceTimersByTimeAsync(300) to handle debounce Annotations explain both steps are required and can slow tests. Bottom-left note explains that since Vitest 4.1.0, a “fast-forward” mode can automatically advance timers. Right side shows simplified code using: • vi.setTimerTickMode('nextTimerAsync') No manual timer flushing or advancing is needed. Footer includes author handle (@yjaaidi / @younesjd.dev) and a link to marmicode testing content.
Debounces, delays, intervals... they either break your tests or slow them down.
⏩ Since @vitest.dev 4.1.0, you can now "fast-forward" time in your tests with `nextTimerAsync` tick mode.
❤️ credit goes to Andrew Scott (@angular.dev team)
🧑🍳 recipe → cookbook.marmicode.io/angular/test...
Discord conversation where someone notes React's package size (171.6 kB) looks tiny compared to Vue (2.5 MB), then a reply points out that's because react-dom (7.3 MB) wasn't included — making the sizes more comparable.
I voted 🇫🇷🗽
❤️
Interesting. One "clean" API might be to export all the functions. It would require using `.call(this, ...)`. Not the most ergonomic but very standard compliant.
You would also need a way to create the "native" instance object.
Another master piece by @nolanlawson.com
nolanlawson.com/2026/02/18/y...
The passion of becoming a programmer really resonates with me.
Thank you Nolan.
Man customizable select is sooo cool! Modern CSS is another level of powerful.
svelte.dev/playground/8...
The shadow of the sun is long indeed.
I'm really sold on fine grained reactivity - all the way from your database (zero.rocicorp.dev) to your UI (zero.rocicorp.dev/docs/solidjs)
One thing that I'm a bit unclear on at this point is `update`. Based on the presentation all it did was rerender but what does it mean to rerender?
What about DOM state (selection, scroll position)?
What about JS state?
I'm also intrigued by the higher level events they designed. It looks really nice.
We did this in Closure Library but we didn't get it right and in the end it wasn't used much. Here is our "action" event.
github.com/google/closu...
I really like where @remix.run is going in v3. So much less magic and using the platform for its strength.
Disclaimer: I designed and implemented ES6, custom elements, shadow dom, some "modern" dom apis (classList, template element, append, remove...), making EventTarget concrete etc...
4 years ago today you passed away. I wish I could turn back time and come and rescue you.
Not exactly the same but @igalia.com has an RSS feed for keeping track of new features in browsers. bcd-watch.igalia.com
ZVM - Zero View Management
@aaronboodman.com introduced the incredible tech that enables the zerosync.dev sync engine to almost instantaneously update realtime queries.
Tony Blair saying the climate plan based on phasing out fossil fuels is doomed to fail
Tony Blair being lobbyist for Saudi oil
A story in two parts
X post by Timothy Snyder (@TimothyD ...), posted 6 hours ago. The post reads, "The people Attorney General Bondi is calling 'terrorists' have had no trial and no chance to defend them. We do not know they are. Ignoring the Constitution does not make us safe. It puts us all in peril."
I know this first hand. When I was a child, my entire community was branded as spies and sabateurs, justifying our internment inside barbed wire camps for years without due process, trial or charge.