This is much better than I thought it would be. I wonder how many commentors actually tried the demos.
Two of the three ways I could see on the page to use it involve delaying the user slightly (while doing a proof of work) after a checkbox or link is clicked. Not constantly running in the background. The one that does constantly run requires clicking a play button, which seems "opt-in" to me.
They also have some revenue numbers on there. Though no details on the traffic other than it peeked at 2,000 simultaneous users so that's hard to quantify with the data.
One big question actually is if you use the captcha system, is it actually effective at proving you are human?
Also, the short link one is a little stealthy. But overall it only delayed my experience by a couple seconds so I probably wouldn't care unless it happened very often.
My expectations were pretty low. I was expecting it to be doing something with the user's consent or using some sort of UX anti-pattern to trick the user into doing it. I was pleasantly surprised.
As far as performance. It didn't do enough to spin up my fan. My CPU only went to 30% (inclusive of all the other apps I have running (using Chrome on OS X).
I was under the impression most browser limit how much CPU the Javascript thread can use because of the good old days when writing a tight infinitely loop in Javascript could freeze someone's computer.
That's not entirely the case. Just this weekend I managed to crash my browser multiple times after forgetting to clamp a loop that ran multiple canvas operations. CPU shot steady to 100% and my entire system locked up for a bit.
Use of Monero (XMR) is an interesting choice. Monero is quickly being adopted as the coin of choice on dark net markets due to its builtin anonymity features. But dedicated third party-services such as escrow, multi-sig, etc have not kept pace with user demand. There seems to be an open window of opportunity for Monero centric contracts and payments.
This is definitely an interesting POC and makes an interesting case for why XMR might be ideally suited technically for web microtransactions. With the obvious caveats about hijacking browser performance being opt-in only that others have pointed out of course. Keep going!
> 1. How is this attempt different from HashCash, aside from using Monero?
I've never heard of either service, so I checked out both. One big difference between the two is that I knew pretty quickly what Coinhive was and how to use it, but I could never figure out what the heck HashCash does. I suspect if I clicked on one of their many "buy access to the API" links I may get more info, but that's not very cool.
I think GP is talking about the case in which people kill off the mining script, so that it doesn't mine, after the side loads. I.e. ad-block for sneaky cryptocoin miners.
What a great idea. Seems like a disruptive new revenue model for sites with good content. I wonder if it will be co-opted for use by sites offering pirated content, which raises interesting legal/ethical questions since Coinhive keeps 30% of the mining profits (i.e., are they accomplices of the pirates since they are profiting from the illegal acts?)
I really like this. Not 100% sure how much a user can actually earn in say a 30 minute period but definitely going to try and add this as a form of monetisation in one of my sites and see how users respond.
Some people block ads because they don't like the tracking that comes with it.
When asked to add a site to the whitelist to support it the downside is that you will be tracked.
I don't know about everybody else but script bloat, and its implications for performance in generally and scrolling smoothness in particular, are the main reason that I block ads - the visual distraction is a secondary factor.
I was playing with my own Proof-of-work a couple years ago with a pause every X ms so we don't lock the browser while doing the calculations. If someone want's a simple introduction to basic hashing on the clientside here is a simple implementation: https://gist.github.com/Xeoncross/d5a9482e5231db62fb87
coin-hive/Monero would solve a lot of issues with simple MD5/SHA1 implementations like mine (like bot GPU's blowing through any kind of hashcash challenge).
I run the demo miner on the coinhive landing page for about 1 minute and chose 1 thread (my laptop has 4 threads). I then noticed that the 100% cpu load kept rotating between the 4 threads that my cpu has. Is this a common behavior in cpu mining (because of cpu pipelining) or is this a feature that the developer implemented? How does this affect the cpu performance and general work load? Is it possible to edit the script to target 50% cpu usage on all threads? Please excuse my ignorance.
It's creative approach to content monetization that solves some of the problems associated with ads, such as visual clutter. But mining is a computationally intensive process. So, in a world where this became commonplace, I can't see how you could have more than a few websites running on the client, contending for CPU power, without the end-user experience ending up being severely affected - and the revenue that content makers end up getting out of this as well.
This is a really good idea, but I'm not convinced of the Crypto mining side of it.
Why not just build a system that allows customers to buy and sell CPU resources, in a similar way to how a ad network allows customers to buy and sell ads?
i guess because the consumers might not always be tech savvy. they just want those items/coins/rewards in whatever game/app they are playing/using. a minor pop-up about the mining stuff wouldnt bother them (although app perf might be affected). that's how i see it.
I think this is a really great idea! I'd rather have sites do this then bombard me with 10000 banners. Sure it increases my CPU load but I'd argue it reduces my cognitive load!
Does this mean the original formula (XMR gain) is actually per million solved hashes (instead of per solved hash)? If so, it seems like a million hashes would only give you 0.0000000001556584613 XMR ($0.00000001519798996).
If that payout formula is actually per hash (and if so, why do they say "per million hashes" in the example?), you'd end up with a much more reasonable 0.0001556584613 XMR ($0.015 at $97.64-monero).
Am I just reading their site stupidly wrong (and/or do I just have a gross misunderstanding of how this all works)?
I see this as an excellent way to monetize views and fairly good tradeoff.
The issue I see with it, mobile (I tried) is around 10x less. So while it works for desktop, for mobile it would be challenging to use this, on top of draining battery etc.
However, this is probably one of the rare unique ideas how to monetize users presence on the site, and as such I welcome it and look forward to see how it will develop.
In Chrome I didn't notice that tab being out of focus decreases load, so it would work for as long as the site is open.
I agree that there should be some sort of notification but other than that, I actually find this idea quite sympathetic. If you read my site, you can pay me by mining for me. It requires no extra effort on your part -- no credit card or micropayment login etc., and the longer you spend on my site, the more you pay. The exchange of value seems more clear cut that ads.
I suppose a more polite version would run only when the tab is in focus. But as has been pointed out, this doesn't seem feasible because of the tiny amount of value generated so I think it's an interesting idea to explore more than anything else.
2-5 cents per 24 hours seems fairly equivalent to ads, actually.
Ad CPM (or more appropriately, RPM) seems to average somewhere around $2.50 (that's per thousand impressions). If these thousand users were on the site for 24 hours, that would be $20-$50, a more realistic scenario would be users on a site for a few minutes, generating comparable revenue to ad impressions.
On my desktop (which, not coincidentally, is where you'd have the best results trying to mine cryptocurrencies), I would honestly prefer this over tracking cookies, obnoxious and intrusive ads, extra network connections, and all that crap. And I run an ad-blocker, so this will let you get some revenue while ad RPM will be 0. On my phone or laptop using battery power, you're not going to have any success mining and I'm not going to want this. (I also run an ad blocker on those, so...yeah).
Also, if the payment was higher than fractions of a cent, people would start "freezing" the site the moment it loaded - just as, back in the day, we disconnected our phone line modems as soon as the page we needed finished downloading, to avoid paying the phone company for time not spent transferring data.
No reason not to treat it just as badly as attempts to mine bitcoin off your CPU. Both of those waste your resources, for someone else's profits, without your consent.
The implied consent is based on trust. The browser is my user agent, it is meant to interpret the data that it gets from HTTP stream the way I want it. I let it do the things as specified in the received data (i.e. by you), because I trust that you're not an asshole and will not abuse that power.
Unfortunately, there are plenty of assholes on-line, who decided to abuse the default behaviour - so now we have ad blockers and reader modes.
Ultimately, it is (by intention and design of the HTTP protocol, and computer networks in general) up to me what I do with the data - if, how, and which parts of it I decide to process.
It is giving consent, in some sense. But make a popular website use visitors' browsers to launch a DDoS attack and you'll find that "anything goes as long as it's the bounds of the sandbox" doesn't really apply.
Apart from that, people can easily take a different view altogether. When I visit a site, I download some bits. Doing so I don't consent to anything -- what I do with these bits is up to me.
So, what would I need to change to mine on my account rather than their account. I like their home page top fold but I want to mine for myself. The service must be going through a pool of some sort?
This is a brilliant idea! I could see it being used with Nimiq- a project in development for a browser-based blockchain...This could provide more profitable mining.
This is also the direction I wanted to see BAT to go in- getting rid of paywalls and ads in exchange for a basic return to the publisher and user based on duration spent on the site along with interaction.
It's actually using webassembly if available, otherwise it fallbacks on asm.js
>If true, the miner will always use the asm.js implementation of the hashing algorithm. If false, the miner will use the faster WebAssembly version if supported and otherwise fall back to asm.js. The default is false.
Two of the three ways I could see on the page to use it involve delaying the user slightly (while doing a proof of work) after a checkbox or link is clicked. Not constantly running in the background. The one that does constantly run requires clicking a play button, which seems "opt-in" to me.
They also have some revenue numbers on there. Though no details on the traffic other than it peeked at 2,000 simultaneous users so that's hard to quantify with the data.
One big question actually is if you use the captcha system, is it actually effective at proving you are human?
Also, the short link one is a little stealthy. But overall it only delayed my experience by a couple seconds so I probably wouldn't care unless it happened very often.