janka's Avatar

janka

@owoce.bsky.social

i like computers she/her πŸ³οΈβ€πŸŒˆ πŸ“berlin (and warsaw sometimes) https://twitter.com/lubieowoce https://github.com/lubieowoce

443 Followers  |  169 Following  |  235 Posts  |  Joined: 24.04.2023  |  1.7605

Latest posts by owoce.bsky.social on Bluesky

(feeling vulnerable might delete later etc)

07.07.2025 00:02 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

also just very destabilizing like. mentally. everything sucks

06.07.2025 23:49 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

ugh us->eu jetlag is so upsetting

06.07.2025 23:48 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

(although "static shell" is not quite accurate -- if it contains a cache, the shell will become ISR and will revalidate as often as needed to satisfy the specified staleTime)

02.06.2025 02:08 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

the other important part is that in PPR + dynamicIO it serves as a marker that says "this can be part of the static shell" (if the staleTime is long enough), don't create a dynamic hole here". so it's kind of a lot of things in one

02.06.2025 02:06 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

not sure wym by "something more official", but happy to answer questions

02.06.2025 02:03 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

yeah the transform itself isn't that involved, in next we're repurposing most of the "use server" logic for it

cacheLife is important, one of the goals of this is to not just cache things server side but also inform the client-side router about how long stuff is allowed to be stale

02.06.2025 02:02 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

ok balteus time! kinda tough but seems beatable if i get my execution together and capitalize on openings better

31.05.2025 17:39 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

rn i'm playing it like the monster hunter of fighting robots, we'll see when i get to the dark souls part

31.05.2025 14:09 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

she's purble

31.05.2025 13:26 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

armored core is fun! i feel like i kinda suck at it rn but: big robot go pew pew whoosh slash slash

31.05.2025 13:19 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 2    πŸ“Œ 1

tbh the sheer amount of work hendrik has been doing recently makes the rest of the team like occasional weekend contributors

18.05.2025 13:43 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

also iirc all witness testimony has to be in a form of Q&A right? so you basically *have* to do this if you want the jury to hear about something

12.05.2025 20:06 β€” πŸ‘ 6    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

rn i'm using a library that does some of the parsing but it's incomplete so i'm gonna have to roll my own probably

10.05.2025 00:02 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

i'm making a tool to turn jsdoc into typescript because... because

10.05.2025 00:02 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

parsing type annotations from jsdoc comments is a pain in the ass

09.05.2025 14:11 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

nice! feel free to DM if you need any help with RSC internals or want to know how next.js does something with RSC

08.05.2025 21:06 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

also i still have some ST keybinds ported to vscode bc i don't like changing my keyboard habits

07.05.2025 14:26 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

yeah i was ride or die ST for a long time, vscode beat it on js tooling tho

i still use it for viewing big files (fast) and as my $GIT_EDITOR (vscode takes forever to open)

07.05.2025 14:25 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

tbh i'm pretty sure i've bought one before, but i can't find it anywhere. it might've died with my old laptop :(

07.05.2025 13:06 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

just bought a sublime text license, AMA

(and sublime merge, it's good)

07.05.2025 13:05 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

you gotta hand it to billie eilish, she makes some salient points about lunch

05.05.2025 11:42 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

reset the "days since" counter

03.05.2025 18:17 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

i found out that the pope died from a "meets jd vance, dies of cringe" meme

23.04.2025 22:51 β€” πŸ‘ 6    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

if you wanna check the exact outputs, search the repo for "$$cache__" (we have a bunch of snapshot tests). but transform-wise it's basically just

$$cache__(...)

instead of

registerServerReference(...)

23.04.2025 10:58 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

function outputs are serialized and stored as RSC payloads (of course). we run an isolated renderToReadableStream when creating a entry to minimize chances of cache poisoning. then the wrapper deserializes it back to have sth useful to render

23.04.2025 10:54 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

it re-uses a lot of the server action transform (for hoisting/bound args purposes). then each cached func is wrapped with a wrapper that creates a cache key from the args, checks a cache for existing entries, saves some stuff into an ALS, etc

23.04.2025 10:47 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

(i'm currently wrestling with a lot of cruft in the server actions impl so yeah i know sth about technical debt lol)

22.04.2025 16:40 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

yeah it's gonna be so good when all the new stuff is finished

22.04.2025 16:39 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

also generally one of the main points of 'use cache' is to be able to granularly know if we can skip sending something to the client (bc we know that what the client has is current/acceptably-stale)

22.04.2025 16:36 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

@owoce is following 20 prominent accounts