moving my brain dumping thread here. I think there’s two issues at play w.r.t. perf
I tried putting it behind useDeferredValue, but it didn't do anything as it seems like the scroll handler has an unstable identity for no good reason
1. List component rerendering.
we need to change a scrollview prop on iOS. I already scoped this to iOS-only, so it’s not a perf concern on Android, but it’s got a massive over-render problem. changing this one tiny prop causes every list item to rerender, which is ridiculous
1 2Easy solution - take my existing useScrollsToTop hook, and put a useDeferredValue on it. therefore we can defer this nonsense until after the lightbox has finished rendering
alas no. List rerender anyway. Profiler blames onScroll, and I added logging and yeah it changes on that initial ctx change
1 2I’m pretty sure it’s just unstable, I.e. different identity on each render, which shouldn’t be the case - it’s not doing anything here! next step is to narrow down what’s causing it to change. Reanimated has some magical auto-dep-array stuff which is probably to blame - likely doesn’t mesh w/ RC
1 22. Slow on Android
Perf on Android is still unacceptable, especially for 2+ images. I have yet to dig in but I have speculation.
the animation gets triggered in a requestAnimationFrame. I’m guessing the main thread is getting locked up so it has to wait a really long time?
2 2Each time each image in the lightbox loads, it re-renders with its image dimensions. So we have 4 fairly heavy components (each image) rendering invisibly before the animation can begin, and each one re-renders as they load. maybe the animation is queued behind that whole process?
1 2what I will try is deferring rendering the other 3 images until after the animation is complete. they’re being prefetched already so it shouldn’t cause any functional changes?
1 1accidentally saw the slop vortex of someone else’s TikTok feed over their shoulder, day ruined
4 58up until claude was invented, all programming languages were typed languages (you had to type them in to the computer)
9 10 152thus the “untyped” language was invented (language that already lives in the computer already)
25repost
Have you ever considered that your PM is “vibe coding” you
I already reposted it 5 months ago but For You showed it to me and I want to repost it again
15whiteboard that says “Alice” and “Bob” on it a bunch of times - yep, they’re doing protocol design
The “boys” putting away some cans of their favorite brews, lemon white claw
computer science is when you write “Alice” and “Bob” and “Eve” on a whiteboard and the more times you write it, the more science the computer is
4 21 149claude: does tax_records.xlsx spark joy?
me: no
claude: okay! deleting it!
Task: Bash(rm -rf ~ /Documents/tax_records.xlsx)
2 5 106fix deployed, looks like it worked! everyone say "thank you claude"!
the plot thickens - new theory is that I think the subtitle files are accidentally being marked as a livestream
if true, the fix is really easy, so fingers crossed
the plot thickens - new theory is that I think the subtitle files are accidentally being marked as a livestream
if true, the fix is really easy, so fingers crossed
hey just want to chime in! I’m well aware of the bug and am making good progress on it. I’m hoping I’ll be able to get it fixed soon
(technical details: the slightly-too-long caption file appears to be corrupting the AVPlayer internal state)
claude haters must reckon with the fact that this bug would have basically gone unfixed forever without claude’s help
1 23