Same. It really does feel like detoxing. Drawn much more to opening nostr. Still use X as a quick news feed. But it makes me tense and jittery. I can do without the forever war. Nostr is a calm place. I read about ppl making prickly pear juice and engineers talking of the benefits of the machinists rule and the builders trying to figure out this new technology. What's most important in life is what's right in front of me. And most ppl are good through and through. Nostr reminds me of both those things.
Best way to find content is searching for hashtags
Some clients do search better than others
Plebstr is good at search
nostr is great because it's permissionless for developers as well as users. No API keys needed!
Soooo I'm learning to build a nostr client for fun and maybe one day I'll build something useful
And I'll sporadically post resources which I've found helpful along the way and ramblings which will mostly revolve around React as it's the framework I'm learning with
I'm using Vite for starting a project https://vitejs.dev/
npm create vite@latest
npm run dev
Job done
This tutorial using the nostr-tools library is clear and well paced
https://www.youtube.com/watch?v=O9bzEvv-oFE
The nostr-tools library: https://github.com/nbd-wtf/nostr-tools
Later I'll try the NDK library by nostr:npub1l2vyh47mk2p0qlsku7hg0vn29faehy9hy34ygaclpn66ukqp3afqutajft which is higher level and does nice things with relays and uses nostr-tools internally: https://github.com/nostr-dev-kit/ndk
If like me you're new to this probably the first big (but fun!) hurdle will be the general social media challenge of working with streams of events. Not the nostr protocol itself which is dead simple.
Streams of events which affect other streams of events which affect your application state which affects your streams.
It's very easy to create an INFINITE LOOP
The first indication is the laptop fan preparing for takeoff
The second is the console log showing the relays spammed with hundreds of requests... to which they are remarkably tolerant
Working with event streams in React probably means using useEffect
There's a tendency to overuse useEffect because of not realizing the purpose of useEffect is synchronizing streams of events ("effects") i.e. just what we need it for and no more
This really is an excellent talk, both on useEffect and handling events in React in general
https://www.youtube.com/watch?v=bGzanfKVFeU
... I don't think a state machine is a practical fit to this particular problem but I might be wrong. One approach I'd like to try which is literally made for working with event streams is RxJS https://rxjs.dev/
Sometimes you have to do things which are ugly and you need to forgive yourself for doing ugly things because at the end of the day the ugly thing is solving the problem...
useEffect creates an infinite loop if passed vector dependencies because it does a shallow check on referential equality. Various workarounds are suggested including useMemo and useRef. Good discussion here:
https://www.youtube.com/watch?v=dH6i3GurZW8
I like doing JSON.stringify on the dependencies as it makes it abundantly clear what the purpose is
And TypeScript makes it safe to do JSON.stringify on Map keys 😃
Project status: amazed to see events come in. It's like building a crystal radio.
Agreed
The thing I love about nostr is that the protocol is agnostic
Ppl can build beautiful walled gardens or beautiful wild free for alls and everything in between
Build everything and let ppl choose
That's freedom
Also some ppl will never grasp key management
That's reality
🤭

wonderful
Narrator: it will do absolutely nothing against spam bots
The comments are interesting. https://evanp.me/2023/10/06/activitypub-the-socialcg-and-the-social-web/
Hmmmmm
"There can’t be multiple winners"
Why not?
Metcalfe's law only impies that the overall adoption might be lower
Ppl are leaving centralized social media for very different reasons & if those reasons aren't catered for by a one-size-fits-all solution - and currently they're not - that prediction might be incorrect
And even if it isn't
What is winning?
Is it maximising adoption uber alles?
Or bridges and choice and decentralized decentralized protocols :)
There's no such thing as provocation
It's a choice
You always have a choice
Japan does this well
Mega cities with quiet main roads and without traffic jams even in the center
Because almost everyone cycles or uses fast & affordable public transport
Lower stress, better air quality
The hardest part of joining a social network is building contacts
Around 40 seems to be the critical mass where it gets a lot easier
Now I have some nice lists going and great content coming in and starting to spend too much time on my phone 😊
"oh no I'm following twice as many ppl as are following me & this will deep six my reach"
Why do users even need to think about such things?
Algorithms degrade user experience
I wandered into Global just now
Fuck that was scary 😂
The creator => consumer 'social' feed model is great for generating ad revenue but it's a replica of the corporate press with 10x the velocity and intensity
Caste systems promote friction and dysfunction and are an abomination before the Lord
"No more political parties"
Imagine the impact that would have on the media, both corporate and social
And on the inane culture wars
It would be an untried system so of course the unknown unknowns
But the sheer power to solve 90% of political dysfunction in one fell swoop
Why have I never heard this idea discussed before?


