So why have multiple implementations?
•A monoculture results in the dominant software having too much control over the protocol direction
•A bug in the reference client can bring down the entire network
• Virtually all successful internet protocols have human-readable specs (RFCs) backed by multiple independently developed implementations
— Dave Collins, May 2013

