Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: jgarzik on April 03, 2011, 06:44:50 PM



Title: [PULL] remove GUI 'Generate Coins' option
Post by: jgarzik on April 03, 2011, 06:44:50 PM
URL: https://github.com/bitcoin/bitcoin/pull/142

Description:

Hide this capability from GUI users, who are unlikely to understand upon first contact that they will waste electricity for year(s), before possibly generating a single block.

This patch does not remove generation, which remains available via a command line option.  It only removes the ability to select coin generation from the GUI.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: jgarzik on April 03, 2011, 10:08:19 PM
Quoting IRC conversation...

<tcatm> jgarzik: how could a GUI user disable the miner after upgrading to a version with that patch?

<jgarzik> tcatm: good point...

<tcatm> I'd say move the setting to the options dialog and rename it

<jgarzik> tcatm: I'd rather just disable at startup, if (GUI && wallet_generation_enabled)
<jgarzik> tcatm: command line can [override this behavior]

<tcatm> jgarzik: sounds good, too


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: Luke-Jr on April 04, 2011, 03:15:18 AM
Could just rename the (internal) setting name, and have it default to off...


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: gigabytecoin on April 05, 2011, 05:57:06 AM
URL: https://github.com/bitcoin/bitcoin/pull/142

Description:

Hide this capability from GUI users, who are unlikely to understand upon first contact that they will waste electricity for year(s), before possibly generating a single block.

This patch does not remove generation, which remains available via a command line option.  It only removes the ability to select coin generation from the GUI.


Agreed.

There is absolutely no need to piss of any new subscribers by tricking them into thinking they can generate bitcoins using their CPU anymore.

The minute they get their $100+ extra electricity bill and inquire as to "why"... they will stop using bitcoin and bitch about us to everyone they know immediately. I would. If I were that dumb.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: xf2_org on April 18, 2011, 07:14:13 PM
<jgarzik> tcatm: I'd rather just disable at startup, if (GUI && wallet_generation_enabled)

Branch updated to ignore fGenerateBitcoins stored wallet setting (see forum thread) in GUI version of bitcoin.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: Pieter Wuille on May 02, 2011, 08:51:19 PM
Is there anyone objecting to this?


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: gjs278 on May 02, 2011, 09:07:13 PM
I do not object. remove the cpu support in the main client.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: wumpus on May 03, 2011, 06:20:59 AM
Yep, remove it. IMO, the client doesn't need to have a miner built in at all, but removing the option is a good step forward.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: lulzplzkthx on May 03, 2011, 06:01:01 PM
Please remove it. The built-in generator is worthless now anyway.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: Matt Corallo on May 03, 2011, 06:26:27 PM
Pulled, closed, done.  Thanks Gavin.
https://github.com/bitcoin/bitcoin/commit/b99c23af4092395b47f5b0491c46dd9ead435d3b (https://github.com/bitcoin/bitcoin/commit/b99c23af4092395b47f5b0491c46dd9ead435d3b)


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: jimbobway on May 15, 2011, 03:08:21 PM
I think I disagree with this decision and here is my reasoning:

Mining is comparable to mining for gold.  Personally, I am a gold miner and have access to gold claims.  I started mining for gold with a gold pan.  I remember going to rivers and panning for gold but I didn't find any gold.  The gold pan was what I started off with and it sort of gave me "gold fever".  In fact, many gold miners start off with basic tools but when one tool was not sufficient then upgrades were necessary.

I think the "Generate Coins" in the menu is similar to the basic plastic gold pan because it give people a glimpse of what mining is.  It is what starts off the "gold fever" (aka "bitcoin fever").  Gold fever is real and I believe bitcoin fever is very similar.  Just Google "gold fever" and you will see thousands and thousands of hits.

The "Generate Coins" may frustrate people but it gives more value to bitcoins by introducing people to mining.  The reason why you guys want to get rid of it is because you are already old timers and have upgraded all your equipment to sluice boxes, dump trucks, and heavy machinery.  For the newbies it gives them a chance to have the same feeling and thus attract more people to the bitcoin community.



Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: jimbobway on May 15, 2011, 03:37:17 PM
I was just thinking...maybe we can re-add the "Generate Coins" in the menu but also put in "Estimated Time to find coins" somewhere so people don't get as frustrated.

Don't take out "Generate Coins"!


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: Matt Corallo on May 15, 2011, 03:42:01 PM
Sorry, but the consensus was, by quite a margin, to remove it.  Its too late.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: em3rgentOrdr on May 15, 2011, 04:46:50 PM
I think I disagree with this decision and here is my reasoning:

Mining is comparable to mining for gold.  Personally, I am a gold miner and have access to gold claims.  I started mining for gold with a gold pan.  I remember going to rivers and panning for gold but I didn't find any gold.  The gold pan was what I started off with and it sort of gave me "gold fever".  In fact, many gold miners start off with basic tools but when one tool was not sufficient then upgrades were necessary.

So because of personal nostalgic memories of panning for gold and not finding any, therefore keep "Generate Coins" option.

