Bitshares-UI - First 6 months of worker results
Today I'd like to present some of the great progress that the Bitshares-UI team have accomplished during the first 6 months of the current worker.
A worker is community funding open projects
Quickly described for those unaware of what a worker on the Bitshares platform is, it's where a project or team can create a worker proposal for payments directly from the blockchain funds.
To receive funds, one have to have enough support in forms of BitShares votes, and all expenses are usually published on an escrows webpage. Bitshares-UI uses BBF as an escrow.
The Bitshares-UI worker can be found here, together with full expense reports, and lasts between 2019-02-11 - 2019-12-30.
Many new Features with a faster paced process
Compared to the old worker that had a purely decentralized approach where "anything could be worked on by anyone at any time", The UI team declared in the worker that a "tighter schedule to achieve key aspects of the development".
Further down you can see a breakdown on how this approach has resulted in a faster paced process for issues, but first I'd like to talk a little more about what this has resulted in. What larger features been added and what is yet to come.
Hash Time-Locked Contracts
This is a large feature, which involved much work from both core and UI team. Once released in the core, the implementation where tested and released in the 190618 release.
Atomic Cross Chain Swaps (ACCS) or simply “Atomic Swaps” require the receiver to acknowledge a transaction prior to a deadline by generating cryptographic proof of payment. This is accomplished through the use of a hash and preimage via Hash Time-Locked Contracts (HTLC). Should the recipient fail to supply the proof, they will forfeit the ability to claim the payment and it will return to the payer. This functionality allows for completely trustless wallet-to-wallet trading between assets and enables a significant reduction in counterparty risk.
The implementation of HTLC significantly widens the permeability of the BitShares ecosystem as it allows transfers between BTS and other HTLC-enabled blockchains directly and in a completely decentralized fashion. Trading with assets outside the BitShares ecosystem is now possible and eliminates the necessity of using a gateway. For a detailed explanation, consult the user guide, or try it out directly.
The past months the attempts to fool new users to hand over access of their accounts through features of the chain, in this case by sending a proposal to add them as co-owners, increased. This resulted in the team implementing two additional failsafe alerts. One being that if the proposer is not in the user’s favourites, it will not allow the proposal be possible to accept by default.
The other was recently introduced, where the team can quickly post alerts to the chain, which will show up on the wallet top, such as the below message.
Direct Debit Authorization
Creating permissions to withdraw specific assets for accounts is now possible directly within the BitShares wallet. This application opens up a variety of possible applications such as automated distribution of salary or expense account funds, reward or referral pay-outs, even a weekly allowance for your children (a great way to incentivize learning about self-sovereign finances)! Test it out online!
Market Fee Sharing
Asset owners such as Gateway operators can now define that a percent of all market fees for a given asset are funnelled through the referral rewards program. The flexibility of this new feature creates enormous incentive for web admins to onboard new users into BitShares.
At the time of writing, market fee sharing is enabled for bitUSD, bitCNY and bitEUR at a staggering 80%!
Issue and Progress Breakdown
As can be seen on the two images above, there are a steady stream of issues submitted to the repository. To the right you can see that we've had a constant stream of closed issues during the period. We started out with 267 open issues (2436 total with closed) and we are today at 321 open issues (2951 total with closed).
Since May we're also tracking the amount of assigned and unassigned (backlog) active issues. An active issue is one that has a set goal for completion and is expected to be worked on.
We've managed to close over 500 issues during the past 6 months.
Days to Complete
Many issues can require work from other teams to be possible to close, such as the core team to implement a new API for a specific feature to happen.
If we look at the time it takes for one issue to go from being submitted to closed, we've been much more effective in that department.
One of the promises and goals of the new worker was to restructure the way issues are addressed. We went from a community "work on whatever you desire" approach to forming a team that should try to aim for a good feature implantation approach and how it can be applied.
With this graph we can see that we went from, in the beginning of February, a median close time of almost 200 days to a more reasonable 60 days. Since March we've also been below the period average of closing time, so the pace is good and we're able to address and handle issues quicker.
A closed issue does not, of course, mean a new feature or that something may have been added to the code at all, but a lower average still means we have addressed it, evaluated it and deemed it done either as implemented, that it can't be implemented or just a closed discussion for some reason.
We're quicker and closes issues in 2 months rather than over 5 months!
During the past 4 months we've had an average of 45 hours work per 2-week period (milestone). There were two periods of less activity, much due to the DEVCon in Shanghai. Merging of work slowed down and closed issues decreased during this period. We complete around 120 - 150 hours of work per 4 months period.
When a milestone closes, the remaining work is pushed over to the next (the green bar), so we have much work estimated. We still have a significant amount of work added every week that is done in a short time span.
We do about 50 - 70 hours of work per 2-week period
Get involved - earn bitAssets!
Help develop, Do translations, Test releases
Help develop, Do translations, Test releases
The Bitshares-UI is a community project, and even if it's a small team, everyone is free to contribute to the future progress of the application.
Help Test Releases - If you're not a developer, but love to test new releases, you should check out for the Release Candidates. About every 5-8 week we do a release which has to be tested first. By testing new features and the app overall you can earn testing points, which is real bitAssets!
Do Translations - We're open for translations, using Transifex, which will earn you translation points, which is real bitAssets!
Check out for Pinned Issues on the GitHub Repository for testing and translation tasks. They are posted when there are new releases.
Posting about issues are of course also much welcome!
Read more and related links
Bitshares Gateway Operators
The following entities operates on the Bitshares platform, using the Bitshares UI wallet. Their versions may not always be up to date, but they may host various features of their own design. A gateway runs as an IOU, keeping your asset while you receive a IOU token 1:1.
Articles around Bitshares
- 5 Best Anonymous Cryptocurrency Exchanges Without KYC and AML
- BitShares Severly Underrated by Gokhshtein
- BitShares: A Fully Decentralized Platform & Community by FortuneJack
Other Bitshares Related
Thanks for reading!
💙 Feel free to share 💙