Sign in

Gabriel Valfridsson

@gabbev.bsky.social
11 followers 37 following 50 posts

Open to new opportunities

PostsRepliesMedia
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
Thank you for trying to bring back a more civil tone. I think we all share some fault in turning up the heat yesterday 😅 Ryan has expressed genuine curiosity about this solution and I'm curious as well even if skeptical.
010
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
You have no idea if I've read your docs or seen your talk and just jump into a conversation not involving you being super aggressive.
110
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
I'm inquiring about what is built and what failed with it to understand what mistakes real users of your library make to form an opinion about how likely I think it is that other users would make similar mistakes.
110
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
Firefox on Windows mostly but also tried chrome seeing similar issues there.
110
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
Dude you are the one who set the tone here. I am discussing a specific demo a guy posted with him and you drop in shouting at me to go read your docs.
110
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
So I can't try it without paying and I can't read the code. Exactly how do you think this is convincing anyone of anything?
100
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
The sheet regularly fail to synchronize things with no indication to the user that anything went wrong or any recovery. The kanban crashes if you try to do things while other actions are in flight, completely freezing the app.
110
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
I trust that your users have read your guides before creating these demos they choose to share with me to show off how good datastar is. Them still failing to build competent apps doesn't inspire confidence that datastar makes building such apps easy.
200
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
I'm just trying out the examples shared with me. They are claimed to show datastar can do things while failing spectacularly at doing it.
200
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
Is it open source?
100
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
Who is asking for an app that isn't a broken sluggish mess? Users seem to tolerate a lot these days but I think we can do better.
200
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
No one is disagreeing that source of truth should be server here. That doesn't mean it has to be a sluggish broken mess.
110
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
bsky.app/profile/gabb...
100
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
Deleting columns just works like 50% of the time and the codebase is a complete mess of unmaintainable string concatenation. What exactly are you trying to show off here?
110
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
You keep arguing that most apps don't need client side state and maybe that is true to some degree but the kanban demo is supposed to be a proxy for an app where you need that level of interactivity where waiting on network on every interaction isn't acceptable.
310
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
"You can easily add more clientside state" dismisses the entire problem. What Ryan C is saying is that datastar doesn't provide solutions for apps where you need client state for the app to be good. Ryan Fs roasts clearly show how this client state is non trivial to get correct.
100
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
I'm fully open to the bug being a simple mistake, things happen. Understanding what the issue was is a good data point in understanding how much the framework helps you get these kinds of things right.
110
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
Also if it wasn't clear from my original answer dragging a card and then clicking the edit pen on another card while still in flight crashed the entire thing and that is obviously not great.
100
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
x.com/ryanflorence...
x.com
Ryan Florence (@ryanflorence) on X
Next + tRPC + RSC Trellix Clone has entered the chat! Grade: C- ❌Found a major bug immediately just trying to use the app like a normal person ❌ found minor bugs when trying to stress it out ✅ other...
120
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
Trello as a demo comes from a challenge by Ryan Florence where he roasted peoples implementations seeing specifically how interacting with them broke in various ways when network was slow. There isn't a clear rule set but not waiting for network on every action feels like table stakes.
310
Gabriel Valfridsson @gabbev.bsky.social · 12/09/2026
Try slowing down the network and interacting with it and see what happens. No feedback that anything is in flight and if i drag a card and then try to edit another before that is done the entire app freezes. I do think Ryan is genuinely open to be proven wrong here but this isn't it.
331
Gabriel Valfridsson @gabbev.bsky.social · 19/08/2026
I think that part of the issue is that the change might be larger than the react-query team have the appetite for but can't speak for them and am not affiliated in any way. They probably also lost that appetite by hitting all these limitations react forces on them along the way.
020
Gabriel Valfridsson @gabbev.bsky.social · 19/08/2026
But I think useSuspenseQuery already choose to simply not honor that option
100
Gabriel Valfridsson @gabbev.bsky.social · 19/08/2026
There are also issues with things like refetchOnMount etc. It would require a mounting query to firstly know that it is the first attempt it is rendered but also it would need to be able to notify other observers that it is mounting during render. Both things aren't really possible in react.
110
Gabriel Valfridsson @gabbev.bsky.social · 19/08/2026
Yeah then there is no real blocker I think. You could have support to get something from the query cache using query keys it is mostly some of the observer local options that can't work.
100
Gabriel Valfridsson @gabbev.bsky.social · 19/08/2026
No keepPreviousData, no select, no placeholderData, etc. Not saying it is impossible it just would have to be a promise that resolve to the value in the cache instead of a promise that can be affected by these local options. And the cache would also need the next, prev thing you are talking about.
110
Gabriel Valfridsson @gabbev.bsky.social · 19/08/2026
Just saying that that wouldn't be a fix within react-query. It would be disabling these observer local options when you use promise and force the user to do that logic in other places. At that point a useQueryPromise api probably makes more sense that a property on the result from useQuery.
110
Gabriel Valfridsson @gabbev.bsky.social · 19/08/2026
Doing it in render only works after use() and doing it in fetch would affect all observers of that key while these options might be different per observer.
100
Gabriel Valfridsson @gabbev.bsky.social · 19/08/2026
I investigated this some and commented on the original issue and react-queries solution was to reuse unresolved promises in cases and that leads to weird issues where things resolve with the wrong value and can never fully avoid the issues linked.
100
Gabriel Valfridsson @gabbev.bsky.social · 19/08/2026
There is a lot of options in react query where you customize the result from the hook instead of just fetching something from the cache. So the promise is kind of forced to get created in the hook. Fate has built their api with this in mind from the ground up.
210
Reposted by Gabriel Valfridsson
Ryan Carniato @ryansolid.bsky.social · 13/08/2026
It's finally here! So many thoughts/feelings I couldn't fit them in the blog post but its crazy to think after so much work this is only the beginning.
2786
Gabriel Valfridsson @gabbev.bsky.social · 14/03/2026
Very similar to other places where function coloring is annoying.
110
Gabriel Valfridsson @gabbev.bsky.social · 14/03/2026
Maybe you are right. Inner takes async signal if it has its own loading otherwise suspending would just bubble up anyway. It might only be annoying once you start writing generic, inversion of control, utility style components where you need to pass signals through to something else user defined.
100
Gabriel Valfridsson @gabbev.bsky.social · 14/03/2026
Something like this solid2.netlify.app#solidjs-repl...
100
Gabriel Valfridsson @gabbev.bsky.social · 14/03/2026
I think this would remove one of the coolest benefits of Solids async reactivity where suspending is fine grained. Any component taking sync props would force you to suspend right there while solid only suspend where the value is actually eventually used in a render effect.
100
Reposted by Gabriel Valfridsson
Joe Savona @en-js.bsky.social · 11/03/2026
We’re pretty close to having an initial Rust port of React Compiler. My approach was to iterate on the plan document (write it manually, have the agent expand, edit, repeat). Then try to run it, see what goes wrong, revert back to the plan, tweak the plan, repeat.
49812
Reposted by Gabriel Valfridsson
SolidJS @solidjs.com · 03/03/2026
The <Suspense> is over. Solid 2.0 Beta is now released (next tag on npm). 🎉 github.com/solidjs/soli...
github.com
Release v2.0.0 Beta - The <Suspense> is Over · solidjs/solid
I know you all probably weren't expecting this announcement next. But after reviewing the roadmap, we spent so long iterating in the Experimental phase, most of the goalposts within Alpha don't app...
515734
Gabriel Valfridsson @gabbev.bsky.social · 23/01/2026
To clarify. This demo that has two copies of the app entangle both too much and too little. It entangle between SubApps but not in the same SubApp. codepen.io/GabbeV/pen/B...
codepen.io
Untitled
...
100
Reposted by Gabriel Valfridsson
Ricky @ricky.fm · 22/01/2026
Update: github.com/facebook/rea...
github.com
[flags] Add `enableParallelTransitions` by rickhanlonii · Pull Request #35392 · facebook/react
Overview Adds a feature flag enableParallelTransitions to experiment with engantling transitions less often. Motivation Currently we over-entangle transition lanes. It&#39;s a common misunderstandi...
121
Gabriel Valfridsson @gabbev.bsky.social · 22/01/2026
That is great news! Are you also looking at the partial work representing intermediate state the comment is talking about? My demo both felt like it entangled too much and too little at the same time.
120
Gabriel Valfridsson @gabbev.bsky.social · 19/12/2025
I agree with that comment that the current heuristics might need tweaking. If duplicate the App in my original demo you get entanglement if you click one button in each App, but not if you click both buttons in the same app. Seems backwards from what you would want to me. codepen.io/GabbeV/pen/B...
codepen.io
Untitled
...
110
Gabriel Valfridsson @gabbev.bsky.social · 18/12/2025
Here is an example that is closer to what I'm actually trying to build. I expected a revalidation started while the increment was still pending to entangle, making them commit together. codepen.io/GabbeV/pen/Y...
codepen.io
Untitled
...
120
Gabriel Valfridsson @gabbev.bsky.social · 18/12/2025
Not quite sure what you mean. If I press both buttons the result doesn't go from 1 1 to 2 2 it also shows the intermediate 1 2 or 2 1.
000
Gabriel Valfridsson @gabbev.bsky.social · 15/12/2025
Still curious about this if the CVE stuff has calmed down. Experimenting some more with this today and it feels very unintuitive. For a while I thought it was a load vs action thing but then I found scenarios where seemingly unrelated loads entangled while those in the linked codepen don't.
110
Gabriel Valfridsson @gabbev.bsky.social · 08/12/2025
Gave up on day 4. Can't seem to get away from ts(2589) "Type instantiation is excessively deep and possibly infinite." This is as far as i got: www.typescriptlang.org/play/#code/C...
000
Gabriel Valfridsson @gabbev.bsky.social · 04/12/2025
Day 3: www.typescriptlang.org/play/#code/C...
typescriptlang.org
TS Playground - An online editor for exploring TypeScript and JavaScript
The Playground lets you write TypeScript or JavaScript online in a safe and sharable way.
100
Gabriel Valfridsson @gabbev.bsky.social · 03/12/2025
Day 2: www.typescriptlang.org/play/#code/C...
typescriptlang.org
TS Playground - An online editor for exploring TypeScript and JavaScript
The Playground lets you write TypeScript or JavaScript online in a safe and sharable way.
100
Gabriel Valfridsson @gabbev.bsky.social · 01/12/2025
Here is the solution to day 1 bsky.app/profile/gabb...
010
Gabriel Valfridsson @gabbev.bsky.social · 01/12/2025
Advent of Code 2025 day 1 solved using only the type system of TypeScript. www.typescriptlang.org/play/#code/C...
typescriptlang.org
TS Playground - An online editor for exploring TypeScript and JavaScript
The Playground lets you write TypeScript or JavaScript online in a safe and sharable way.
130
Gabriel Valfridsson @gabbev.bsky.social · 30/11/2025
Just do the regular AOC in the typescript type system. My record is getting to day 5 before giving up.
140
typescriptlang.org
TS Playground - An online editor for exploring TypeScript and JavaScript
The Playground lets you write TypeScript or JavaScript online in a safe and sharable way.