26 ms·
While it's refreshing to hear critique from someone who actually built something on web3, there are a couple of points where I'd dare to disagree, somewhat. Pa
by lekevicius 5y ago
While it's refreshing to hear critique from someone who actually built something on web3, there are a couple of points where I'd dare to disagree, somewhat.
Particularly, regarding "early days". It really is, still, early days, because there is a lot of complexity in getting all the pieces built. It took years to get overall blockchain going. Then, to understand the need of programmability (smart contracts). Other pieces too: more efficient consensus mechanisms and clever ways to express commitments, decentralized storage, etc. And the space is so far from being done.
Particulary, about servers being clients. This is true today, but it would be wrong to say that nobody cares about it. Ethereum developers spend considerable effort on pushing the idea of light clients, going as far as re-architecturing the way whole blockchain state is stored, so that browsers could actually become fully valid clients, and services such as Infura would become a lot less necessary. This requires cryptographic innovations (verkle trees), client implementations, consensus between participants, etc. It is likely to require 2+ years to get there. Early days.
Another moment I would critique is the clever NFT, that displays different things. Yes, ERC-721 allows any URL as metadata file, so you can put traditional DNS-resolved URL there. But I would struggle to find any "respected" NFT collection that actually does that. Almost every high quality NFT project (Art Blocks, BAYC, so on) has IPFS as metadata URL, and goes as far as to freeze metadata, so it couldn't ever be changed.
Lastly, his discussion about value of decentralization is very valid. Yes, Ethereum developers spend a lot of effort on light clients. Will anyone care to use them? Yes, best NFT collections freeze metadata pointed to IPFT... does anyone care? Success of OpenSea and Binance Smart Chain shows that for many, idealistic goals are irrelevant, as long as money can be made. That's fine. But there are some of us who actually care. Majority has uninteresting goals (money). There are still amazing gems to be found.
- spenczar5 5y agoMy understanding of IPFS is that there is some DNS-and-HTTP translation step that resolves content to IPFS locations. Is that correct, and is it immutable? How does that work?
- lekevicius 5y agoThere are many gateways that allow viewing IPFS content over HTTP (e.g. ipfs.io), but the "true" IPFS experience is not over HTTP, it's done via P2P and addressed using content hashes. For example, one of my NFTs has content hash of QmTqkpmbKmciQgqhUWpML7dsJ59MBEjgQd7wH853n4ASZM I keep a copy of it on my computer (+ backups). If for some reason it were to be unhosted by every IPFS participant, I could become one, and re-establish my NFT. Image content -> content hash, so everyone would agree about content re-establishing. Not sure if I fully answered your question.
- spenczar5 5y agoThanks, that is indeed a good description. It does sound like this is basically the content hashing Moxie was hoping for.
- mkl 5y agoSpecifically, that gateway (and some (all?) others) needs "/ipfs/" in the URL: https://ipfs.io/ipfs/QmTqkpmbKmciQgqhUWpML7dsJ59MBEjgQd7wH853n4ASZM https://ipfs.io/ipfs/QmTqkpmbKmciQgqhUWpML7dsJ59MBEjgQd7wH85... Took me a while to figure it out, but the docs are here: https://docs.ipfs.io/how-to/address-ipfs-on-web/ https://docs.ipfs.io/how-to/address-ipfs-on-web/ I also ran into several apparently no-longer-functional gateways in lists from just a few months ago. So yes, not the true experience.
- Jtsummers 5y agoContent on IPFS is keyed by hash values. The data is immutable at least to the extent that it's impractical to find a hash collision with sha256 (today). The content will also only remain up so long as someone (either the initial submitter or others) has it pinned. Otherwise, the content will, eventually, disappear.
- doopy1 5y agoArt Blocks is completely on-chain :)
- iskander 5y agoThat's not quite right. The JS source code is committed on chain via a contract interaction and every minted token gets a token hash which, when run through the JS source, can recreate the art. But...the execution environment is still your web browser and non-animated Art Blocks NFTs still have a "preview" stored off-chain like most other. Neither running the code in your browser or retrieving the preview is an on-chain operation.
- mattdesl 5y agoit is pretty trivial to retrieve JS code and the hash from the ArtBlocks smart contracts, and save them into a HTML file to run it locally. probably a more reasonable concern (rather than the on/off chain question) is one of dependencies (some depend on common libraries like p5) and possible incompatible changes to JS and/or browser spec in the future. At which point emulators may need to be created to continue to display this work. Generally, the burden of maintenance for AB pieces is quite low and archivability quite accessible, relative to many other digital real-time artworks in museums and galleries today.
- doopy1 5y agoAgreed. I think the biggest "existential threat" to Art Blocks is that browsers change very quickly and different browser engines do things differently. In that respect, the art is truly just the code and not the visual product the code produces. If Art Blocks pieces are goin to live forever in "live view" it will probably be up to some digital archivists to make that happen.
- epolanski 5y agoI don't buy the early part. 3 years into the internet we already had emails and tcp. 13 years into blockchains we have nothing.
- oblio 5y agoWe have something! We have a ton of money in unregulated markets sloshing around reinventing every financial scam known to man. That's got to be something!
- cblconfederate 5y agoThis but unironically. Let's put that money to use to build good things, not more pyramids. All money was tainted at some point in the past. The modern world used to be very corrupt and violent - everywhere.
- RoboTeddy 5y agoWhen writing code for a blockchain today, even on an Ethereum L2, you're in a very resource-constrained environment where you end up using bitpacking tricks and the like. That's how it was for early computers, too, of course — they may serve as a better analogy. Programmable computers have taken decades to develop, beginning in ~1950, and I expect that decentralized computation will follow a similar path. There simply are numerous hard problems to solve to make this all work at greater scale. In a healthy ecosystem like Ethereum's, there are frequent research discoveries (discovery of the concept of data availability, the application of BLS signature aggregation, proposer-builder separation, zkevm, data availability sampling, ...). The software engineering effort required to implement such research is colossal as well. Eventually we'll even see e.g. specialized hardware for efficiently producing or verifying zero-knowledge proofs. It would be easy to look at the very early computers, which were perhaps not all that useful, and shrug — but that take wouldn't have extended well into the future as the technology scaled.
- giantrobot 5y ago> It would be easy to look at the very early computers, which were perhaps not all that useful, and shrug — but that take wouldn't have extended well into the future as the technology scaled. Early computers solved problems they were designed to solve. So they were plenty useful. Your statement is nonsensical.
- yata69420 5y agoI think this is the right take. I'd add that having a globally readable ledger encourages interoperability in ways we can't yet appreciate. I believe that ERC-731 is valuable for the same reason that GIF89a is valuable. I don't think anyone in 1989 could have predicted meme culture and the importance of the gif, but it happened because an enabling technology (communicate with animations) arrived and people started experimenting. NFTs will probably become part of daily life in unexpected ways, because an enabling technology (cryptographic ownership of assets) has arrived and people are starting to experiment.
- jagger27 5y ago> I believe that ERC-731 is valuable for the same reason that GIF89a is valuable. GIFs can be created, parsed, read, played, copied, deleted on commodity hardware for free. GIFs became popular because they were so easy to exchange because video formats were so heavy and patent encumbered at the time (less so than GIF was, anyway). The cultural phenomenon of reaction GIFs arose because of its accessibility. Tell me how a child is supposed to safely do the following: easily create a wallet, somehow get some Ethereum, and starts minting and/or buying NFTs. None of that is even remotely comparable to ease of use of GIFs on the internet. If you want to argue that "cryptographic ownership of assets" is going to be commonplace, that's fine, but only for strictly digital onchain assets. It's never going to apply to any asset in meatspace because humans have sticks and stones to get what they want and renders your claims irrelevant. If you lose access to your wallet for whatever reason, be it fire, flood, social engineering, forgetting your password, death, solar flare, it's gone forever. If you depended on it for anything important, there's no recourse. Let's say there are cryptocoin insurance companies. How do you prove that you don't secretly still have access to your wallet? I am not buying it.
- luhn 5y agoRe "early days," servers as clients, etc: There are a lot of very real problems with crypto, and the solution always lies in new technologies. Slow settlement and high gas fees? L2 networks. Limited global TPS? More L2 networks or alternative L1 chains. Wasteful energy use? Proof-of-stake. No connection to real world data? Oracles. Relying on centralized APIs? Light clients are in the works. Can't trust that you'll get an untampered version of the dapp? I don't even know the solution for this but I saw a very complicated flowchart about it, so I assume there is one. Every layer adding more complexity and more fingers in the pie. All the while, nothing ever actually seems to get fixed. Like, high gas fees has been a conversation for years and clever people have made dozens of solutions, but everybody seems to still use vanilla Ethereum. And these problems don't seem to be the usual problems of new technologies dealing with limited feature sets and primitive tooling, these problems fundamentally undermine the whole point of blockchain. It's not like you can only make simple distributed apps and more advance stuff will arrive as the space matures, you literally can't make a practical, truly distributed app at the moment. The more I learn about web3 the more it seems like vaporware, and the end result will be a bunch of web3-in-name-only, VC cash-grab apps.
- lekevicius 5y agoI'm sorry, it's difficult for me to find a truly charitable interpretation of this response. But I'll do my best. Blockchains started very simply. Famously, Bitcoin's whitepaper is just a couple of pages long. Simple systems are nice, but they can't solve every problem. As problems were discovered, solutions were proposed. Most solutions were themselves the simplest solutions to a given problem, so naturally, as new problems are found, new solutions almost always introduce complexity. This is not unique to crypto - see, for example, HTTP, or HDMI… I can't see a world where this wouldn't happen. Ideas usually start small and simple. Additional capabilities introduce complexity. That is not a bad thing. Also not a bad thing: people taking different approaches to identified problems. Ethereum saw congested L1 and didn't want to sacrifice decentralization, so they focused their effort on L2. Other developers thought differently, and adopted faster, less decentralized L1s. Great! > you literally can't make a practical, truly distributed app at the moment Another issue is that the goalpost is ever-shifting. We have truly distributed apps. Because they were successful, they got used, and on one particular L1 that meant expensive competition for block space. Does that make the achievement invalid? Or does the fact that most popular browsers currently don't have built-in integration with ENS and IPFS, allowing for decentralized frontends, also make the effort invalid? Again, I struggle with truly charitable interpretation of your argument.
- eezurr 5y ago>Another moment I would critique is the clever NFT, that displays different things. Yes, ERC-721 allows any URL as metadata file, so you can put traditional DNS-resolved URL there. But I would struggle to find any "respected" NFT collection that actually does that. Almost every high quality NFT project (Art Blocks, BAYC, so on) has IPFS as metadata URL, and goes as far as to freeze metadata, so it couldn't ever be changed. The problem with digital art is that it is infinitely copyable (at no cost) and untraceable (with little effort, and a huge/impossible effort to trace backwards). There's nothing stopping an artist from selling a work of art as edition 1 of 1, and then a month later "minting" another copy or 10. Secondly, there's no way to prove the image uploaded is from the original owner. What happens if someone steals someone else's work, mints an NFT and sells it, and the buyer finds out the next day? Thus, I cant be convinced a "respected" NFT collection / distributor can exist.
- serverholic 5y ago> There's nothing stopping an artist from selling a work of art as edition 1 of 1, and then a month later "minting" another copy or 10. There is a social cost to making a promise and breaking it. > What happens if someone steals someone else's work, mints an NFT and sells it, and the buyer finds out the next day? Don't buy from random sources. You have similar problems with Pokemon cards, for example. Lots of fakes and it's often hard to tell a fake. However, people have found ways around the issue.
- ShamelessC 5y ago"social cost" sounds like another way of saying "real-world trust".
- TimJRobinson 5y agoYes. The point of blockchains is to be able to trade value without middlemen. You still have to verify that what you're buying is legitimate.
- 5y ago
- endorphine 5y ago> It took years to get overall blockchain going. Then, to understand the need of programmability (smart contracts) When was this need "understood"? When was it realized? How exactly? I find it a bit paradoxical to say that "we understood the need for smart contracts right after the blockchain was invented". What problem did smart contracts solve when they were invented?