Avatar
Matt Lorentz
d0a1ffb8761b974cec4a3be8cbcb2e96a7090dcf465ffeac839aa4ca20c9a59e
Technologist, solarpunk, gamer, backpacker, passionate about using the internet to push more power to more people.

🤔 git is an interesting analogy. Except most Nostr clients don't store the full history like a git client.

Replying to Avatar HoloKat

We’re all daily users of Nostr, so it can be easy to see things through an advanced user lens while forgetting what it felt like to be a newbie. I thought I would take some time to go over major client from the start in hopes of evaluating what it might feel like for a new user.

The other reason for running this review is to hopefully improve the overall nostr retention rate across clients. As it stands, according to nostr.band, retention of trusted users 30 days after signups trends to 0 for recent cohorts. This seems to be supported by the lack of growth in daily active users, with the average remaining in the 10,000-12,000 range for “trusted” pub keys.

The following report consists of several criteria which I felt were essential to basic first-time social media experience:

1. Ease of signup

2. Ease of logging in

3. Ability to understand what you are looking at (sufficient explanations)

4. Seeing a good initial feed

5. Ability to follow something of interest

6. Minimizing technical /dev lingo

7. A fast scrolling experience

8. Ability to easily upload media

9. A good search experience overall

10. Good keyword searching

11. Hashtag searching

12. Ability to follow hashtags

13. Easily accessing followed hashtags

14. Good experience reacting to notes

In total there are 140 points, 10 for each category. This is by far not the most comprehensive score card, but I felt it did a decent job covering most things you’d want to do in a social client.

Some notes of caution:

1. This report and score card are meant to be a general quick glance at where your client may stand in overall UX. It does not differentiate between the intended target audiences.

2. The criteria that I deem important may not be important to you as the founder / developer, so take it for what it’s worth. Adding your desired criteria may increase your score significantly. For example, I did not evaluate the zap experience, or thoroughly test nested replies.

3. This report is not a substitute for proper user testing. It’s just one person’s observations. While we have done some user testing in the past, I highly recommend doing your own. You can do so by approaching and interviewing new users (if you are able to distinguish if they came from your client), or via other user testing software. Talk to me (@karnage) if you need some help getting set up.

4. People’s reported experience regarding usability may vary greatly depending on their familiarity with cryptographic concepts, their background, and technical experience. What I may deem as a great score of 10, may not be a 10 for others. I have seen user tests where “obvious” things were not obvious to testers.

5. This report only looks at the English language version of the client. The actual user experience for someone on a different language version of the app could be totally different from what is graded here. It’s worth considering geographies of where users are coming from and how they experience your client.

6. I did not test re-activation of new users. Meaning, once they close the app, I did not test if they are pulled back by some notification or other means. This is a crucial aspect of any new app usage that should be considered carefully.

Tested Clients: Damus, Amethyst, Primal iOS, Snort (web), Iris (sort of), Coracle, Nostur.

I also tested Instagram and X/Twitter for comparison.

Results, highest points to lowest:

Primal iOS: 136

Twitter: 125

Instagram: 109

Nostur: 108

Coracle: 99

Amethyst: 93

Snort: 90

Damus: 87

Iris: N/A

Facebook: could not test.

My main takeaway was that among all apps (including Twitter and Instagram), the traditional apps win simply by having much better content selection. You get to see a variety of interesting things that Nostr simply can’t match. Going forward, this is an area I would probably recommend focusing on - how to engage people to post more interesting content, onboard creators etc… Nostr is lacking in content and I believe this could be the primary reason people are not sticking around after trying it.

### Other Nostr Notes:

There seemed to be little of interesting topics to follow or stick around for. The experience of joining nostr doesn't feel special or different in any way opposed to X for example. Twitter has interesting accounts, TikTok has interesting videos, what does Nostr have? The lack of "popular" conent due to the generally low number of users is probably to blame. In a way we suffer from the chicken / egg problem where new users are needed to generate more content, and more content is needed to retain new users. Going forward, I think clients should think about ways to encourage users to share content (whether that be their own, or posted from other platforms). Nostr also does not seem to have any external growth loops. For example, there is no way to invite people to the platform by email with a single click (by accessing the address book). Even if a friend does manage to join and you can find them, they are in no way notified when tagged (as far as I know). People have to have a habit of opening the app to know if something is happening. The habit formation of using a new app is important in the early usage phase and nostr seems to have a weak spot here.

