Oddbean new post about | logout
 OK so, first try with nostr:
I'm using "gossip" (github.com/mikedilger/gossip) because it's open source, and it's a program that runs on your computer.  Which is the idea of this whole decentralization thing right?
But...  I don't know if anyone is following me, I can't find anything about that.  I posted a few days ago and never saw any replies, but then looked on iris.to and there *were* a bunch of replies.
Does anyone know if there are docs about how to use gossip?  Using a common word for the name of the software makes it pretty search-resistant, and in the docs/ folder of the repo there's not really anything about how to use it.
Maybe it's some setting like "fetch replies to notes you posted" that I need to enable.  And also should probably be enabled by default.  Because otherwise can't really talk to people on this :) 
 not sure, but @M. Dilger so i'm sure he knows 
 It works! 
 Welcome. 
 #gossip works really well but it is not an isolated thing ..

 because #nostr is like an elephant.. gossip does well on the tail side .. if you want to listen through the ears - try out #Amethyst .. if you like beautiful trunk and teeth - try out #nostrudel 

.. and there are many many more angles to check out  ..

In the end you would never get the full picture but you will have an idea .. that elephant is pretty big thing :-) 

Welcome 🤗 and I followed you !  
 I use gossip on Linux mint. Replies live inside your inbox on the left sidebar. In my case it doesn't seem like gossip knows about the multitudes I've followed through Amethyst. I know there's something about advertising/publishing your relay lists but I don't know exactly what that is 
 yeah, gossip configuration is hard 
 i don't even bother using it because i always open it up and get zero posts and i can't figure out how to add relays and it doesn't do any searches to find my relay list, which is uberghey

as vitor has been mentioning today about the problem of big outbox lists... it should be scanning the network for outboxes, that should find your relay list and then it should `just work™️ ` 
 I clicked followed in the sidebar, then top right "edit list" button, and then merge, and that brought in all the missing people 
 That is good.

Person-List merging is manual because of the clobber issue. 
 #gossip is simply the only sorta decent desktop app for nostr... i've resigned myself to using coracle and nostrudel because they help me do relay dev and they work pretty good mostly

gossip is overly complex IMO, hard to use, i recommend https://coracle.social to get a really nice intro to this protocol... https://nostrudel.ninja is a more geeky client that lets you poke at lots of things (inside the other stuff section on the sidebar)

also, hi! you are the co-inventor of the Lightning protocol, welcome!

i just want to say, isn't source routing a bitch... the problem of nodes learning the state of the paths on the network... but there's no obvious path routing solution for atomic, anonymous transfers of balance state between nodes to route payments, so it had to be source routed 
 Thanks!
Yeah I need to learn more about how this works, and I'll try to stick to the desktop / 'self-hosted' stuff if I can.
Right now what seems to work is using a website like iris.to to find replies, then copying the event ID into gossip.  With the event ID gossip finds posts and I can reply (like this!) 
 you just need to figure out the relay configuration

it's too obfuscated for me... gossip is written in Rust so i'm not touching it, and i don't understand how other people figure out how to get it working, it seriously is a several hour episode the one time i got it sorta working, i personally feel that people who use languages like C++ and Rust have their models of reality warped in a way that is difficult for primitive natural minds to decode the output from 
 fwiw, it's very possible to host nostrudel (or other web clients) locally instead of using it from the author's website
this is what i do, it's simply a static website once built 
 So like it lives on your device at some ip:port within your browser? I ran sillytavern, that's my only concept of something like that 
 sometimes you can even get away with file://.../index.html, pointing it at the local output, but not all web apps work that way due to cross-site permission issues

so usually you'd run a local web server and host it from there, either on the same machine or within your LAN

