Vladimir
|
|
May 21, 2011, 09:58:58 AM |
|
Sneaking in electricity burning code as currently proposed, without customer (website visitor) consent, appears to be at least unethical and at worst an act of theft.
I see one way to turn this into a viable biz plan.
1. Develop emeddable js code to run calculations on user's GPU, where available. 2. Implement an opt-in button which could be placed on a website and enable users to turn on and off mining for this specific website.
Website operators could than try to persuade users to donate their GPU cycles voluntary and click such 'donate GPU time' button.
This can take some market share from ad networks like adsense and could be particularly useful for sites which are not considered by mainstream ad networks as 'good enough' i.e. bittorent trackers etc...
|
-
|
|
|
neptop
|
|
May 21, 2011, 10:10:07 AM |
|
Makes me think of Flash based ads. Always thought about them as unethical and theft of both CPU power and traffic However, one doesn't have to activate JS and one doesn't have to visit such web pages. It is very inefficient anyway, so I don't think there would be a lot of people using a JS based miner on their web pages. Yeah, maybe with the HTML5 stuff coming along, but that's just talk about the unpredictable future. On the other hand that's what BC is all about and most of us would be rich if I had predicted how BC evolved.
|
BitCoin address: 1E25UJEbifEejpYh117APmjYSXdLiJUCAZ
|
|
|
1bitc0inplz (OP)
Member
Offline
Activity: 112
Merit: 10
|
|
May 21, 2011, 10:37:09 AM |
|
It is very inefficient anyway, so I don't think there would be a lot of people using a JS based miner on their web pages. Yeah, maybe with the HTML5 stuff coming along, but that's just talk about the unpredictable future. On the other hand that's what BC is all about and most of us would be rich if I had predicted how BC evolved. Lol.... Sorry, I got a chuckle out of that one This IS using that "HTML 5 future stuff" Either way, we seem to have steered up quite the conversations on the Internet at large. I just got done reading over at ycombinator, and it looks like we've stirred up a hornest nest of discussions.
|
|
|
|
1bitc0inplz (OP)
Member
Offline
Activity: 112
Merit: 10
|
|
May 21, 2011, 10:47:55 AM |
|
I see one way to turn this into a viable biz plan.
1. Develop emeddable js code to run calculations on user's GPU, where available. 2. Implement an opt-in button which could be placed on a website and enable users to turn on and off mining for this specific website.
Those are some good tips. I've been thinking about the idea of some opt-out cookie or something.... maybe if you visit bitp.it and opt-out, you will never be subject to this scripts execution... I am not sure on the details, but it did cross my mind. I think you're on to something... it's got me thinking. Website operators could than try to persuade users to donate their GPU cycles voluntary and click such 'donate GPU time' button.
The GPU comment idea is great in theory, but right now WebCL is only supported by 1 plugin for 1 browser, and that plugin *just* came out at the beginning of this month. I'm not saying it's a lost cause, but even if that code was in our script today to use it.... generally speaking, it *wouldn't* be used as practically nobody would have the required plugin, at least speaking on "Internet scale". However, yes, the future of keeping this practical will be in WebCL. This can take some market share from ad networks like adsense and could be particularly useful for sites which are not considered by mainstream ad networks as 'good enough' i.e. bittorent trackers etc...
Agreed. And, one thing I keep thinking too, is that traditional ads depend on user clicks. I cannot tell you how many times I leave tabs open on my web browser for days, or even weeks, at a time. That could ad up quick.
|
|
|
|
Vladimir
|
|
May 21, 2011, 11:09:32 AM |
|
I've tried the code on one of my sites for a short time but decided to remove it for now. Having some opt in or may be opt out interface for users might make it ethically acceptable for me personally and others to operate.
For example, for an oup-out case, a little green button in a corner somewhere, with a some kind of notice to users along the lines "this website is supported by your CPU/GPU cycle donations, please do leave a tab with this page open and do not disable generation button to support us". Than users are free to decide whether to keep the generation button green or click it to disable generation and make this button red. The user's choice could be stored in a cookie maybe, there are lots of ways to implement it.
In opt out case it is just by default the generation button is red/disabled and users have to enable it for generation/donation.
|
-
|
|
|
1bitc0inplz (OP)
Member
Offline
Activity: 112
Merit: 10
|
|
May 21, 2011, 12:19:15 PM |
|
Just a quick update... We changed the default script that is generate for you to have the forceUIThread parameter set to true. This will force the script to be very, very, nice. You can still overwrite that setting by explicitly setting it to false, doing so will increase your hash rate at the risk of higher CPU usage for your website visitors. As promised, here is a complete list of parameters that can be passed into the engine: - clientId
- delay
- forceUIThread
- autoStart
- workerTimeout
clientId - this is your unique identifier. Do not change, unless of course you want your shares going to someone else delay - this is the delay, in milliseconds that the UI thread waits between every 100 hashes. This setting does not control web workers. Lowering this value too much could result in browsers displaying the "we've detecting that this script has locked up" warnings. The default is 30 ms. forceUIThread - some browsers don't support web workers (IE), in those cases this setting is meaningless. For browser that support web workers, this forces them *not* to use them, and instead calculate hashes in the UI thread at a much slower, and less CPU intensive, rate. autoStart - don't use this yet. Right now the jsMiner auto starts. You could set it to false. However, since the jsMiner is running in an iframe you would have no way of starting it... we will work on getting this better exposed. workerTimeout - this effects all browsers. This is the length of time (in seconds) that a get work request is good for. The default is 30 seconds. Increasing this value decreases network request but increases the likelihood of stale shares. And example of what you're modified script tag would look like with some of these parameters is: <script type="text/javascript"> bitpit({clientId: "5", forceUIThread: true, delay: 40, workerTimeout: 45}); </script>
|
|
|
|
davout
Legendary
Offline
Activity: 1372
Merit: 1008
1davout
|
|
May 21, 2011, 12:22:26 PM |
|
* davout is looking for a way to inject javascript on facebook
|
|
|
|
|
1bitc0inplz (OP)
Member
Offline
Activity: 112
Merit: 10
|
|
May 21, 2011, 12:36:20 PM |
|
* davout is looking for a way to inject javascript on facebook lol Create a FB game and add the miner Thats actually a *really* good idea. Facebook games, like Farmville, are based on a "fremium" model. They are very much dependent on less than 1% of their users supporting their operations. What if, all users gave something? Perhaps paying users could disable this? Oh sweet.... Pandora radio... Perfect model. You pay that $30 bucks a year for their Pandora one... but if you don't, they run bitcoins off your machine while you listen to free music.
|
|
|
|
davout
Legendary
Offline
Activity: 1372
Merit: 1008
1davout
|
|
May 21, 2011, 12:43:39 PM |
|
* davout is looking for a way to inject javascript on facebook lol Create a FB game and add the miner Thats actually a *really* good idea. Facebook games, like Farmville, are based on a "fremium" model. They are very much dependent on less than 1% of their users supporting their operations. What if, all users gave something? Perhaps paying users could disable this? Oh sweet.... Pandora radio... Perfect model. You pay that $30 bucks a year for their Pandora one... but if you don't, they run bitcoins off your machine while you listen to free music. This idea, if implemented seriously, might have a non-negligible impact on global warming.
|
|
|
|
1bitc0inplz (OP)
Member
Offline
Activity: 112
Merit: 10
|
|
May 21, 2011, 01:14:03 PM |
|
I've tried the code on one of my sites for a short time but decided to remove it for now. Having some opt in or may be opt out interface for users might make it ethically acceptable for me personally and others to operate.
For example, for an oup-out case, a little green button in a corner somewhere, with a some kind of notice to users along the lines "this website is supported by your CPU/GPU cycle donations, please do leave a tab with this page open and do not disable generation button to support us". Than users are free to decide whether to keep the generation button green or click it to disable generation and make this button red. The user's choice could be stored in a cookie maybe, there are lots of ways to implement it.
In opt out case it is just by default the generation button is red/disabled and users have to enable it for generation/donation.
I do like your thinking. On a semi-related note, I notice this website: http://www.v2ex.com/bitcoin/mining.htmlGoogle translate would seem to indicate that this is a page that the author specifically created for bitp.it. The text on the page fully describes whats going on, and invites the visitor to leave their browser open to help support the site. I cannot help but believe that this is a great use for bitp.it. I love how they are tying it into the visitor's goodwill to help them support the site.
|
|
|
|
Orbit45244
Newbie
Offline
Activity: 57
Merit: 0
|
|
May 21, 2011, 04:04:38 PM |
|
I just wanted to alert everyone...
I was skeptical that this did what it said it did, so I ended up doing a wire inspection of things that were sent to and from the server.
The good news is that it does indeed attempt to mine, but the bad news is that it doesn't actually work.
GET requests are issued to the server periodically to grab data needed for mining, and the hashes do appear to get computed, but the computed hashes are never POST'ed back to the server. I also checked the request headers and cookies, but the computed data is not in those either.
I'm sure this is just a bug, but right now this bitcoin miner is useless.
|
|
|
|
lowentropy
|
|
May 21, 2011, 04:24:32 PM Last edit: May 21, 2011, 05:37:59 PM by lowentropy |
|
I just wanted to alert everyone...
I was skeptical that this did what it said it did, so I ended up doing a wire inspection of things that were sent to and from the server.
The good news is that it does indeed attempt to mine, but the bad news is that it doesn't actually work.
GET requests are issued to the server periodically to grab data needed for mining, and the hashes do appear to get computed, but the computed hashes are never POST'ed back to the server. I also checked the request headers and cookies, but the computed data is not in those either.
I'm sure this is just a bug, but right now this bitcoin miner is useless.
I think you should check again... it may take a long while for the client to POST a result, but it does do so. We've had shares being submitted by clients, so I'm pretty sure it's working EDIT And to elaborate a bit more, the client won't POST until it thinks it's found a valid share. So a wire inspection will indeed only show GET requests. We'll be open-sourcing an un-minified version of the client code soon.
|
Mine @ <http://pool.bitp.it> Chat with us @ irc://irc.freenode.net/#bitp.it Learn more about our pool @ <http://forum.bitcoin.org/index.php?topic=12181.0>
|
|
|
1bitc0inplz (OP)
Member
Offline
Activity: 112
Merit: 10
|
|
May 21, 2011, 07:57:17 PM |
|
We'll be open-sourcing an un-minified version of the client code soon.
And here it is: https://github.com/jwhitehorn/jsMinerLet me know what you guys think. It's licensed new BSD, FYI.
|
|
|
|
jimbobway
Legendary
Offline
Activity: 1304
Merit: 1015
|
|
May 21, 2011, 08:44:11 PM |
|
I've made this bitcoinblogger post: http://www.bitcoinblogger.com/2011/05/google-could-be-destroyed-javascript.htmlThere is a new and revolutionary breakthrough bitcoin application that could potentially destroy Google. Yes, that's correct, this technology could completely annihilate Google. Google's business mostly relies on its AdSense program which allows website owners the ability to place ads in their webpages to earn money. However, with 100% Javascript bitcoin miners website owners no longer have to place ads in their website to make money. JS Miners can be placed into webpages and earn income for the website owner. The advantages for the end-user is that ads will no longer annoy users. NO MORE ADS! The longer a user spends time on a web page the more money the bitcoin miner will earn for the website operator. Website owners are now encouraged to have quality content so users stay and read longer. This means that quality is king and if a user leaves a website immediately then that website is rewarded less. (I could see this potentially saving the newspaper industry.) JS Miners also removes Google's overhead and more money could potentially be awarded to the website owner. JS miners can also perform micro transactions easier than Google so all mining can be compensated an no amount of money is lost. If a computer mines .000001 bitcoins then this amount is recorded and taken into account. Yes, it is possible these JS Miners can utilize CPU resources and slow down the computer, but these settings can be adjusted to allow a good user experience. This bitcoin revolution is just beginning...
|
|
|
|
bitpop
Legendary
Offline
Activity: 2912
Merit: 1060
|
|
May 21, 2011, 09:18:17 PM |
|
Wouldn't mining be much better when running in a real x86/linux environment? http://bellard.org/jslinux/
|
|
|
|
Reto
Newbie
Offline
Activity: 101
Merit: 0
|
|
May 21, 2011, 09:30:09 PM |
|
I've tried the code on one of my sites for a short time but decided to remove it for now. Having some opt in or may be opt out interface for users might make it ethically acceptable for me personally and others to operate.
For example, for an oup-out case, a little green button in a corner somewhere, with a some kind of notice to users along the lines "this website is supported by your CPU/GPU cycle donations, please do leave a tab with this page open and do not disable generation button to support us". Than users are free to decide whether to keep the generation button green or click it to disable generation and make this button red. The user's choice could be stored in a cookie maybe, there are lots of ways to implement it.
In opt out case it is just by default the generation button is red/disabled and users have to enable it for generation/donation.
Something like (button) "You can donate your spare GPU cycles to this website by clicking the button above. This widget mines Bitcoins, which we use to pay expenses. To learn more about Bitcoin, click here. If you are already mining on your own, please consider donating to 1XXXXXXXXXXXXXXX." WebGL must be enabled for this to work.The link would lead to either the "New to Bitcoin" post on these forums, or to weusecoins.
|
|
|
|
anisoptera
Member
Offline
Activity: 308
Merit: 10
|
|
May 22, 2011, 12:03:24 AM |
|
|
|
|
|
|
technowizard12
Newbie
Offline
Activity: 28
Merit: 0
|
|
May 22, 2011, 12:42:23 AM |
|
I love this! Now I won't ever have to put ads on my site!
Maybe you should make some sort of embeddable widget that lets webpage users turn it off. I forsee problems where the webpage slows down the user's computer too much. It might be nice to make it optional.
|
|
|
|
|