You can find all of the detailed scoring, notes for each client and other thoughts in this spreadsheet: https://docs.google.com/spreadsheets/d/14w8-aQ1sHfGBSuNpqvOA9i7PHNSfhn6lUOV6H293caw/edit?usp=sharing

I think the best way to get around the chicken-and-egg problem of users and good content is to build tools for small groups. If Nostr is useful to a group of 2 or 3 friends then each of those people might onboard another small group they are in.

The obvious difficulty here is that small groups generally want high privacy, and nostr has low privacy by default.

Replying to Avatar rabble

American politics is weird and broken. We have a system that, by design, is a duopoly. If a new party emerges, it either dies or replaces one of the existing ones. Because of that, we end up with these big tents containing lots of different constituencies and contradictory coalitions.

Take, for example, how conservative black evangelicals are pro-family, pro-life, and pro-business, but most vote Democrat because they’re turned off by Republican racism. Or consider gay Republicans like Peter Thiel, who vote in their economic interests despite it being against their safety and the advancement of the gay community.

There are many ways in which a two-party system doesn't make sense. I’ve lived in two countries with proportional representation, Uruguay and New Zealand. Both have much more stable politics and better systems of coalition-building and compromise. They’re smaller, too, but you can see the US system broken at a state level where the numbers can be similar to those in Uruguay and New Zealand.

Forcing everyone to fit their values and political aspirations into a single party is a mess.

What’s interesting is that as the US becomes more partisan, party members are more likely to adopt the party’s platform, even if it would otherwise not be in their personal or community interest. Only a small and shrinking number of true independents can focus on issues across parties.

Nos Journalism Acclerator partner nostr:npub1uuxnz0sq60thc098xfxqst7wnw77l0sm3r8nn48yspuvz4ecprksxdahzv has a good piece about this based on research: nostr:note1dnqm9f7ljzrfcuu0gy8ghtxgnmtar8lvfxcjhryeka43r85h2zaqzvsqc5

Do you think ranked choice voting is the best way to break the stalemate?

I finally got around to reading up on Bluesky’s moderation architecture. It’s nice to see that they’ve arrived at pretty much the exact solution we are working towards at Nos.social. An open labeling system that can be used by all stakeholders (relays, apps, users) in the way that makes the most sense to them.

https://docs.bsky.app/blog/blueskys-moderation-architecture

Apple Intelligence is the first time I’ve actually had a physiological response to AI. Watching the keynote today felt like watching a giant wave coming towards you that can’t be stopped. If Apple Intelligence is any good it’s going to be *really* useful. It’s just a taste of the radical shift we are going through. How many months before the majority of human communication is filtered through AI? AI that we can’t inspect or opt out of that is created by a few powerful super corporations who don’t have our best interests at heart. But idk maybe things will be fine.

There’s no timer. You can tap the little lines at the top but you can also tap the right third of the screen to go to the next note. You can tap the left side of the screen to go back. You can also swipe horizontally left and right to jump between people. Tapping in the middle should open the note details (unless there is a link there). We really need some kind of way to explain it. But we haven’t spent much time on it since the initial experiment of putting it out there. It isn’t getting a lot of usage, but maybe this is why.

The dox article conveniently left out that nostr:nprofile1qyd8wumn8ghj7urewfsk66ty9enxjct5dfskvtnrdakj7qgmwaehxw309aex2mrp0yh8wetnw3jhymnzw33jucm0d5hsz9mhwden5te0wfjkccte9ehx7uewwdhkx6tpdshsz9thwden5te0wfjkccte9ejxzmt4wvhxjme0qqsrhuxx8l9ex335q7he0f09aej04zpazpl0ne2cgukyawd24mayt8getswvk immediately gave half the bitcoin to nostr:nprofile1qy88wumn8ghj7mn0wvhxcmmv9uq3zamnwvaz7tmwdaehgu3wwa5kuef0qyt8wumn8ghj7un9d3shjtnddaehgu3wwp6kytcqyqewrqnkx4zsaweutf739s0cu7et29zrntqs5elw70vlm8zudr3y2k0udpw because he didn't want to be in charge of all the money. The two of them have been giving it away since then to all kinds of people working on all kinds of Nostr projects. Whatever his political views are with respect to Brazil, when it comes to governing the Nostr protocol he has consistently taken a light and open-handed approach.

