Post

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.

For sure! Can you clarify which part isn't it? Not trying to be rude, want to be explicit about what we're agreeing or disagreeing on. The feedback on the kanban board example could be improved, agree. How does a SPA handle the slow network roundtrip better here? Not following that part.

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.

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.

For sure! Again, I don't think that particular bug with this particular demo is representative of the point I'm trying to make (this was a tiny random demo I found off hand and there are multiple other demos here in this thread).

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.

I agree it's useful to discuss issues in approaches. There are countless examples of poorly architected mainstream SPAs that fail though and where undisciplined teams break the UX with them (I say as someone who works on them every day and has for the past decade+).

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.

Datastar isn't about no client side state. We have for example the fastest signals library for when you need fine grain reactivity. It's about putting state in the right place.

0 reposts0 likes

No replies yet.