Oddbean new post about | logout
 initial version is out 👀

still very early though, only have a ratelimit plugin atm

https://github.com/damus-io/noteguard nostr:note1y7vxy6gaest9809hrg96zl3vnsc3rwveuq8ad2l5uwdhhapd93tqu0w5v3 
 What is this? 
 When he tells you, will you translate???🤣🤣 
 Can’t wait to figure out what the fuck this is 😂

#idontunderstandshitaboutdick 
 Right?! Like noteguard? I’ve only been gone a few hrs 
 (You can spy on your partner 24/7 by following @nostr-commits ) 
 Good to know 
 I’ve been doing this before and after I took elliott to the park. Don’t worry i am efficient i wasn’t just doing this all day 
 🤣 
 So many folks appreciate your commitment! As a non-technically-savvy artist, it’s so rad to see amazing things developed in real time like this. LFG

#grownostr 
 my gr8 gr8 x10 said"worry is a waste of mind, now get on that f'n horse"  t-y gr8gr8Ghengis 
 When you run a public relay people spam the shit out of it, this sits in front of a relay and blocks spammers. It also allows you to extend the relay’s functionality. We will also use this for extending the damus relay to enable apple/google push notifications. 
 My spam/news bot/porn/spam filter on Ditto is over 600 lines! That's how bad Nostr's design is. 
 I’m too high to understand rn, but maybe later will you explain how the hell a relay can know something is spam ? Is spam classified as just continuous noting or something else ? 
 Spam is if you’re trying to write more than one note per second 
 Omg you said it in human. Fuck yeah 💪 
 Talk yo sh!t hahaha  
 I wonder if this is why the Wavlake relay keeps throwing 500 errors lately 
 What else is to be implemented? 
 Well some more plugins would be nice 😅. Like duplicate content filter. I want to use token bucketing for the rate limit plugin since it’s using something pretty naive atm.

We are going to be using this to implement our high push notification service since our deno one is giving us trouble 
 IIUC, upon a new event, strfry sends data to the plugin on stdin, the plugin executes once and then reports back on stdout. So then, how is the rate limiting sources persisted between notes?  
 not sure what you mean. why would it be persisted between nodes, which nodes? 
 Not "noDes" but noTes. When strfry sees a new note, it sends it to the plugin you specify in the config over stdin. The plugin executes and responds back over stdout. In other words, unless you write to file, the Map that holds track of the sources will not be persisted for the next note (or the next execution of the script). The sources I refer to is this: https://github.com/damus-io/noteguard/blob/master/src/filters/rate_limit.rs#L16 
 Maybe I haven't had enough coffee yet, idk 😂 
 Lol i just woke up my brain is still booting. I should coffee before I nostr 
 Maybe your brain is dual-booting two different OS simultaneously? 
 strfry doesn’t spawn the plugin once per note, it spawns it once and streams notes to it via stdin/stdout 
 oh, TIL. Then it makes a lot more sense 
  
 Please don’t limit ephemeral events 🙏

nostr:nevent1qqsd4x5vzdjvsssxyjw4xs3zfuqcfwfdej73uqwptyg58spvf4zw4qgpramhxue69uhkummnw3ezucnfw33k76twd9ehyct9dsh8xurpvdjsz9rhwden5te0dehhxarj9ehhsarj9ejx2aspr9mhxue69uhhqatjv9mxjerp9ehx7um5wghxcctwvsq3gamnwvaz7tmjv4kxz7fwv3sk6atn9e5k7lthdsz