He can be the chief economic advisor to the old and busted economy.
We're good on this new hotness.
All right, let's keep at it with The Great Nostr Migration. Made a video using nostr:npub1g53mukxnjkcmr94fhryzkqutdz2ukq4ks0gvy5af25rgmwsl4ngq43drvk nostr:npub1g53mukxnjkcmr94fhryzkqutdz2ukq4ks0gvy5af25rgmwsl4ngq43drvknostr:npub1wnwwcv0a8wx0m9stck34ajlwhzuua68ts8mw3kjvspn42dcfyjxs4n95l8 to show how easy it is to join us here - if you have Twitter account still, would appreciate likes, retweets and replies 🫂
If you created similar guide, share the link in replies or post it here, I'll retweet 🤝
Biggest reason I personally feel like this is about as sure of a thing as it gets?
During my quest to get a functioning incoming 80 and 443, I got a first line Comcast tech who knew what a Mac address is. Blew my mind - now that's destiny.
For the first time, I own my own big boy internet drop with unblocked 80. This is a good day.
Some people look at nostr and see mastadon.
Other people know what a protocol is. Nostr is nothing short of incredible, and I say that as someone in the field as a hobbyist and pro a loooong time. This may approach Woz in terms of impact.
I can always tell when I'm back on "normie" internet, because I think every single truly gifted UX artists are working over "here" now
Like Jitsi. Add desktop sharing and bam, it's like "Skype? Ok grandma,"
Search is almost certainly going to need something beyond the protocol to be of any use, and will most likely be best resolved at the individual application level.
Nostr is the scaffold you build on, it's universal verified unique user identity management, not the content.
Imagine this: the hardware equivalent of a pi 4 with as much oomph as possible, no audio, no USB power wasting. Wifi/bt mesh.
Put it in a rugged box covered in as much pv reception as possible. Heat issues to be researched of course.
Put relays in them, configure them to run as an asymmetric drop in', do what you can while you can way as a supermassive array that tries as hard as it can to be as efficient as it can,, and the more the merrier.
Make millions cheap. Kits for kida to put together would probably sell, but I'm no marketing pro.
Make an independent global network that theoretically could operate as.a baee backbone as long as enough of them touch the sun, and even fragmented would be locally useful.
It'd be cool if someone did that and sent me one before I have to make my own. Or if someone already has, can I help? Just a thought
My technical analysis of NIP-95 and file distribution over relays:
First, why do people want to distribute files directly on relays?
Well, the motivation is pretty straightforward: we want to be able to treat files like notes, meaning:
1. We can verify their authenticity
2. We can distribute them to multiple locations, and re-distribute them if the locations change
3. We can link to them without having to link to a particular hosting provider (that may go down or stop serving the file in future)
In all honestly, I agree that relays (or relay-like systems) are a perfect fit for this type of need, and I think it’s inevitable for relays to eventually start offering some form of file hosting service. Not all, but certainly paid relays might.
NIP-95 is one proposed way to get relays to host files. Dead simple: get the file contents and stick it in a Nostr event, and you’ve got files on relays! Certainly, it satisfies all three needs I mentioned earlier, so what’s wrong with it?
Well, it doesn’t appreciate how different files and notes actually are. Consider these particular behaviours that apply to files but not to notes:
1. Streaming
Files on the web are streamed in, meaning that you can see a low-resolution image well before you’ve finished downloading the full file, or you can watch the beginning of a video or beginning of a sound file without downloading it in its entirety.
If files are embedded as base64-encoded strings inside note content, a lot of this streaming behaviour that is taken care of by the browser needs to be handled manually by clients. You’ll need a streaming JSON parser and a streaming base64 parser, and if you’re lucky the note fields stream in in the right order that you can start showing the note as it’s streamed in (which is not guaranteed).
2. Seeking
Continuing along the streaming idea, files are also seekable. You can fetch a part of a file and download just that.
Again, Nostr notes don’t have such functionality at all. You get them in their entirety from beginning to end. What’s more, video files include seeking metadata at the beginning that tell a video player at what byte offset in the file they can find what second of video, enabling seeking to work. Even if you could request a specific range of a note, you’d have to play some tricks to find the right byte offset in the base64-encoded note contents that corresponds to the right byte of the file. Again, here, this is all work that comes for free in a browser, and it now is left to clients if they want to offer a good user experience.
(For those who are curious about the technical side of this, on browsers who support the MediaSource extension, you can pass a video element your own buffers of video data. So in theory clients could stream in note contents, decode them, and pass them to a video player. However, the MediaSource extension is crucially not supported on iOS, who exclusively permit Apple’s HLS streaming format.)
3. Request cancellation
Finally, to make all this magical video and file streaming work browsers frequently open requests, get what they need, and then drop the request before it’s completed. It’s the final essential behaviour that make the streaming user experience good.
How do you cancel an incoming websocket message? You have to close the websocket.
You’d have to close the websocket, re-open it, re-sub to all the things you wanted from the relay and hope to dear god that you haven’t accidentally re-subbed to the file.
To Conclude
It might sound to some like my critique here is missing the point entirely of NIP-95 files: they’re not supposed to cover all use cases for files and are generally just small images.
And that’s where I’m just not so sure. I think if NIP-95 is spec’d to only be for small files that won’t really upset relays, and that won’t really need streaming, then it’s already lost a lot of its appeal to me. Because that means it will only ever be able to solve for a subset of the problem, and the problem of actual file distribution remains open. What makes Nostr great right now is that everyone is shipping and testing lots of new wild ideas, and we all have a willingness to try and see what works, and adapt, and evolve. What’s more, there’s a certain anti-tradition mentality where nobody’s shy of questioning the established ways of doing things and that’s something that makes me really love developing for this ecosystem.
That applies just the same for file distribution. Maybe the way it’s been done traditionally isn’t THE way to do it, and novel solutions should be considered. But we risk taking steps back by not being aware of how these kind of problems have been solved traditionally and why. HTTP file streaming is very very capable, and we should try to craft something that can preserve all the great benefits of the old method while adding decentralisation and trustlessness.
And for that, I think we need to bring NIP-95 back to the workshop and give it another go. I suggest:
- file delivery happens outside of web sockets over regular HTTP (easy for clients)
- relays who host file attachments can signal to clients inside the protocol where they can go to download them
- files are hashed with a j-hash (shameless plug https://github.com/bmewj/j-hash-node), so that their contents can be verified progressively without having to download the entire file (i.e. when streamed or seeked)
Ok! That’s all. Thanks for reading! :)
Tagging a bunch of people I admire to engage (if they want) in the discussion:
#[0]
@npub1gcxzte5zlkncx26j68ez60fzkvtkm9e0vrwdcvsjakxf9mu9qewqlfnj
#[1]
#[2]
#[3]
#[4]
The way I see it, nostr at it's heart is nothing but encrypted text information validating individual identities. Hang anything you want on that one basic frame.
Yet another power outage here in the planet's high 5. A couple of years back it was a week, we lost a freezer full of food.
On a completely unrelated note, did you know a raspberry pi running in a POE setup draws an almost comically small amount of power compared to literally any device with an active USB port?
Best part about my nostr and lightning network research? Finding obscure gems like this. This is how you do live video streams. Chefs kiss.
https://postimg.cc/Z0LqH9P5Z0LqH9P5 Say hello to one of the planet's newest kubernetes clusters. Very easy, very cheap, and failed nodes can be replaced by just plugging another one in. 9 pi 4s all POEd up.
Those decoration stickers are from the 90s, used them on a whim, and the nodes are of course named appropriately. I'll ⚡ the person to identify the issue with the set of stickers chosen - a troublemaker is missing.
Still working on a preferred quick image holster, guess I'll build my own lol
https://postimg.cc/Z0LqH9P5Z0LqH9P5 Say hello to one of the planet's newest kubernetes clusters. Very easy, very cheap, and failed nodes can be replaced by just plugging another one in. 9 pi 4s all POEd up.
Those decoration stickers are from the 90s, used them on a whim, and the nodes are of course named appropriately. I'll ⚡ the person to identify the issue with the set of stickers chosen - a troublemaker is missing.
keanuwhoa.gif
Shitcoins got me interested, investigating the wilds of ETH led me to the promised land.
There will be ever increasing waves as new pockets of people find it, generally "influencers".
Just have to make sure there's a network out there for new people to interact with. Relay operators are da real heroes.
Just out exploring the wildness of nostr.
Have you checked out zapit.live? Well, here's your chance...
https://pay.zapit.live/paywall/FK8xt2wB66cBy7MSiUAxrZ
Put anything behind a paywall.
#grownostr
#nostr
#zaplife
Global feed is amazing. Humans from all over being the same wacky weirdos they are in real life, pure and unvarnished.
I love it so much.
Why did no one tell me how amazing Ubuntu is? Why have I spent years of my life troubleshooting the personal failings of Bill Gates
Why do corporate stooges still insist on MS$? Is the high price of essentially free poae. A budget issue?
Not perfect of course but so much better than I could have imagined. Casual chitchat with a Japanese person without copy pasting is a normal thing for me now, Twitter seems primitive by comparison.
It's truly incredible to speak with someone speaking an entirely different language so easily.
This may be an overlooked game changer, what if all people everywhere could talk without their governments, cultures or dialects getting in the way?
Ohio gets to remove one federal lackey after the train disaster, it's only fair.

