daniele's avatar
daniele
_@dtonon.com
npub10000...vwqk
Working on https://fevela.me, https://nstart.me, https://njump.me, https://oracolo.me and other inspiring nostr projects. I love to build helpful things that people are pleased to use, mixing tech, design, usability and accessibility.
daniele's avatar
dtonon 5 months ago
Profile pictures are rendered by all Nostr apps in large quantities, so it is very important to optimize them to get good performances and respect users' bandwidth. With modern phones and camera is not unusual to capture images larger than 2MB, and these images are often immediately uploaded (of course) without any optimization. These are the statistics for profile image sizes based on a random selection of my following and following of following, with a sample size of 1,000 profiles: | Size Range | Count | ---------------------------- | < 100KB | 421 | | < 500KB | 315 | | < 1MB | 76 | | < 2MB | 63 | | < 3MB | 40 | | < 4MB | 30 | | < 5MB | 10 | | < 10MB | 10 | | > 10MB | 9 | ---------------------------- | Timeouts | 2 | | Broken Links | 24 | | Total | 1000 | 55,3% (> 100KB) of the profile pictures can optimized! I suggest that all developers resize the images client-side before uploading, inscribing them in a 1000x1000px square (or 800x800, which is more than enough even for a full-screen preview) and save them with 70% jpeg quality. This setting should bring images below 100KB and make users happy.
daniele's avatar
dtonon 5 months ago
I think a useful best-practice for Nostr apps would be including signing permissions check in the onboarding, instead of randomly when they need them. This is already quite common on Android for other kind of permissions. Just briefly explain why you need that specific signature and fire the permission request to the local signer or remote bunker. It's a one time proces that will make the following app's usage smooth a frictionless. This will also naturally bring to highlight mandatory and optional permissions, making apps more solid and resilient to possible rejections in the signing flow. View quoted note →
daniele's avatar
dtonon 5 months ago
@jack @calle geohashes are cool, but quite imprecise at contry level. Maybe it's time to add cross-border capabilities to bitchat using ISO 639-1 and BCP 47: langhashes. #lang-en, #lang-it, #lang-es, ... #lang-en-US, #lang-fr-CA, #lang-pr-BR, ...
daniele's avatar
dtonon 5 months ago
Does anyone know the guys at gravatar.com? We should ask them to add Nostr to their onboarding. image
daniele's avatar
dtonon 5 months ago
Follow-up: after some tests I discovered that the ISP is blocking the TCP layer, but UDP is allowed (e.g. dig and nslookup work). So my WireGuard connection can easily pass through. Now I'm really curious to know how many of you are going to don't pay the next invoice to test this possibility 😂 View quoted note →