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

Low data / cellular mode [325,000 sats] #919

Open
alltheseas opened this issue Apr 14, 2023 · 25 comments
Open

Low data / cellular mode [325,000 sats] #919

alltheseas opened this issue Apr 14, 2023 · 25 comments
Assignees
Labels
bounty Sats data Bandwidth, data usage, etc design Design exploration & definition is required feature New feature request onboarding perf

Comments

@alltheseas
Copy link
Collaborator

alltheseas commented Apr 14, 2023

User Story

As a Damus pleb who uses app on the go (cellular), I want to have a setting where I can turn down Damus data needs (data saver mode), so that I don't surpass my celullar carrier's data throttling threshold, AND so that my events post thereby avoiding poor Damus experience(s).

Acceptance Criteria

  1. In settings Damus user can set cellular mode on
  2. By setting cellular mode, Damus automagically detects when Damus is not on wi-fi, and reduces data demands
  3. This setting is turned on automatically, if it detects low data mode on iOS (see iOS reference https://support.apple.com/en-us/HT210596)
  4. User can clearly see that Damus is performing in low data mode
  5. in low data mode:
    -damus does not auto-load new images (related to settings -> appearance -> media previews setting)
    -damus does not auto-load new videos (related to settings -> appearance -> media previews setting)
    -damus does not auto-load new link previews (does this use significant data?)
    -damues does not load new profile banners
    -damus does not load new pfps

questions

-does the refresh mechanism change in low data mode
-design: @robagreda what does "low data mode" status look like? how might we display low data mode to the user when it is on? should low data mode icon be displayed all the time?
-design: @robagreda how might we allow user to change low data mode setting (when not on wi-fi) without having to send user deep in the settings menus?
-design: does user have a mechanism to manually load an image as a one off, video while in low data mode?

@alltheseas
Copy link
Collaborator Author

#645 #965
would reduce bandwidth requirements

@alltheseas
Copy link
Collaborator Author

alltheseas commented Jun 25, 2023

@alltheseas alltheseas added feature New feature request perf labels Jun 30, 2023
@alltheseas alltheseas moved this to Unvalidated Request 🪨⛏️ in Damus Roadmap 🛣️ Jun 30, 2023
@alltheseas alltheseas added this to the 1.8 Long Form Note Support milestone Jun 30, 2023
@alltheseas alltheseas moved this from Unvalidated Request 🪨⛏️ to Backlog 🪵 in Damus Roadmap 🛣️ Jun 30, 2023
@alltheseas alltheseas changed the title Low data / cellular mode [feature request] Low data / cellular mode Jul 29, 2023
@alltheseas
Copy link
Collaborator Author

Negentropy by @jb55 should reduce data consumption

@alltheseas
Copy link
Collaborator Author

Related: disable image loading

#667

@alltheseas
Copy link
Collaborator Author

alltheseas commented Sep 25, 2023

Bounty posted by Tetsu, Dan Wege: 100k sats

https://damus.io/note1uygs4fzg6dtrff326stk9thfec5meqx63f6v03qpv6axtsara7js2vwx24

@alltheseas alltheseas added the bounty Sats label Sep 25, 2023
@alltheseas alltheseas changed the title Low data / cellular mode Low data / cellular mode [100,000 sats] Sep 25, 2023
@alltheseas alltheseas added the design Design exploration & definition is required label Sep 25, 2023
@alltheseas
Copy link
Collaborator Author

@robagreda your design magic is requested, sir 👀

@alltheseas
Copy link
Collaborator Author

@alltheseas alltheseas changed the title Low data / cellular mode [100,000 sats] Low data / cellular mode [225,000 sats] Oct 8, 2023
@jb55 jb55 mentioned this issue Oct 15, 2023
@alltheseas
Copy link
Collaborator Author

image

@alltheseas
Copy link
Collaborator Author

Maybe cuts your relays down, doesn't load follow numbers, doesn't load too many notes. You know just when you're out and about not in WiFi.

@alltheseas
Copy link
Collaborator Author

Consider Mutiny Booster relay / Bostr relay for potential data savings https://damus.io/note1myc2dk8ctzusv7hcgpjfyhp08k2uqt5sqg26f49f55qxzqfqqdlqv55l2w

@karnagebitcoin
Copy link

karnagebitcoin commented Dec 19, 2023

Put me down for 100k sats. Does this need design or Rob got it?

@alltheseas alltheseas changed the title Low data / cellular mode [225,000 sats] Low data / cellular mode [325,000 sats] Dec 19, 2023
@alltheseas
Copy link
Collaborator Author

Put me down for 100k sats. Does this need design or Rob got it?

Thanks! I'll share updated bounty to nostr shortly.

I couldn't find low data mode in https://www.figma.com/file/ORaT1T0Ywfbm0sIjwy5Rgq/Damus-iOS?type=design&node-id=0-1&mode=design&t=dj8r4gylEAEIZUzv-0

@robagreda lmk if I missed it.

I think Rob is out of pocket currently if you want to have a go @karnagebitcoin

We would apply the low data mode design to Damus Android, as Android users have less bandwidth.

@robagreda
Copy link
Contributor

Was planning to tackle all this in new year since I am still traveling so I have less availability for these tasks, didn't know it was a priority tho. You can check it out @karnagebitcoin :)

@alltheseas
Copy link
Collaborator Author

Was planning to tackle all this in new year since I am still traveling so I have less availability for these tasks, didn't know it was a priority tho. You can check it out @karnagebitcoin :)

We have quite a few things on iOS docket to implement. That said Android should be designed low data by default, and this I think will help inform the direction for devs before they get too far in implementation.

Thank you, and safe and fun travels and Merry Christmas @robagreda

@jb55
Copy link
Collaborator

jb55 commented Dec 23, 2023 via email

@alltheseas
Copy link
Collaborator Author

We should have a way to measure how much data usage is coming from where. I think there may be lots of confusion as to what is using all the data. We can't fix what we can't measure.

#1838

@alltheseas
Copy link
Collaborator Author

Media uploads could be queued until Wi-Fi connection is detected.

@alltheseas
Copy link
Collaborator Author

image

Would be useful to understand media filter use impact on data

@alltheseas
Copy link
Collaborator Author

Tooltip from amazon video that provides data usage estimate, depending on settings.

Screenshot 2024-02-10 at 11 02 36 PM

@alltheseas
Copy link
Collaborator Author

Damus is hardly usable for me on a 3G simulator: 30 seconds to load some notes, notifications not loading one minute in

@jb55
Copy link
Collaborator

jb55 commented Feb 20, 2024 via email

@alltheseas
Copy link
Collaborator Author

Motivation:

damus-io/notedeck#195

@alltheseas
Copy link
Collaborator Author

Received feedback that onboarding to Damus (and other iOS app in Primal) on a poor mobile connection resulted in a failure to onboard to nostr.

Poor experience trying to onboard newbs to nostr during the conference (mostly on iOS which I do not use), around 10-12 people.

Granted the cell coverage was not great and not sure I remember everything that went wrong, but users were generally confused with loading/lacking data.

Create a profile, then I tried to follow them but could not find them from Amethyst. So scanned QR code, which is a non-obvious step. Then their profile showed just the npub but no info or pfp, some commented on that. Followed them but they didn't receive a notification for that on Damus, this confused most. And then what? Post a note? (I was recommending #introductions ).

While you wait for all this to load, tap, retry... between laughs you need to come up with conversation and try to somewhat defend nostr, tell them we're early and bugs will be fixed etc.

On Primal follows do appear but feeds don't load. And it autofollows a bunch of random people - some liked it some didn;t. They posted a note and I wanted to like/zap it but I could not see that note on my client either, even though I'm connected to major relays (could be nostr.wine's fault, but I tried with the zap.store account as well). I saw one guy KYC himself 3 times with the wallet because when he switched to his email client to get the code and the app kept resetting the screen.

Lucky that the majority of people were eager and did their best to try.

Since some of these were after Jordi's talk where he offered several clients to download, it was not always my choice/recommendation on which client to download - they just came with it.

I know we do our best but guys... it's bad.

This reminds me of getting a newb to open a LN channel and get liquidity. Painful. If we have to centralize more to better onramps, so be it.

https://damus.io/note1lp0y06zyzv7y3eukymw45qmk40pndvmw6mz9ynnt6lvurnfnftcsvsvwmc

@alltheseas
Copy link
Collaborator Author

@jb55 would #1897 help reduce bandwidth needs, and improve performance on a poor network?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bounty Sats data Bandwidth, data usage, etc design Design exploration & definition is required feature New feature request onboarding perf
Projects
Status: Backlog
Development

No branches or pull requests

4 participants