Oddbean new post about | logout
 I liked nostr better when you would just throw 5 relays into your app and everything worked. inbox, outbox, general, history, wot, etc etc. It's getting way too complex for the average Joe who hasn't even discovered nostr yet. Yes, those normies we're waiting on. 
 Yeah the different relays and purposes are a no go for normies. Even for non normies. 

We need to get real. 
 My thinking (and I live here) is, if I cannot get it to work, GL getting your friends to use this. 
 Normies will have to learn. 
 We must make it a windows installer and just click next next next somehow  
 I agree it's a bit more complex, but as the protocol has advanced, so too must the operational foundations. The outbox model is a highly efficient way to accommodate those changes and the current requirements. But I do think there needs to be some progress on the implementation to better accommodate the users, and make configuration easier.  
 I'm not saying that our relay infrastructure doesn't work. I'm saying it's getting too complex to expect average people to wrap their head around it or spending days on figuring out "how to make this work". Most people don't have the patience these days and they'll just delete the app and move on. 
 I agree. That's why I think the implementation needs to change to make the config process more user friendly. One of the cool advancements in relays is nostr:nprofile1qqsw9n8heusyq0el9f99tveg7r0rhcu9tznatuekxt764m78ymqu36cpr9mhxue69uhhyetvv9ujuat50phjummwv5hkx6rpwsq32amnwvaz7tmxwfjkuueww468smewdahx2tcpz4mhxue69uhhyetvv9ujuat50phjummwv5hs9smu6e's HAVEN relay, which is a personal relay, but one that basically acts as 4 or 5 different types of relays so it's an all-in-one solution. It would be cool if that functionality was extended to general relays so that we could all use just one type of relay instead of the array we deal with now.  
 this^ happened with 2 frens 
 2 for me as well. 
 Yes 
 Exactly that's why we are here. To work on the change in the behaviour of people!  
 I agree, but there should be a middle field.. 

people don't have patience to study bitcoin, how fiat money works, how to custody their own keys, how to run a node.. should we then level down and lower the standards or responsibilities? I don't think so, but I do agree with you that you can't throw all of that to new users when they approach it.

More services, more layers of actions and responsibilities, more clients and different way of onboarding. 

You can grow oranges in your garden, or buy them at the fruit vendor, or you can buy them at the supermarket already peeled split in slices and packed in plastic (not joking).. It's up to every single individual to choose his way IMO, let's give them alternatives and if they'll understand the benefits they'll take more actions and responsibilities.
 
 I understand your thinking but also noticed that over the last 6 months (or so) using nostr isn't as simple as it used to be. After last week I literally gave up trying to fix the issues I'm encountering personally. If that means I don't see your comments or you don't see my notes or I miss an opportunity because I simply did not receive your DM, so be it. 
 Yeah I agree, and I believe it's more complicated also because in the last six months number of features increased exponentially and Nostr evolved.

replyguy was a big thing and a problem for basically all users.. somehow, fixed now even for normies.

Discover ability for example now is thousands times better thanks to latest primal update and many clients will copy or upgrade that so all protocol will benefit from it and that was one of the main issues for nostr usage by popular opinion.

In the end, I am positive on hiw things are changing and keeping up with all of it I agree is super challenging and overwhelming, but it's early and everyone will focus on what they need most and learn what they need if they have the right incentives to do so. 
 Agreed. But sometimes I just get this arghhhhhhh gfy feeling when trying to fix or improve things from the user side. We're absolutely early and I believe that eventually features like DM's will work "out of the box" and perhaps we'll find a way for users to just use their paid relays in their app config to experience the vast variety of nostr features. 
 Paid relays will never solve the problem. I'm not paying for everyone's relay use and neither is anyone else but relay operators 
 Is the replyguy thing actually fixed or was it used as an excuse for filtering and censorship? 
 I thought about that when it happens.. absolutely true, it definitely could be an actor that settled it in order to than introduce the solution whom he'll benefit for.

