Project Affable Participants List Automation Tool Deployed!

in Best of India3 years ago

Problem:

Project Affable was a project started by @sapwood to help bring forth more engagement here on Steemit. As we saw this contest kick-off we had many participants from across the world. To make the scoring easier, we also had a tool to automate the user scores that was designed by @neerajkr03.

Even with all this, Project Affable faced one main problem. Participants had to enter every single month by commenting "I am affable" on the contest announcement page every single month. Many users who commented the first month would forget to put in their comment and hence never be considered for the month's scoring.

Since we had users from all around the world, it was very hard to also keep track of the users who never commented on the project announcement page. Additionally, having to find out the latest comment of the users who are considered, manually was a tiring task as well. This was the main reason why the result announcement of Project Affable used to take a longer time.

Solution:

I have been working on a solution for this problem and it is now deployed on a server. This tool that I have developed is not a replacement for the existing Affable Automation Tool, but it is an enhancement that would help reduce the work of the organizers as well as the participants.

image.png
Here, you can see that the list of users is being updated even though none of them registered themselves by commenting I am affable on the latest post

1- The Participants: Remember the participants had to comment on the contest announcement page every single time? That is no longer required. Users would now be considered for scoring as long as they many valid comments using the #affable tag in their comments.

2- The Organizers: With the current implementation, the organizers would receive a list of all users and the latest comment that they made using the #affable tag. This would help reduce the amount of manual work that is currently required.

Enhancements:

I am aiming for the complete automation of the Affable project. Due to a few medical emergencies, I wasn't able to complete the scoring automation and The UI in time. However, since the core part of the tool is ready, I would be able to complete the development of these two features in the coming weeks.

So, by the time we have announced the winners for the contest, the complete tool would be ready. For now, we have the core logic that is picking all the user comments.

Framework and tools used:

image.png
This is my current resource allocation to keep in sync with the blockchain
This automation tool has been written using .NET Core 3.1 and is deployed on a digitalocean Ubuntu droplet. The current cost of this would come up to $24/month for the application. Since I would be keeping up with the live blockchain, this needed a decent server to run on.

image.png
These are the frameworks and libraries used so far to build this automation tool
Additionally, I have also opted for a managed Redis instance that would give me an increased data I/O speeds.
Finally, the data is persisted in a SQL database that is hosted on another, $5 server. I have separated the SQL server and the application server because of performance issues I ran into when both of them were on the same server. Every night at 12:00 AM IST, the aggregated data present on Redis would be committed into the SQL database. The use of Redis made keeping up with the blockchain easier.

Upcoming Features:

Like I mentioned previously, the automation tool doesn't have any UI as of now. However, this would be developed and deployed very soon. This would most probably show the list of users who are considered for the contest the current month.

I have also asked @neerajkr03 to provide me the API details of his SCM tool. By looping through the user entries of the month through his tool, we can achieve scoring automation as well. Thus, helping reduce the overall manual work required to maintain and run this project.

Thank you.

CC:
@sapwood
@neerajkr03
@rishabh99946
@steemcurator01
@steemitblog

Sort:  

Excellent job dear.

Regarding the monthly maintenance cost & sustainable development, we will create a separate pool.

So should I announce the contest(Project Affable) for the month of May 2021?

Thank you so much.

#affable #test

Yup. We are good to restart from May.

Thank you so much.

Nice.

Wow nice .

Great!

Good work.

This vote should help with the server costs.

Yes. It does help with that.
Thank you for your support

#affable #test

That looks great @starlord28

Thanks

ill dm neeraj to provide the API

Thank you. I'll also get in touch with him on discord.

It will be great

Coin Marketplace

STEEM 0.20
TRX 0.13
JST 0.029
BTC 65560.09
ETH 3467.72
USDT 1.00
SBD 2.68