So far BitShares has been developed with a cowboy coding mentality. I would design, document, and implement as I went. We are now looking to grow this into something that can be maintained by the community and understood by all. To this end I would like to produce a professional quality design document that is maintained as a website that can be updated by accepting pull requests via Github. This document should be content focused and built for clarity. Someone should be able to take this specification and implement a working BitShares blockchain with a high degree of compatibility with other independent implementations.
I have already defined the blockchain and many unit tests and there exists documentation embedded in the code right now. I would like to capture the ideas expressed in the code and make them available and accessible to everyone. I will be available to answer questions here in the forum about anything that is unclear.
Because BitShares has not been finalized at this point, the process of documenting the current design should help us explore undiscovered corner cases.
This is a cooperative bounty and all submissions must be developed publicly. I want to encourage cooperation so if you copy contributions from other members be sure to agree on how to split the bounty. If the accepted design document has any disputes about how the bounty is to be divided then Invictus will decide and take a 25% cut. In other words, it is in everyones interest to fairly access their own contribution and resolve disputes.
This bounty is PENDING until all questions regarding the scope and requirements of this bounty can be settled. At that point we will lock in the terms and begin the bounty. Of course, getting a head start will benefit all.
There is also a referral bounty paid to the individual who refers anyone who wins the bounty. https://github.com/InvictusInnovations/BitShares/blob/master/include/bts/blockchain/block.hpphttps://github.com/InvictusInnovations/BitShares/blob/master/include/bts/blockchain/outputs.hpp