Thing is, replyguy could have been created and would be  by anyone, and a solution would need to be found. Was the one they used the right one, I don't know, and not capable to create a better one, I can just decide to trust who built it and use it, or not. 

Optionability is what we have on #nostr.. you like it, you use it, otherwise you fork it or change it, or stop using it. It's all up to us and how much we want to engage and make a change. 
 Why do you post all this and then turn around and shit on Primal all the time? Primal is making nostr incredibly easy to use.  
 Yeah I don't get the primal hate when it's one of the best nostr products out there, if not the best. I'm not a user of Primal but want to see it succeed, we'll all benefit. 
 It's probably the best client for newbies, but not great once you take your training wheels off.  
 why not great? now that they have long form posts, custom feeds, etc. I think it's an amazing daily driver for all kinds of users. 
 I’ve been on nostr since end of 2022. Primal and Nostur are my daily drivers now. Primal is excellent for users of every level.  
 wholeheartedly agree, I don't use them but I'm a fan of both clients. credit where credit is due. 
 Ok, so use it. I don't like their relay model. It's good for people who want to just install and go, but not great if you want to experiment with your relay config, and explore the extended features of nostr.  
 I don't use it but I think it's a great product.

> It's good for people who want to just install and go

That's like 99% of the people my fren. 
 Because I dislike Primal. But it's not for me to talk about behind the scene events surrounding BTC Prague or statements people make over dinner during meetups 
 Primal is the worst nostr client  
 Ok, or grow up and stop acting like you’re in high school. Not my problem dude.  
 if it's not your problem why you're getting involved? 
 I’m asking why you’re being a hypocrite publicly on nostr about the primal app, and your response is to bring up some teen girl gossip episode about people. I’ve been openly critical of primal over certain things, but I also see the progress they’ve made and the app is incredible. It is solving the very issues you identified, for new users especially. Whatever beef you have with one or more people on their team, take it up with them. That’s not my problem. Be a man and sort it out, and I hope you guys can make amends. Life will be better for you. The usefulness of the app stands on its own, though, and that’s what I’m asking you about.  
 He's giving his opinion on the client. He's not engaging in a personal vendetta. People are allowed to criticize and share their opinions about whatever they want. Nobody is obligated to blow smoke, or sing Primal's praises if that's not how they feel.  
 I didn’t see anything about the client, which is what I was trying to discuss. All I heard him say was something that occurred offline involving their team. That’s gossip and between him and them. If you can point out where he discussed the actual client then I’d appreciate it.  
 Check out the first comment of his that you replied to.  
 Pretty clear that it’s a statement about their team instead of their app when you read it with that whole note.  
 Embrace the chaos. 
 #YESTR 🫂 
 This like a #Nostr slogan. Maybe use this for marketing? 😄 
 Managing #Chaos is the OG #POW 
 I chaos. it has it's own order. 
 Yep, exactly what is needed. No willingness to work, no need to run your mouth off on the Internet. 
 "convenience" is the main drive for most people these days in all aspects of life. 
 This can easily devolve into a victim blaming like attitude. It's convenient for us to say things like this so we don't have to face reality. We should want this stuff to be as convenient as possible within the confines of specific principles. Currently, it isn't. The UX sucks for average people. It's difficult to be objective sometimes when you already had a depth of knowledge on a topic that most people don't. It's easy to forget how much time was actually spent getting there. Time you would not have spent if you were less interested in the topic. Not everyone is interested in highly technical topics, but that doesn't mean they should basically be told to fuck off. At least not if our goal is to grow. I'm not saying it is.  
 I don't know that the lack of "patience" is a "these days" problem. I don't think the average person feels the pain of a problem that nostr solves enough to outweigh the frustration and time suck that making it work requires. Most people aren't tech savvy at all (I work for a fiberoptic telecommunications company, people have trouble with email, cable remotes and keeping devices connected to their wifi), have jobs, families, obligations and existing hobbies that they value greater than a decentralized, uncensorable communication protocol capable of near-complete anonymity using an nsec/npub keypair to sign events by users and publish them to various relays... "this fiberoptic internet was supposed to be so good, but if I go out to my metal outbuilding my phone disconnects from the internet, so fiberoptic sucks"  
 I agree. I hate sorting out the relays. It's one of the biggest problems with Nostr. 
 I always refer to nostr:nprofile1qqsyvrp9u6p0mfur9dfdru3d853tx9mdjuhkphxuxgfwmryja7zsvhqpzamhxue69uhhv6t5daezumn0wd68yvfwvdhk6tcpz9mhxue69uhkummnw3ezuamfdejj7qgwwaehxw309ahx7uewd3hkctcscpyug's relay setup guide to understand the various relay types.
