erquhart
erquhart•16mo ago

Couple of things that make life difficult in the dashboard

At any rate, I'll thread a bit of feedback here: couple of things that make life difficult in the dashboard.
7 Replies
erquhart
erquhartOP•16mo ago
First, this guy:
No description
erquhart
erquhartOP•16mo ago
Sometimes it means there are no documents matching your selected filter. But it also means: - loading, we don't know if anything matches yet - you paused for more than 500ms while entering filter info how dare you - you just added another filter how dare you It would be nice if: - this text only showed when there are no matches to the query - I could press enter/submit to update the filter and see this screen less - instant update is nice for simple search boxes, but if I pause while editing I get to wait for a bit. Sometimes I say bad words. - Adding another filter didn't update anything (sort of resolved if we add enter/submit to update)
erquhart
erquhartOP•16mo ago
Then there's this guy:
No description
erquhart
erquhartOP•16mo ago
My tables aren't huge, but I spend a lot of time staring at that little spinner. It would be nice if: - I didn't have to wait 10 seconds (actual number) whenever I navigate to even a mildly sizable table. You guys should check out this awesome platform I'm using called Convex, it has pagination for this sort of thing 😅 - If the table is loading, the rest of the UI didn't lock up - if I tap Data by accident I can't hit a different link in the dashboard until it loads Ideally, when I'm looking for some data, I'd like to: - navigate to the table - be able to start interacting with filter controls immediately, even if still loading data - add multiple filters without the table view updating and locking up the UI If loading data was non-blocking, that would fix everything except the load time problem, it really addresses most of this, and is probably the correct fix here. Then you don't need enter/submit, that's really just a workaround to help avoid the blocking. Proper virtualization could go a long way - I'm guessing it's not that virtualization isn't working, but how heavy your renderItem() is, if I had to guess.
ian
ian•16mo ago
This wasn't super recent, but it was a great moment when we shifted to implementing more things on the dashboard using Convex. We obv are very careful about circular dependencies in infra. So many product features were easier to build using the primitives we were building. Good dog-fooding too
erquhart
erquhartOP•16mo ago
100%, makes sense that a product like Convex would be hard to dogfood like this at the beginning. Building x with x seemed like a bad idea until I worked at Netlify, we literally built Netlify with Netlify. Which is still hard for me to reason about in my head lol. Recursive infrastructure 😅 Also I hope my little quips above (eg., "you just added another filter how dare you") were taken as levity and not actual frustration! Just my writing style.
ian
ian•16mo ago
i appreciated it 😆 Yeah we're pretty principled about which systems can depend on which systems. Thankfully we have a lot of experience there

Did you find this page helpful?