Best practice for app developers. Self-hosting vs. trusted services

Hello, there is an ongoing debate around self hosting all critical infrastructure as an decentralized app developer versus trusting on hosted services. Looking at Ethereum, many decentralized app developers use Infura or Alchemy API.

At aeternity, developers often rely on the hosted compiler, hosted API gateway nodes and a hosted middleware API Server when building their first app. What is your opinion on this and how do you think a best practice should look like.

This is a screenshot from a discussion happened in one of the chats. I’d be happy to take it further from here

as i’m getting ignored in the chat-rooms i will just post this here as a conversation starter

2 Likes

@nikitafuchs.chain i agree with you that users won’t be able to host all critical infrastructure. At bitcoin, startups like Casa try to advertise for a self hosted hardware bitcoin node at home to be on the totally safe side - i’m not sure if thats the right way to go but the fight between totally trust less and trusting some services will go on

Edit: with local tx encoding you mean client side, correct?

1 Like

Among private computer users, it has forever been the case that non-techies relied on their techie friends which they happened to know to fix up their computers, or show them how to do something. Ok that’s anecdotal evidence (are there a peer-reviewed studies about this?), but I’ve seen lot’s of it, and otherwise would there be so many “No, I Will Not Fix Your Computer” t-shirts sold?

Anyway what I’m getting at: private usage of crypto might follow the same model. Techies might not only show their friends how to use stuff, but also offer them to run full nodes or compilers for them. Of course they could abuse it – but could have done so also in the classical computer-helper model, where they’d usually get admin access, and e.g. could have stolen data like bank account credentials. So in this model the question is, do you trust the person running the compiler for you*?

I think this is more likely of a scenario than the everybody-runs-their-full-node-at-home one, because most people don’t want to keep a computer running at home all the time, and also very many people don’t even have one to do so. E.g. here in Kenya, the vast majority of the population only owns a phone, and most among those owning laptops, will want to save the power cost.

* UTU will be happy to provide an incarnation of our trust protocol for this use case :wink:

2 Likes

I’m refreshing this conversation with a test-community-poll within the governance app. Everyone is invited to join and signal their opinion here:

You can also delegate your voting power to my account if you support my opinion: ak_XL7KAufTh4NhvaEsk3YYNxXF681dZY1Ufvkar1jsTvLU9ncmM

2 Likes

So, basically if you require every dapp developer to run everything on their own, almost every ae dapp will have infrastructure issues unless every ae dapp have proficient dev ops.

This is why services like infura and alchemy are there for ethereum - so developers focus on actually building stuff instead of taking care of trivial and repeating stuff.

1 Like

Thanks for your opinion @kraykov, how would you go ahead and make such services trustless?

Or would you trust 3rd party data providers without any verification, if so, what is the overall benefit of using blockchain for these dapps?

The thing is that services like infura got only one shot. If they ever for whatever reason mess up with the data - that’s it. They are gone. Forever. I guess that’s why no one cares if the services they provide are centralized or not. Plus you have a choice and you can switch whenever you want to.

I disagree.

Opinion: This is only because the usage is still very low. They could exit-scam a lot of money if usage would be higher (currently its not). A place where you see that happening with centralised services are dark markets on Tor. They basically provide a centralised marketplace with escrow for crypto and you’ve every couple of month a market that does an exit scam. If we get billions of users for decentralised apps, these types of exit scams will be as common for Blockchain infrastructure services as in the dark web. A second risk is, that someone at Infura (as an example) is interested in doing a coup and run away with whatever he/she can get. This happens again and again with centralised exchanges. I’m with @philipp.chain here, although I believe that hosted infrastructure is important for adoption and education of developers and users. In a later stage, when things get more traction, self-hosting is the way to go.

4 Likes