Hacker News new | ask | show | jobs
by blocksceptic 3045 days ago
This idea is fundamentally flawed because mining is ultimately a zero-sum game. If this approach became commonplace as the author suggests, it would greatly increase the number of publishers squabbling over much smaller pieces of the pie.

In any case, you're effectively paying for the mining on your power bill. So nevermind that this approach disadvantages users who pay higher rates for electricity or have older, less-power-efficient computers.

2 comments

the environmental and social impacts of mining at large scale have to be considered. it just does not seem wise to spend so much electricity and CO2 for mining.
I did consider this, and spent an entire paragraph on it, in my article.

I agree, up to an extent, that mining as whole, has a problem to overcome. But, so far, there is no way to have a stake other than "electricity". And you need that stake (in the Proof Of Work) to solve the Byzantine Fault Tolerance.

Proof of stake, or even Proof of RAM (I'm just making that up here), Proof of Space are alternatives, some are actively being developed. Proof of Stake, might, potentially, solve this whole "energy wasting" thing.

But the fundamental question is: "Is it a waste of energy"? Is the burning of energy to secure a decentralized, autonomous, permissionless monetary system a "waste"? Maybe. but in that case there are far more obvious cases of "wasting" energy.

Oh I agree, but I was pointing out that this doesn't even make sense economically - let alone environmentally.
I think it is not a bad idea, imagine the mining is taking place only when the page is active and (max) 5 - 10$ on your electricity bill split among all the publisher, a much better alternative to ads if you ask me.
Except it doesn't really play well together with battery-powered devices.
How about disabling on battery devices then?
This is what I -somewhat- did in the example: I've disabled it for mobile. I don't think browsers have an API to detect what power-source the underlying machine is using, though.
Turns out that the disabling did not work.

It is possible to detect mobile and disable it completely, but for now, because it's mostly demo material, I'll leave it enabled for mobile too. In a real-world scenario you'd probably show a message or explain why a mobile user cannot use it. That would certainly give you credits.

Then everybody would unplug their laptops to save on their energy bill.
Is there a battery API for websites? The old one was deprecated because it caused too many issues (e.g. with fingerprinting).
But the $5 in electricity costs would only earn $3 (random guess) of cryptocurrency, making the whole scheme a convoluted and very inefficient money transfer mechanism.
You'll probably want to have more than a random guess to claim that the money spent on electricity has a negative ROI.
mainly because:

* javascript miners operate at a fraction of the efficiency of native miners (I don't have exact numbers, but I vaguely remember somewhere between 1/2 to 2/3)

* "professional" (ie. non-javascript) miners use high end CPUs, whereas the typical user might be on a i3 or ARM device. this matters because monero mining gets a significant performance boost from a bigger cache.

* "professional" mining pools have fees of ~1%. coinhive has a fee of 30%.

* mining is competitive market, where profit margins are low.

I actually didn't know that coinhive's fee was that high. that alone means $3 of every $10 is "lost" as transaction fees.

If you aren't specifying the cost per KW/h and the financial benefit per KW/h, then you are just making assumptions about how the finances work within the context of the current market structure and participants.

None of these things leads to the conclusion that there isn't an arrangement whereby a website visitor can dedicated x seconds to mining and end up paying a reasonable amount in incremental electricity costs for doing so while providing a third-party with a sufficient financial benefit to compensate for the cost of the content consumed/service provided.

Even if it makes sense today, if the approach became commonplace, it would become a lot less effective, as it would require a commensurate and sustained increase of the value of the relevant cryptocurrency for the $0.02/hour that is currently generated by one user to not drop to $0.0002/hour once 100x as many users are participating.

This barely makes sense today, where are your hard numbers showing how this will work if we try to fund journalism by throwing a coinhive script onto nytimes.com?

Tech people love these sorts of things, because it allows us to pretend we've solved a tough social problem (how do we pay for journalism) with a neat cryptographic hashing algorithm, when in reality we've just invented a horribly inefficient way to add hidden micro-transactions to our end user's power bills.

https://pastebin.com/raw/get88jbH

best case scenario (xeon): you pay a 15% fee to transfer your electricity costs the site owner

worser case scenario (atom): you pay a 64% fee to transfer your electricity costs the site owner