Hacker News new | past | comments | ask | show | jobs | submit login
It costs $436 to deploy a smartcontract on Ethereum (twitter.com/eric_khun)
134 points by minoo555 on Sept 23, 2021 | hide | past | favorite | 115 comments



I wrote that smart contract as concept art! ( https://cryptologie.net/article/542/project-memento-an-nft-a... ). Nice to see this on the front page :)

A few years ago, deploying a smart contract only cost a few dollars. It raised questions like “wouldn’t anyone then spam the blockchain and increase its size in non-scalable way?” I guess pricing “solved” that issue.

We considered Avalanche as an alternative, as it supports the same VM for smart contracts, but integrations with tools (metamask, etherjs) and services (infura, opensea) is not there yet, and or course everybody is on Ethereum anyway so there’s an egg and chicken issue at play.


Like a million-dollars pixel but with letters.

https://project-memento.com


That was the inspiration!


Metamask works with Avalanche, not sure about the others.


Just change the network ID and any EVMs work

Avalanche is no different


That's cute. Now if you want to add a few modules like KYC, make it upgradeable (need to deploy a proxy and a proxy admin) and gasless (deployment through a forwarder) and you'll be around ~3000$.

I mention those modules as those are the ones needed to provide the same services as a notary. This raise the issue that ETH is starting to no longer be competitive with the establishment. It's a bit aggravating as for many this was the main purpose.


>is starting to no longer be competitive with the establishment

the establishment has scale of billions of users and decades or even centuries over which it has evolved its machinery. Doing something "on a computer/over internet" allowed to beat a lot of incumbents in less technical areas, while in this case the incumbent - the fintech - is itself one of the first adopters of the various "on a computer/over internet" tech.

So just doing it "on a blockchain" may be not enough. Especially given that, like negative feedback in control systems, the blockchain has that limiting control loop of "higher demand and wider adoption -> higher transaction fees" which naturally results in curbing of the demand/adoption. I.e. economy of scale works in the opposite direction on blockchain.


Well, once you have deployed it it can be used countless times for a much lower fee


is there a standard eth cookbook that you are referencing? proxy and proxy admins, gasless forwarders?

is there a standard body of knowledge compiled somewhere abuot this?


Gasless is made possible by meta transactions, a proposal from last year: https://eips.ethereum.org/EIPS/eip-2771

For which Openzepplin proposes documentation and an implementation https://docs.openzeppelin.com/contracts/4.x/api/metatx https://github.com/OpenZeppelin/openzeppelin-contracts/tree/...

Proxied versions of standard contracts are also proposed by Openzeppelin: https://docs.openzeppelin.com/upgrades-plugins/1.x/writing-u... https://github.com/OpenZeppelin/openzeppelin-contracts-upgra...

For KYC you'll need to implement your own ERC20 compatible token with some checks in the transfer functions. The CMTA is the Swiss contract reference and proposes one: https://github.com/CMTA/CMTA20


> Swiss contract reference and proposes one: https://github.com/CMTA/CMTA20

Amazing, someone went thru the headaches of trying to make ERC20 compliant with some local laws, wow, I'm just speechless.

I suppose there can be some value in unlocking company equity, but placing freezable contract on a public blockchain? I suppose that might make audits easier or something. However, might as well put full trust into the person with the freeze key, would likely be a lot cheaper.

Every stablecoin has the freeze function so far, and that underpins DeFi, which has become sizable. I'm probably just dumb.


> However, might as well put full trust into the person with the freeze key, would likely be a lot cheaper.

It's easier to trust someone when everything they do is public.

> make ERC20 compliant with some local laws, wow, I'm just speechless.

Switzerland is one of the leading actor in blockchain, with rapidely adapting and welcoming regulations (the first "crypto law" was enacted last year) and a fast growing ecosystem (https://cryptovalley.swiss/ https://trustvalley.swiss/ https://www.cmta.ch/).

It kind of make sense if you think about it, as crypto really is the future of banking, that the first banking country is taking the lead.

So yes a lot of people are working on it and a lot of implentations will come from Switzerland. It's also convenient that the Swiss law is very easy to apprehend, is translated in many languages and is often taken as a reference in international law/contacts as it's a no bullshit law without spectacular outcome in litigation.


My experience with Switzerland was an amazing experience in what goverment could be.

Like, the biggest culture shock was how it wasnt adversarial. My extremely low bar was just hoping I wasn't fighting intentionally onerous or ignorant bad laws. But Switzerland offers very high bar in this sector, one of collaboration and help!

In other day to day areas there is a lot of red tape. But in fintech and crypto protocols they are doing great things at the right time.

I’ve always contended that public resources could be spent on simply making better smart contracts for the industry to optionally use, as opposed to state actors still incoherently ranting about "regulating crypto" 10 years in, while achieving no consumer or investor protection with any regulatory action or proposal. Consumers and investors can weigh and vet projects more easily partially based on its use of vetted contracts from the state. Thats crazy talk here in the US right now, but not in Switzerland.


These sorts of extreme costs are inherent to any trustless decentralized system like Ethereum. Storing and verifying contracts across tens if not hundreds of thousands of nodes is not free.


>These sorts of extreme costs are inherent to any trustless decentralized system like Ethereum.

Do you have a demonstration of that proposition? I see no reason why that needs to be true at all. There's a big gap between "free" and "extreme costs".


As long as storage, electricity, and network costs are somewhat in the ballpark of where they are now, and interest in eth is sufficiently high, there's no way around it.

You can't just put something on thousands of devices, indefinitely, for low to no cost.

In fact, it _has_ to be at least more expensive that whatever the cheapest highly reliable storage provider offers. Otherwise I'm going to be using everyone's machines to host all sorts. Same with webhosting, and any other kind of hosting.


If one wanted to attack the network, and had the resources, could they scale up the network nodes they had control over to starve participants by making it too expensive to perform operations?


nvm


Every contract has to be verified by every node on the network, usually many many times over. The network is huge.


>The network is huge.

That is only one factor in the equation. The cost of performing a calculation is tiny, on the other hand. How you would, even conceptually, be able to arrive at some minimum dollar figure for such a thing, that is large in comparison to, say a person's average income is unclear.


That’s why I’m really curious about Algorand. I think they did two interesting things, although I haven’t really looked at it, but they:

- removed execution from consensus. I believe consensus just gets the execution result from elsewhere and thus doesn’t get slowed down by execution (the bottleneck when I was working on libra/Diem)

- have a random committee that verifies the execution, as opposed to everyone on the network like in Ethereum


so individual nodes in Algorand cannot verify the smart contract execution, they must trust the verification committee to some extent?


Yeah that’s my understanding. It should ideally go so quickly that you wouldn’t be able to sync with the blockchain if you were to verify execution.


Then they become kind of pointless right? Nobody would get started with this stuff if they didn’t already have a heap of ether from the initial days.


why does one need to execute the contact on thousands of nodes, when a verification proof (e.g. pinocchio) would be sufficient?


Why does a contract between two counterparties need to use a network with thousands of nodes at all?

What enforcement benefit does the network provide? I'd contend it's entirely superfluous to a smart contract system, which could just offer building blocks from a trusted third party instead for constructing contracts, and that trusted third party could also notary the transaction and provide arbitration.

All of these complex problems are already solved (trust, arbitration etc) and involve recourse to real legal systems whether you use some distributed contract or a traditional one.

The area in business contracts which is a mess and could do with attention is standard clauses for different industries, which are well understood by everyone, diffs between contracts etc etc.


That's because they are not contracts per se, smart or otherwise.

They are autonomous agents that act as your counterparty.


Wow, that sounds fancy and sounds almost like an AI counterparty when you put it that way. Did you mean counterparty (the other person in the transaction) or trusted third party (the third leg of most transactions, like lawyers who negotiate then witness a deal). My understanding was smart contracts attempt to replace the trusted third party with a trusted system.

But are they autonomous and do they really have any agency outside the very limited confines of a scripted response to known situations (like if x happens send x ETH)? Are they able to send contract disputes to arbitration or courts in case of disagreement? If not that doesn't strike me as particularly useful.

I do really like the concept of standard contracts though which everyone agrees to just use - could save a lot of lawyer fees on contracts for M&A for example which really should have been standard components plugged together with very little customisation but instead take 6 months of bickering and use copy-pasted contracts inherited from 100 former deals at those lawyers with all sorts of archaic language. If I were in that space I'd be trying to attack that problem and partner with a law firm to take on either very small contracts like wills or very large contracts like M&A in a given vertical.


I meant as the other "person" in the transaction. I believe Japanese regulators adopted the term "person-to-machine" or "machine-to-machine" transactions in order to describe "smart contracts", as they are not contracts in the legal sense.

The reason I called them "autonomous agents" because they don't really fulfill any part of a standard contract. No choice of jurisdiction, no severability clause etc. More of a judge&jury&executioner all in one.

They are rather rigid and somewhat limited today, but I'd guess they are autonomous in the sense you can make them nearly unalterable once deployed. I suppose wih time we will be interacting with AI-agents at some point, there are some rather wild projects trying to do just that.

It may not strike you as particularly useful, but some decentralized exchanges (uniswap, dydx) that now clear more trading volume than Coinbase, a 100 billion dollar company. This has to mean something.

I have no idea if they could ever supercede legal contracts. Maybe in a 100 years.


It doesn’t but this is how Ethereum was designed: everybody re executes.


Executing the contract takes very little compute. It's the transaction and block ordering which is the most important. For that, you need to distribute and add stake (PoW) to the blocks.


as a complete newbie to this,

where does the code actually execute? what's the code writen in?

whats stopping malicious code running?


> where does the code actually execute? what's the code writen in?

On every Ethereum node that verifies it. It's usually written in Solidity and compiled to EVM (Ethereum Virtual Machine) bytecode (so it can also be written in other higher-level languages).

> whats stopping malicious code running?

It's sandboxed and since it's limited to the EVM, there isn't really any "malicious" code that could break out of the EVM AFAIK. Inside the EVM it's probably more of a philosophical question whether any code can actually be considered "malicious".


thanks - I'll do some research on this

if the code is sandboxed, then what useful things can it do?


It can modify the state of the blockchain based on the inputs.


So merchants have to pay like 1000% in their transactions fees, if we are to setup a payment gateway on ethereum?


That isn't true. Other blockchains technology that support higher throughput are providing exactly the same capabilities for a few pennies. Etherum has taken the same place bitcoin has occupied for a while for currency transaction, here for smart contract: expensive. But it has, like bitcoin, huge network effect, so demand sustains and even continues to grow.


> Other blockchains technology that support higher throughput are providing exactly the same capabilities for a few pennies

There are many networks that claim to do this, but we have yet to see how this is going to play out. A big question here is if these networks are in practice as resistant to attacks and decentralized as (post DAO) ETH.


This is why Cardano[1] might be interesting with their Plutus [2] and Marlowe[3] languages.

[1] https://cardano.org/

[2] https://github.com/input-output-hk/plutus

[3] https://alpha.marlowe.iohkdev.io/


Why is this comment so heavily down-voted? The parent provides an alternative blockchain, that has been really well engineered by a world class team of developers. Is decentralized, has the ability to write smart contracts, has already implemented some of the features eth 2.0 is promising, currently sitting 3rd place in terms of market-cap right behind Ethereum (which we are talking about here).

Some of you people who down-vote without providing a proper reason are down right evil.


Because it's like saying 'I'm having problems with windows, how do I fix it' and someone coming along and saying 'use linux'. I don't find it that helpful.


It's more like "this is how Linux fixes it". And then because operating systems share a lot of the same principles, you can see whether a Windows solution exists, or if Linux is a better fit.


When my Windows 95 kept giving me blue-screens multiple times a day, it actually did help.


The linked series of tweets makes a comment on the state of things in Ethereum, there’s no ”how do I fix this problem” asked. The poster even calls it beautiful.


Reading through comments it seems this forum has bought in very heavily into eth and doesn't like challengers that could potentially bankrupt their investment.

It's amazing watching this unfold in real time, greed really does change people.

People contort themselves into pretzels to deny the obvious, all common sense immediately goes out of the window, sudden onset of selective memory, etc.

Just buy the coin you hate.


Not a fan of downvoting for contributions that are on topic, in fact I can't downvote on HN and I think I prefer it that way.

But there is a reason why what he posts is just non-sense. Cardano doesn't scale farther than Ethereum or in fact any other blockchain that bets heavily on decentralization. Cardano can do nowadays a theoretical maximum of 6-7 transactions per second [0]. In practice, it's doing around 1 transaction per second because it doesn't see much use [1], which is the true reason why transaction costs are negligible. While Ethereum does 15-20 transactions per second, day in and day out and is working at full capacity [2], which is why Ethereum transactions can be quite costly as the demand is greater than the available blockspace. These are by the way real transactions, not the theoretical maximum I presented for Cardano.

Transaction throughput has nothing to do with the programming language used, it's an intrinsic limitation of the blockchain and is dependent on a bunch of network parameters that you can tweak (block size, block time and transaction size). You can tweak them a bit but if you tweak severely then you pay the cost through decentralization as the compute and network requirements of the node rise quickly, requiring beefier nodes which lead to centralization. A centralized blockchain is pointless, it's like running a SQL database with extra steps. See the recent Solana outage [3].

The programming language thing is just a distraction that has nothing to do with scalability. Ethereum doesn't run Solidity, the Ethereum Virtual Machine (EVM) runs the low-level OPCODES that it has defined [4]. Solidity code is transpiled into lower level languages and converted into the EVM's OPCODES. In fact, there are other programming languages to write Ethereum Smart Contracts like Fe (heavily inspired by Rust) [5] or Vyper (heavily inspired by Python) [6]. In the same way, Cardano doesn't run Haskell or Plutus or Marlowe, it runs the OPCODES defined by its Virtual Machine (IELE). Poor language-design and poor transpiling can lead to some inefficiencies in the performance of the code but in the end the true bottleneck is in the network throughput.

Blockchain scalability is solved via Layer 2s and sharding. Cardano is very far behind Ethereum on this regard considering Ethereum has deployed as of today many different layer 2s [7] while Cardano doesn't have any and you cannot expect to see any for the foreseeable future as they just released smart contracts. Cardano's layer 2 roadmap is also antiquated as it relies on state channels [8], which is a scalability solution that is intrinsically more limited than Rollups. State channels were all the rage a couple of years ago but they have been superseded by rollups as they are far less limited [9].

[0] https://www.reddit.com/r/cardano/comments/prbhp4/cardano_blo...

[1] https://cardanoscan.io/

[2] https://etherscan.io/chart/tx

[3] https://cointelegraph.com/news/solana-attributes-major-outag...

[4] https://ethervm.io/

[5] https://github.com/ethereum/fe

[6] https://vyper.readthedocs.io/en/stable/

[7] https://l2beat.com

[8] https://cardanians-io.medium.com/hydra-cardano-scalability-s...

[9] https://www.reddit.com/r/cardano/comments/pf25jk/comment/hb1...


I get the scary part but I don't really understand what's the beautiful one here.


Once you deploy it it will be there, forever running on a decentralized immutable computation machine which is made up of nodes and miners all over the world being incentivized a certain way.

That kind of certainty has a beauty to it.


There’s little to indicate it will be there forever. Today’s computers are tomorrow’s stone tablets.


For sure, I guess you can say it will there for as long as at least one person in the world (or in space, not sure on your timeline) keeps running the node software. It doesn't rely on any companies or currently existing groups of people.


The point is that you don't have to pay for its continued existence, in direct contrast to putting a compute instance on AWS or any other cloud provider.


I remember vividly how sometime ago (probably even today, for any value of `today`) it was clear to everyone how smart contracts where revolutionising everything, especially in communities with poor access to banking, with issues with corruption etc.

Just for $436 per contract...


I wonder what the cost of deploying the same NFT contracts on L2s would be?


This should give you a rough indication of typical fees across L2s https://l2fees.info/


On a real L2 (so no sidechains like Polygon, Avax) probably around 30$ to 50$. It should go down when they unthrottle transactions.


To deploy an NFT contract^*


Which is a pretty minimal contract, a few hundred LOC


This is why Polygon/Matic, Binance Smart Chain (BSC), and other scaling solutions are popping up.

Many are literally forking popular DApps like Pancake Swap and just shifting the underlying chain to one of the better scaled solutions.

Because you can "peg" an asset from ethereum to an equivalent on BSC and then swap back, I don't think the "many-smartchains, one-main-chain" approach of Polkadot or Cardano will ever be sustainable long term. Simply no point.


For those not that involved in this stuff, ETH2 fixes this issue by switching to proof-of-stake. There are already billions being staked in ETH2 validators today in preparation for the switch and Vitalik has written and talked a lot about it if you’re curious.

It’s been making progress and Vitalik is a smart and capable leader of the project imo. High gas fees in the current system are arguably a sign of high demand.


> There are already billions being staked in ETH2 validators today in preparation for the switch

I find it mindblowing that people willingly lock in so much money given how uncertain the whole thing is. There's no specific explanation about what happens if the 2.0 release is delayed repeatedly (like it has been in the past) or if it isn't successful and fails in some way. There's a lot of "trust Vitalik" going around which contradicts everything crypto pretends to be about.


Lack of leadership is why BTC elevated a con artist pretending to be satoshi and is still arguing over block size.

I think hard improvements require effective coordination and someone who can pull that off. Vitalik is part of the reason I think ETH is more likely to be successful than competitors in the space (in addition to their head start).


Having strong leadership isn't a substitute for having clear rules and stipulations about the different outcomes when taking people's money. Right now the ETH 2.0 staking rules are "you'll get it back when 2.0 is ready, trust us".

There's also the fact that strong leadership trades away most of the decentralisation.

I'm sure this software project which has changed scope and has been delayed many times and is led by a 20-something-year-old with a personality cult around him will be successful. So convinced that I'll send them money which they promise they'll send back at an unspecified date.

Decentralised and trustless? Please...


Yeah - ETH2 is a high risk long bet on the future of ETH, that risk is why the rewards for doing it are pretty high right now. I haven't personally staked anything because of that risk.

My point was billions of dollars of wealth are already being staked so there are a lot of people that have already bought in. This doesn't mean it is guaranteed to succeed, but it does mean there are pretty strong incentives in place for it.

I suppose the other argument would be an ETH2 failure would likely devalue ETH too, so I'm not sure how much holding ETH is a hedge against failure.


Honestly, even having the "money" that you send "them" (really it's not them, but a consensus mechanism on chain lol) signals a great amount of trust in the network and its future, including 2.0 transition, adaptation, etc.

It's just a (very) long position in eth. If you hold eth and the 2.0 transition fails to happen, you can practically say goodbye to your money anyways.


ETH had only one war so far (ETH vs ETC) where Vitalik won the leadership role. But at some point governments will want to control Vitalik (which isn't that hard, as he's just 1 person). I believe that something like the blocksize wars with BTC is inevitable in the ETH space as well.


Vitalik's role is dependent on consensus of most of the community - he's not a dictator. He won ETH vs. ETC because the majority of the community thought he was right.

If that changes then he'll lose his influence (imo), but from listening to him I think he's a pretty earnest guy and I've been impressed [0].

[0]: https://podcasts.apple.com/us/podcast/intellectual-honesty-c...


Does he have the will power and training to go against CIA, NSA, the Chinese government and Putin when they want to add a form of KYC (or crypto primitives that NSA provide to him)?

To tell you the truth, I can't keep up with zero knowledge cryptography that ETH uses / intends to use, and Ethereum implementations are usually buggy.

I can understand Schnorr signatures and Taproot, but even the Musig/Musig2 multi-signature aggregation schemes are too hard for me, so I won't use them for significant amount of money.

Bitcoin codebase is still readable, even though it's getting somewhat more complex over time.


A programming language needs a BDFL in the early days of design and value creation. Even content/entertainment creation needs a director, a novel should have only one writer and a game should have a consistent design. However, a "distributed" financial system that requires a BDFL is a single point of failure.


Proof of stake has little to do with transaction costs. The roadmap to scaling is sharding + layer 2 tech (optimistic and zk rollup, some of it is already live like arbitrum).


Why does PoS have little to do with transaction costs? I thought it enabled massive throughput without the need for block computation? Am I wrong?

Layer 2 is a hack given the current constraints, but it comes with its own trade offs that I think are worse.


But storing things off-chain kinda kills the entire concept, doesn't it? If I hack into DigitalOcean I can mess everybody's NFTs by tampering with one database.


> But storing things off-chain kinda kills the entire concept, doesn't it? If I hack into DigitalOcean I can mess everybody's NFTs by tampering with one database.

It's not about storing off-chain, you compute off-chain and post to the network a cryptographic proof of the computation.

Rollups provide something akin to lossless compression proofs of computation. You execute the computation off-chain with high throughput and post a proof to the Ethereum network, this proof contains everything necessary to verify the correct execution of the computation. Sounds mind-blowing but we can thank smart mathematicians for figuring out the cryptography that makes it possible.

This means that we can scale off-chain while enjoying the security guarantees of the blockchain.

These techniques allow scaling the network throughput towards the 1000-4000 transactions per second range. Which together with data-availability sharding will push the throughput towards the 100K transactions per second range.

To be noted that this is not anymore a theoretical construction, these things are live running today on Ethereum. You can check the different solutions as well as detailed explanations of their trade-offs, limitations, etc... Here: https://l2beat.com


NFT definition is stored off-chain. Which means the security you defined on the chain protects only the URI to a random file or some database - which can be modified any time DigitalOcean or the hacker decides to modify. So you're right, we can create quickly and safely keys to the metal front door, while the back door is propped with a stick.


What you are saying is that an certificate of authenticity is useless because you can burn the artwork with a torch. Those two things are mostly unrelated.


I say the certificate of authenticity can be easily forged or destroyed with no way to know what it once contained. And because the entire reason to exist of an NFT is based on this certificate of authenticity (unlike a real world artwork which can be touched and estimated by a specialist), I see a problem right there. Of course this is a problem only if the NFT has an artistic value, which is an entire discussion per se.


But you can't really touch the certificate (the blockchain entry), only the "artwork" behind it (png stored on digitalocean).

What is and isn't art and artistic value, and whether an indistinguishable copy of the mona lisa should be valued the same is an entire discussion, yes, but it isn't tied to NFT-s. By the way when I say indistinguishable I don't neccessarily mean by world class experts, but for example my guests who happen to spot my (hypothetical) fake mona lisa in my living room.


There is no certificate on the chain. There is only an URI to the certificate, see ERC-721.

Edit: yes I have only NFTs as defined in Ethereum in mind. If there are other solutions working better/safer, I am not aware of them...


We may have differing concepts of what a certificate of authenticity is. To me, the certificate of authenticity is what guarantees that it can't be copied. That is the NFT with the uri that lives on the blockchain.


You are right, it cannot be copied, and the URI lives on the blockchain. But the resource pointed by that URI does not. So the server doing the redirection via that JSON can redirect to whatever else, because even in the JSON we only have the asset URI, and a blockchain navigator can only check whether the JSON is according to the schema. So yes, nobody can steal your NFT, but your NFT might tomorrow be instead of a Beeple, a picture of my cat. Rickrolling on a whole new level.


The recommended way to handle this is to use a URI which uniquely identifies the content, such as an IPFS address. Then, while the data is still stored outside the blockchain, anyone who has a copy can trivially prove that it's authentic and you aren't reliant on a particular server. (Just make sure you save/pin a copy of the file on your own system so it doesn't disappear.)

I would agree that an NFT pointing at some plain HTTP(S) URL on some random server without so much as a hash to identify the original content is pretty much worthless.


Okay this is the first time I hear about the IPFS bit. Somehow all I read is missing this point - but it makes fully sense, thank you!


There are also NFTs where the art is “onchain”. See autoglyphs and artblocks


If the whole world uses DigitalOcean for NFTs sure, but maybe we end up in a world where there are many providers. And not one that controls everything (by which point it's not centralized). Similar to right now many crypto is stored in exchanges but not one exchange holds all.


I can hack into those providers as well, right? My worry was that the chain of trust is broken by definition - as soon as you store things outside the chain. I really don't understand why one would dilute the value proposition of the blockchain like that. If I have a Ferrari I shouldn't put monster truck wheels on it only because it can't drive over speed bumps - it kills the "ferrari-ness".


> My worry was that the chain of trust is broken by definition - as soon as you store things outside the chain.

From the chain perspective they never really leave the chain. They are either locked (most L2 solutions such as Bitcoin Lightning) or they are held by someone else (most centralized custodians, including exchanges). So the worst that can happen is that the locked/held coins get "stolen".


> My worry was that the chain of trust is broken by definition

As I understand it, the idea is you put the data itself off chain but keep hashes on chain. Anyone who downloads the data can verify it by checking that the hash matches what is stored on chain.


Uh, no, you store nothing of sorts. Which is the problem. According to ERC-721 (NFT standard) you store exactly three things: the name, a cute pic and the URI to its definition file somewhere else (not even that definition has a hash, not that it would help anything).


PoS is much cheaper computationally than PoW so it absolutely does increase the throughput of a network.


Not really, the computational cost of PoW is not related to the throughput. PoW is not the work that the nodes put into processing transactions, PoW is by definition a useless computation, and it being useless is neccessary for the game theory behind it to work.

You can have the same amount of PoW on very little or very high throughput networks, the two are almost completely orthogonal.


You're right that the specific computation of PoW is supposed to be useless for game theory reasons [0], but the computation requirement itself still delays updating the network (while block size constrains how many transactions can happen between each block update). It takes time for those updates to get published back across the network.

If you drop the computation requirement and move enforcement to validators and slashing you can easily 10x-100x this without off chain layer 2 hacks. I was originally skeptical of this because it gives up the computational security guarantees of PoW in favor of game theory guarantees, but I was ultimately persuaded after reading more about it.

I think there's a place for both, digital gold like BTC with very low throughput and slow transactions for holding value and rarely moving currency, and ETH (and tokens backed by ETH's protocol) for everything else. With maybe some special situations for something like Zcash.

[0]: https://bitcoin.stackexchange.com/questions/97030/beginners-...


> the computation requirement itself still delays updating the network

Yes, but that's intentional and configurable, e.g. the ten minutes of average time between blocks on the btc chain. You could very easily lower that value by modifying the difficulty adjustment formula. The same amount of pow would be done for a unit of time (say 1 hour), but with higher throughput through more frequent blocks. At that point this becomes a discussion about propagation times, network quality and node speeds, all unrelated to pow.

Or am I misunderstanding what you said?


Hasn't it "been making progress" for the past 3 years or so?


Ah, yes, the Etherium conversion to proof of stake, scheduled for January 2020. Then December 2020. Right now, there is no hard date.


It's been making progress for years. And switch was delayed many times already. It may come soon, or it may never come.


Huge fan of Algorand here. Fees less than a penny per transaction. NFTs built in. Pretty soon will be able to generate transactions from a contract.


Undervalued comment. The thing OP is criticising are already solved problems in some blockchains.


Does anyone know any examples of useful smart contracts on Ethereum? Most of what I hear on the news in either NFTs or toy problems like lotteries.


RSUs, Vesting agreements, Stock/Token options, also with tax withholding for US employees:

We've been doing vesting of assets for 4 years. You can also use an oracle (cron job with conditional metadata) to determine which portions to withhold for taxes under various tax regimes.

You can autoliquidate those tax withheld assets into a liquidity pool if your company needs the liquidity for taxes.

Many projects and services have locked assets but we found it incredibly difficult to conform that concept to the US tax system until we built our own way. What’s onchain is similar to any token lock agreement. Just autoredirecting portions of payouts and autoliquidating for this purpose is still not common.

Although we don't find programmatic vesting to be novel, anymore, and just the tax withholding part to be better: outside of the smart contract space we see a ridiculous amount of overhead, confusion, opaqueness, time and red tape just to accomplish a vesting agreement. So, we aren't evangelizing smart contracts and “blockchain” anymore but we will tell people about the more relatable things that we are doing.


Initial Litigation Offering (ILO) is a very useful idea, however it's coming to Avalanche, not Ethereum:

https://www.coinspeaker.com/guides/what-is-initial-litigatio...


The two most obvious use cases to me are lending/borrowing platforms and decentralized exchanges. In my mind, these two services are basically at feature parity with traditional finance systems but in a decentralized and permissionless system


> Client is on Cloudflare page

... few hours later, after hitting the free 100,000 requests/day limit:

> We've hit the free 100k req/day on @infura_io, and switched to @AlchemyPlatform

But in his own screenshot it shows AlchemyPlatform also has a 100,000 requests/day free limit. Ummm? OK. $436 to deploy a smartcontract, $0 to pay for a server running static HTML and some JavaScript bundle.

> project-memento.com

Wait, what is this? You pay this guy to own a letter in his 20x20 ASCII square? It's a joke, right? Why would someone pay money for that? I will pay you twelve cucumbers to write LAAAAAAAAAAAAAAAAAME from x:0 - y:16 to x:19 - y:16.

"Crypto" hits a new peak insanity every day. Absolutely bonkers.



I'm really impressed by Chia's smart contract platform. From what I gather it seems a lot safer and more efficient than the EVM while also still being Turing complete. More info:

https://chialisp.com


Solana FTW! It appears to be the top alternative, especially if you love Rust.


Solana is a fully centralized chain completely controlled by its creators, as evidenced by their recent unilateral shutdown on the last bug. Regular blockchains are already utterly useless, but they have the benefit of being decentralized. Solana is a scam, and so are 99% of the chains being created.


Having an issue due to bugs exacerbated by market volatility and IPOs don't mean that something is centralized as indicated by the issue report, it just means it still has kinks—which is why mainnet is still considered beta until it proves otherwise. Additionally, anyone can run a validator node but the specs needed are beefier compared to something like Algorand, so the more people running nodes then the more decentralized it becomes.


It was DDOSed. Someone actually attacked it.


> Regular blockchains are already utterly useless

Curious why you think so? Also agree Solana is quite centralized but I wouldn't say it's a scam.


This is just one of many VC backed coins trying to be the next Ethereum. These VC coins don't enable mining so there's no dilution on the initial holders. Saving the environment is just a nice alibi to lock in the cap table.

There's also no disclosure on what price did the initial round happen at. 40 cents/80 cents /1$? If you buy Gold/Copper you have a fair idea on what the mining cost is for the industry. These are just fairytales propagated by further vc money to build more virtual fantasies on the database they control.


First round price was disclosed by Kyle Samani in this video[1] as $0.04 per SOL. They're currently up about 4000x.

[1] https://www.youtube.com/watch?v=68RqaSL3Ruk


And Ethereum didn't have a presale of 70%+ of the supply? That somehow didn't lock-in the captable? ETH foundation (which is completely non-transparent btw) doesn't control the trademark and employs go-eth team?

I guess 30% for miners is a nice alibi.


You have incremental supply on ETH available to those who deploy mining assets. This broadens ownership through dilution. Solana has had multiple funding rounds and not just one. They can continue to have as many funding rounds as they like.

There will be never be dilution of Solana holders to allow for decentralisation. To earn coins through staking you need to be a preexisting holder.

Running a node doesn't make economic sense and there are plenty of validators which don't charge a commission for delegation. You have no variable costs as an entrenched holder who can just stake coins for more coins till eternity.

All future supply on Solana will only take place through staking unless the backers think otherwise. https://etherscan.io/chart/ethersupplygrowth


So I'm guessing starting a brand new EVM chain and mine/stake from scratch is most optimal to broaden ownership then?

Time to scrap ETH and start from scratch?


scam = didn't buy the presale

revolutionary = bought the presale


Now now, I have some self respect, I consider every single one of them a complete scam.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: