Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create benchmarks for evaluating performance #8

Open
nielsbom opened this issue Mar 19, 2024 · 6 comments
Open

Create benchmarks for evaluating performance #8

nielsbom opened this issue Mar 19, 2024 · 6 comments
Labels
enhancement New feature or request

Comments

@nielsbom
Copy link
Collaborator

(Somewhat related to #5 )

@jokroese told me there's a (strong?) preference for having all actual points rendered on the map, even when zoomed out.

I'd like to ask some questions about this and also approach this from a (performance) accessibility perspective. This kind of accessibility considers the technology that people use to access the site, so mostly their computing device and their internet connection.

(I do think other kinds of accessibility are equally important btw)

An assumption I have is that we prefer it if more people can use the the site, than less.

What attributes of "having all points rendered on the map" are (most) important?

  • Is it the visual aspect?
  • Is it a feeling we want to evoke when visitors view the map?
  • Do the creators of the map want to have a feeling of "completeness"?

What devices do we want people to be able to use QTM on?

  • Phones, tablets, computers?
  • What kind of devices do we want users to still be able to reasonably use QTM?
  • Are those devices mostly CPU bound or memory bound?

On what kind of internet connection do we want users to still be able to reasonably use QTM?

  • What is the average speed?
  • What is the average latency?
  • Wifi or non-wifi connections?
  • For non-wifi connections: people on limited data plans?

Suggestion

Once there's a baseline performance budget wrt device and internet connection we can (and imho should) start testing QTM with that budget in mind.

@nielsbom
Copy link
Collaborator Author

Alex Russel has written a great deal on frontend performance and how it has created and continues to create inequality.

@jokroese
Copy link
Member

It would be great if @queeringthemap (Lucas) could share some data on the types of devices visiting QtM. Do you have that info Lucas?

@jokroese
Copy link
Member

Beyond that, there's a question of if the thousand of points is actually much of a performance issue. We haven't done any quantification of that, so at this point, we don't know if it's a bottleneck.

@queeringthemap
Copy link
Collaborator

What attributes of "having all points rendered on the map" are (most) important?

  • the visual impact of the scale and distribution of pins is most important. my biggest concern from day one, has been that clustering pulls the outliers into the mean, which means rural and less active areas on QTM were getting erased at high scale. But, as the site grows to have users in more places with lower bandwidth, I am open to a display model that is more accessible, even if it means losing a few of the outliers.

What devices do we want people to be able to use QTM on?

  • the vast majority of users use mobile devices, and I have added a few analytic screenshots here to give you an idea. Optimizing for mobile and low bandwidth would be amazing.
Screen Shot 2024-03-19 at 9 46 18 AM Screen Shot 2024-03-19 at 9 46 29 AM Screen Shot 2024-03-19 at 9 46 44 AM

On what kind of internet connection do we want users to still be able to reasonably use QTM?

  • as accessible as possible on lower bandwidth would be ideal. I'm not well versed enough on average speed and latency, but super open to your suggestions.

@jokroese
Copy link
Member

jokroese commented Mar 20, 2024

losing a few of the outliers

We can display pins (or leave them out) based on how densely they are spaced. That means we don't have to lose any outliers, just dropping pins from within dense areas like cities.

@jokroese
Copy link
Member

As I see it, this issue has two concerns: one about what are the appropriate benchmarks to use for developing QtM and another about how to visualise so many points.

I propose we keep this issue focused on benchmarking and move discussions of the ways to visualise so many points to this issue #9. I'll copy the relevant points across there.

@jokroese jokroese changed the title Performance considerations (CPU, mem, bandwidth) when viewing thousands of points Create benchmarks for evaluating performance Aug 19, 2024
@jokroese jokroese added the enhancement New feature or request label Aug 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants