Client devs trying to get already existing users to switch to their client, rather than ๐™ง๐™š๐™–๐™˜๐™๐™ž๐™ฃ๐™œ ๐™ค๐™ช๐™ฉ๐™จ๐™ž๐™™๐™š ๐™ค๐™› ๐™ฉ๐™๐™š ๐™–๐™ก๐™ง๐™š๐™–๐™™๐™ฎ ๐™š๐™ญ๐™ž๐™จ๐™ฉ๐™ž๐™ฃ๐™œ ๐™ช๐™จ๐™š๐™ง ๐™—๐™–๐™จ๐™š ๐™ฉ๐™ค ๐™›๐™ž๐™ฃ๐™™ ๐™ฃ๐™š๐™ฌ ๐™ช๐™จ๐™š๐™ง๐™จ, is a huge reason Nostr doesn't grow. If that's the growth strategy Nostr's NGMI.

Replies (17)

I'm glad you noticed. And it's not just you. I've watched it happen constantly for 3 years here. Damus vs Primal battles were (are) a big one ๐Ÿ˜‚ No hate for what you do. I send you bug reports and notes about things that could be improved for a reason. I signed up to help with the play store beta because I think your project is valuable. Your post today smelled a bit like FUD though, and I think your client is good enough you don't need to do that, that's all. Keep going. ๐Ÿ‘
๐Ÿ’ฏ My main thing I like to complain about is media. Lack of optimization makes Nostr perform badly and use huge amounts of bandwidth it doesn't have to. Images & video on Nostr need a lot of love.
Putting the anal user hat on: Only nostur saves where I left off on the timeline. Only yakihonne and primal open links in app but primal doesnโ€™t have emoji reactions and yakihonne frequently freezes for a fee seconds while scrolling. Ditto has the UX of a cordova phonegap app right now Damus is definitely a client that exists. Possibly all of them, every now and then, faint while fetching replies in a thread.
Easy ones: PFP optimization. They don't need huge res, 400x400 is ok as they are used for tiny icon sized images. You can crank down the jpeg quality too for massive size savings. A few kB vs a few MB. Similar for images. Have some sensible default presets for uploads, one dropping the res to 2k on the long side and applying more compression can drop a 6MB image down to a few dozen kB and still look fine for phone size display. Keeping the same resolution but dropping jpeg quality can save a lot too, without much image degradation. Harder Video is still a WIP, but huge savings are possible. The videos taken on a phone are meant for archival purposes, and there is a lot of fat to trim. Example video from my phone. The compressed 1080p version is almost indistinguishable from the original, but it's 93% smaller in file size. View quoted note โ†’ This takes time and power to do client side. It would be better done server side, but those solutions haven't materialized yet. With multiple res available in the m3u8 playlist you can play the small res version in the feed, and switch to higher res in full screen. This saves BW & battery. I've been playing with client side stuff, check the #chonkr feed for samples. @The Fishcake (nostr.build) is an expert when it comes to this stuff too, he might have some input and good ideas. He's been trying to get this to happen for years, maybe team up and push other clients ๐Ÿค”๐Ÿ˜‚ @Enki is working on server side stuff right now too, there's some posts in his feed today.
One more: converting GIF to MP4. A multi MB GIF can be compressed to a few kB of MP4. Most clients play them in the same fashion, so it's an easy win, orders of magnitude less data. Most modern software does this already. If I download a gif posted in Signal it is converted to an MP4. @โšก Dee Kay โšก has put in a lot of work on the media code in Amethyst. Aiming your agent at his work there could teach it a lot. He's good to talk with too, he might have some tips.
Analogue Dog's avatar
Analogue Dog 3 weeks ago
Nostr's architecture was suboptimal and I think it's now too difficult to fix. Kademlia-type (XOR) implementations like pubky.app are the way forward. Maybe try building something on Pubky.
โ†‘