5 ms·
I've heard that argument many times and all it does is reinforce the idea that no other implementation can work. And how you end-up with an implementation mono-
by mriou 13y ago
I've heard that argument many times and all it does is reinforce the idea that no other implementation can work. And how you end-up with an implementation mono-culture. Forks of a single block happen regularly, it can be dealt with. A production system can detect a fork and check the reference implementation's behavior, preventing any longer fork.
The *coin ecosystem need more than one implementation, a single codebase can't cater to all uses. I should know, I'm an Apache member.
- hendzen 13y agoForks of a single block ("orphans") are expected due to block propagation taking a nonzero amount of time. That's very different than the case where say 50% of the network is running bitcoind, and the other 50% is running btcd, and some transaction triggers an edge case in either implementation that causes one implementation to accept the transaction and another to reject it. I think multiple compatible implementations would be great to have, but we don't have them at the moment, and in the meantime companies handling huge numbers of bitcoin transactions need a solution that works today. So I applaud the bitcoin-core team for catering to the increasingly common use case of using bitcoind only for consensus.
- mriou 13y agoAnd it happened even only with bitcoin-core. Anyhow the 50/50% scenario across implementations is unlikely to happen if everyone seeing a new one cries forking wolf. I do empathize with the need of solutions for today though. I was just thinking about tomorrow.
- bachback 13y agoalternative implementations would mean you need consensus between different groups of developers holding the keys to the software. unlikely to be a good idea.