4 ms·
New products? Would those be more centralized platforms, or is it feasible for me to connect to the blockchain, verify stuff, and so on if I am running my own s
by spenczar5 5y ago
New products? Would those be more centralized platforms, or is it feasible for me to connect to the blockchain, verify stuff, and so on if I am running my own server?
It still seems that my users on phones and browsers would need to trust me in that case, right?
- exdsq 5y agoOh it’s totally doable to run your own node on your own server! And thanks to the protocols consensus rules your users can trust that for a transaction to go through your node and be accepted onto main net your node is a good actor. So one example I’d give - every team I’ve worked on has had to build a local development environment with several nodes to easily spin up with a clean slate for deterministic testing. Teams get sucked into tools like Infura to set these up and then it’s so easy to do the same for deployment they do just that. I think there’s tons of room for Blockchain-as-a-Service tools to improve development and testing processes without forcing centralization on main net deployments.
- spenczar5 5y agoOkay. Why doesn’t everyone do that, then? Why use Infura? As is hopefully obvious, I am totally naive here; my questions are genuine. Thanks!
- kristofferR 5y agoEconomies of scale basically. It's way simpler to just connect to Wikipedia.org and download the pages you want to read instead of downloading the whole Wikipedia.org database and keeping it stored and updated on your devices. Same principle.
- exdsq 5y agoMostly the cost of hiring a DevOps engineer to set it up and maintain it and taking on the additional risk of having to deal with upgrading the node etc... It's just cheaper and easier to go centralized at the moment.
- jboy55 5y agoThough things are never cheaper to maintain than at the beginning of a tech bloom. Its only going to get more expensive to create and maintain as the node and the APIs get more complex.
- exdsq 5y agoSure but these aren't crazy complicated beasts - a binary installation and some unix experience gets you 90% of the way there! I don't think they'll get far more complex in the next few years at least, and documentation/user support is really good
- jboy55 5y agoIts all the dependencies, security updates and keeping all of them up to date and in check. One word, Log4j.
- unionpivo 5y agosame reason people are moving to aws, and people which used to use aws instances are moving to serverless. Leave infrastructure work for other people.
- wizzwizz4 5y ago> And thanks to the protocols consensus rules your users can trust that for a transaction to go through your node and be accepted onto main net your node is a good actor. Usually, you still have the “server is selectively lying” problem; unless the users are talking to each other, how do the consensus rules help with this? (Related to the https://en.wikipedia.org/wiki/Byzantine_fault https://en.wikipedia.org/wiki/Byzantine_fault problem, though that's about forming consensus rather than determining trustworthiness.)
- exdsq 5y ago> Usually, you still have the “server is selectively lying” problem; unless the users are talking to each other, how do the consensus rules help with this? If you're submitting txs to a node that doesn't communicate to the mainnet (they're isolated from it) then any txs that go to it would be void. You could just use that Eth on the proper mainnet as it wouldn't be on the chain. If the node decided to then come onto the mainnet it's chain would be vetoed by the other nodes states and would fork back onto the main chain. Ethereal has Byzantine-Fault Tolerance up to 50% and you don't gain anything by running an isolated node to try trick people.
- wizzwizz4 5y agoThat's not the only way to lie. You could, for example, lie that a transaction that doesn't exist has gone through – say, in a cross-chain “currency exchange”. Or perform a double-spend attack. Or many other things, because the Byzantine fault tolerance doesn't apply in this case.
- password1 5y ago> Blockchain-as-a-Service tools You mean something like AWS, but that allows me to quickly setup an server containing a node?
- exdsq 5y agoYes, but with a few other things! Setting up ad-hoc chains with custom genesis files would be a huge improvement for dev teams as they'd not have to make their own solution (which everyone I've worked with has ended up doing).
- arcticbull 5y ago> I think there’s tons of room for Blockchain-as-a-Service tools to improve development and testing processes without forcing centralization on main net deployments. The big Blockchain-as-a-Services shut down - both IBM and Azure are gone.
- exdsq 5y agoI don't mean these sorts of simple host-a-node services but something where you can run custom chains for your dev and testing. For example, this week I had to build a separate Polkadot chain for a client that had reduced governance term durations so they only took 5 minutes instead of 120 day and with a smaller council size so tests are easier to manage. This needs to run in CI so has to be in a position to spin up and tear down on command and the genesis block has to fund the appropriate accounts for testing. This could be pretty easily abstracted to a Web App for people to build this without needing to know how the underlying nodes operate, what to change, etc...