Utopian-io Vote Analysis: November 2018
The new Utopian voting bot has been in place since the end of October. The implementation signalled a number of changes in the way Utopian votes are allocated to contributions:
- The new voting bot uses voting rounds. A large number of contributions, moderator comments, and trail community posts are upvoted in quick succession up to the set allocation of voting mana available for the voting round. By comparison, the old bot upvoted individual contributions from the wait list each time the voting power returned (close) to 100%.
- Each contribution type (development, tutorials etc) is allocated an equal proportion of the available voting mana for each round of voting. Any surplus voting mana from categories with a low number of contributions is then reallocated to more popular categories. The old bot made no distinction between contribution types.
- The new voting bot selects contributions to upvote from the list of moderated posts based on the review score, with higher scoring posts given priority. In combination with the above rule, this means that higher scoring posts from each contribution type will be upvoted first and lower scoring posts from popular categories may not receive an upvote. The old voting bot upvoted the oldest contribution first, irrespective of contribution type or score.
Based on Utopian-io team communications I believe that the aims of these changes are:
- Sustainability: With the growth of Utopian it was no longer possible to upvote all contributions;
- Quality: Higher scoring posts are given priority;
- Reinvigoration: There is a desire to reinvigorate some of the less-active categories; and
- Visibility: Earlier voting will give the posts and Utopian more publicity through the trending pages.
In this analysis I look at the voting behaviour of Utopian-io across the month of November under the new voting bot and compare this to the old voting bot behaviour from October. I aim to:
- Examine the breakdown of votes awarded by category and contribution type and see whether the new voting approach is more even across contribution types;
- Consider numbers of contributors for each contribution type and evaluate whether smaller categories have been reinvigorated;
- Review the Utopian vote timing to see whether posts are voted earlier in the seven day payout period; and
- Celebrate another great month for Utopian using some summaries of the top 50 contributors.
1. Breakdown of Utopian-io votes by category
This first comparison summaries all Utopian-io votes across the month aggregated by category of vote and by the day on which the vote was awarded. The top chart is for November and the lower chart for October.
The y-axis shows vote weight. 100 on the axis represents one full strength 100% vote. 1000 represents a full day’s allocation of ten 100% votes. The x-axis represents each day based on universal time, UTC, as per the blockchain.
A couple of observations on the above:
The peaks in the November chart arise when two voting rounds occur in the same day. Two reasons why this can occur:
- Although a voting round is allocated the full voting weight (mana) of a single day, the actual reduction in Utopian-io vote power is less than the full-day amount due to later posts in the round being upvoted with less than full vote power. Thus a voting round very early in the day may be supplemented by a further voting round right at the end of the day.
- A reduction in contributions towards the end of the month of November means the voting rounds are not always full.
SteemSTEM trail votes were halted on a few occasions in October to allow the old voting bot to catch up with voting on contributions. This was not necessary with the greater stability of the new voting bot in November.
To summarise the overall position, these pie charts aggregate the breakdown by categories of votes for each month:
Task requests are now treated as a contribution type rather than a separate category. Adding together the contribution and task request category percentages shows a 10% drop in voting power allocated to contributions from October (76%) to November (66%). This appears to be due to:
- An increase in SteemSTEM voting - perhaps from the new voting bot being able to vote on trail contributions every day whilst the old bot was occasionally halted when the contribution wait list was full.
- A reduction in contributions in the second half of November with the falling Steem price and lower rewards - the percentage split from contributions and task requests in the first half of November was 70%.
For those new to Utopian a brief explanation of the categories of votes:
- Contributions (blue): Utopian-io mainly rewards contributions to open-source projects. Contributions are not just limited to coding (development) but cover a wide range of technical skills including graphics work, translations, tutorials, copywriting, bugs and ideas.
- Moderator comments (purple): Utopian has a team of over 50 expert moderators who review and score every contribution. Utopian rewards the moderators for their work by voting on their review comments.
- Task requests (yellow): Open source project owners can make requests for work to be carried out on their projects. These take the form of task requests. Only a small number of project owners currently use task requests but they can represent some of the most exciting opportunities for the Utopian community.
- Trails: Utopian-io also supports a number of Steem communities, typically those with links to the open-source world or science and technology. Two of these are separated out in the chart: steemstem (green) and mspwaves (red).
- Other comments and posts (grey): These are one-off votes on posts of high value or interest to the open-source community, such as the arrival of a new project into the Utopian VIPO club. There will also be a few votes that have fallen through the filters I use to determine the category separation.
2. Breakdown of Utopian-io votes by contribution type
This second comparison takes the contribution vote and task request amounts above (blue and yellow bars) and separates them between contribution types for the months in question.
There are fifteen contribution types for November and fourteen for October, with blog and iamutopian aggregated in the latter. As in the first section the y-axis represents vote weight and the x-axis shows the dates.
So is the new voting approach more even across contribution types?
If we look at the first two days of full voting under the new voting bot (October 31 and November 1) we can see that the voting bar is quite evenly split across a number of contribution types. At this point in time the voting queue was full and there were plenty of posts in a large number of contribution types awaiting upvote.
However this pattern quickly dispersed with a re-emergence of voting weighted towards the large contribution types: translations, development and blog. As time progressed the voting bot worked through and emptied the smaller contribution types. The ring-fenced voting mana from these pools was then available to the larger contribution types for upvotes.
In conclusion, the new voting bot will upvote evenly between contribution types but only if there are plenty of posts for each contribution type in the wait list. This is not currently the case.
Again, the pie charts to summarise across each month:
The main movements from October to November were:
- Translations: -14%, Graphics: -3%.
- Development: +7%, Blog (incl iamutopian) +6%, task requests +3%.
3. Numbers of contributors rewarded within each contribution type
Has there been a reinvigoration of the smaller contribution types?
The following table looks at the number of contributors rewarded by Utopian-io in each contribution type, with a comparison of November against the prior month.
It is clear that for three contribution types (translations, graphics and tutorials) there has been a fair contraction in the number of accounts rewarded, whilst in two others (bug-hunting and task requests) there has been an uplift.
The reductions in numbers may well be due to the significant fall in rewards in November with the lower Steem price adversely affecting rewards and discouraging some users from contributing. A reduced level of posting is a factor across the whole Steem blockchain. We will have to wait for a crypto market rebound to see if the picture changes.
It is also possible that for translations the reduction in available upvotes at the start of the month may have had an impact in discouraging users.
4. Utopian-io vote timing
The charts below looks at the timing of votes made by Utopian-io as measured against the seven day voting period for posts.
The y-axis represents the duration in a post’s life at which it is upvoted by Utopian-io. The x-axis shows time across the month.
The differences in behaviour between the two months are stark:
- The voting rounds of November are clearly visible with many votes occurring in quick succession broadly once per day. By contrast the October voting appears as an almost continual stream with single votes made at short intervals.
- The timing of voting is much earlier in November than October and sits close to the 1.5 day line on average. I would assume that this is roughly 1 day for moderation plus 0.5 days waiting for upvote on average (since upvotes are roughly once per day). The late upvoting seen for much of October is no longer an issue.
5. Summaries of the top 50 Utopian contributors for November
Congratulations to all those who made it on to the top 50 list for November!
It's a pretty diverse selection, both by category and by contribution type, with all categories and trails represented and 11 out of 15 contribution types.
October top 50 for comparison.
This analysis relates to the Utopian open-source project. The relevant repositories are:
Tools and scripts:
I used the block.ops analysis system to produce this study. Block.ops is an open-source analysis tool designed for heavy-duty analyses of the Steem blockchain data.
You can find the repository for block.ops here:
The analysis used all the Steem blocks from November (and those from October for the comparisons). This is approximately 900,000 blocks for each month.
The study can be recreated by:
- Loading the data for the relevant time period into block.ops (Note that this takes a long time - I plan to release the data I have uploaded into MongoDB, once I have worked out how to do so, to allow this step to be skipped by users).
- Using the utopianvotes command from the command line, for example:
$ node blockOps utopianvotes "2018-11-01" "2018-12-01"
As usual, the main difficulty in producing this analysis involved correctly allocating posts to their respective categories and contribution types. This relied entirely on the tags and links included in each post. The order / logic I have used for the allocation is as follows:
- Moderator comments based on having the appropriate links to Utopian guidelines and help.
- Contribution post type based on the tags 'Utopian-io' and the first contribution type that appears. Special consideration taken for idea / ideas and social / visibility.
- Steemstem post based on steemstem vote.
- Task request based on the tags 'Utopian-io' and the first task-contribution type.
- mspwaves post based on msp-waves or mspwaves tag.
- Other posts and comments based on postComment indicator.
Whilst I have made my best effort in this categorisation, I cannot promise to have allocated every post correctly.
Thanks for reading!