Would you keep 2GB worth of other people's contact lists in the disk of your phone so that Amethyst could compute WoT natively in the client? That would be on top of the current 3Gb for the current caching (videos, pictures, AI translation models) and not include any of your own posts/dms or notifications. And likely that will grow as nostr itself grows. How much storage can the app use?

Replies (101)

Sounds worth it. Would it be optional? I personally probably wouldnt use it because my storage is always full, but may enable at some point and I really like the idea
Probably, I'm only using 79 of 256g right now. Most new phones come with plenty of space.
I have a 256GB phone, which is the standard these days, and I don't use half of that, and I download things. Considering that the kind of person that uses nostr probably doesn't take much pictures, which is where most of the space goes, I'm fine with the app using 5GB.
Primal is currently using over 8GB on my phone 😅 Nostur gets up there from time to time too. But I have 256GB total storage so I don’t notice any issues, and could always clear it if needed.
The funny thing, is your client generally loads as fast or faster for me with less space being used. And is much smoother, especially when compared to primal.
I don't mind. But Amethyst looks like it's on course to pass to the worse side of bloated. Could there be something like Amber running as a service that could manage a WoT?
hum.. I am not sure how much better it can get since it's about 2 million keys. If we assume 100 follows in each, just the graph index alone is already 800MB (4bytes to link each follow record).
Is that really the architecture that makes sense? Would it not be more efficient for trust providers just to serve them up? Sorry if I am missing context here. What's the motivation for making everyone store a copy of the whole graph?
I don't mind, but that's a big ask for a lot of folks. Having local, decentralized WoT is a dream though.
Karadenizli's avatar
Karadenizli 3 weeks ago
Slider that tells it how much it can use. People with 256g + phones will not care at all, but plenty of people have cheap phones with 16 or 32gb storage and will not be ok.
It is more efficient to get trust providers to offer them, but it also requires trust in the provider. If the app can compute all of, you wouldn't need anything else.
Isn't there something that can be done cryptographically to make the trust provider's results verifiable (just as trustworthy as if it came out of your own copy of the graph at least)
Yeah so... maybe a simple "default" low-weight score to begin with like Coracle, then allow the user to expand the definition out?
John's avatar
John 3 weeks ago
Do you need everyone? Why not just n-degree follows?
I'm all for that but suspect it can be compressed further and limiting to "follows of follows" or "follows of follows of follows" would spare you the bulk of reports as these are unconnected accounts. Find my follows. Find their follows. Find their follows. Find all the rest **by** and **about these pubkeys**. A report authored outside of that group is irrelevant. Pubkeys outside are "unknown". Reports by the in-group about them add little signal. A new spammer is "unknown" while an old spammer is known to be blocked. Hopefully we get heuristics about older accounts outside the group somehow but to give a new account some credit will only result in spam getting sent with only new accounts.
I wonder when #Nostr clients will be lightweight. I think its a big adoption handicap for bad internet regions, it's too much bandwith to be used every time an user access the protocol. Maybe Nostr is not for everyone?
How about a service you could run on you local home server and then Amethyst connects to this server so it can compute WoT natively?
It's definitely an issue here in Australia since the government shut down a lot of our infrastructure and everyone is getting bottlenecked through the censorship firewall. Even just watching a YouTube video in Australia you gotta wait awhile for it to load. Wish starlink was cheaper
the axiom's avatar
the axiom 3 weeks ago
please no I thought you were making amethyst use trusted assertions
But it's not necessary to constantly update things all the time. Do it once per day and you're far ahead of the crowd.
Personally, I don't see why not. I don't really use my phone storage for much beyond music and audio books and out of 128 gig phone I have like 50 some odd gigs left I guess everyone's setup is a little bit different, but I don't mind Two or three gigs.
S!ayer's avatar
S!ayer 3 weeks ago
Bro you're like using almost 5gb already...
Default avatar
Quint 3 weeks ago
I mean, I have 160GB used of my 256GB storage already, and I've not even had the thing more than a month or so....... Even figured I'd splurge a bit extra for more space and not have to worry that, and yet here I am. 🤣
Yes, if it can help cutdown on data use I'm all for it. It would be great to have an option to toggle the tradeoff between data use and storage.
If phones had microSD slots like they used to, sure. On a Pixel? Sorry mate, I think we've got limits. Free software needs free hardware to really be free of the shackles.
Opt in would be the sane way to do this. So would extensible storage but hardware providers are abusive and harder to compete with than abusive software providers.
Damus runs on iPhones. It's like a gimp mask people wear on the palm of their hands. We're not all masochists begging to be abused.
poolrooms's avatar
poolrooms 3 weeks ago
Well sure, I've all but given up on hardware manufacturers. Hopefully the new OEM that GrapheneOS is working with will bring back the SD card slot 🤞 but not going to hold my breath
my kids wanted me to buy them more expensive ipads just because genshin impact, a single game, takes up 60 of the 64 GB in an ipad mini. it didn't happen, but you can see where things are going
"Compute WoT locally" is the opt-in setting, provider otherwise. Limit won't work because it's an all-or-nothing thing. Partial graphs aren't very useful.
when i was using a 64gb iphone xs, damus suddenly started lagging heavily, which then confused me, until i figured out that it was time to delete 9gb worth of cache again
The main issue is that IF nostr succeeds, 2GB will turn into 2TB just for contact lists. So, we can keep computing locally while we can, but at somepoint it will just be impossible to manage locally. It's also true if you want WoT scores for every event (me talking about Nostr should have a higher score than me talking about soccer) instead of just per key. Rotation will only go so far.
Premature optimization. Let's do the thing that we can do while we can do it, not worry about a hypothetical world that has a couple billion nostr users.
Can a user subscribe to some service that would host, calculate, and deliver the WoT scores embedded with the posts served (or a relay that computes them in the way you prefer for a fee)? Services could provide customizability or a few options. A service could host one on behalf of one user that then markets their list to others.
Default avatar
The Test 3 weeks ago
Just add an opt-in settings toggle. This way people can decide for themselves. Amethyst should work well on any device, and if user want more they can turn features on.
Since it exists - It would be nice to have the option to clear the local “device hosted” WOT scores and utilize the “preferred backup / service WOT” scores until local cache is turned back on. Some users won’t notice the extra GB or even TB to have the option there, especially if it’s easy to clear, turn off, and turn back on later
My 10 pro has a total of 128 GB. You've got a larger model. Though even at that number... If I can't run a full node on my phone I'd like more storage please.
And to be clear 'you've got a larger model' is my issue. Storage space shouldn't be a fixed size when you buy a phone, but those selling cloud storage love their shakedown methods.
I meant external storage, like SD cards and so on. Principally because in places like Cuba internet is a luxury and the way people share files is normally based in USB sticks as internet is quite expensive and flaky