13 ms·
This is a really well-thought-out, nuanced take. I really appreciate mixture of "but there are still servers", not being able to stop a gold rush, and (refreshi
by devadvance 5y ago
This is a really well-thought-out, nuanced take. I really appreciate mixture of "but there are still servers", not being able to stop a gold rush, and (refreshingly) the technical take on the implementation details.
It stands in such stark contrast to other content. For example, a web3 chat app announcement I saw yesterday [1]. I even joined the Discord to learn more and just found...hype.
I found this parenthetical to be amusing:
> (visualizing this financial structure would resemble something similar to a pyramid shape)
Pyramid-shaped financial setups indeed :).
[1] https://twitter.com/MessagePartyApp/status/1479151001181376514 https://twitter.com/MessagePartyApp/status/14791510011813765...
- bko 5y agoThe centralization of apis (infura, opensea and ethscan used by metamask) is the biggest problem. I could be wrong, but I don't think we've seen that fast consolidation in other early tech. I remember in the late 90s there were a number of search engines but no one really owned the space. Only 20 years later did Google emerge as the winner and is (IMO) by far the best in terms of relevant results. But that didn't happen overnight, and there wasn't a search engine dominating 90% of the market within a few years of the beginning of mainstream acceptance. How hard is it to create a competitor to infura? MetaMask should be incentivized to do this as they're core offering is controlled by one party. [edit] Never mind, metamask and infura are owned by the same company (ConsenSys). It's even worse than it appears...
- mritchie712 5y agoIt's really not that hard (or even expensive) to run your own. Here's[0] an example doing it on k8's. I had something similar running on GCP in a couple hours. It's been running for a month with no issues. 0 - https://messari.io/article/running-an-ethereum-node-on-kubernetes-is-easy https://messari.io/article/running-an-ethereum-node-on-kuber...
- sv123 5y agoBut one of the main points of article is that people don't want to run servers, developers included. Even being easy, letting someone else do it will always be easier.
- throw_nbvc1234 5y agoHow many (large) companies, governments, etc... run their own email servers? If there's a strong enough need, people will run their own servers even if they'd rather not. "people don't want to run servers" arguably could be rephrased as "people don't have a reason (today) to run their own servers". I'd argue this is a key difference between web1 and cryto centralization and the web2 centralization. If Google announced tomorrow that anyone can buy the gmail contents of any gmail address, you'd bet a lot more individuals would either switch to alternatives or start running their own severs.
- threeseed 5y ago> How many (large) companies, governments, etc... run their own email servers Every year a decreasing number as everything moves to SaaS and the cloud.
- tsimionescu 5y ago> How many (large) companies, governments, etc... run their own email servers? Office 365 financials alone suggest that the answer is "very few, and rapidly decreasing". I work for a ~30k employee technology company that doesn't run it's own email servers.
- mattl 5y agoShould be pretty easy to find the top 100/1000/10000 companies and look at their MX records. I’d imagine it’s a large number of Office 365, GSuite by Google and Barracuda/ProofPoint which may point to a SaaS thing or an internal server.
- dcolkitt 5y agoBut the question was how hard is it to run a competitor to Infura. And the answer is trivially easy. Infura is just an Ethereum node API that's publicly exposed. Building an Infura competitor literally is nothing more than $100/month it costs to run a Geth node on AWS.
- wbl 5y agoAs someone who has run nodes, no it is hard and expensive. Every time a geth node dies it has to resync and no persistent volume mounts and stateful sets are not solutions. They are problems. If you need to scale horizontally you get strange consistency issues with the API. All of this makes for a very unpleasant experience. It's built for TLC on a beefy box not a herd.
- mritchie712 5y agoWhat version of geth were you using? How many CPUs? When one of my geth nodes dies, another spawn without issue.
- wbl 5y agoAnd that's the rub. The new node doesn't have the same state as the old one. So clients making requests assuming that latest is the same start having problems. If you haven't seen them you just haven't been running a production quality service.
- throaway46546 5y agoIn a discussion about people not wanting to run their own servers the fact that your first instinct was to use GCP is telling.
- distrill 5y ago> I don't think we've seen that fast consolidation in other early tech I actually struggled with this point throughout the article. I'm not sure I see this as a parallel trend toward centralization like we saw with web2 - but rather that this is how software is built today and this is what we're comfortable with. It doesn't seem unnatural or problematic to me that we will start with something that approximates the world around us today and move toward the decentralized end state that apologists are hoping for.
- betterunix2 5y agoWhy would we ever move toward decentralization? It is almost always easier to have at least some central point of control in any distributed system, even the Internet (IANA, RIRs, etc.). It is also very difficult to remove a centralized control point after a system is already deployed, especially if the system supports heterogenous clients (as it is likely that some clients will be slow to switch to the new design, and many will make bad assumptions about the system architecture).
- baby 5y agodecentralization in the blockchain world is really to provide security and interoperability by emulating centralized services. So essentially it looks like a centralized service, but it's more secure than a centralized service.
- cuteboy19 5y agoFrom a cryptographic perspective, centralized and decentralised services are equally secure. From a user perspective, blockchains are less secure as there is no authority you can approach for chargebacks The point of blockchain was removing trust from a single person and spreading it around over a network
- baby 5y ago> From a cryptographic perspective, centralized and decentralised services are equally secure That’s just not true
- jonnydubowsky 5y agoTally is a community-owned, open-source fork of MetaMask. From first impressions it looks like it will also solve some of the issues brought up in Moxie's (excellent) blog post, i.e decentralizing the node-> NFT->wallet Metadata routes. Regarding the immutability of NFT image pointers: Some emerging solutions to this issue are: Use ERC2477 (DRAFT). This allows you to have some control over the metadata to ensure the name is as you want it. Note that this will require you to implement a zero-knowledge proof or a JSON parser on-chain which validates the new metadata. Use 0xcert Framework. The 0xcert framework is specifically designed to provide metadata integrity for ERC-721 tokens, it uses a different hashing technique (Merkle tree). But it requires you to use the same schema across metadata versions. Ceramic Network is doing some interesting work on schema coordination amongst other things. https://ceramic.network/ https://ceramic.network/ https://tally.cash/community-edition/ https://tally.cash/community-edition/
- cmroanirgo 5y agoThe Firefox extension for tally seems to be absent... https://addons.mozilla.org/en-US/firefox/addon/tally/ https://addons.mozilla.org/en-US/firefox/addon/tally/
- schrectacular 5y agoThere are voices within the space that have been talking about this issue for many years. There is at least one project which aims to use economic incentives within the design of the protocol to mitigate. Check out Saito.
- hanniabu 5y agoMetamask lets you enter your own RPC endpoints
- _heimdall 5y agoDon't get me wrong its good that the option is there, but short of coding and operating your own full node Metamask will still be trusting a centralized third party
- menzoic 5y agoYou don't need to code a full node. It's software than you run via a cli interface
- _heimdall 5y agoIf the goal is to remove trust in a third party you would either need to code or verify the software before running it. Short of that and you still have to trust whoever coded it and all the distribution infrastructure that let you download it.
- IanCal 5y agoThere's more than one codebase though, and having more is something commonly talked about.
- _heimdall 5y agoMore options is good for sure, but doesn't solve centralization or trust concerns The level of centralization is a spectrum and I don't mean to fall into the trap of describing it as all or nothing. The question is how close to decentralization web3 is or can be, and my concern with regards to picking your own API endpoint is just how similarly it is to the original point Moxie was making with regards to there only really being two API hosts in use
- IanCal 5y ago
- Galanwe 5y ago> The centralization of apis (infura > How hard is it to create a competitor to infura? Infura is merely hosting nodes for you and exposing their JSON RPC endpoints. They did not _create_ the API. There's already plenty of competitors in that space. QuickNode and GetBlock for instance, if you want mutualised/managed nodes. You can also host your own node yourself, or use e.g. AWS Blockchain to host it for you, or even use the public free hosted nodes that most blockchain project provide. It's just a Metter of trade-off between cost, time and security. If you are using JSON RPC APIs (which most people do) there is nothing that locks you to Infura or any other provider.
- Tepix 5y ago> If you are using JSON RPC APIs (which most people do) there is nothing that locks you to Infura or any other provider. How do you switch to another provider in Metamask?
- brian_cloutier 5y agoWhen you open metamask there's a dropdown in the top right. It lets you choose which network you're using, and defaults to "Ethereum Mainnet". If you hit the "Add Network" button you can configure which server your metamask talks to.
- Galanwe 5y agoAs other comments mentioned, you can change your endpoint in metamask. Also, metamask is not the only wallet there is... Some dApps only accept Metamask buts it's becoming rare. Most dApps implement multiple alternatives, like WalletConnect, which is more of a dapp/wallet protocol, which allows you to use any wallet software.
- cft 5y agoHow many people switched default search in Google Chrome from Google ? Probably less than 1%, because the overall Google market share is 91%. Unless there's another equally popular extension, not made by Consensys the presence of that option is irrelevant.
- jaxrtech 5y ago> The centralization of apis (infura, opensea and ethscan used by metamask) is the biggest problem. I could be wrong, but I don't think we've seen that fast consolidation in other early tech. I remember in the late 90s there were a number of search engines but no one really owned the space. Only 20 years later did Google emerge as the winner and is (IMO) by far the best in terms of relevant results. But that didn't happen overnight, and there wasn't a search engine dominating 90% of the market within a few years of the beginning of mainstream acceptance. > How hard is it to create a competitor to infura? MetaMask should be incentivized to do this as they're core offering is controlled by one party. > [edit] Never mind, metamask and infura are owned by the same company (ConsenSys). It's even worse than it appears... Currently working in the space (graduated from doing systems-level . My hot take is what is considered a "full node" can potentially use significantly less resources. The base word size is 256-bit (size of SHA256), most is either 1s or 0s, the entire raw Ethereum blockchain is roughly 350 GiB uncompressed, probably can be much better with zstd compression on multi-core. Let's just quietly ignore that most is not using an assembly-level optimized implentations of uint256 arithmetic operations. Also all the current clients (a) afaik run transactions single-threaded, and (b) no on-disk compression, (c) at best use mmap relying on OS level paging even though you're going to have 32-byte random reads invalidating entire 4K or 16K pages out of ~3TiB of read/write space. I'm more than certain execution can be ran speculatively using STM (software transaction memory). I seriously doubt that most Ethereum transactions within a single block have that much r/w contention if you were to execute them in arbitrary order in parallel. Basically application level speculative execution (except you know the ending hash ahead of time, so you know of the ending state is valid or not). Anyhow...
- brabel 5y agoWhat is your point? Sounds to me you're just regurgitating technical mambo jambo that doesn't realy have any relation whatsoever to any of the points quoted! Are you trying to say that by optimizing a node's software, people will be able to run a full node on their devices?? That's patently false currently, even more if the technology actually goes viral one day (small system-level optimisations simply won't scale to compensate for the fast increase in the blockchain size).
- digitcatphd 5y agoI would argue consolidation and centralized elements are inevitable, the promise of true decentralization is like socialism: a promising theory but failed application.
- twirlock 5y ago
- this_user 5y agoThe fundamental problem with decentralisation is that it will always be less efficient than a centralised solution due to the overhead necessary for coordinating the system. This means increased costs of some nature. In order to justify those costs, the decentralised system has to add a sufficient amount of value compared to the centralised solution. And not only is that usually not the case, but, as Moxie points out, it is usually the opposite, because a centralised system can iterate more quickly. And that is also true for the crypto/web3 world: Outside of some niches, it does not add any value. Almost anything it can do, existing centralised technologies can do better. The only reason they haven't so far is that most of these things are not terribly useful to begin with.
- _heimdall 5y agoThis is the exact argument for authoritarianism over democracy. Centralization is easier and often cheaper, but you have to trust the group in charge completely. Even then, the collective loses out on innovation and new ideas because only a small subset of the population is in a position to change anything. Centralization is often a short term win, decentralization is a long play. Unfortunately, we almost always seem to chose immediate gratification which is why we see decentralization abandoned early, and why we see democratic freedoms being replaced by authoritarian control.
- acjohnson55 5y agoThis is what representative democracy with an executive function is for. The government / executive acts without the need of democratic micromanagement, but is subject to popular oversight through a number of mechanisms.
- gurupanguji 5y agoEven in the case of democracy, you have to put trust in the sovereign. And whenever the sovereign enforces a law, the person facing the enforcement will consider it tyranny. It’s a known paradox of the power we, the people, grant to the sovereign.
- 5y ago
- panarky 5y agoDo you know of any financial structures or corporate structures that are not pyramid shaped?
- _heimdall 5y agoOnly looming at financial and corporate systems is a seriously limited pool of data. There are non profits, collectives, employee owned businesses, etc that are not a hierarchical structure but I don't think they would fall into the pool of financial or corporate structures.
- deleted 5y ago[deleted]
- deleted 5y ago[deleted]
- clippablematt 5y agofwiw I follow a lot of crypto people on Twitter and 0 of them are following this message app, it has 700 followers and you decide to jump into the discord? To me that’s like getting a random email about a product and saying “yes tell me more” I’m not sure what you are expecting.
- deleted 5y ago[deleted]