I’ve been following the Bitcoin block size debate since Gavin’s 20mb block proposal. If you’re not familiar with the block size debate, this wiki article is a good start. During the debate, I’ve lost respect for quite a few of famous people. But let’s put it aside. Let’s talk about a healthy competition for Bitcoin.
There should be more than one teams working on different implementation of Bitcoin
Yes, both the software and the protocol. If there is only one implementation, who will have the authority to decide which features to include/exclude in Bitcoin software? Who should decide which rules applied/not applied to Bitcoin protocol?
In the ideal world, there should be more than one implementations. Teams are freely to include/exclude whatever features they want. Users and miners will decide which softwares they want to run based on features set each implementation provides.
And since teams are freely to code, companies can “lobby” (for example paying developers) for their desired features to be included into the software, if these features are not what everybody want.
But, miners and users need to be well-informed in order to make decisions
Yes, that’s why it is important to keep users/miners informed. Users/miners should be able to understand pros and cons of each features, and why they are included in each implementation. Therefore, it also important to have healthy discussion forums.
Attack the implementation, not the people
Remember, every developer/user/miner, regardless of their views are, is a person. We should assume they want Bitcoin to success. Respect every person even though (s)he does not share your view. If you don’t like a feature being included into the software, simply don’t run it. Let others know your view. Have a healthy discussion.
Run what’s the best for you, or create a new one if you can’t find any
Otherwise we will stick with MySpace, AltaVista, Netscape, you name it. Feel free to put whatever you want into the software, and convince people to run it. Have a healthy discussion.