Quote
I think the "Generate Coins" in the menu is similar to the basic plastic gold pan because it give people a glimpse of what mining is.  It is what starts off the "gold fever" (aka "bitcoin fever").  Gold fever is real and I believe bitcoin fever is very similar.  Just Google "gold fever" and you will see thousands and thousands of hits.

So in order to encourage unrealistic optimism about a newbies' CPU mining capabilities, keep "Generate Coins" option.

Quote
The "Generate Coins" may frustrate people but it gives more value to bitcoins by introducing people to mining.  The reason why you guys want to get rid of it is because you are already old timers and have upgraded all your equipment to sluice boxes, dump trucks, and heavy machinery.  For the newbies it gives them a chance to have the same feeling and thus attract more people to the bitcoin community.

So in order to perpetuate the belief that the point of bitcoin is mining (not trading), keep "Generate Coins" option.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: jimbobway on May 15, 2011, 05:45:21 PM
I think I disagree with this decision and here is my reasoning:

Mining is comparable to mining for gold.  Personally, I am a gold miner and have access to gold claims.  I started mining for gold with a gold pan.  I remember going to rivers and panning for gold but I didn't find any gold.  The gold pan was what I started off with and it sort of gave me "gold fever".  In fact, many gold miners start off with basic tools but when one tool was not sufficient then upgrades were necessary.

So because of personal nostalgic memories of panning for gold and not finding any, therefore keep "Generate Coins" option.

Quote
I think the "Generate Coins" in the menu is similar to the basic plastic gold pan because it give people a glimpse of what mining is.  It is what starts off the "gold fever" (aka "bitcoin fever").  Gold fever is real and I believe bitcoin fever is very similar.  Just Google "gold fever" and you will see thousands and thousands of hits.

So in order to encourage unrealistic optimism about a newbies' CPU mining capabilities, keep "Generate Coins" option.

Quote
The "Generate Coins" may frustrate people but it gives more value to bitcoins by introducing people to mining.  The reason why you guys want to get rid of it is because you are already old timers and have upgraded all your equipment to sluice boxes, dump trucks, and heavy machinery.  For the newbies it gives them a chance to have the same feeling and thus attract more people to the bitcoin community.

So in order to perpetuate the belief that the point of bitcoin is mining (not trading), keep "Generate Coins" option.

I think satoshi tried to emulate the aspects of gold.  He did compare gold mining and bitcoin mining. Bitcoin is worth as much as people think it is worth. If people understand that it is hard to make bitcoins then it will give value to bitcoins.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: em3rgentOrdr on May 17, 2011, 03:50:18 AM

I think satoshi tried to emulate the aspects of gold.  He did compare gold mining and bitcoin mining. Bitcoin is worth as much as people think it is worth. If people understand that it is hard to make bitcoins then it will give value to bitcoins.

Back when metals were standard currency, ordinary people didn't bother mining.  Nor should people of the future have to even bother to think about generating bitcoins.  Yes, I like how satoshi emulates the aspects of gold and mining with bitcoin.  But trade something for an ounce of silver, I do not need to bother to think about how silver mining works and how there is a limited amount of silver.  I simply perform the transaction, and just see the silver as a unit of money.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: BitterTea on May 17, 2011, 09:09:35 AM
I think the consensus is that the main client should not contain anything like specific implementations of mining code, that is best left to dedicated mining software. I believe the idea is to leave a reference implementation of a miner, but that's it. I agree with this sentiment.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: Pieter Wuille on May 17, 2011, 09:16:38 AM
Well, what's this "consensus" based upon?

My logic is simple:

   More users generating => Better system protection => Make it easier to generate => Don't remove generation from the client, rather improve it.

At which step my thinking failed me? :)

At the fact that 10000 users running a CPU miner would only result in a few % increased total hash rate. Mining is a business, the economics of which make it profitable only for those with the most efficient hardware. Don't give users false hope that it is otherwise. If they are persistent that they still want to mine on a CPU, they can run a CPU miner, which has better algorithms too.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: Nesetalis on May 17, 2011, 09:18:50 AM
you might be able to improve generation some... but generation works by specification, not generalization. So how do you propose creating a general hasher that is good enough that some one might actually make a block any time soon?
all it will do is increase the difficulty :p really doesnt matter much, but its a pointless effort for every one of those clients.
just wastes electricity.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: Pieter Wuille on May 17, 2011, 09:33:40 AM
a) Why can't the client be improved to the point where it is at least comparable with big miners? 1 coin per month is Ok. If user's system doesn't support GPU code - don't use CPU for that or warn him.
GPU mining code in the default client is an incredible mess. There are many algorithms tuned for different cards, and one has to support different versions of OpenCL and CUDA for different operating systems, making it unmaintainable and pulling in tons of dependencies. This is much better done in specialized packages, those will be better at it anyway.

1 BTC / month currently corresponds to 256 Mhash/s. There are no CPU's that can do that, and only a few GPU's can.

b) Isn't coin generation random? So there is a chance, however small, that an ordinary user will generate new coins?
Yes, but at some point it's just not worth it.

