Hi,<p>Is there a distributed platform that provides node.js/webserver capabilities? For example, I see integration between node.js and IPFS but would not using a node server be a point of failure in web3? How do you guys tackle node.js functionality in a web3 environment?<p>Thanks
Let me preface this by saying "Web3" is a meaningless marketing term that non-technical people have invented to pump their crypto assets.<p>To the extent that it means anything at all, it has been possible for decades without blockchain technology, and it isn't applicable to the vast majority of users for the vast majority of purposes. As we've seen from BitTorrent (a true "Web3" decentralized network that has existed since the 1990s), it's not: 1) censorship-proof, 2) attack-proof, or 3) useful to most people doing lawful activities.<p>> <i>Is there a distributed platform that provides node.js/webserver capabilities?</i><p>No.<p>Things like BitTorrent and IPFS (which is inspired by BitTorrent) are examples of distributed web servers, yes. For those networks, however, you can't get participants to run your code. You can only get them to "speak" the same protocol to each other.<p>Dfinity (which turned out to be a series of vague lies and possibly an outright rugpull) was supposed to be something like what you're describing, but they were centralized around whitelisted data centers. The implementation never reached the promise of distributed computing.<p>> <i>I see integration between node.js and IPFS</i><p>This is just for creating applications that understand the IPFS protocol. You can't send people Node code to run.<p>> <i>would not using a node server be a point of failure in web3?</i><p>You mean having a server is a point of centralization? Yes, but all code accessible over the web is coming from a server. Decentralized systems are decentralized not because they're "serverless" (which is impossible) but because the network is composed of many redundant servers that do the same thing. If you lose a few, the network doesn't go down.<p>> <i>How do you guys tackle node.js functionality in a web3 environment?</i><p>"Web3 environment" is a somewhat nonsensical term that you'll have to more specifically define. Do you mean "when talking to a decentralized protocol, such as BitTorrent"? Well, you tackle it the same way you do with HTTP: by writing or downloading a library that understands the protocol.<p>Do you mean "serving decentralized code"? Currently this is impossible because you'd be insane to run arbitrary code from anonymous strangers on your hardware.<p>There is precedent for running workloads in a decentralized way, such as the SETI@home project[1] (another example of "Web3" that has existed since the 90s), but it doesn't involve executing arbitrary code on a host machine. The code is predetermined by the desktop client, and only the data is distributed to decentralized "servers" (desktop users).<p>1. <a href="https://setiathome.berkeley.edu/" rel="nofollow">https://setiathome.berkeley.edu/</a>