the javascript build systems usually have a webserver built in for developer use; eg "pnpm run dev" will spin up its own webserver locally (see https://github.com/hzrd149/nostrudel?tab=readme-ov-file#running-locally)
 
 Cool, I will try that, then it's also "multi-device" in an easier way than using sshfs for ~/.local/share/gossip :) 
 oh yeah, you could also use wireguard and host it on a VPS only accessible over wireguard 
 well, even you could run it on your own home server, if it has a wireguard tunnel to a VPS and you would then be able to access it away from home too 
 i seriously doubt mike's client can cope with two instances writing to the app DB... that stuff will just be in the browser cache if you run a custom instance of coracle or nostrudel 
 If you run two instances it won't obviously fail right away, but it wasn't designed or tested.  I've run single commands while the UI is running though to no ill effect. 
 have fun causing race conditions

welcome to the real world of concurrenc networks 
 this is correct: local state for webapps is stored in the browser, even if you host them locally
i don't think this is easier to sync multi-device than eg gossip's local files

nostrudel does store its settings in a relay-side 30078 event as well, this gives it automatic synchronization of settings between devices, maybe this is enough for what you want 
 yeah, this is also one of the big hassles with web apps is the web browser doesn't easily let you connect the app to a local cache relay... you could then also connect that cache to wireguard and use the same cache on your other devices as well

to do shared state like this you have to build a separate configuration/cache service 
 I haven't tried multi device at the same time, yeah I can image that would mess things up.  I'm closing gossip on the desktop, then sshfs mounting on a laptop and using that.
Now that you mention, I will probably forget to close it on the laptop at some pont and try accessing both at once and get to see what kind of fun that leads to. 
 yeah, since you are linked via ssh just do a "killall gossip" before mount 
 gossip is one of the hardest clients to onboard onto.. it starts to work a lot better as you start following others and also, setup a relay list that includes some mega relays to read from so it can find more replies.  the mega clients dont play nice with outbox so people's replies will go to those client run relays instead of the relays you wanted them to reply on. (damus, primal, ..)



 
 Thank you for doing computers the right way and running desktop programs. I'd say you have to stare and hover around the "My Relays" page on Gossip and all its dozens of configurations before it starts to work, but I don't know how it sets up things for you when you first create a keypair through it, maybe it just doesn't set up any relays at all by default? @bu5hm4nn @M. Dilger @dtonon

Try adding relay.damus.io and nos.lol both as read/write/outbox/inbox just to see if it starts to show at least something, then you can tweak it later.

Oh, and set purplepag.es and relay.nos.social as "discover". 
 In every note there are some buttons on the upper left.  One of them is a circled dot.   That takes you to the thread view.  This shows that note in context of a thread, with it's replies and ancestors.  The equals symbol is a menu of things, each with a popup submenu.   The eye, when hovered, shows the relays that the event was downloaded from.

There are buttons at the bottom of events too.  The chat bubble lets you reply.  The refresh arrow lets you repost.  The ellipsis lets you quote.  The lightning bolt lets you zap a lightning payment to the author.  And the heart lets you react with an emoji.

 
 Your npub you posted on Twitter was hard to find. Coming from Calle’s post to find you 
 Hard to find within the nostr network?  Is there a better way to advertise / broadcast it?  People have said link to a DNS domain I control which I'll get to at some point. 
 Might be since you’re using gossip, your first posts may have not made it to relays I was looking at 
 Fwiw I can’t search the official gossip client’s npub either

@Gossip Client 
 One thing I’m noticing is that your npub nostr: @adiabat doesn’t appear as a name on Damus. It could be the way it’s stored in your profile. You might want to try signing into a web client like @primal with a browser signing extension like @Alby to update your profile details. 
 Welcome to nostr! 
 Welcome 👍 
 Hi Tadge ⚡ you need a Lightning address 
 Welcome :) 
 Hi, sorry that it didn't just work.  I see that your relays are setup, and people are replying to you.  I'm not sure why you aren't seeing those replies.

I probably should spend a few weeks writing a manual.

The architecture of nostr makes it hard to find out who is following you. You would have to lookat every "who" and then check who they follow and if you are in that list. 
 Outbox Bootstrap relays (i.e. purple pages) could be a good way to get an idea of these follows lists, but yes, agreed it’s an unsolvable problem. (Well, problem is an overstatement; it’s a stupid legacy metric that was always bullshit in centralized platforms)

@fiatjaf  had a cool idea about using probabilistic COUNTs based on HyperLogLog to aggregate large sets of data across multiple relays without downloading all the data multiple times and having an estimation of the duplicates. 
 not sure if writing a manual is the right way to go Mike.  nobody reads a manual their car comes with - why should a person read a manual to shitpost ?  

actually my Volvo has an on-screen manual.  you can just search it for anything for example i didn't know how to enable windshield wiper rain sensor so i searched the manual and found it.  unfortunately the manual can only be used while parked which is extremely frustrating.

my mother's Bernette sewing machine has a smarter solution - it has a high resolution color screen and it shows step by step instructions on what to do WHILE you are doing it.  so for example when you go to insert the thread it shows you on the screen how to insert it.

if Gossip should have a manual it should be integrated INTO the Gossip interface like on the Bernette sewing machine.  that is clicking on any given part of the interface should pull up a page related specifically to that feature.

nobody is going to read a 50 page PDF and remember everything in it just to be able to post.

nor are you going to update it every time you change something in the client.

ideally you should just have things work intuitively, but you software engineer guys are incredibly bad at this.

maybe test the clients on normal people i am sure you will discover they all stumble in the same spots and then simply redesign those parts until they don't stumble there anymore.

Temple Grandin famously redesigned facilities for cattle such that instead of cattle constantly needing to be beaten to go where it is supposed to go the cattle went there voluntarily - reducing injuries by order of magnitude.  

Temple did this by thinking inside the minds of cows, which made her ( an autistic ) genius.  but believe it or not Mike you can actually speak to humans using language - you don't need to read their minds - you can literally ask them things.  Like you can ask " why you did this and not that ? " and so on ... 
 To see replies, check the 'inbox' in the left menu, not the 'followed' 

Also, every post has a button at the top right to show its thread. 

to know if you have followers, try searching for your own npub in: https://nostr.band/ 
 Keep an eye out for @GitCitadel work. Our project Aedile will be powering desktop clients in the future. We too believe desktop is important. None of this phone/website garbage, as we also build a web app for a totally different purpose XD 
 Welcome friend 🤝  
 Utilizing hashtags help alot! 
 welcome to insanity