c) Isn't several big miners, instead of numerous independent clients, pose a greater risk and can manipulate and control bitcoin? What if in the nearest future there will be like 2-3 really big guys, like VISA and MasterCard and they will control 95% of block generation? Wouldn't this make bitcoin a new PayPal, instead of truly independent currency?
Maybe, but that does not mean we want tons of people burning electricity for almost no additional strength to the network.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: Pieter Wuille on May 17, 2011, 10:07:54 AM
Quote
Maybe, but that does not mean we want tons of people burning electricity for almost no additional strength to the network.

Unless I am missing something, the current scheme looks flawed to me. It is designed so most of generators would waste electricity!
By waste I mean: earn less than the electricity it costs you. And no, it is not designed to be wasteful in this respect.

Now what am I missing? :)

The security of the network lies in the fact that you need - on average - to do as much work as was done in generating a part of the chain, to revert that part of the chain to your own version. The difficulty is irrelevant here, its only purpose is to prevent massive stale blocks by people working on different blocks at the same time. The security of the network is only determined by the total hashing speed, and even now, small CPu miners do contribute to that, but that does not mean they should if it is wasteful for them.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: em3rgentOrdr on May 17, 2011, 10:18:46 AM
We should add code to spy on how power efficient your mining is.  Then the bitcoin code will report to the nannies at the US government.  Then bitcoin can apply for the US government's "Energy Star" certificate of approval.  Everybody wins!  ;)


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: Dusty on May 17, 2011, 10:38:38 AM
Lots and lots of small clients being much more powerful together than top N miners. All that is needed for that is to allow them to work cooperatively, instead of "who is first - owns the bounty, all the rest just wasted their electricity". I still believe it is designed to waste electricity, because all the work that didn't generated the block by being first, was wasted, not contributed.

And the side effect is that every client will have additional bonus of participating in a sort of lottery to win 50 BTC from time to time :)
For what I understand, that's exactly how it's working now: since every client has a different block to solve, everybody is working on a different set of hashes and so everybody has the same chance to solve a block.

Even if a single client has very low mining power, a million of those clients are something very powerful anyway, and would help both securing the network and in the intent to not give a few small big pools too much power.

Isn't?


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: BitterTea on May 17, 2011, 02:21:03 PM
The difficulty is a measure of the likelyhood of winning the block lottery with a single hash. The only difference between people who use specific mining software and the Bitcoin software is that the main client is much less efficient, and not able to join a pool. Rather than clutter the Bitcoin code with all sorts of different implementations of the mining algorithm, it's better to encourage users to use the specialized software. Leaving the generate option gives new users the impression that they can easily make money, when in reality it's running their CPU at 100% and they will most likely never see a block created.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: Dusty on May 17, 2011, 07:35:03 PM
Leaving the generate option gives new users the impression that they can easily make money, when in reality it's running their CPU at 100% and they will most likely never see a block created.
In my opinion is just a matter of comunication: just clarify that this options is not likely to generate coins but will help secure the network, and leave the people the choice on how to employ his idle cpu time.
Also, in the very near future energy will be almost free, just dig the news about Rossi's "e-cat (http://www.nyteknik.se/nyheter/energi_miljo/energi/article3179019.ece)" on google, already validated by 2 universities (Italy and Sweden) and in commerce at the end of the year.

Anyway, if I'm understanding the thing right, even with very low hashing power, having millions of users could help secure the network and distributing more evenly the power of the pools.

Of course this could be done much better if the installer of the client had a simple option to download and run a hashing program using the GPU, but until this procedure is not made simple for the end user I think that the option to enable generation should be given, just renamed and better explained.


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: xf2_org on May 17, 2011, 08:22:06 PM
Anyway, if I'm understanding the thing right, even with very low hashing power, having millions of users could help secure the network and distributing more evenly the power of the pools.

True.

But good luck convincing millions of people to run their computers full-bore, paying electricity costs of all that inefficiency along the way, just to help secure the bitcoin network without further reward.

Do the math.  It is astronomically unlikely that you will ever generate a block with CPU mining.  You are more likely to win the lottery three times in a row, and get struck by lightning twice on the same day, with a black cat striding across your path (with a pink elephant on its back).



Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: BitterTea on May 17, 2011, 08:24:45 PM
Do the math.  It is astronomically unlikely that you will ever generate a block with CPU mining.  You are more likely to win the lottery three times in a row, and get struck by lightning twice on the same day, with a black cat striding across your path (with a pink elephant on its back).

Additionally, and perhaps even more importantly, it will only get more unlikely over time (as difficulty increases).


Title: Re: [PULL] remove GUI 'Generate Coins' option
Post by: Dusty on May 18, 2011, 06:00:58 AM
Do the math.  It is astronomically unlikely that you will ever generate a block with CPU mining.  You are more likely to win the lottery three times in a row, and get struck by lightning twice on the same day, with a black cat striding across your path (with a pink elephant on its back).
Additionally, and perhaps even more importantly, it will only get more unlikely over time (as difficulty increases).[/quote]
You are completely right, of course.

But think of how many people helped the SETI@home project installing a fat application on their computer.... And the chance to detect something there are much lower than finding a block.
It's practically zero for SETI, while we discover around 144 blocks every day ;-)