nostr:naddr1qq9hyetvv9uj6um9w36hqq3qgcxzte5zlkncx26j68ez60fzkvtkm9e0vrwdcvsjakxf9mu9qewqxpqqqp65wjvcq4q 
 I've spent HOURS sorting out my relays. Question for you, why is my profile out of date here: https://njump.me/decodejar@zaps.lol

I've edited and republished it dozens of times, to hundreds of different sets of relays, including the 21 relays I currently use, and even the njump.me relay and it never updates. I've even been through the source in github to make sure I publish to all the relays it uses.

Njump is pretty cool, would like to use is as a profile URL on Twitter, but I can't get the damn thing to show the right info. 
 Njump has a bug where profile data isn't being updated properly. I would suggest you look to nosta.me instead.  
 Thanks, I'll check it out.  
 Yep... Just hit little search icon 🔍 at the top, and enter your npub or NIP-05 address and it will pull up your profile.  
 I had to learn more about relays after the reply guy thing and I have no idea what’s going on with them. 

I have some good ones now so I’m happy but even finding quality relays is a struggle and have several paid ones get crazy expensive. I only have one and it’s 10k sats a month. 
 10k sats per month? wow! 
 Yeah it’s nostr.wine 
 Yeah, I just added time to my filter relay. It's expensive, but it eliminates the need to have a zillion general relays configured. That greatly reduces data use and power consumption, as well as simplifying the setup.  
 which relay(s) are you using if I may ask. 
 General relays? Or public outbox/Inbox relays?  
 nvm just saw your comment above. 
 It provides the content of the top 10 or 15 relays, and eliminates the need for a dozen different relays. Instead you have just one, plus whatever specialty relays you want content from. Plus they have a distributed network with access points all over the world so you get peak speeds no matter where you are. Checkout https://docs.nostr.wine/filter/readme 
 I’ll have to dig into it more to see what I’m paying for. I saw it suggest so tried it out and didn’t dig much deeper. 

Also I don’t care enough 🤣 
 When I started on Nostr, devs were talking about how great it will be when normies take an interest in relays. I tried to explain back then, and ever since, that most drivers don't want to have to tune a carburator to drive to the store.

Instead of refining what we have, some have decided to make things more complex, which has put us in the weeds. 
 Not wrong. And still the model has advantages.  It may need to work on "auto" for most people and only be touched by people who actually know what they are doing.  🤔

But working on auto means someone has to pick default relays, or select default working relays from a list, maintain active ones etc.

Not trivial.

nostr:nevent1qqsqqu2gvwyj70jeefw48szypplw5rv4uzcqe5lnldpd2kqcrazyrdcprdmhxue69uhhyetvv9ujumn0wd68yurvv438xtnrdakj7q3qde6l09erjl9r990q7n9ql0rwh8x8n059ht7a267n0q3qe28wua8qxpqqqqqqzjusnqr 
 Is there an easy way to see a sensible relay setup? Would be nice to see for example what nostr:nprofile1qqsr9cvzwc652r4m83d86ykplrnm9dg5gwdvzzn8ameanlvut35wy3gpz3mhxue69uhhyetvv9ujuerpd46hxtnfduq3qamnwvaz7tmwdaehgu3wwa5kuegpz4mhxue69uhhyetvv9ujumt0wd68ytnsw43q3ttcfs or nostr:nprofile1qqs04xzt6ldm9qhs0ctw0t58kf4z57umjzmjg6jywu0seadwtqqc75sprfmhxue69uhhq7tjv9kkjepwve5kzar2v9nzucm0d5hsz9mhwden5te0wfjkccte9ec8y6tdv9kzumn9wshszynhwden5te0wp6hyurvv4cxzeewv4esdp32r9 have setup. 
 I think most clients allow you to see a users relay list on their profile 
 Ok I see Amethyst shows a list of your relays which is cool, but it also looks like mine are intermingled. I can't tell what any are being used for.

