Even if we pretend for a moment that there was some merit to the “web3 smart contract”, by now it should be painfully clear to anyone involved that this is a technological dead end.
There are a many more realistic ideas to explore and research instead of wasting time on crypto unicorns.
for developers, there is no platform that realistically competes with “web3 smart contract”. the overhead costs are insanely low and are only one time for deployment with unlimited use, no other cloud deployment platform offers that
and consumers cant get enough of them and will shoulder costs of interacting with them
the most irrelevant part of this equation is debating why consumers are spending money on developer’s internet vending machines
its a market with demand, the market is telling you what to do for half a decade and yet
> everything I wrote was about deploying smart contracts, and on a blockchain
Yup. In a response to "Even if we pretend for a moment that there was some merit to the 'web3 smart contract', by now it should be painfully clear to anyone involved that this is a technological dead end."
Of course there's no better platform than "web3" for developers who do the "web3" stuff. "Windows is the best platform to develop apps for Windows".
However. As a platform web3 is a failure. And for developers literally everything outside crypto is a better platform. For users, too.
Its cheaper to develop and host your app on and there is consumer demand in applications where the very top of the funnel is a payment
Recognizing that makes you way better of a developer and entrepreneur than the 10x coder hunting for exploits and bug bounties, where making money is the goal
That's the beauty of vague unverifiable statements like "for developers, there is no platform that realistically competes with 'web3 smart contract'." For any counter example you can always say "that's not what I meant"
> Recognizing that makes you way better of a developer and entrepreneur than the 10x coder hunting for exploits and bug bounties, where making money is the goal
deploying smart contracts is the same as deploying an application to the cloud with api calls and variable storage
the closest I can think of is Firebase or AWS Lambda (or similar compute instance) with some kind of rudimentary database or shoehorned in variable storage. these all charge by number of executions, bandwidth and storage, even geographic location
smart contract deployments would be cheaper than that, via a one time cost for the developer, and have unlimited use. it is also convenient and valuable that the smart contract cannot be deplatformed
I don't really see Firebase or AWS or other compute instances competing on any of these fronts, but if you know of a counterpoint I would love to check out their pricing and usage page
for the level of computation actually occurring I would agree with you, but for the pricing I don't agree with you.
smart contracts are read for free and are read just as much as any api or application, whereas reading from my API that's doing nothing would still start charging me, the developer, and not be as cheap and using bare metal I have hosted somewhere or locally would have high maintenance or performance problems just reading and sending responses at the level necessary
writing is paid for by the consumers, but again here I agree that this level of activity would fit in the free tiers of cloud services
No, we didn't. There are tens of thousands of developers writing smart contracts. Some of these smart contracts, such as Uniswap (https://uniswap.org/), have traded more than $1.2 trillion in volume. Uniswap works 24/7 with 100% uptime. It's permissionless to create a liquidity pool or to trade on the platform. It's a novel architecture, called an Automated Market Maker, a real innovation in financial markets. Uniswap is fully auditable thanks to everything being on-chain. Source code is open. There's also on-chain lending markets (Aave: https://aave.com/), decentralized stable coins (https://www.liquity.org/), on-chain arbitration (https://kleros.io/), on-chain DAO governance (https://compound.finance/governance), on-chain social media primitives which are extensible (https://www.lens.xyz/), multi-sig on-chain smart contract wallets that custody hundreds of millions to billions in assets (https://gnosis-safe.io/), decentralized strategy games that use on-chain zero knowledge proofs to maintain a fog of war and player secrets while keeping everyone honest while allowing for full hackability (Dark Forest - https://zkga.me/), etc. Can really go on and on, but the industry is not going anywhere.
If you are focusing on the bad side of a tech, AI could do way worse than crypto. I mean, the most evil thing you can do with crypto is merely taking away money from people.
You're thinking too small. If you really want to get cynical, you could think about the ruinous consequences if a Proof-of-Work-based currency were to rapidly overtake the current payment networks, in terms of the cost of electricity and environmental impact. Or more realistically, what happens today: facilitation of ransomware and the sale of illegal material.
You could argue that most of these theoretical consequences have nothing to do with the technologies themselves, but that's true of almost all software technology. Even a potentially devastating piece of malware is, in a vacuum, just some bytes floating in space, with no inherent meaning until someone chooses to execute it. Most discussions about morals in programming and computer science either ignore or gloss over this part as if it is already answered, but it probably matters.
There's some arbitrary dividing line where you decide when the blame lies with the operator(s) vs the technology itself. In practice, I think it's more useful to look at it in terms of who's executing the code instead of who's writing it, since in practice the existence of code that does something is basically an inevitability, in a world where you can only rely on impracticality for a limited amount of time and where it's basically impossible to hold a monopoly on some piece of knowledge or information forever. I think this also is rather helpful when you look at things like exploits: if someone makes a genuine mistake in their software, for which they expressly disclaimed any warranty, it would be weird for them to be culpable when it impacts an operator; but if someone were to be using said software to store user data, and that user data were leaked via an exploit in software, it's more reasonable to say the operator is responsible. Code itself doesn't usually have much intent encoded into it, so it's unreasonable to go in from a perspective that assumes that you can judge the morality of software itself.
But then, taking this to its logical extreme, it might be a little too absolutist; even if software is inevitable, that doesn't mean that culpability for intentionally destructive behavior is necessarily a bad idea.
Either way, from this viewpoint, I think you can easily argue that cryptocurrency and AI both have enormous potential to cause consequences in the world. It isn't necessarily that the technologies themselves are inherently bad, but from a practical standpoint it doesn't really matter.
> the ruinous consequences if a Proof-of-Work-based currency were to rapidly overtake the current payment networks, in terms of the cost of electricity and environmental impact.
I've read a few of those and it's extreme copium. For example, many of them point out that the Bitcoin network can use renewable energy. Yeah sure, except for one problem: So can everything else. If Bitcoin uses some amount of renewable energy, that's less renewable energy to go around. This basically only matters in places that are powered entirely by renewables...
The most ridiculous point I've seen by far is the idea that actually, energy is not "wasted", because it's actually generating heat. It is true that computers are 100% efficient space heaters, but that's not the point.
The point is that if you scale the Bitcoin network up, it would put tremendous strain on the energy grid. That's not FUD at all!
Haha. True: you definitely don't have to worry about Bitcoin consuming all of the world's energy, though it's not for reasons that make your case better...
Regarding your second sentence: Fe runs on Ethereum, which uses proof-of-stake. Its total energy consumption is comparable to a hundred average American households.
I do agree that proof of stake is a genuine improvement on the cryptocurrency concept, but I think it's fair to hold off on calling the problem solved: Bitcoin and other popular networks are not really any closer to adopting it, and there still remains some skepticism about potential failure modes. Proof of work is a bruteforce solution, but it's quite proven and the failure modes are pretty straightforward. Proof of stake seems to work but it's a bit of an ouroboros.
Can you name one practical product built on top of ChatGPT? I don't even want to knock the tech, I think they're both fantastic, but blockchain has far more product-market fit than chatbots do. Not only that, but in a world of ever increasing and convincing AI deep fakes, a ledger with built-in cryptographic identity primitives will become increasingly useful for identifying, timestamping, and hashing authentic content in a plausibly neutral way.
Fine, how about GPT3 or Stable Diffusion? Does the world really need deep fakes? Doesn't it cause more harm than good? The debate is really still out on that one, especially with regards to AI. I find AI amusing as well, I wouldn't want to knock it, but it would be very easy for me to craft cynical arguments against it. I might even enlist ChatGPT to help me make the case.
Stable diffusion has been used to create artwork for shoestring budget projects.
I've used it to generate prototype images before hiring an artist to get precisely what we want and a designer friend of mine uses it as a starting point for manual modification, drastically increasing his output.
Direct, practical, real tangible work enhancers that we could not do before.
Don't you guys get tired of rehashing the same baseless arguments over and over again?
The value of decentralized platforms is that it gets rid of the tech bros and financial scams. Anyone, anywhere in the world, can make transactions independently, without having to blindly trust that the funds are actually there.
If people transacted using DeFI, there would be no FTX, no Coinbase, no VC trying to leech off the masses.
> The value of decentralized platforms is that it gets rid of the tech bros and financial scams.
Ah yes. No scams or tech bros. Except the implicit blind trust in programs written in esoteric programming languages on esoteric VMs that are rife with financial scams.
> If people transacted using DeFI, there would be no FTX, no Coinbase, no VC trying to leech off the masses.
Except that Uniswap is currently almost 100% automated bots "swapping" fictional tokens. And for anything useful you depend on centralized oracles. And for anything related to actual real world you must go through centralized entities.
Which are entirely dependent on centralised oracles etc.
Hint: if there are only 2/5/10 centralised oracles providing you with data, no amount of fluffy "decentralised tamper-proof inputs" statements make them such.
> almost 100% automated bots "swapping" fictional tokens.
Even if that was true (which it is not) it is still valuable for the people that use it and for the liquidity providers who can employ their capital in a reasonably safe manner without relying on banks.
There's no such thing as "liquidity" in these fantasy land tokens. The absolute vast majority of things happening on uniswap is indistinguishable from Forex and flash loans, only in these fantasy tokens.
I don't need to care about the "absolute vast majority" of the tokens to make use of Uniswap to exchange, e.g, Storj/BAT/ETH for DAI/USDC/EURS and to spend it for real goods.
All I need is to have a market of people willing to trade. If you don't see the value of it, fine. But just go find someone who got their PayPal account frozen with no recourse and ask them how much they would value the ability to trade in a permissionless network.
> I don't need to care about the "absolute vast majority" of the tokens to make use of Uniswap
I didn't say "absolute vast majority of tokens". I said "absolute vast majority of things happening on uniswap".
> All I need is to have a market of people willing to trade.
There's absolutely a market for people willing to trade. If there wasn't, Amazon, eBay, AliExpress etc. wouldn't have been multi-trillion behemoths they are.
Uniswap isn't a "market for people willing to trade". It's a market for people willing to engage in currency speculation and flash loans using fantasy tokens. Even you are saying this. Quote: "make use of Uniswap to exchange, e.g, Storj/BAT/ETH for DAI/USDC/EURS". There's nothing new or revolutionary in this.
Speculation in markets are always going to exist. We have people making a living by speculating on the price of commodities, forex, company stock and event insurance policies. You calling them fantasy does not change the fact that there are people willing to trade them and does not change the fact that there is value in being able to do this without a central authority.
I gave the example of Storj/BAT precisely because these are business who are paying actual money for a service (Storj is paid for those hosting data, BAT distributed by Brave as a reward for those willing to receive privacy-protecting ads).
You could argue that the tokens themselves are not needed and that we could do it with cash, but that would be missing the point: such systems could not work on a worldwide scale as easily as they work now, and the speculation is a desired property of the system. Most people are getting into the network not because of the $5/month they get from seeing ads, but because of the possibility of the received tokens going up in value. At the same time, the people who do want to sell their tokens and get cash can do so.
I am not. I am describing the absolute vast majority of cases on Uniswap.
> Speculation in markets are always going to exist. We have people making a living by speculating on the price of commodities, forex, company stock and event insurance policies.
Yes, but you're effusing that currency speculation and flash loans (majority of Uniswap) is this some new grand thing that never existed before. Reality disagrees.
> such systems could not work on a worldwide scale as easily as they work now
Forex was (and probably still is) a huge global market. I know because my friends spent a lot of time on it in early 2000s. Global market works easily, and at scale. For much longer and at much larger scale than anything crypto maximalists can even dream of.
> Most people are getting into the network not because of the $5/month they get from seeing ads, but because of the possibility of the received tokens going up in value.
Yup. Pure speculation. You're pretending it's something new, novel, and hasn't ever existed before.
At no point I said that what makes Uniswap (or crypto in general) valuable is the speculation in itself. The value of crypto is in the ability of doing things permissionlessly.
The value of Uniswap is not to that it is "better" than Forex. The value of Uniswap is that it lets people exchange value permissionlessly.
The value of ENS is not that it is "better" than the ICANN. The value of ENS is that it lets people control a stable, unique, global identity permissionlessly.
The value of crypto payment networks is not that it is "better" than Visa. The value of crypto payment networks is that it lets people make transactions around the world permissionlessly.
The value of Storj
> my friends spent a lot of time on (Forex) in early 2000s.
After jumping through all the required hoops, putting together minimum deposit requirements, passing KYC to show their legal standing with who-knows how many financial authorities... but what about those people who wanted to do Forex, but failed to pass any type of requirement? What about, e.g, people in Argentina who are forced to buy and sell dollars at the totally artificial rate imposed by the government?
> Global market works easily, and at scale.
If it works for you, great! Plenty of people who don't have the same luck.
> For much longer and at much larger scale than anything crypto maximalists can even dream of.
Nice strawman you got here. Where in this conversation was there any type of "maximalist" proclamation?
Automated Market Makers, like Uniswap, provide open, accessible, auditable, open source, extensible, liquidity to the world wide web. Anyone with an internet connection gets access to the market. Market access is taken for granted by Americans, but it should be noted that even here, Uniswap is superior to a NYSE or Nasdaq exchange along several vectors (openness, 24/7 availability, censorship resistance, full auditability, permissionless access, fair market making, etc).
Tokens are also fully programmable, and that enables a number of primitives that are not possible with stock certificates or grain contracts. For one, they can easily be held within a multisig smart contract wallet, governed by configurable rules for spending (in an M-of-N scheme). This makes it frictionless to set up a small group or organization on the internet even if the participants are in 7 different countries. This helps to coordinate human and financial capital, because rules can be programmed in the DAO or multisig to prevent one person from stealing all the funds. Since everything is on-chain, everything is above the board. Very difficult to arrange this with traditional corporate checking accounts, and even then, one executive ultimately controls the account.
Those two alone would be huge and worth it for humanity, but I listed more on that list and I'm running out of time for a reply. But I invite you to analyze the products yourself. Try them on testnets for free if you like.
Very simple explanation: imagine you want to start a software company with 5 people you met on the internet. You each live in 5 different countries. How do you decide who holds the treasury? How do you decide which jurisdiction to register a partnership agreement in? There's a lot of friction there. And a lot of trust involved. Even if one person takes it upon themselves, the other 4 members have to trust the 1 guy in charge of the legal org & bank account won't rug pull on them and run off with the money or spend it needlessly.
With a multisig smart contract wallet (https://gnosis-safe.io/), it's frictionless to setup a simple smart contract for holding the treasury and for enacting M-of-N rules on any expenditures from that multisig. This may be a 3 of 5 signature requirement or even a 5 of 5 signature requirement. It's fully programmable. So when starting a Web3 project, it's possible to jump into a partnership with a group and be productive without having to worry as much about establishing trust, navigating five different jurisdictions for employment agreements, or centralizing control in a single person.
In addition, far more elaborate org structures are possible, and there exist plenty of tooling for making those happen without even needing to know how to code (https://juicebox.money/, https://daohaus.club/).
Solidity is not all that esoteric. It's similar in syntax to JavaScript, but it's statically typed. There are also widely recognized and audited open source code bases to build off of (https://www.openzeppelin.com/contracts). And tons of developer tooling (https://docs.ethers.io/v5/, https://wagmi.sh/), along with countless resources on the web.
> Very simple explanation: imagine you want to start a software company with 5 people you met on the internet.
This is sufficiently rare that "traditional" finance hasn't come up with a product for that. Or maybe it has, but it's just as obscure as Gnosis.
> It's fully programmable.
You keep saying this as if this was a desirable quality.
> Solidity is not all that esoteric. It's similar in syntax to JavaScript
It doesn't make it not esoteric. It doesn't make it Javascript.
It's its own language with its own idiosyncrasies, its own lingo, its own terminology (so much of the terminology in the crypto space is just absolutely random bullshit people came up on the spot for things that already exist in the language).
There are no tools, no way to debug, no way to revert a deployment, no way to upgrade a "contract" etc.
And it's so bad that repeated audits and bug hunts routinely fail to find issues in the code of even the simplest contracts.
> This is sufficiently rare that "traditional" finance hasn't come up with a product for that. Or maybe it has, but it's just as obscure as Gnosis.
Traditional finance doesn't have an answer for this. It's not rare at all. I personally work with people from Argentina, Denmark, Canada, Serbia, Croatia, Australia and Hong Kong. It's very common to work in a fully distributed online manner, using chat products to communicate. It's very easy to meet people in online hackathons, on Discord servers, on gaming platforms, etc these days, from all over the world.
Yes, programmability is always superior to non-programmability, as it is a superset of non-programmability. After all, you could always encode whatever non-configurable properties you wanted as part of the ruleset for the contract or asset.
> It doesn't make it not esoteric. There are no tools, no way to debug, no way to revert a deployment, no way to upgrade a "contract" etc.
At this point Solidity is 7 years old. There are more than 200K developers that have learned it (50K from ETHGlobal hackathons alone: https://ethglobal.com/), 20K stars on Github, 44 million smart contracts have been deployed to ETH mainnet, 60K people watched Devcon Colombia vids a couple weeks ago (6K attended in person), 20K attended ETHDenver earlier this year, etc.
There's tons of tools:
Hardhat (https://hardhat.org/) - for JS based task running, deployment, testing, debugging, etc. Even deploys a local chain or allows you to fork a copy of mainnet locally to test against.
Foundry (https://getfoundry.sh/) - if you want to run your build/test/debug tool-chain in Solidity
WAGMI (https://wagmi.sh/) - Robust React hooks for client-side interactions with smart contracts
Ethers.js (https://docs.ethers.io/v5/) - Client side lib for interacting with Solidity primitives like 256 bit numbers
In the pareto distribution of smart contracts, the most consequential contracts get the most eyeballs, and after they've been deployed for years without hacks, in spite of holding billions in user funds, you can be reasonably assured of their security. If not, I invite you to use your superior powers of analysis to find a bug in:
This is a list of things people have created, none of which offers any kind of improvement or transformative change.
The fact that someone's money had been sucked into this black hole also doesn't justify the technology or its intentions.
As every good old pyramid scheme, the crypto ecosystem needs you to believe that investing time and money has merits. That's how the few at the top benefit from the whole scheme.
I replied elsewhere in the tree on this thread. But exchanges, lending markets, human coordination over the internet, capital allocation, novel on-chain governance structures for organizations, smart contract multisig wallets, zero knowledge proof gaming, zk privacy, hell, even programmable, accessible, liquid, token-denominated assets have incredible value for the world. Value is being created despite your inability to distinguish the wheat from the chaffe.
How does any of this help a typical financial products consumer? Can you explain where I can do $0.00 transactions to my friends? Can you point me to where I can get a better deal on a refinance or HELOC loan with my house as collateral?
Because I love financial products that help me retain my earned money, and am avid about getting the best deals. Right now I have 0$ transactions, 3.75% actual guaranteed returns on cash (not a 50% chance of being worth $0 by next year a la FTX, genesis, blockfi, etc.), 3% cash back on transactions that cost a business 2.5%, and would love a cheaper HELOC than traditional banks. However, none of anything you mentioned actually does any of this better, the things that 99.8% people actually want, rather than speculative "investments" they're hoping to sell for more later.
What's that YC slogan again? "Make something people want."
Deflationary money means "whoever got in early and got the most money is going to be ultra-rich forever, unlike the poor sods who get in years/generations from now"
These graphs seem to say otherwise. Leaving the gold standard seems to have ushered in the current dystopia we find ourselves in. The gold standard wasn’t perfect for sure, but having to have money rooted in something instead of nothing seems to have kept wage improvements for all classes, not just the elite.
Which graphs? I wasn't talking about 1971 or the largely US-specific chart of not compensating people.
I'm talking about deflationary currency. With a deflationary currency people who got in early and got the larger part of the pie will for ever be ultra rich, and get richer.
Because the money you get now will only increase in value over time. So you got in early and got a single coin X for something. Congrats, you're nearly infinitely richer than, say, your grand kids who'll be getting fractions of a percent of that coin for that same something.
I;m not going to comment on the crypto side, but I would argue that your conclusion also applies to the traditional currency system; it's not like created money was freely handle to the poorest.
Only one of the uses I mentioned is harmed by inflation. Transactions don’t require me to hold a long position in USD and inflation would be in my favor if I’m holding USD debt. That just leaves USD bank interest, which has the strongest case for it out of any, because ETH and all cryptos lost much more value this year, if you were lucky enough to not be in the 50% holdings where your “account” was fraudulently wiped out a la FTX and BlockFi.
ETH is also inflationary… Both of your provided charts show large currency issuance and only very slight recent drawdowns.
As I expected; a whole bunch of buzz words and given the chance to produce a single real example, no actual use case for the 99.8% consumer.
All of this may be true, but each one of these things is one tiny programming mistake away from complete and irrevocable collapse. The track record for this category is poor.
For new projects, yes. New projects should be treated with caution, especially if from unknown entities or entities with a poor security track record. But Uniswap V2 is almost 3 years old at this point, and Uniswap V3 is almost 2 years old. The contracts were audited before they were deployed. They're open source. They've got billions of dollars in the contracts. If they could be hacked, they would have been hacked by now.
Almost 3 years old! There's a great joke in the movie _LA Story_ about this kind of thing.
Heartbleed, Shellshock, Log4Shell, Spectre... there are plenty of examples of serious flaws found in software far more mature than these smart contracts. Audits and testing only confirm the presence of bugs, not their absence.
"Cryptocurrency is the only thing currently being developed that can realistically combine the benefits of digitalization with cash-like respect for personal privacy."
"cash-like" does a lot of heavy lifting here.
Only Monero and Grin have any real expectation of privacy. Chain analysis is pretty mature, and the records exist forever.
be insanely proficient at low level development for a complicated stack to get half your below market compensation in lottery tickets at some startup
or be mediocre at coding in a simpler stack and get faang-level base salary and a bunch of tokens that can be sold the same as shares as if working at a faang. (or launch your own thing that consumers cant get enough of and make even more faster.)
> unregistered securities lying/pretending to be commodities
Let's assume you're correct. Tell me why having globally distributed securities be registered with the United States Securities Exchange Commission is 1) practical for people outside the U.S. or even desirable for the other 95% of the world population and 2) beneficial to people within the U.S. who do not have access to $1M in capital to be considered "accredited investors".
I don't care about securities law or what the US government does towards crypto. My point is that these ARE securities and bitcoin IS a commodity. When people truly understand this they realize owning anything crypto is akin to buying penny stocks and Bitcoin is basically digital gold 2.0
Bitcoin is a cryptocurrency. It was the first, every feature it has can be found in its forks (both chain and code forks) and competitors. The only thing bitcoin has over other cryptocurrencies is first mover advantage. That's it.
Bitcoin maxis are hilarious though "Bitcoin isn't crypto" is some of the funniest cope I've seen on the internet ever.
Ethereum is a foundation of sand. The protocol and the rules change at the whims of the senior insiders. It's not a stable platform and since we don't know what the rules will be in the future you can't plan for the future and build anything long term.
Bitcoin does not have Turing-complete scripting. It's impossible to build complex applications on top of Bitcoin, and no, sidechains don't count (they don't inherit Bitcoin's security). It's great that there's 21M supply cap. Fantastic for a gold-like digital asset. But absolutely useless for software engineers to build financial primitives on top of.
Feature not a bug. Base layer that will serve as foundation for entire global economy should be as simple as possible to make it as reliable as possible. Like all complex systems, functionality is added in layers. Things like lightning network and fedimints are examples of such layers.
> It's great that there's 21M supply cap.
Fixed supply is an essential requirement for the entire system to have any merit whatsoever. If supply can change at direction of core group of insiders it's just the same thing as the existing fiat banking system and the real value of the tokens will be diluted in perpetuity.
> But absolutely useless for software engineers to build financial primitives on top of.
No. See comment above about layers.
-
Bitcoin is a commodity, ETH & all of crypto is just (unregistered) securities lying/pretending to be commodities.
the gold standard was abolished to due it's volitile nature, compared to stability of a fiat like the USD. Bitcoin being a volitile commodity itself, it will not be able to run the global economy on-top of it.
Down 66% in 1 year after the whole world knows about it. Any day now. Wasn't it supposed to be an inflation hedge? Fiat sure retained value much better this year...
This is incorrect. The gold standard was abolished in the US because it was too hard for the US to control macroeconomic policy [1] (especially import/export rates) through gold. The US already had elaborate ways to manage reserves to help in keeping the dollar steady. It was also a matter of dwindling gold reserves for the US.
Whatever your thoughts are about the gold standard, it was not instability that did it in.
land also has a fixed supply and lots of people have argued that because it's a fixed supply it should be managed/regulated differently than things that have unlimited supply like say labor or produce
> Bitcoin is a commodity, ETH & all of crypto is just (unregistered) securities lying/pretending to be commodities.
Here's the problem with this:
Bitcoin doesn't exist below a society - its not independent of a functioning system made up of economic agents. Wheat and salt will continue to exist without human action.
And you've got it backwards: securities are just government and institution approved tokens existing on a consensus network. Some of us believe this consensus network is corrupt and should be rebuilt into something a bit more open source.
It doesn't matter. Governments decide what you do on the roads. It doesn't matter much if the you inspect the open source bricks making up the road, if the government can stop you from driving there.
Bitcoin is pretty much orthogonal to government control. Especially bitcoin with its completely open transaction history.
I would say the only merit to that is one plan for Ethereum mainnet’s roadmap is to introduce pruning, deleting old data for real, specifically smart contract states and held variables
This seems like it would break many smart contracts sometime later this decade, this isn't currently fleshed out
That aside, no other EVM is planning to do that, all code is compatible on all of them, and it doesn’t matter what Ethereum’s blockchain does
Having a roadmap is no merit. A roadmap means the system is centralized because a core group of people can change the rules. If it's centralized it's not censorship resistant and the supply can't be guaranteed to not increase and dilute holders therefore it's garbage.
If it's centralized it's garbage and it doesn't matter whatever its roadmap is. Also ETH wont implement sharding because its breaks composability. It's just marketing.
This is rich. Bitcoin is literally controlled by a group called Bitcoin Core and yes they did change the rules when they refused to change the block size as Satoshi and the community intended. They neutered Bitcoin for life by making it top out at a useless 7 transactions per second forever.
I’ve read that from start to finish and it all seems a lot like hopes and prayers. I don’t see any convincing evidence that Bitcoin will continue to hold its position , and the overall assumption all over that essay is that Bitcoin is “prime real estate”.
It’s possible but I don’t see it. I’d say it’s an open question.
Having written Solidity, I find it to be a very user friendly language as it shares many similarities to JavaScript (while being statically typed). I'm not sure the example on the home page is the best representation of the benefits of Fe, however, in relation to Solidity. In one of the bullet points it highlights:
"Improved decidability - Fe limits dynamic program behavior to improve decidability and allow more precise gas cost estimation."
I think it would be helpful to see an example of that or a side-by-side comparison, if the goal is to win over Solidity devs. If I can really save gas or prevent common bugs more easily, the page needs to do more to sell that point.
I'm not into Ethereum, but "more precise estimation of gas costs" sounds like a letdown compared to what you would want to build a really reliable smart contract. Can't a contract just die if it can't pay its gas bill?
With all the investment in blockchain (as you yourself mentioned in another comment), and so much money riding on the correctness of contracts, it seems like the incentives should line up to develop proper, usable formal methods (starting with backing down from Turing-completeness for the most part, most likely). That would be a pretty nice side effect for us skeptics. That's honestly what I was hoping for, with OP.
Contract’s don’t (more accurately almost never) pay for gas. Gas estimation is done when sending by the end user.
Some parts of gas estimation can be done statically, but some of the cost of certain operations are dependent on the data being loaded from the state. I’d like a tool to set an upper bound on gas usage (current approach is to execute the tx on pending state and add 10-30%), but solidity does not provide one.
Is there a reason existing programming languages cannot be used for smart contracts? The overhead of a new language seems quite high compared to the already established engineering communities around widely adopted languages.
As I understand it, smart contract languages generally have to be specifically tailored to the primitive operations offered by the EVM (Ethereum Virtual Machine). Binary size is at a strict premium, because the price to deploy a smart contract (currently in the thousands of dollars on the main Ethereum network) directly depends on it.
If the Ethereum platform places such a heavy premium on binary size then that seems like a real step backwards from a software engineering perspective. Our industry has learned through painful experience that optimizing for highly compressed binaries isn't a great way to ensure program reliability or correctness.
Such limitations aren't introduced for fun but stem from the desire to build a decentralized system. If you don't believe in decentralization or the separation of money from the state, then nearly all aspects of cryptocurrency will seem backwards to you. However, those who support decentralization view these limitations as necessary trade-offs.
Did no one stop at the “it costs thousands of dollars to deploy a binary” step and realise this isn’t going to work? They don’t need a new language for smaller binaries, they need to solve what seems to be a core roadblock.
Don’t think in terms of a „web app“. Instead, consider this: A block chain is basically just a distributed append-only database. Actually quite similar to how GIT works but with stronger security guarantees.
That doesn’t really answer the question of what it offers over a sharded cloud hosted web app if you’re having to move things to L2 to scale.
Edit: also unrelated, but I hate the tendency for crypto fans to keep moving the conversation to new analogies. The vast majority of threads here are analogies and buzzwords without very concrete technical discussion of the merits of the architecture.
Well, the details are more convoluted than two sentences on a public forum can convey. If you are seriously interested in how digital money works, I suggest you to read „Mastering Bitcoin“ which I found quite accessible even without a strong background in cryptography. Once you understood the BTC network you get a good grasp of what ETH is doing.
The former also employs an execution stack for running transactions but it is much more limited and I believe Turing incomplete (as a conscious choice).
The problem is these contracts will have bugs, as most software written by normal coders can attest to. Further! there is no decentralized way to settle disputes. Finally, modern contracts are at least ostensibly premised on being human readable. You may think such "pure logic" of some JS-alike smart contract is somehow easier to understand, but this will never be true while keeping the language meangfully capable, due to turing completeness (and other friends).
Such a system, where stakeholders are required to trust coders, destroys the benefits you claim. You now have the bottleneck of required human vetting/interacting. -This- is what people mean when they say such a system cant work in practice and is essentially no better (and definitely has lots of strange quirks like gas fees) than existing financial instruments.
> -This- is what people mean when they say such a system cant work in practice
Not sure what you are talking about. First of all I did not argue whether smart contracts have benefits (the thread was about L2 chains in the ETH context and whether that was overengineered).
Secondly, I would suggest you try ETH out. With the bubble over, gas fees are back to reasonable values. Buy a hundred bugs of ETH on Coinbase, move that to your Coinbase wallet and store some of it in the AAVE lender contract. While you might lose about $10 in gas fees and Coinbase fees, you’ll earn an interest rate on a decentralized network not involving banks. I found that pretty cool when I tried it for my first time.
The test may be more fun if you happen to know sb willing to sell you ETH directly and guide you through the ramp up phase.
I bought 10$ of ETH once about a year ago in the hopes that I could donate to some developers on GitHub. I never used it, and certainly wouldn't hold it for speculation as that is just pumping US cash dollars into a system full of people trying to cash out on a greater fool's scheme.
Anyway, doesn't seem like we are going to see eye-to-eye and no one has the energy to refute the complex uselessness that is crypto-currency. Dan Olson did a better job than I ever could -
case in point, this fun little copy-pasta you've given us:
"Secondly, I would suggest you try ETH out. With the bubble over, gas fees are back to reasonable values. Buy a hundred bugs of ETH on Coinbase, move that to your Coinbase wallet and store some of it in the AAVE lender contract. While you might lose about $10 in gas fees and Coinbase fees, you’ll earn an interest rate on a decentralized network not involving banks. I found that pretty cool when I tried it for my first time.
The test may be more fun if you happen to know sb willing to sell you ETH directly and guide you through the ramp up phase. "
My favorite part about this is that you deliberately explain _none_ of it (don't worry, I'm really not interested). Do you really think average people know what all this is? Or are you just hoping they'll ask so you can cheerlead each concept individually?
> Appeals to “the potential for innovation” are always amorphous and hand-wavy rhetorical gestures towards the potential for some tech that could exist but which we don’t fully understand the implications of. However bitcoin is a technology which did not arise out of an engineering effort directed towards a specific problem or market inefficiency, but instead out of a anarchist political narrative that views democratic control of the money supply and law enforcement as the problem.
No, because an L2 rollup isn't a typical cloud server. It's a form of verifiable computation: the server does some computation, and after a while posts a cryptographic proof of the state changes to a more secure ledger (the L1).
The benefit of this is that you get a high throughput system that inherits the same security guarantees as the L1. This is why something like a ZK rollup operator cannot "steal your funds" compared to something like a CEX operator.
Yeah, it looks like the information that I quickly Googled was oversimplified and also outdated. It seems like the price could still easily run into the hundreds of dollars, if the traffic on the network or the price of ETH in USD were to experience another significant increase.
That's interesting. It appears that the resources I was looking at were mostly from last year, which had both higher gas fees in gwei and higher ETH prices in USD. This contract (at 1.2 M gas) still only comes out to the hundreds of dollars at most; perhaps it is smaller than the kind of contracts that most people were considering at the time. (Incidentally, why is it so difficult to find any good order-of-magnitude estimates of the gas usage of deploying a contract?)
Determining how much a contract will cost to deploy is really easy for blockchain devs (the "user-friendly" resources probably don't make this easy because it's not relevant to people who aren't doing it).
Transactions on Ethereum all contain a certain amount of data which will live on the blockchain forever (often ~100 bytes, for non-contract-deployment transactions). Ethereum processes one block every 12 seconds, and blocks can contain up to 1 MB of data, so effectively people "bid" to get their transactions on by including the fee-per-byte they're willing to spend with their transaction (I'm glossing over a lot here, they're also bidding on computation resources for transactions which call code, and there is some dynamic targeting of fees, all to say that block sizes are typically much closer to 80 KB than 1MB)
In order to get an idea of how much it would cost to deploy a contract, you first compile it (get the bytecode size) and then look at the typical "gas cost" (what transactions are currently paying in fees). You can get this data from the chain directly, or go to https://etherscan.io/ and look at the "Med gas price" (currently 14 gwei, or 0.000000014 ETH). Your dev tooling can tell you how much gas should be required to deploy the contract based on the bytecode size, the storage (space in the virtual machine reserved for that contract's variables), and the amount of computation that needs to happen in the contract's constructor.
Once you know how much gas will be required to deploy the contract (the "gas amount") you multiply that by the gas price to get an amount of ETH. A very large contract might cost 8 million gas to deploy (gas is basically a unit used by the Ethereum virtual machine to price operations and storage). So if that's you, you multiply that by 0.000000014 ETH and get 0.112 ETH at the current gas price. If you want to pay less, you could always submit your transaction with a lower gas price (like 0.000000001 ETH lets say, to pay closer to 0.01 ETH); it'll just take longer to get validated (an indeterminate amount of time depending on how heavily the network is being used)
Obviously I've glossed over a lot here to make things more approachable, but hopefully that explains the situation well enough.
By the way, the tooling around blockchain development is still really primitive relative to its complexity; but contract deployment gas estimation isn't too hard for anyone doing it.
The total gas cost of a smart contract is determined by its running time that is the number of operations a smart contract needs to execute. So a large contract may actually be cheap to run if it never executes most of its code base.
Just a clarification, it's not "thousands of dollars" to deploy a smart contract to Ethereum, though a defi application might be comprised of a group of related contracts.
There's a limit on the size of a contract, and the largest contract one can deploy to Ethereum would cost about $120 at today's gas price and ETH price. For example, this transaction from a couple of hours ago deploys a contract that is at the contract size limit: https://etherscan.io/tx/0x5ed0c6d517fa0bf7c5074bf49ae0f73633...
You can see they spent $120 in gas fees to deploy it.
When the network is incredibly busy, of course, this could be much higher (but when it's dead, it could also be as cheap as $40)
At the peak of the bubble (ETH price around $5000), you're right, contracts this size would have been "thousands of dollars to deploy" when the network was congested. Even then, most contracts would have been cheaper, and you could still deploy contracts for $100-200
If ETH (the token) continues to appreciate in price then it's entirely possible "thousands of dollars" for a contract could become the norm, but that's obviously not a certainty, and if that does happen (before network improvements which may also decrease fees), there are always alternative blockchains and L2s that you could deploy Solidity contracts to.
I'm sure there were a few others I can't think of right now.
Solana uses Rust for its contracts, and I can't mention Solana or any of the above without someone pointing these platforms died specifically because people writing these contracts like them being "javascript like".
There's a really good comment on Solidity here, the fact it's "won" says a lot.
Many wasm runtimes come with gas and instruction counters, so any language fit for wasm is fit for modern crypto chains. What is Fe trying to reinvent?
I have zero experience with writing what contacts.
But I would like to ask why does it need it's own language, wouldn't using a language that already exists and has some history be easier and maybe faster?
Smart contracts written i.e. for Ethereum use Solidity, which is not Turing complete. By restricting semantics you have finer control over potential slippages.
Besides, a language for smart contracts that is built around the domain is easier to work with than a general-purpose one. So your Q would then be: why not something like Solidity or similar? - perhaps somebody else can elaborate.
"[The EVM] is a quasi-Turing-complete machine; the quasi qualification comes from the fact that the computation is intrinsically bounded through a parameter, gas, which limits the total amount of computation done."
> By restricting semantics you have finer control over potential slippages.
Solidity have had plenty of "slippages" already and a generally misguiding design, and at least initially was not really into "restricting semantics". Plenty of points made previously, e.g. https://news.ycombinator.com/item?id=14691212.
137 comments
[ 5.3 ms ] story [ 262 ms ] threadEven if we pretend for a moment that there was some merit to the “web3 smart contract”, by now it should be painfully clear to anyone involved that this is a technological dead end.
There are a many more realistic ideas to explore and research instead of wasting time on crypto unicorns.
and consumers cant get enough of them and will shoulder costs of interacting with them
the most irrelevant part of this equation is debating why consumers are spending money on developer’s internet vending machines
its a market with demand, the market is telling you what to do for half a decade and yet
Every cloud platform has a free tier that can probably handle the entirety of crypto, and then some.
A Raspberry Pi is a more efficient platform that realistically competes with "web3"
nobody cares about the technical feasibility of running a blockchain, development routinely requires local deployments
Yup. In a response to "Even if we pretend for a moment that there was some merit to the 'web3 smart contract', by now it should be painfully clear to anyone involved that this is a technological dead end."
Of course there's no better platform than "web3" for developers who do the "web3" stuff. "Windows is the best platform to develop apps for Windows".
However. As a platform web3 is a failure. And for developers literally everything outside crypto is a better platform. For users, too.
Recognizing that makes you way better of a developer and entrepreneur than the 10x coder hunting for exploits and bug bounties, where making money is the goal
Cheaper than what?
That's the beauty of vague unverifiable statements like "for developers, there is no platform that realistically competes with 'web3 smart contract'." For any counter example you can always say "that's not what I meant"
> Recognizing that makes you way better of a developer and entrepreneur than the 10x coder hunting for exploits and bug bounties, where making money is the goal
Was this sentence written by ChatGPT?
the closest I can think of is Firebase or AWS Lambda (or similar compute instance) with some kind of rudimentary database or shoehorned in variable storage. these all charge by number of executions, bandwidth and storage, even geographic location
smart contract deployments would be cheaper than that, via a one time cost for the developer, and have unlimited use. it is also convenient and valuable that the smart contract cannot be deplatformed
I don't really see Firebase or AWS or other compute instances competing on any of these fronts, but if you know of a counterpoint I would love to check out their pricing and usage page
smart contracts are read for free and are read just as much as any api or application, whereas reading from my API that's doing nothing would still start charging me, the developer, and not be as cheap and using bare metal I have hosted somewhere or locally would have high maintenance or performance problems just reading and sending responses at the level necessary
writing is paid for by the consumers, but again here I agree that this level of activity would fit in the free tiers of cloud services
You could argue that most of these theoretical consequences have nothing to do with the technologies themselves, but that's true of almost all software technology. Even a potentially devastating piece of malware is, in a vacuum, just some bytes floating in space, with no inherent meaning until someone chooses to execute it. Most discussions about morals in programming and computer science either ignore or gloss over this part as if it is already answered, but it probably matters.
There's some arbitrary dividing line where you decide when the blame lies with the operator(s) vs the technology itself. In practice, I think it's more useful to look at it in terms of who's executing the code instead of who's writing it, since in practice the existence of code that does something is basically an inevitability, in a world where you can only rely on impracticality for a limited amount of time and where it's basically impossible to hold a monopoly on some piece of knowledge or information forever. I think this also is rather helpful when you look at things like exploits: if someone makes a genuine mistake in their software, for which they expressly disclaimed any warranty, it would be weird for them to be culpable when it impacts an operator; but if someone were to be using said software to store user data, and that user data were leaked via an exploit in software, it's more reasonable to say the operator is responsible. Code itself doesn't usually have much intent encoded into it, so it's unreasonable to go in from a perspective that assumes that you can judge the morality of software itself.
But then, taking this to its logical extreme, it might be a little too absolutist; even if software is inevitable, that doesn't mean that culpability for intentionally destructive behavior is necessarily a bad idea.
Either way, from this viewpoint, I think you can easily argue that cryptocurrency and AI both have enormous potential to cause consequences in the world. It isn't necessarily that the technologies themselves are inherently bad, but from a practical standpoint it doesn't really matter.
https://endthefud.org/energy
The most ridiculous point I've seen by far is the idea that actually, energy is not "wasted", because it's actually generating heat. It is true that computers are 100% efficient space heaters, but that's not the point.
The point is that if you scale the Bitcoin network up, it would put tremendous strain on the energy grid. That's not FUD at all!
Yep we've heard this all before.
Bitcoin vs. Meth Cooking
Bitcoin vs. Yellow Cake Snorting
etc
https://decrypt.co/109848/ethereum-energy-carbon-footprint-d...
I've used it to generate prototype images before hiring an artist to get precisely what we want and a designer friend of mine uses it as a starting point for manual modification, drastically increasing his output.
Direct, practical, real tangible work enhancers that we could not do before.
Unlike crypto
The value of decentralized platforms is that it gets rid of the tech bros and financial scams. Anyone, anywhere in the world, can make transactions independently, without having to blindly trust that the funds are actually there.
If people transacted using DeFI, there would be no FTX, no Coinbase, no VC trying to leech off the masses.
Ah yes. No scams or tech bros. Except the implicit blind trust in programs written in esoteric programming languages on esoteric VMs that are rife with financial scams.
> If people transacted using DeFI, there would be no FTX, no Coinbase, no VC trying to leech off the masses.
Except that Uniswap is currently almost 100% automated bots "swapping" fictional tokens. And for anything useful you depend on centralized oracles. And for anything related to actual real world you must go through centralized entities.
chainlink etc
Which are entirely dependent on centralised oracles etc.
Hint: if there are only 2/5/10 centralised oracles providing you with data, no amount of fluffy "decentralised tamper-proof inputs" statements make them such.
Even if that was true (which it is not) it is still valuable for the people that use it and for the liquidity providers who can employ their capital in a reasonably safe manner without relying on banks.
All I need is to have a market of people willing to trade. If you don't see the value of it, fine. But just go find someone who got their PayPal account frozen with no recourse and ask them how much they would value the ability to trade in a permissionless network.
I didn't say "absolute vast majority of tokens". I said "absolute vast majority of things happening on uniswap".
> All I need is to have a market of people willing to trade.
There's absolutely a market for people willing to trade. If there wasn't, Amazon, eBay, AliExpress etc. wouldn't have been multi-trillion behemoths they are.
Uniswap isn't a "market for people willing to trade". It's a market for people willing to engage in currency speculation and flash loans using fantasy tokens. Even you are saying this. Quote: "make use of Uniswap to exchange, e.g, Storj/BAT/ETH for DAI/USDC/EURS". There's nothing new or revolutionary in this.
Speculation in markets are always going to exist. We have people making a living by speculating on the price of commodities, forex, company stock and event insurance policies. You calling them fantasy does not change the fact that there are people willing to trade them and does not change the fact that there is value in being able to do this without a central authority.
I gave the example of Storj/BAT precisely because these are business who are paying actual money for a service (Storj is paid for those hosting data, BAT distributed by Brave as a reward for those willing to receive privacy-protecting ads).
You could argue that the tokens themselves are not needed and that we could do it with cash, but that would be missing the point: such systems could not work on a worldwide scale as easily as they work now, and the speculation is a desired property of the system. Most people are getting into the network not because of the $5/month they get from seeing ads, but because of the possibility of the received tokens going up in value. At the same time, the people who do want to sell their tokens and get cash can do so.
I am not. I am describing the absolute vast majority of cases on Uniswap.
> Speculation in markets are always going to exist. We have people making a living by speculating on the price of commodities, forex, company stock and event insurance policies.
Yes, but you're effusing that currency speculation and flash loans (majority of Uniswap) is this some new grand thing that never existed before. Reality disagrees.
> such systems could not work on a worldwide scale as easily as they work now
Forex was (and probably still is) a huge global market. I know because my friends spent a lot of time on it in early 2000s. Global market works easily, and at scale. For much longer and at much larger scale than anything crypto maximalists can even dream of.
> Most people are getting into the network not because of the $5/month they get from seeing ads, but because of the possibility of the received tokens going up in value.
Yup. Pure speculation. You're pretending it's something new, novel, and hasn't ever existed before.
At no point I said that what makes Uniswap (or crypto in general) valuable is the speculation in itself. The value of crypto is in the ability of doing things permissionlessly.
The value of Uniswap is not to that it is "better" than Forex. The value of Uniswap is that it lets people exchange value permissionlessly.
The value of ENS is not that it is "better" than the ICANN. The value of ENS is that it lets people control a stable, unique, global identity permissionlessly.
The value of crypto payment networks is not that it is "better" than Visa. The value of crypto payment networks is that it lets people make transactions around the world permissionlessly.
The value of Storj
> my friends spent a lot of time on (Forex) in early 2000s.
After jumping through all the required hoops, putting together minimum deposit requirements, passing KYC to show their legal standing with who-knows how many financial authorities... but what about those people who wanted to do Forex, but failed to pass any type of requirement? What about, e.g, people in Argentina who are forced to buy and sell dollars at the totally artificial rate imposed by the government?
> Global market works easily, and at scale.
If it works for you, great! Plenty of people who don't have the same luck.
> For much longer and at much larger scale than anything crypto maximalists can even dream of.
Nice strawman you got here. Where in this conversation was there any type of "maximalist" proclamation?
Tokens are also fully programmable, and that enables a number of primitives that are not possible with stock certificates or grain contracts. For one, they can easily be held within a multisig smart contract wallet, governed by configurable rules for spending (in an M-of-N scheme). This makes it frictionless to set up a small group or organization on the internet even if the participants are in 7 different countries. This helps to coordinate human and financial capital, because rules can be programmed in the DAO or multisig to prevent one person from stealing all the funds. Since everything is on-chain, everything is above the board. Very difficult to arrange this with traditional corporate checking accounts, and even then, one executive ultimately controls the account.
Those two alone would be huge and worth it for humanity, but I listed more on that list and I'm running out of time for a reply. But I invite you to analyze the products yourself. Try them on testnets for free if you like.
"Rules can be programmed (in esoteric programming languages using new made up terms for everything)" and frictionless in one sentence. Smh.
With a multisig smart contract wallet (https://gnosis-safe.io/), it's frictionless to setup a simple smart contract for holding the treasury and for enacting M-of-N rules on any expenditures from that multisig. This may be a 3 of 5 signature requirement or even a 5 of 5 signature requirement. It's fully programmable. So when starting a Web3 project, it's possible to jump into a partnership with a group and be productive without having to worry as much about establishing trust, navigating five different jurisdictions for employment agreements, or centralizing control in a single person.
In addition, far more elaborate org structures are possible, and there exist plenty of tooling for making those happen without even needing to know how to code (https://juicebox.money/, https://daohaus.club/).
Solidity is not all that esoteric. It's similar in syntax to JavaScript, but it's statically typed. There are also widely recognized and audited open source code bases to build off of (https://www.openzeppelin.com/contracts). And tons of developer tooling (https://docs.ethers.io/v5/, https://wagmi.sh/), along with countless resources on the web.
This is sufficiently rare that "traditional" finance hasn't come up with a product for that. Or maybe it has, but it's just as obscure as Gnosis.
> It's fully programmable.
You keep saying this as if this was a desirable quality.
> Solidity is not all that esoteric. It's similar in syntax to JavaScript
It doesn't make it not esoteric. It doesn't make it Javascript.
It's its own language with its own idiosyncrasies, its own lingo, its own terminology (so much of the terminology in the crypto space is just absolutely random bullshit people came up on the spot for things that already exist in the language).
There are no tools, no way to debug, no way to revert a deployment, no way to upgrade a "contract" etc.
And it's so bad that repeated audits and bug hunts routinely fail to find issues in the code of even the simplest contracts.
Traditional finance doesn't have an answer for this. It's not rare at all. I personally work with people from Argentina, Denmark, Canada, Serbia, Croatia, Australia and Hong Kong. It's very common to work in a fully distributed online manner, using chat products to communicate. It's very easy to meet people in online hackathons, on Discord servers, on gaming platforms, etc these days, from all over the world.
Yes, programmability is always superior to non-programmability, as it is a superset of non-programmability. After all, you could always encode whatever non-configurable properties you wanted as part of the ruleset for the contract or asset.
> It doesn't make it not esoteric. There are no tools, no way to debug, no way to revert a deployment, no way to upgrade a "contract" etc.
At this point Solidity is 7 years old. There are more than 200K developers that have learned it (50K from ETHGlobal hackathons alone: https://ethglobal.com/), 20K stars on Github, 44 million smart contracts have been deployed to ETH mainnet, 60K people watched Devcon Colombia vids a couple weeks ago (6K attended in person), 20K attended ETHDenver earlier this year, etc.
There's tons of tools: Hardhat (https://hardhat.org/) - for JS based task running, deployment, testing, debugging, etc. Even deploys a local chain or allows you to fork a copy of mainnet locally to test against.
Foundry (https://getfoundry.sh/) - if you want to run your build/test/debug tool-chain in Solidity
WAGMI (https://wagmi.sh/) - Robust React hooks for client-side interactions with smart contracts
Ethers.js (https://docs.ethers.io/v5/) - Client side lib for interacting with Solidity primitives like 256 bit numbers
Block Explorers like https://etherscan.io/ or https://beaconcha.in/
In the pareto distribution of smart contracts, the most consequential contracts get the most eyeballs, and after they've been deployed for years without hacks, in spite of holding billions in user funds, you can be reasonably assured of their security. If not, I invite you to use your superior powers of analysis to find a bug in:
Uniswap V3: https://github.com/Uniswap/v3-core (Currently open $2.2M bug bounty plus additional $3M reward for the Universal Router and Permit2 contracts https://uniswap.org/bug-bounty)
Or Aave V3: https://docs.aave.com/developers/deployed-contracts/security..., which has been audited by ABDK, OpenZeppelin, Trail of Bits, Peckshield, and SigmaPrime (up to $250K for critical bugs: https://github.com/aave/bug-bounty).
Also, see: https://docs.openzeppelin.com/learn/upgrading-smart-contract... about upgrading smart contracts. Not always desirable, but of course, entirely possible, th...
As every good old pyramid scheme, the crypto ecosystem needs you to believe that investing time and money has merits. That's how the few at the top benefit from the whole scheme.
Because I love financial products that help me retain my earned money, and am avid about getting the best deals. Right now I have 0$ transactions, 3.75% actual guaranteed returns on cash (not a 50% chance of being worth $0 by next year a la FTX, genesis, blockfi, etc.), 3% cash back on transactions that cost a business 2.5%, and would love a cheaper HELOC than traditional banks. However, none of anything you mentioned actually does any of this better, the things that 99.8% people actually want, rather than speculative "investments" they're hoping to sell for more later.
What's that YC slogan again? "Make something people want."
What does this reference?
https://fred.stlouisfed.org/series/M2SL
Ethereum offers a way to step outside of it and is creating a decentralized, deflationary money.
https://ultrasound.money/
Deflationary money means "whoever got in early and got the most money is going to be ultra-rich forever, unlike the poor sods who get in years/generations from now"
https://wtfhappenedin1971.com/
If you think about it when you turn on a money printer, those closest to it (elites, the well connected) are going to catch most of it.
Which graphs? I wasn't talking about 1971 or the largely US-specific chart of not compensating people.
I'm talking about deflationary currency. With a deflationary currency people who got in early and got the larger part of the pie will for ever be ultra rich, and get richer.
Because the money you get now will only increase in value over time. So you got in early and got a single coin X for something. Congrats, you're nearly infinitely richer than, say, your grand kids who'll be getting fractions of a percent of that coin for that same something.
ETH is also inflationary… Both of your provided charts show large currency issuance and only very slight recent drawdowns.
As I expected; a whole bunch of buzz words and given the chance to produce a single real example, no actual use case for the 99.8% consumer.
Heartbleed, Shellshock, Log4Shell, Spectre... there are plenty of examples of serious flaws found in software far more mature than these smart contracts. Audits and testing only confirm the presence of bugs, not their absence.
"cash-like" does a lot of heavy lifting here.
Only Monero and Grin have any real expectation of privacy. Chain analysis is pretty mature, and the records exist forever.
be insanely proficient at low level development for a complicated stack to get half your below market compensation in lottery tickets at some startup
or be mediocre at coding in a simpler stack and get faang-level base salary and a bunch of tokens that can be sold the same as shares as if working at a faang. (or launch your own thing that consumers cant get enough of and make even more faster.)
Bitcoin, however, truly is a commodity and is decentralized.
Let's assume you're correct. Tell me why having globally distributed securities be registered with the United States Securities Exchange Commission is 1) practical for people outside the U.S. or even desirable for the other 95% of the world population and 2) beneficial to people within the U.S. who do not have access to $1M in capital to be considered "accredited investors".
Bitcoin maxis are hilarious though "Bitcoin isn't crypto" is some of the funniest cope I've seen on the internet ever.
Bitcoin is signal, all of crypto is noise.
Feature not a bug. Base layer that will serve as foundation for entire global economy should be as simple as possible to make it as reliable as possible. Like all complex systems, functionality is added in layers. Things like lightning network and fedimints are examples of such layers.
> It's great that there's 21M supply cap.
Fixed supply is an essential requirement for the entire system to have any merit whatsoever. If supply can change at direction of core group of insiders it's just the same thing as the existing fiat banking system and the real value of the tokens will be diluted in perpetuity.
> But absolutely useless for software engineers to build financial primitives on top of.
No. See comment above about layers.
-
Bitcoin is a commodity, ETH & all of crypto is just (unregistered) securities lying/pretending to be commodities.
Bitcoin is a scarce commodity with no issuer. It cannot be counterfeited on the whim of a small group. Its volatility should decrease with adoption.
Whatever your thoughts are about the gold standard, it was not instability that did it in.
[1]: https://www.wsj.com/articles/when-the-u-s-gave-up-gold-11625...
Here's the problem with this:
Bitcoin doesn't exist below a society - its not independent of a functioning system made up of economic agents. Wheat and salt will continue to exist without human action.
And you've got it backwards: securities are just government and institution approved tokens existing on a consensus network. Some of us believe this consensus network is corrupt and should be rebuilt into something a bit more open source.
Bitcoin is pretty much orthogonal to government control. Especially bitcoin with its completely open transaction history.
This seems like it would break many smart contracts sometime later this decade, this isn't currently fleshed out
That aside, no other EVM is planning to do that, all code is compatible on all of them, and it doesn’t matter what Ethereum’s blockchain does
Do you have any thoughts on the points I made instead of centralization/maxi copypasta?
https://endthefud.org/control
Here is Justin Bons on the broken security model of Bitcoin:
https://mobile.twitter.com/Justin_Bons/status/15947344601506...
Any answer ?
It’s possible but I don’t see it. I’d say it’s an open question.
https://mobile.twitter.com/Justin_Bons/status/15994477745837...
Just leaving this here for reference for others as I don’t think I’ll sway you either way
"Improved decidability - Fe limits dynamic program behavior to improve decidability and allow more precise gas cost estimation."
I think it would be helpful to see an example of that or a side-by-side comparison, if the goal is to win over Solidity devs. If I can really save gas or prevent common bugs more easily, the page needs to do more to sell that point.
With all the investment in blockchain (as you yourself mentioned in another comment), and so much money riding on the correctness of contracts, it seems like the incentives should line up to develop proper, usable formal methods (starting with backing down from Turing-completeness for the most part, most likely). That would be a pretty nice side effect for us skeptics. That's honestly what I was hoping for, with OP.
Some parts of gas estimation can be done statically, but some of the cost of certain operations are dependent on the data being loaded from the state. I’d like a tool to set an upper bound on gas usage (current approach is to execute the tx on pending state and add 10-30%), but solidity does not provide one.
I don’t view it as superior or solving problems that solidity introduces. yes, solidity makes things complex, no static typing does not fix this
I do see it diluting available talent amongst employers, who have accidentally hired an enthusiast that wants the team to use this language
Edit: also unrelated, but I hate the tendency for crypto fans to keep moving the conversation to new analogies. The vast majority of threads here are analogies and buzzwords without very concrete technical discussion of the merits of the architecture.
> isn’t it just a highly over engineered cloud hosted but sharded web app?
A bit ironic.
The former also employs an execution stack for running transactions but it is much more limited and I believe Turing incomplete (as a conscious choice).
Such a system, where stakeholders are required to trust coders, destroys the benefits you claim. You now have the bottleneck of required human vetting/interacting. -This- is what people mean when they say such a system cant work in practice and is essentially no better (and definitely has lots of strange quirks like gas fees) than existing financial instruments.
Not sure what you are talking about. First of all I did not argue whether smart contracts have benefits (the thread was about L2 chains in the ETH context and whether that was overengineered).
Secondly, I would suggest you try ETH out. With the bubble over, gas fees are back to reasonable values. Buy a hundred bugs of ETH on Coinbase, move that to your Coinbase wallet and store some of it in the AAVE lender contract. While you might lose about $10 in gas fees and Coinbase fees, you’ll earn an interest rate on a decentralized network not involving banks. I found that pretty cool when I tried it for my first time.
The test may be more fun if you happen to know sb willing to sell you ETH directly and guide you through the ramp up phase.
Anyway, doesn't seem like we are going to see eye-to-eye and no one has the energy to refute the complex uselessness that is crypto-currency. Dan Olson did a better job than I ever could -
https://youtu.be/YQ_xWvX1n9g
case in point, this fun little copy-pasta you've given us:
"Secondly, I would suggest you try ETH out. With the bubble over, gas fees are back to reasonable values. Buy a hundred bugs of ETH on Coinbase, move that to your Coinbase wallet and store some of it in the AAVE lender contract. While you might lose about $10 in gas fees and Coinbase fees, you’ll earn an interest rate on a decentralized network not involving banks. I found that pretty cool when I tried it for my first time.
The test may be more fun if you happen to know sb willing to sell you ETH directly and guide you through the ramp up phase. "
My favorite part about this is that you deliberately explain _none_ of it (don't worry, I'm really not interested). Do you really think average people know what all this is? Or are you just hoping they'll ask so you can cheerlead each concept individually?
Have you ever tried to explain what a bank account is to a person who’s never used money?
Alternatively, had you tried to explain what the World Wide Web is supposed to be about to a boomer back in the 90s?
Then maybe you begin to understand how I feel when interacting with people like you.
(from https://www.stephendiehl.com/blog/non-innovation.html)
The benefit of this is that you get a high throughput system that inherits the same security guarantees as the L1. This is why something like a ZK rollup operator cannot "steal your funds" compared to something like a CEX operator.
Gas costs of thousands to deploy a contract are an anomaly.
That’s not right. Here’s a recent contract that cost less than $20 to deploy.
https://etherscan.io/tx/0xd21e1757649ace2fa5d9a1c0f36ddfb495...
Transactions on Ethereum all contain a certain amount of data which will live on the blockchain forever (often ~100 bytes, for non-contract-deployment transactions). Ethereum processes one block every 12 seconds, and blocks can contain up to 1 MB of data, so effectively people "bid" to get their transactions on by including the fee-per-byte they're willing to spend with their transaction (I'm glossing over a lot here, they're also bidding on computation resources for transactions which call code, and there is some dynamic targeting of fees, all to say that block sizes are typically much closer to 80 KB than 1MB)
In order to get an idea of how much it would cost to deploy a contract, you first compile it (get the bytecode size) and then look at the typical "gas cost" (what transactions are currently paying in fees). You can get this data from the chain directly, or go to https://etherscan.io/ and look at the "Med gas price" (currently 14 gwei, or 0.000000014 ETH). Your dev tooling can tell you how much gas should be required to deploy the contract based on the bytecode size, the storage (space in the virtual machine reserved for that contract's variables), and the amount of computation that needs to happen in the contract's constructor.
Once you know how much gas will be required to deploy the contract (the "gas amount") you multiply that by the gas price to get an amount of ETH. A very large contract might cost 8 million gas to deploy (gas is basically a unit used by the Ethereum virtual machine to price operations and storage). So if that's you, you multiply that by 0.000000014 ETH and get 0.112 ETH at the current gas price. If you want to pay less, you could always submit your transaction with a lower gas price (like 0.000000001 ETH lets say, to pay closer to 0.01 ETH); it'll just take longer to get validated (an indeterminate amount of time depending on how heavily the network is being used)
Obviously I've glossed over a lot here to make things more approachable, but hopefully that explains the situation well enough.
By the way, the tooling around blockchain development is still really primitive relative to its complexity; but contract deployment gas estimation isn't too hard for anyone doing it.
There's a limit on the size of a contract, and the largest contract one can deploy to Ethereum would cost about $120 at today's gas price and ETH price. For example, this transaction from a couple of hours ago deploys a contract that is at the contract size limit: https://etherscan.io/tx/0x5ed0c6d517fa0bf7c5074bf49ae0f73633...
You can see they spent $120 in gas fees to deploy it.
When the network is incredibly busy, of course, this could be much higher (but when it's dead, it could also be as cheap as $40)
At the peak of the bubble (ETH price around $5000), you're right, contracts this size would have been "thousands of dollars to deploy" when the network was congested. Even then, most contracts would have been cheaper, and you could still deploy contracts for $100-200
If ETH (the token) continues to appreciate in price then it's entirely possible "thousands of dollars" for a contract could become the norm, but that's obviously not a certainty, and if that does happen (before network improvements which may also decrease fees), there are always alternative blockchains and L2s that you could deploy Solidity contracts to.
https://ethereum-viper.readthedocs.io/en/latest/
Simplicity was supposed to be the "technically better" language:
https://blockstream.com/simplicity.pdf
I'm sure there were a few others I can't think of right now.
Solana uses Rust for its contracts, and I can't mention Solana or any of the above without someone pointing these platforms died specifically because people writing these contracts like them being "javascript like".
There's a really good comment on Solidity here, the fact it's "won" says a lot.
https://news.ycombinator.com/item?id=14689792#14691212
But I would like to ask why does it need it's own language, wouldn't using a language that already exists and has some history be easier and maybe faster?
Besides, a language for smart contracts that is built around the domain is easier to work with than a general-purpose one. So your Q would then be: why not something like Solidity or similar? - perhaps somebody else can elaborate.
From https://ethereum.github.io/yellowpaper/paper.pdf:
"[The EVM] is a quasi-Turing-complete machine; the quasi qualification comes from the fact that the computation is intrinsically bounded through a parameter, gas, which limits the total amount of computation done."
> By restricting semantics you have finer control over potential slippages.
Solidity have had plenty of "slippages" already and a generally misguiding design, and at least initially was not really into "restricting semantics". Plenty of points made previously, e.g. https://news.ycombinator.com/item?id=14691212.