I like this, but I feel its important to point out that this is effectively unusable by the very people who would benefit from it most: non-web developers. If this were a drop-in C/C++ library, I'd use it immediately in my native apps and adopt it as a widespread platform technology. I want to be able to do this, and if it were truly a working technology, I'd put it in every single app I use. But as a Node/JS library…
Amen to this! I too got really excited until I saw it was JavaScript. For me to use it I'd have to link against some sort of JavaScript interpreter (ew) and probably incur performance penalties shoveling the data too and fro. Can't we just have nice, normal libraries like we used to? Tools that require me to install a huge new build system, package management ( cough golang cough ) just to run quickly lose their appe…
Peer-to-Peer Databases for the Decentralized Web
71–80 of 84 posts
Re: Peer-to-Peer Databases for the Decentralized Web
#72I like this, but I feel its important to point out that this is effectively unusable by the very people who would benefit from it most: non-web developers. If this were a drop-in C/C++ library, I'd use it immediately in my native apps and adopt it as a widespread platform technology. I want to be able to do this, and if it were truly a working technology, I'd put it in every single app I use. But as a Node/JS library…
Re: Peer-to-Peer Databases for the Decentralized Web
#73Re: Peer-to-Peer Databases for the Decentralized Web
#74Earlier quoted context omitted.
Honestly, the biggest pain point around adding ARM support is that it'll be a pain to create ARM-compatible packages for all the apps. I definitely think the largest unanswered question in ARM support for Sandstorm.io is "how do we make it convenient for app developers to release packages for multiple architectures?" That being said, I'd be super excited at the possible expansion of the community ARM support would br…
I'm not a security engineer, so the seccomp stuff isn't something I know a lot about. Given that limited experience. whitelist sounds more sensible than blacklist, and I presume that it would be more portable on different architectures. I have a lot more confidence when it comes to tooling, packaging, testing, developer environments, CI/CD systems etc. since that is the kind of thing I do at work. Within that old Git…
spk and vagrant-spk definitely take the "grab what the app needs" approach, but Ian is in agreement with you in wanting something more reproducible and well-defined. (vagrant-spk is mostly reproducible because VMs made with it should be roughly the same, spk is not remotely reproducible).
docker-spk is a tool he wrote that creates Sandstorm app packages from specially-crafted Docker images (you still have to be writing a Sandstorm package here, it won't convert a traditional Dockerfile to work on Sandstorm, for instance). He has also repeatedly expressed interest in building a nix-spk tool that uses Nix packages. ;)
Re: Peer-to-Peer Databases for the Decentralized Web
#75I like this, but I feel its important to point out that this is effectively unusable by the very people who would benefit from it most: non-web developers. If this were a drop-in C/C++ library, I'd use it immediately in my native apps and adopt it as a widespread platform technology. I want to be able to do this, and if it were truly a working technology, I'd put it in every single app I use. But as a Node/JS library…
Re: Peer-to-Peer Databases for the Decentralized Web
#76I like this, but I feel its important to point out that this is effectively unusable by the very people who would benefit from it most: non-web developers. If this were a drop-in C/C++ library, I'd use it immediately in my native apps and adopt it as a widespread platform technology. I want to be able to do this, and if it were truly a working technology, I'd put it in every single app I use. But as a Node/JS library…
What is the definition of a toy language? That’s a new term for me. I (thankfully) haven’t written C++ in over 20 years, but if I had to drop back down to a low level language, it’d be C or a compile-to-C language. C is the language these things should target, in my opinion.
A toy language is one which you do not allow to escape the play-room/sandbox, you play with it (because hey, you can, so why not..), but you would not actually use it.
The reason this is important for decentralization efforts, is that the OS should be doing this.
Sure, paint the pretty UI, but expose the entire thing to common OS-level abstractions, please, and then host the scripts, kthxbai ..
(A non-toy language is one you are very comfortable shipping. Javascript is that for a lot of people. Not for systems programmers = it is an application execution environment, not a place for things which must operate, as part of the system, without much user hassle ..)
Re: Peer-to-Peer Databases for the Decentralized Web
#77Earlier quoted context omitted.
Would you call torrents decentralised?
To an extent, although many times you still rely on a centralized tracker and dedicated seeds. Unless you belong to a private tracker where users are forced to maintain certain ratios to continue using a service, then in most cases a torrent will end up like an IPFS site without any pins. If IPFS provided the ability to track pins from users of a site like private trackers, and provide rewards or some incentive then…
Does IPFS support something similar? e.g. pin this content until I have a 5:1 upload to download ratio
---
I 100% agree on the ability to track pins. I want to see organizations be able to easily peer/pin content from other orgs they endorse; and for end users to be able to follow and help peer for organizations they support.
I want something like Youtube where I choose who appears as in the related videos on my channel and can be a peer to hosting them; and where my users can help to peer my videos (and I can help peer others).
As an end user, my client (or local server/cache) would prefetch the content I follow both to be a peer and to have it ready for me to access.
This would also help with locality of data; if 4 people in my household watch the same video or channel they would be able to get the content locally. If I'm an organization with a physical location, users connected to my network can fetch the content on a local link.
Re: Peer-to-Peer Databases for the Decentralized Web
#78Earlier quoted context omitted.
Not really, if you want something to be perpetually available in any p2p network you need to ensure that you're still hosting it. That goes for torrents, ed2k, freenet, and ipfs too.
This isn't true of most blockchain p2p networks, eg, Bitcoin. Anything uploaded to these lasts as long as the entire network does. The reason this works is it costs some amount to initially print the data to the network, limiting that kind of abuse.
Once the monetary reasons drop then so does the data.
Re: Peer-to-Peer Databases for the Decentralized Web
#79Earlier quoted context omitted.
Not really, if you want something to be perpetually available in any p2p network you need to ensure that you're still hosting it. That goes for torrents, ed2k, freenet, and ipfs too.
I'm not claiming the reality of P2P always matches the ideas behind it. And surely you're not saying centralized hosting being a strict requirement was what people had in mind for P2P?
Re: Peer-to-Peer Databases for the Decentralized Web
#80Earlier quoted context omitted.
I've been doing some experimentation along the same lines ... I've got a small proof-of-concept working where I can sync Earthstar databases between multiple Sandstorm instances - each "grain" acts as a pub, and you can use "webkeys" as pubs. I'm using powerbox-http-proxy to request capabilities for connections, so it works even with fully sandboxed client-side networking (ALLOW_LEGACY_RELAXED_CSP=false). It's madden…
I was wondering about that. I suppose, things that the user wants to share publicly can be done so (via powerbox), but otherwise, everything else would not be. Are you using the grain model for each individual files to be shared? (I looked up your email and I would like to continue chatting about this).
I made a quick demo recording and updated the README with a link.
Video is here: https://bafybeih6kkv4rgmfada4kfc5thmtzheiurq7ck5uz4rchqkrxw7...