Do you feel this complexity has paid off for relay/battery efficiency? 
 yes they do. most users don't know what to do with that information. 
 Be patient. Satellite is launching some really cool solutions to a number of problem areas in Nostr very soon. No spoiler alert is going to be given here. There are brilliant minds working tirelessly to give noon tech people like me one click solutions to our everyday use of the platform. 
 I'm looking forward to the satellite update. been hearing good things 
 Yes. Most clients show a users relay on their profile. These are Will's viewed on noStrudel. (outbox didn't fit on the capture)
 https://image.nostr.build/27c6c772c596ac8e6a8470c225d4303dd12b52aac976ba0b2a3b7925aaf07eea.png 
 Yep.

nostr:nevent1qqsqqu2gvwyj70jeefw48szypplw5rv4uzcqe5lnldpd2kqcrazyrdcpz9mhxue69uhkummnw3ezuamfdejj7q3qde6l09erjl9r990q7n9ql0rwh8x8n059ht7a267n0q3qe28wua8qxpqqqqqqzx46tea 
 Normies better grok or get rekt. I think “normies” will learn or they wont. Next gen will learn and is. Eel, maybe not gen alpha SMH 🤦‍♂️  
 It is a whole new mindset, it was harder in 2022 when there wasn’t many guides for normies (including me), about how to use Nostr. 
And the clients where clunky and slow. 

It reminds me of the internet in 1994-1998. 
You had to figure it out and put some work to use the internet then. 
 I feel the other way around. 

Before wot and the in- and outbox model you would simply throw a handful of relays into any app and your nostr was synched across the network. Now you take your paid relays out of the inbox settings cause (of course) others cannot write to them. Then you setup outbox relays and app relays. Of course you want to be on a WOT relay as well and let's not forget that you should have some search relays too and of course a history relay in case you manage to nuke your profile and list of people you're following.

If you do all of the above right you might receive DM's or DM replies from the people you're communicating with and they might see your comments on their notes unless they don't.

If I have the same configuration on two different client seeing two different timelines and missing entire DM's on one but not the other or I see replies on one but not on the other then something doesn't work and I stand to my opinion that most normies wont spend any considerable amount of time trying to figure out why this is the case and how to fix it. 
 I see what you are saying. I haven’t used new clients recently or changed relays. 
Maybe I have to break some things again. 
hh | 4 days ago (raw) | root | parent | reply | flag +1
 I have several devices, including an iPhone and a GrapheneOs cellphone, plus several computers, so I use a variety of clients.

Just a couple of days ago I complained that we can't even get basic consistency between Nostur (iOS) and Amethyst (Android), as in not even seeing replies from people I follow, and I simply got the usual smug replies that boil down to: "use it the way is convenient for us (devs), not how you want" (in this case, use only one single client, as if there was one for all platforms), and "code your own client(s?) if you don't like it".

It's funny because I'm the first one to always say that no one owes jack to anybody here or anywhere -- unless you're paying. But it *really* goes both ways. Users don't owe jack shit to devs, even FOSS devs. If I don't like it, I won't code it. I will simply end up leaving.

All I hear from devs is how we "need" (I disagree) more users (because they want to monetize them I guess) but at the same time, they can't stop bitching when real users already here complain about basic functionality. 
 If its any consolation, as a dev, I wrestle with a lot of this myself. The way the relay servers work, and the disparity in how clients interact with them will often (most of the time) yield inconsistent results particularly between apps.