I think the best thing you can do is stand up from your desk and take regular breaks. A great way to take regular breaks is to drink a ton of water so you have to get up and go to the bathroom. I also like using a pomodoro timer and I spent most of the five minute break stretching while looking out my window and alternately focusing my eyes on objects at long distances and trying to relax them and focus on nothing.

Also have a desk and set it up the way the YouTube ergonomics tutorials say and revisit your setup often. Working with good posture is a constant battle but it really is a key part of being a good developer. If you can’t find big chunks of time each day where both your body and mind are happy then you are going to struggle to have consistency as developer in the long term.

Eink is great, but I’ve heard that nothing about a backlit screen is actually bad for your eyes. It’s all about the length of time your eyes are focused at a certain distance. Blue blocking glasses have more to do with your circadian rhythm than eye strain I think.

I 3D printed the vertical stand for my keyboard yesterday and used it all day today. It was surprisingly easy to use. I took a typing test on it right away and got 67 WPM which is only slightly lower than my high score of 73. It was pretty comfortable to type with my wrists vertical and it forced me to float them off the desk when typing which is what you are supposed to do anyway. I can’t see the keys at all which is mostly ok, but I struggled a little to hit certain key combos when my hands were off the keyboard, like my shortcut for mute/unmute during meetings. Numbers were also a little challenging. Overall it was a lot better than I thought it would be and I will definitely be experimenting with it some more.

Here are some photos. The book is there to hold down the edges of the stand. If I make this permanent I will definitely find a better solution.

Today’s 3D print is a vertical stand for the two halves of my split keyboard. Will post the results tomorrow. Has anyone else tried a vertical keyboard?

There are a few things you can do to fight impersonation. You can flag the user for “spam” or “other” or something. Some apps will then show a warning on their profile. You can also link your nostr profile to your website if you have one. This is a bit technical (search NIP-05) but it cryptographically proved that you own both the website and your nostr account.

Most apps also have some kind of web-of-trust features to help. For example Nos sorts people by the number of people you both know, so if I search for Slice Design in Nos you show up at the top because more of my friends follow you than the imposter.

Is the impersonating account nostr:npub12ch8v58lkj7ffz3rpa39xcxplhdyjn5f5jynfnrju3e9h6vn27qs7jn6lh ? Because that account is actually bridged over from Mastodon. Somebody is mirroring a lot of accounts from there to Nostr.

Replying to Avatar Matt Lorentz

nostr:npub1nxy4qpqnld6kmpphjykvx2lqwvxmuxluddwjamm4nc29ds3elyzsm5avr7 nostr:npub137c5pd8gmhhe0njtsgwjgunc5xjr2vmzvglkgqs5sjeh972gqqxqjak37wnostr:npub137c5pd8gmhhe0njtsgwjgunc5xjr2vmzvglkgqs5sjeh972gqqxqjak37w we just started getting 404s from the https://nostr.build/api/upload/ios.php API. Did something change on your end?

It looks like this is our problem: https://github.com/nostrbuild/nostr.build/pull/69 I guess we were using the legacy API. Any chance you can revert that PR and give us a week or two to update to the new API and get a release of Nos out the door?

Replying to Avatar Matt Lorentz

nostr:npub1nxy4qpqnld6kmpphjykvx2lqwvxmuxluddwjamm4nc29ds3elyzsm5avr7 nostr:npub137c5pd8gmhhe0njtsgwjgunc5xjr2vmzvglkgqs5sjeh972gqqxqjak37wnostr:npub137c5pd8gmhhe0njtsgwjgunc5xjr2vmzvglkgqs5sjeh972gqqxqjak37w we just started getting 404s from the https://nostr.build/api/upload/ios.php API. Did something change on your end?

ugh, I flubbed up the mentions. that should have been nostr:npub137c5pd8gmhhe0njtsgwjgunc5xjr2vmzvglkgqs5sjeh972gqqxqjak37w

nostr:npub1nxy4qpqnld6kmpphjykvx2lqwvxmuxluddwjamm4nc29ds3elyzsm5avr7 nostr:npub137c5pd8gmhhe0njtsgwjgunc5xjr2vmzvglkgqs5sjeh972gqqxqjak37wnostr:npub137c5pd8gmhhe0njtsgwjgunc5xjr2vmzvglkgqs5sjeh972gqqxqjak37w we just started getting 404s from the https://nostr.build/api/upload/ios.php API. Did something change on your end?