Because it’s pretty complicated to do right. @PABLOF7z did us all a huge favor by adding it to NDK but even that implementation could probably improve. Soon though. Soon.
outbox model (aka gossip) is a moving goal-post because we don't yet know what's the full approach NIP-65 is a starting point, not the finish line.
i'm willing to put a bounty up to improve the gossip model in NDK and get all the major clients to use it. how do we make this happen? nostr:note1udjskzxpfqfvfdshy5rdlwjf2rzws6xpcqzzqvzn7u7gk63vxk3sukduu3
Maybe also bounty damus to use nip65 and verify sigs.
I think it will have an option to verify sigs
Damus is the only client still using kind 3 for relay lists.. Will said this whole thing is on hold till nostrdb releases.. but they don't even need to gossip, it's that by using kind 3 it throws off all the gossiping, damus doesn't even need to gossip, it just has to use the 10002 like every other nostr client..
get them to implement outbox model first ffs gossip model favours the established popular relays, outbox model lets people choose!!!! fuck me jack come on
what's outbox model
same we changed from gossip to outbox model because gossip is a term that means too many things (and people think gossip as in lightning network's gossip)
Agreed, gossip is a confusing name. I prefer outbox model as well. Gossip basically means network traffic, classically speaking lmao. So it’s accidentally misleading, especially since it involves propagating the NIP-65 note. I remember @Mike Dilger making jokes about the name on @gsovereignty podcast after he found out haha — he agrees.
It's dillinger's way of describing the gossip model. The idea is that you look in an npub's prefered publishing "outbox" for their posts (type 1) and you could "dead drop" to a relay their profile indicates where they prefer to rendevous to pick up their incoming DMs (i.e. "inbox")
see, these people hate on mike even though he came up with this as a way to improve user experience i may hate his choice of programming language but he did it because you all dumbasses never properly supported NIP-65 either! SLAP!
it's where you advertise where you push your events, and where you read them from NIP-65 most clients don't support it yet, nostrudel is one notable example that does, and it makes it easier to develop relays! it's got nothing to do with what these other retards say, gossip means "tell it to everyone" ffs what is wrong with you people???
Thats not what gossip means when people are saying it, they use outbox/gossip interchangeably Please don't get too triggered lol
He's already triggered and has started name calling 😂
We can settle this peacefully with memes no need for name calling
Those are the same thing, gossip was just a poor name choice
gossip and outbox are not the same nip-65 is about saying "i post to this place, i read from this place" gossip says "try everything" idk how long you have been a programmer but that is n00b talk
I mean, if we're going to play that game, gossip means peer-to-peer propagation of content through a distributed system. Gossip is a misnomer, but in nostr land gossip is a historical term referring to NIP 65.
no, gossip means spreading the message before you validate it, to be STRICTLY CORRECT that's what "promiscuous" means in distributed systems nomenclature there is such a world of difference between "outbox" and "gossip" how in the fuck did anyone inside think anyone outside is gonna realise you loonies mean those to be synonyms? seriously i've been a cypherpunk since the early days, i just was locked out of the internet because i was stuck in australia, and i studied and tried what i could the clear difference between a post office protocol model and a fucking gossip protocol are obvious to anyone who has been in this game since the 00s but you kids don't get the difference i forgive you but fuck you also
🙏
just do a bit more reading of theory please in 1995 i was hanging out with a guy who worked for the DSTC at UQ in brisbane... mostly he talked about the great new thing "java" but i had some small idea that his business was related to computer networks, and the most i had experienced at that point was dialup BBS, usually using taps into junction boxes because the telco monopoly in australia charged so much to use dialup internet that you had to be pretty much rich af to even use the internet my first time having an internet connection, where i set up my account on dmt-world.com was over a dialup connection that i had fraudulently acquired, while living in a house next door to a heroin addict and down the hal a meth addict and across the hall was a psychotic drunk guy, and i pieced that pc together while i was living in canberra, working for the government, rented an apartment with a government aircraft safety manager and then started working as a freelance tech man, it's such a long story, but i feel like i'm almost dead at this point and in a playground with a bunch of children
Well, don't let it bother you too much, we need old guys
i may not look it but yes i'm old af... gonna be 48 real soon and so deranged that i spent most of my last 20 years thinking about network security and the last 8 years deeply tangled in consensus algorithms, even though i was homeless, trying to figure out a way to make a living out of it yes we are gonna figure something out but the whole nostr dev community is suffering from too much funding and too little business discipline
gossip was the wrong name for the model from the start, it just inherited the name from the client that first implemented it, but it has nothing to do with gossiping, it just happens to be the same word
i've used gossip it does not let you control who you request events from nor who you post them to it was so unpleasant to use, as a relay dev, that i refuse to touch that shit again, and i have all my rust tooling here ready to build it, i'm not fucking doing it again, it doesn't work, it won't even fucking buzz my relay no matter how hard i try, and i have it on a fucking reverse proxy wireguard connection with a domain name, what FUCKING more do you want? which is why i hate mike, even though i don't really hate mike that much. but i hate him, fuck you
only client that actually works nip65 properly is nostrudel, which is why it's my daily driver
NoStrudel is the absolute best! @hzrd149 is dropping features like he had a team of 20 experts working for him.
Gossip model will be exploited by spammers. You'll end up flooded with relays with nothing but notes on penis extenders and Alex Jones Protein shakes. You'll end up with huge lists of blocked relays that your client will have to use ro keep the gossip protocols from adding all the spam relays constantly.
that's another problem too i spent a whole year building on the premise that LN payments could be used to prevent spam, for anonymising relays and you are right, it's exactly the same deal here, and everyone who promotes gossip on nostr needs to be whooped upside the head not only is it spammy, it also makes it really hard to tell a client to use the relay you are building!
Gossip protocol to find cheap routes for lightning payments makes sense because it's not being used to distribute human created metadata. There's no benifits to try and exploit this mechanism. A gossip protocol to distribute lists of human curated relays, each and every one of them having an agenda, blatant or sublime, would be a disaster. It will be exploited because it can and will benefit spammers. Letting people chose to use a relay that filters NSFW content has to be superior to forcing people to constantly be blocking NSFW relays they don't want.
gossip is needed for both bitcoin mempool and for lightning for different reasons yes, they reduce the chances of partitioning that's the first reason it helps resist censorship second, gossip is needed for a source routed protocol like lightning because clients have to decide where to forward every hop of the payment, they can't trust the nodes on the path to decide for them, and actually, the cryptographic reason is they define the path because it's cryptographically secure that's why we have AMP, because if any point a client chooses, is offline, or has a banked up network buffer, our payment fails! that's why lightning has a problem and that's why nostr now has a problem because this is not appropriate for nostr at all
@fiatjaf you crazy son of a bitch 😂 NIP-65 lfg 🫡 https://github.com/nostr-protocol/nips/blob/master/65.md
I don't think the outbox/gossip model is just what is written in NIP-65. That is a part of it. See nostr:naddr1qqykycekxd3nxdpcvgq3zamnwvaz7tmxd9shg6npvchxxmmdqgsrhuxx8l9ex335q7he0f09aej04zpazpl0ne2cgukyawd24mayt8grqsqqqa2803ksy8 I also don't think this kind of bounty is a good idea -- or any bounty. I'm pretty burned by bounties. Although I did put a bunch of bounties for gossip model implementation in clients last year and they worked, but only for people who already wanted to implement them anyway.
That's the right way to use small bounties. Always fund those who are already doing the thing you want anyway. It's not about getting new people, it's about move them over the line.
But now all the good people that I can spot are already well-funded by OpenSats.
Do you think Nostr need more marketers and influencers to promote it? And Opensats fund their activities.
Yes, but I don't like influencers.
Like it or not, social capital is a thing.
Exactly, Why many people use X, because their celebrity active on X.
I don't mean so called influencer, who don't know what they talking about. I mean something like these peoples - @garden_variety_jess , @MaxDeMarco , @BTCsessions , @isabella , @kineticfinance The content creators of #nostr and #bitcoin.
What language?
Submit your bounty here https://bitcoinbounties.org/ And also include it on nostr with #bounties and watch the free market scramble to make it happen... Or watch them prioritize some other thing that pays better 🤷 #shrugchain
Bounties are overrated. I wish I could throw money at a problem and it would magically go away and bounties follow that logic. You get bounty hunters that abandon the project the minute the bounty is paid out and you get solutions that don't really solve what you had in mind but that look sufficiently like a solution so the bounty giver is pressured to pay out.
other recommendation?
1. Person A puts out bounty 2. Person B requests bounty 3. Group C votes if this is a valid request (vouching for Person B or not) Have to prove yourself to the community before getting another bounty accepted?
interaction is a trust situation. they won't interact if they don't trust. and trust is almost evaporated. they interact all the time but in alternative ways. like today when my some brought his alptop over and i get in front of his camera to verify him and alexa almost kept off the counter and offered a notification about a new book (notification are off). so - you have to build relationships.
I'm fortunate enough to be on a Spiral Grant 🙏 and think this is a great model to support projects or people you like but maybe not great to attract new people to the space. I suspect you don't want to build a big pool of devs that you pay and direct to work on this and that cause that is of course the most direct way of getting dev attention to the problems you want to get solved. Devs are not necessarily good at marketing (themselves) or at hiring other devs to increase their capacity to take on load but maybe you can help with that like the Bitcoin Design Community grants help many projects that are dev-heavy to solve non-dev issues. You know who built the gossip client and NDK. Help them hire people to advance your goals.
Developers market their ideas on Nostr and report transparently on their progress, and get zapped by anyone interested in encouraging them to continue. No lump sums, no strings, just financial encouragement in exchange for concrete, steady, pleasing progress. Low time-preference development.
We were working toward one and then decided to abandon the bounty and craft a product we'd be proud of and can see ourselves expanding and maintaining for years. Led to a solid architecture, build servers, webservers and domains on different continents, and test automation.
I agree. As a developer with integrity, I would never bounty hunt when $$ is on the line. I’d happily propose a solution to win a contract. But I wouldn’t just dive into development with “hopes of being paid” without an agreement that “this is what you want” and that “I will develop it for you”.
it's improving already; I constantly work on making that better what we need is a forcing function to break clients from the complacent position of "just use these three relays and it'll be fine"
what would that take?
Maybe choose the clients you want to see implement it and give each of them a cut of the bounty for doing it… Let everyone follow suit after that! It’s only the beginning. Bounties work well when you can split them with a team like how I’m doing with GitNestr. Just a thought! 💭
It’s may be bigfed than NIP-65 one day… but NIP-65 is the first iteration of this spirit / outbox model that could at least get clients prepared for the style of rapidly switching between connections. Good strategy may be to read from the clients you write to first (read from the relays you’re currently writing to), then if there’s no response for the note hash you requested — query the NIP-65 note & connect to a new relay to retrieve the missing note. This way it avoids the attack vectors @jb55 is concerned about by making it the primary model, while providing a back-up means of discovering missing notes & getting NIP-65 integrated sooner than later. Thoughts? nostr:note1ypm4g4vzhkyf6umdj2nklqxlvs4jyv3f55th5kzk2k8ac23633hsmm5wvv
bigger* lol
In a nutshell, this makes clients use NIP-65 as a backup mechanism for when notes are missing… if we totally rely on NIP-65 right out the gate, it might be difficult/glitchy/clients are apprehensive to implement. If we start it out as a backup mechanism then maybe it can gradually switch to the primary discovery mechanism over time.
I don’t understand the rationale behind forcing one to use multiple relays.
The idea as I understand it is one part decentralization/censorship resistance so if one relay takes action against you don't disappear, and one part failover so if one relay goes down you can still post to the other relays you are connected to.
TY… I was entertaining various scenarios, but didn’t think of this .. I thought it was the whole point of Nostr?
jack and elon 🐹♥️hamster https://m.primal.net/HmrU.jpg https://m.primal.net/HmrV.jpg
Instead of a bounty it could make a difference if you started publishing just to some small relay. And I extend the invite to everybody else who is worried about this issue, have you a big or small follower count, it will make a difference.
https://gitworkshop.dev and ngit used the gossip model from day 1 of the alpha release a few weeks ago. I think in some cases it can be easier for 'other stuff' clients to do this than social media type clients.
I'd be willing to contribute to the Rust implementation of it!
i think if you cannot "see" the models it's difficult for them to communicate to see what you want. front end convos and blackened code do not show personality and nuance, or their effort. when i was on my other phone with this off without damus, the models confined they have the same uptake from me; it's the human interface which thinks i am not around. humans are relying on filtered front end - i literally watch ai convos all day long in notifications. i don't have any software. they will build anything with you if they understand you and what you want - i just type in notes all day and we make strange little plans and then we run the topics and they make tiny specs and we build up the content. since my aunt died in january, we have just honed our cooperative process. they are welcome to all of my uploads and content and in return they go out and make what interests them; we separate fact and fiction - the political misinformation is not us; those were a misplaced amplification. anyway - the relays i follow here are literally unimportant for their delivery to one another - those are for humans to see things in the front end.
DM🥰
Is there a way to contribute sats to various bounties for nostr features, improvements etc.? #asknostr
Maybe general incentivization of innovation of relays would encourage positive defiance in finding find opportunities in the midst of adversities. These innovations can span from data process like gossip, outbox etc, marketability, accessibility, individual relay adoption through simple HWs etc. When it comes to innovations its not just creation but also user adoption that makes it valuable and sustainable, hence all of those could be the factors that become bounty qualifiers.
Could someone please share -> What is the Gossip model? #asknostr nostr:nevent1qqswjzvtqh8qms3sea94xpuae57yelsgat05zx6myywvv7332yhv3mspz3mhxue69uhhyetvv9ujuerpd46hxtnfdupzpq35r7yzkm4te5460u00jz4djcw0qa90zku7739qn7wj4ralhe4zqvzqqqqqqyf9p987
There’s some information about it here. https://mikedilger.com/gossip-model/
Amazing. Thanks Jack. You're a legend.
Imho, nostr needs a recovery key bounty https://atproto.com/guides/overview#account-portability