As a user I end of just having to wade through multiple apps and acknowledge I'll probably never see all replies, reactions or know who zapped me etc (lightning wallets and nwc are another issue of inconsistency)

I fear that mitigating this over the long term may lead to either centralization to nostr platforms like Primal and ZBD which will produce a better experience there, but silo off from nostr as a whole.. or put more demands on app developers to create robust caching themselves and background tasks to retry pulling/pushing events from/to relays that have draconian throttle policies or are not as stable as they make themselves out to be.

The thing is, users shouldnt need to be doing so much configuration of their clients, and constantly checking relay settings, or having to login and authorize and reauthorize connections. There's frictions that are unnecessary that add to the poor experience outcomes.

But one thing is for certain.. devs, myself included, need to set aside more dedicated time in the analysis, debugging, and address some tech debt to make their apps run a little smoother.

It'd also be super helpful for devs of nostr-tools and NDK to document actual good flows for how best to use them. Both of their docs barely scratch the surface.

With each passing year nostr has and can do more, but it does feel to me that 2023 was the best for overall UX. 
 Newcomers should just find a couple of "good" random relays ready to use; the client has to check inbox/outbox/etc compatibility and autoconfigure everything automatically. If the user changes the relays' configuration, the client should check again the relays' capabilities and confirm the update only if the settings permit a correct use of the app. 
 you're on to something!
One problem I see, probably common in software engineering, is that in many apps the explanation on relay settings does either not exist or it's written in developer language. Most of us nerds kinda get it or spend the time to figure out what's needed but my sisters jaw literally dropped when I recently tried to show her Amethyst. She loves the client but I could see how her brain went blank the moment she looked at the settings. I don't think she has looked at it again since then. I'll ask her over the holidays. 

So yes, certain features should be auto-configured initially and also better explained within the app. Relay indexer sites should add relays to tables with "feature ticks" (so should clients that recommend relays). If needs to be clear to the user where to use certain relays and where they shouldn't be used. For example, paid relays in the inbox config - your friends cannot write to. 
 Unfortunately that was a never going to work at scale and if we insisted Nostr would just become another Bluesky at best, so there is no point in wasting our time. 
 I recognize there are many problems that can be streamlined when it comes to the onboarding experience in Nostr (across any kind of client, really), but I don't think full-on abstraction is the answer.
The best way to make things easier is through education.
We know "Nostr the protocol" - But we don't know "Nostr the ecosystem". 

Possibly, the first step to get users to understand Nostr, is by focusing less on "Nostr the protocol", and more on "profile interoperability between apps". 
Relays need to become first-class citizens in the experience.  
The understanding that apps are talking the same language comes naturally then.

Even for normies, after watching these easy-to-follow demos for instance:
https://how-nostr-works.pages.dev/#/outbox

Do you truly feel like it's outside the grasp of the average user?
I feel like making relays into first-class citizens of the Nostr experience is the secret sauce, and it's like discord servers (but far more powerful) - Everyone knows they can get different kinds of experiences on each, and that each has its uses, and that their history is segregated between them, but can also be shared.
In the end, it's a matter of how we present Nostr. 


 
 100% 
this needs improvement. If the user didn’t even have to deal with relay management, even better 
 Besides that, the enormous perception of Nostr of outsiders is and will be HEAVY Bitcoin talk and... probably AI stuff mostly haters of AI tech.
nostr:nevent1qvzqqqqqqypzqmn477tj8972x227pax2p77xawwv0xlgtwha644ax7pzpj5wae6wqythwumn8ghj7un9d3shjtnwdaehgu3wvfskuep0qy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qpqqpc5scuf9ul9njja20qygzr7agxetc9spnfl876z64vps86ygxmsj53ct7 
 It's fine to have those, and those are needed, and it's not an issue. What is the issue is the initial process that should just be:

Create account > name, pic, bio, link > next > auto set > complete.

Then the user starts using the app. That's it.

The complicated stuff 'issue' is for users who want to dig. These would be handled in the background by the client, but accessible to the user id desired.