What is Web3? Interview with Gavin Wood, who coined the term in 2014
wired.com
wired.com
/s
The performance of splitting up files and storing them on multiple nodes tends to be very good since you're not as bottlenecked to one node feeding out all of the bytes (think about bitorrent and how fast it is to download a well-seeded file). That said, network egress might become a problem if the node you're seeding content from lives within AWS or another cloud provider. I don't think this egress price penalty exists in any major ISPs that I know of.
The ETH chain was about 500 gigs over the summer when I synced a full node, but it was growing fast. The amount of data stored is monotonically increasing for every full node in the network. You also need fast storage, you can’t use dirt cheap spinning platters. Maybe it won’t grow faster than storage cheapens, but I’m not sure I’d make that bet.
> The amount of data stored is monotonically increasing for every full node in the network
Right-O. Also the archived nodes seemed to be ~6TB in size a year ago. Today I learned!
I added the "/s" to spare people clicking through before realizing it was a joke.
Compute, on the other hand, seems to have a really bright future with web3 as long as the workload/task is parallelizable (for instance transcoding a video which has been broken up into many HLS segments). This is at least based on how I work it out in my head, but I'd love to have someone school me who might know more!
The more ambitious variants are very mathematically rigorous but axiomatize a wall-clock oracle, as well as in some cases mathematically-interesting but practically absurd assumptions about synchronicity.
Hoff has deployed his private fortune doing (among other, uh, things) serious research on distributed Byzantine consensus.
If they’ve got it nailed down I missed the paper.
The short of it is that with the modular approach to Blockchain scaling, more nodes will mean more scale. Separating out execution, settlement, and data availability, the blockchain "trillema" is inverted.
The writing is a bit technical but I recommend that of @polynya to understand more.
"web3" is a name of a project, not a general technical term that people agreed upon. This is a marketing scheme, and mere delusion from a cult of people that never clearly and strongly defined.
Maybe this was the very beginning of the misery of blockchain - the cult only looked into their own dream, and never looked outside.
I'd love to do web4 but I'm pretty sure someone's already done it.
web5 = the web is in your brain. Think of it, and <ADVERT> you <ADVERT> have the <NIS ENLARGEMENT ADVERT> answ <MAKE MY LOGO BIGGER CREAM> er!
You can skip this advert in 0:49.
I will see you at the inter <ADVERT> view!
You didn't like this advert? TELL US WHY.
People were writing about Web 3, aka Web 3.0, two decades back. It was supposed to be about the semantic Web and various related concepts that would revolutionize information and knowledge systems.
The tech industry hype machine is a self-humiliating con machine more often than not. Web3 should be aggressively mocked to the extent the clown parade attempts to use it to hype more shit.
It was not uncommon to write about it as of 2009-2011. Even CNN wrote an article about it circa 2009:
"Web 2.0 is so over. Welcome to Web 3.0"
https://money.cnn.com/2009/01/07/technology/hempel_threepoin...
(yeah but, uhhhh, if we call it Web3 then it's totally different from calling it Web 3.0 and not so embarrassing mkay)
As a baseline, let's do web 1.0. To set up a basic web server today, I need:
1) A public connection to the internet so I get an IP address.
2) A server computer listening on port 80 or 443 for incoming HTTP connections over TCP, returning data from a file system or database in the form of HTML/JS/CSS text documents and/or media files as requested.
3) A computer with a web browser which finds the server usually via DNS, and then requests data from the web server by passing it URLs.
Now, you can replace the browser with an API client and the server with a cloud provider and HTML with JSON and you get Web 2.0 (more or less).
Which brings us to "Web3". I honestly have no idea what the hell it's supposed to be or how it works. I've read some things that say it uses IPFS, others which are just about communicating with the Ethereum network of servers, specifically for managing NFTs.
Is there some sort of key technical solution in Web3 that I'm missing? Let's say I'm supposed to start work tomorrow on a cool new web3 app... What is it that I'll be doing exactly?
Most sports tracking apps view owning the user data as lock-in. I think that GPS/IGC/TCX/FIT data are a good target for decentralized and "personal" storage.
For our app, we have tons of different user types, lots of pilots who want us to build a "flight log" for them, hikers and runners don't need any of this stuff, and there are already a bunch of flight logs that exist.
So, my thinking is that I'll build what essentially to most people will look like an API to a users data. With the exception that I won't be running the only service that can access and use this API. It's open source, and available to anybody that wants to run it. Anybody who is storing their tracks using any app that uses that open and common API can use easily try out any other app.
From the developer side, the technologies are still servers and databases. From the client side, I'll probably be hosting their "wallets" until they decide they want to take them somewhere else, or if I can figure out a nice UX a non-technical user can understand.
So no, I don't think you are missing any key technical solution. Unless you are building your own blockchain, which I liken to building your own database because your app needs a database.
That's my 2 cents at the moment, but I may change my mind in the coming weeks.
Frontend hosting, I decided to go with a traditional hosting solution (vercel). Nothing changing here.
Backend APIs - Was able to replace the need for dedicated backend APIs by using RPCs and GraphQL queries using a project that allows for indexing smart contract event data in a GraphQL queryable format (https://thegraph.com/en/). I also created a smart contract which lives on the Ethereum chain and allows for users to achieve the interactivity that I desired for my app (which was essentially an escrow for a scheduling application). The events are indexed by the graph, so I could efficiently query this subgraph to retrieve relevant data to display on my frontend.
Authentication - Just use web3 packages to connect users wallets to the website. No need to use OAuth+OIDC or similar approaches for authentication, just connecting wallets on the frontend works.
If I wanted to take it a step further, I could have hosted my app on permaweb (https://www.arweave.org/) which will host the content in a distributed fashion with a one time charge.
For a different example, I'm creating an NFT project that uses the NFT ownership to grant access to specialized services (launching the user's NFT in a specialized application I created in an open source gaming engine). I use similar techniques as above, still hosting on vercel, but I use the innate ability to use NFTs as proof of ownership to act as an auth token into my service. This allows for me to distribute the interactive art I've created in a way that fully grants users ownership over the art, and also allows for them to access these specialized services only available to owners. Furthermore it's trivial to detect forgeries so even if someone does the horrible act of right click saving the art, they won't actually get any of the actual value from doing so. And if someone attempts to forge the token by minting an exact copy, it still will not grant access as it's easy to detect forgeries.
It's pretty exciting imo and has been a very fun project to work on. So by leveraging the similar approach for authentication (connect wallet), and NFT proof of ownership for authorization, I've been able to create a unique project with a lot less complicated of a stack tbh.
I personally think there's value in mixing centralized services (like traditional hosting of applications) with decentralized services (like using blockchains as a database of ownership, such as with NFTs).
steps:
1. create a MetaMask wallet and and add funds to it with your friendly neighborhood Bitcoin ATM (they do ETH too).
2. learn the Ethereum stack on eth.build and create a program in the language known as Solidity.
3. create a javascript app that talks to your Solidity contract, using the open-source javascript library web3js.
4. People with wallets installed as Chrome extensions can then navigate to your web3.js app (which can be hosted on a regular webserver), and send funds to/otherwise engage with your contract.
I didn't know yet another pump and dump scam or pyramid scheme reinvention required a "father".
Pushing the idea that the fate of liberal democracy is tied to the fate of “web3” is so incredibly cynical, it makes me nauseous.
8-D
}{
…reading about “web3” ^
|
(butterfly)
Is this… NNTP?What a neat platitude that means absolutely nothing. As a society, over, oh I don't know, like 15000 years, we figured out the the best way to enforce truth is via some sort of centralized institution: the court of law.
> They could, right. They sort of do—there’s the star thing that you can only do once per day. But guess what? They're a profit-motivated company. So if you pay Tinder enough, you can just send as many stars as you want.
Wait, crypto miners aren't profit-motivated? Maybe we should introduce Mr. Wood to flashbots[1] -- a "sub-network" of Ethereum miners (a fork of geth) who's entire purpose for existing is front-running (for a price, of course). Truth as long as you can pay for it -- got it. Web3 is end-stage capitalism and we've been down this road in the early 1900s. Yawn.
Money is a fundamentally human construct.
Money is a human construct. But it can live on a system backed by physical universal quantities like computation, to remove the need for human trust constructions.
You can't just ignore theft, and it's definitely not a positive aspect of a system like that.
Cash is not designed to prevent theft, most theft of monetary instruments throughout history has been through confiscation of gold or cash. They exist as physical quantities in the physical universe -- anti-theft features (as opposed to anti-counterfeiting) measures do not exist, nor can they. It is just a rock or some hemp-cotton paper. Likewise, cryptocurrency exists in the computation universe as a state in a peer to peer consensus, and controlled by knowledge of large integers in the integer universe. Anti-theft features do not exist, nor can they. Its just an integer.
Its not about a positive or negative aspect, they do not apply, anti-theft as a concept is an out-of-band mechanism. Primarily a state violence backed model. It works for most. Cash, Gold and Bitcoin, its just a boring token of value. It is the ecosystem around it that provides the ability to enforce 'anti-theft'.
Web3 seems to promise smaller, balkanized services, compared to social media monoliths we have now, in the service of, presumably, creating self-governing groups communities/businesses.
At least I think that's the idea? Isn't twitter already society expressing ideas? If anything this idea is "better" by being more vague.
I mean, those people exist, but it's probably the same number of people who are into Mastodon, etc. They are not the mainstream. The majority of people seem happy with the current model.
So, while the concept of Web3 looks interesting, after this initial frenzy dies down, I bet there will be a long winter coming to Web3 town.
Web3 is a backend change to the current internet so you hold your assets in your wallet and sign to allow/revoke their use on a service. Combined with the transparency into underlying chains you can do some really interesting stuff (e.g., opensea). Ultimately the new paradigm could fix the first sin of web2 which is some mix of getting off the ad model & eliminating the credentials everywhere issue.
What am I missing? Genuinely interested in a valuable counter.
I will take no further questions at this time.
(Arguably, Web 3.0 rather was the mash-up web of early centralisation of services, with widgets and things like Yahoo! Pipes, etc. Time to to think of Web4.)
This is just such a fantasy land.
There's a guy who wrote The Knowledge, a book that (for fun, basically) describes the knowledge we would need to rebuild society if we suddenly forgot everything. Like when and how do we grow crops. What do effective tools for sowing look like?
Like if we instantly forget everything, this book is what we need to bootstrap quickly.
He was asked "what about government?". His answer was "there's no point. The guy with the biggest gun will be the government".
And that's true today. And it's why web3 is idiotic.
"Truth" won't help you, and "trust" doesn't matter, when the government (in the form of the police) knock on your door and say no, actually, your smart contract is an illegal scheme and we are going to put you in a locked room for a while now.
You neither have to believe in the government, nor trust it, for it to force society's will upon you.
While what you are saying is true to an extent, we can still decrease trust and replace it with verifiable and auditable mechanisms at the margins.
For example, the Fed currently states that they target a 2% annual inflation. Well, the US could just adopt a virtual currency, and hard code a 2% inflation amount that was verifiable in public code. Note that I’m not saying this contrived example is necessarily good or bad, but let’s just assume everyone agrees 2% inflation is good and hard coding a 2% money increase rate is equivalent and it’s not better to give the government flexibility. This change has the effect of reducing our need to trust that the government will act consistent with its messaging; we can prove it. And while the men with guns can always change the rules (and maybe they should in some scenarios), it’s easy to see when the rules are being changed, and it’s likely harder to do so if it’s not a good idea since there are structural forces that make it more difficult.
The US government is filled with mechanisms to reduce trust (eg checks and balances).
And the reduction of trust is not just a government point. Twitter grew by having a great public API which it then knee capped and harmed the developers who trusted them. Would it not be better to have a protocol incentive that you could more readily trust would not be changed under you? What if the Twitter API had a governance token where the indie developers had owned a large stake of such tokens?
This idea that we can pre-commit to ideas, and not only that we should pre-commit to a course of action with no option to change as new data comes in, but that we are actually able to correctly codify this perfectly, is preposterous.
A bug in a smart contract can make murder legal, or loophole an interest rate to be a billion percent. It's delusional to think that anyone would want this.
A court or legislative body simply has to be able to undo bugs, to overrule.
Maybe we can't trust the government very well, but we KNOW that we can trust smart contracts to completely fuck us with no recourse.