Bitcoin Forum
May 08, 2024, 07:13:21 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: So How does Bitcoin Development Happen Anyway  (Read 848 times)
Bill Bisco (OP)
Member
**
Offline Offline

Activity: 109
Merit: 10


View Profile
November 29, 2013, 09:23:10 PM
 #1

I've been thinking about this one for awhile.  How does bitcoin development actually happen? 

1. How does the bitcoin foundation get agreement from all the miners to implement their changes to bitcoin?

2. When this agreement happens, does the network have to shut down?

3. How quickly does it take to implement these "developer changes"

4. If an entity controls 51% of the network, do they get to be the "developer" ?

BTC: 1PVqE4eM8uBJ7Xb9rCsCLajp5YSi6p8oQ6
"Real Sharpness Comes Without Effort"
1715195601
Hero Member
*
Offline Offline

Posts: 1715195601

View Profile Personal Message (Offline)

Ignore
1715195601
Reply with quote  #2

1715195601
Report to moderator
1715195601
Hero Member
*
Offline Offline

Posts: 1715195601

View Profile Personal Message (Offline)

Ignore
1715195601
Reply with quote  #2

1715195601
Report to moderator
I HATE TABLES I HATE TABLES I HA(╯°□°)╯︵ ┻━┻ TABLES I HATE TABLES I HATE TABLES
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715195601
Hero Member
*
Offline Offline

Posts: 1715195601

View Profile Personal Message (Offline)

Ignore
1715195601
Reply with quote  #2

1715195601
Report to moderator
1715195601
Hero Member
*
Offline Offline

Posts: 1715195601

View Profile Personal Message (Offline)

Ignore
1715195601
Reply with quote  #2

1715195601
Report to moderator
1715195601
Hero Member
*
Offline Offline

Posts: 1715195601

View Profile Personal Message (Offline)

Ignore
1715195601
Reply with quote  #2

1715195601
Report to moderator
gmaxwell
Moderator
Legendary
*
expert
Offline Offline

Activity: 4172
Merit: 8417



View Profile WWW
November 29, 2013, 10:09:52 PM
Last edit: November 29, 2013, 10:24:40 PM by gmaxwell
 #2

1. How does the bitcoin foundation get agreement from all the miners to implement their changes to bitcoin?
The Bitcoin Foundation plays no formal role in the development of Bitcoin. The foundation is a 501(c)(6) professional organization created fairly recently (last year) in order to help sponsor and promote Bitcoin.  If the foundation did have control over Bitcoin it would be very bad indeed, as they could be ordered to abuse that control. Fortunately, they do not. If you wanted you could start your own Bitcoin foundation.

Quote
2. When this agreement happens, does the network have to shut down?
3. How quickly does it take to implement these "developer changes"
4. If an entity controls 51% of the network, do they get to be the "developer" ?
Bitcoin is, foremost, an autonomous zero trust system. Every Bitcoin node such as the reference client software (Bitcoin-QT), run by anyone who wants to,  independently validates that the messages they receive from the network conform to all the rules written in the software they trust no one. As such, "majority" is generally irrelevant in terms of the system's rules. They cannot be violated by just a simple majority of anything... though if some kind of super-majority of Bitcoin _users_ wanted to adopt different rules, they could: they would arguably be using another system though.

Unfortunately, there is no way to decide the ordering of events in a decentralized and purely autonomous manner, so Bitcoin uses a computational majority to order transactions via mining... Ordering is powerful but the inability to control more than ordering is believed to be part of the incentive balance that keeps mining mostly honest.

As of yet, we've (the Bitcoin community) never really changed the system in a way that wasn't backwards compatible with the earlier versions at least at the rules level— save one exception which was that versions prior to 0.8 would non-deterministically refuse to validate some blocks processing large numbers of transactions and fixing this bug was a not-completely-backwards-compatible change to the system rules.

It's possible to add new restrictions to the rules without breaking backwards compatibility (e.g. transactions not consistent with the new rules are just ordered infinitely far into the future) and this has been done a couple times to correct bugs and provide some new functionality. To make these changes safely it requires a decisive super-majority of mining to be enforcing the new restrictions. Fortunately the protocol itself can coordinate this by miners signaling with a bit in their blocks that they will start enforcing the rules when— say— 750 of the last 1000 blocks have the signal bit.

Anyone who wants to can develop Bitcoin software, and many people— advisably other otherwise— have.
Bill Bisco (OP)
Member
**
Offline Offline

Activity: 109
Merit: 10


View Profile
November 29, 2013, 10:42:01 PM
 #3

Thank you for your replies.

So, if the Bitcoin Foundation plays no direct role, what about the Core Bitcoin Developers?  I hear tidbits about versions. 

5. How do these versions of Bitcoin get implemented? 

6. Who has to install these versions?

7. What happens to miners or others who do not use these updated versions?  Are they shut out of the system?

BTC: 1PVqE4eM8uBJ7Xb9rCsCLajp5YSi6p8oQ6
"Real Sharpness Comes Without Effort"
kjj
Legendary
*
Offline Offline

Activity: 1302
Merit: 1025



View Profile
November 30, 2013, 04:49:19 AM
 #4

Thank you for your replies.

So, if the Bitcoin Foundation plays no direct role, what about the Core Bitcoin Developers?  I hear tidbits about versions. 

5. How do these versions of Bitcoin get implemented? 

6. Who has to install these versions?

7. What happens to miners or others who do not use these updated versions?  Are they shut out of the system?

The developers are developers because people trust them.  Anyone can fork the software and people can choose to use their version or not.

Please read gmaxwell's post carefully.  He answers most of your questions if you pay attention.

There are different versions of the core software because it is under development.  But there is only one block chain.  So far, there have been no changes to the block chain rules that would exclude any previous versions of the software.  No users of the system have ever needed to upgrade (I still run a pre-0.4 node for fun).  Miners* need to be more careful and should generally be running fairly current versions since it is possible for them to create a block that other miners will refuse to build on.

* And by miners, I mean people that use their node to generate new blocks.  Most "miners" are really "mining pool users", and the blocks they work on come from pool operators.  The pool operators, of course, use their nodes to generate blocks, so they are "miners" in this sense.

17Np17BSrpnHCZ2pgtiMNnhjnsWJ2TMqq8
I routinely ignore posters with paid advertising in their sigs.  You should too.
Bill Bisco (OP)
Member
**
Offline Offline

Activity: 109
Merit: 10


View Profile
November 30, 2013, 03:06:05 PM
 #5

I did read his post and I'm thankful for his post and yours as well.  If I didn't understand something it's probably because I'm new.  Cheesy

So, if I'm understanding you correctly, because most actual mining is done by the owners of the mining pools and the owners of the mining pools:

1. Generally trust the Bitcoin Core Developers
2. Want to be using the most up to date mining software
3. Don't want the risk of being left behind or work not being valid because their software is old compared to the owners of the other mining pools

Therefore, the mining pool owners generally upgrade to the latest software.

If I'm reading you correctly, because most of these updates did not involve that great of changes to the base software most mining pool owners did not need to stop mining after an update?

However, my base question was not answered.  When updating the software, does one have to stop mining?

Thanks,

Bill

BTC: 1PVqE4eM8uBJ7Xb9rCsCLajp5YSi6p8oQ6
"Real Sharpness Comes Without Effort"
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!