Web: EthOS -- a SolidCoin Experiment

Created on 10 Apr 2018  ·  28Comments  ·  Source: gitcoinco/web

ethos

For Ethereal Summit on May 11th, we will be distributing 50 ethos coins to the community. Here's what they look like:

screen shot 2018-04-09 at 4 59 46 pm

another solidcoin!

If you can't tell just by looking at them, these ethos coins are a continuation of SolidCoin, which was an experiment we did at ETHDenver in February.

Check out the above post. The TLDR is -- At ETHDenver, Colorado Coins were used to pay for meals at the food trucks. Afterwards, we used them to send ERC20 tokens called ColoradoCoin to members of the community.

screen shot 2018-04-09 at 5 14 21 pm

For further inspiration in the SolidCoin space, check out How Much Is a Cryptotini Worth? by Kyle Tut.

ethos - user flow

OK, with ETHOS -- here's how it works.

Kevin starts with 50 ethos distribution coins at the beginning of the conference. He walks up to someone (anyone really) and says "Do you want to play an emergent social game?"

He hands them a ethos and says "It's got a QR code on the back. Scan it with Trust Browser"

They scan it with their iPhone (sorry, no Android at this point). Up will pop a page that says

https://gitcoin.co/ethos/[unqiue-6-digit-code]
H1 - You've received an ethos.  
Subheader - Enter your name to continue.
Form element -- Twitter username input
Form element -- disabled (if scanned with web3 browser like Trust Wallet, or enabled if not ) -- web3 address input
Form element - Submit button

When the form is submitted, it will present an error if the [unqiue-6-digit-code] and web3 address has been used before. If no errors, it will

  1. present a page that says.
h1 - Got Ethos? 
subheader2 - prove it -- give this coin to someone *who you dont know*.  
subheader3 -- the faster you perform this task, the more Ethos you will receive.
p - this coin has been shared <num> times.  the top coin has been shared <num> times.
button -- close form
  1. it will also send a tweet that says ". @ earned some Ethos at #ethereal" with an attachment that is the image of the "sprawl" (see below)

ethos - image view of the "sprawl"

build a view that exports a gif which visually displays as an animated gif the progression of ethos through the conference. here is a nice inspiration gif, though it should be extended with

  • names / twitter photos next to each node
  • the length of each edge should be relative to the amount of time that the coin took to travel from person to person

ethos - admin management command

write a management command that can be used to distribute n ERC20 ethos tokens to anyone who participated in the experimenet.

  • for each participant, n = 30 minus the number of minutes that it took that user to distribute the coin to someone else. n may not be lower than 5.

you may reuse the infrastructure setup via coloradocoin (settings.COLO_ACCOUNT_ADDRESS, settings.COLO_ACCOUNT_PRIVATE_KEY ) . COLO_ACCOUNT_ADDRESS is currently set to 0x05Bed3666F8e9507E38Bf065269eAB7eFf95CC35 in case you were wondering

you may assume that @owocki will handle the creation of the actual ERC20 ethos coin. you will just have to hook up the ERC20 interface for sending the coin.

ethos - database backend

you'll want to store each traversal of ETHos in the backend. I propose you write a new django app called ethos and add two models to it

Model 1 - ShortCode

  • created_on - datetime
  • num_scans - int - default 0
  • shortcode - varchar

Model 2 - Hop

  • created_on
  • Twitter username
  • Twitter picture url
  • web3 address
  • previous_hop -- foreign key to hop -- nullable (null == first hop)

Supporting Links

Bounty

Please submit a first draft of all of the above by May 1st 2018. Since this functionality is time-sensitive, it is important for you as the bounty hunter to be able to commit to delivering within this timebox before you click 'start work'

Most helpful comment

Would love to do these for colleges/student-focused hackathons!
dm me on twitter! https://twitter.com/calchulus

All 28 comments

@thelostone-mc -- Team up again? 😉

coin back will have a QR code, a tag line that says "works with Trust Browser, BUIDLt with Gitcoin"

__This issue now has a funding of 1.4 ETH (556.86 USD @ $397.76/ETH) attached to it.__

  • If you would like to work on this issue you can claim it here.
  • If you've completed this issue and want to claim the bounty you can do so here
  • Questions? Get help on the Gitcoin Slack
  • $3014.19 more Funded OSS Work Available at: https://gitcoin.co/explorer

@eswarasai I'm in ^_^

Awesome! Colorado Coins were a big hit, looking forward to these as well 👍

And @thelostone-mc and @eswarasai working together? Dramatic re-enactment of that team-up:

EthOS team

@eswarasai @thelostone-mc would love to work with ya again!

@owocki One question I had - if this is being used on a mobile device, does it need to be in the tips modal?

doesnt need to be.. that view is already mobile optimized and works nicely on mobile tho, so i figured it'd save the contributor some cycles by providing that upfront

yay @eswarasai looking forward to working with ya on this

@owocki -- I have few questions w.r.t. the EthOS flow which are below :

Form element -- disabled (if scanned with web3 browser like Trust Wallet, or enabled if not ) -- web3 address input

How can we determine this?

Give this coin to someone who you don't know

On successful transaction page, we display the above message. But how are they going to do that?

Send a tweet that says ". @ earned some Ethos at #ethereal" with an attachment that is the image of the "sprawl"

We'll be generating this tweet which user can share or in the Backend we'll be posting this tweet on GetGitcoin twitter handle?

EthOS - image view of the "sprawl"

@owocki @thelostone-mc -- Any suggestions on how to get the .gif view implemented like requested above. I have no clue about this 😅

How can we determine this?

If theres a web3 javascript instance. see this

But how are they going to do that?

not sure i understand the question. we'll all be at a conference, so that's how they'll distirbute the coins

We'll be generating this tweet which user can share or in the Backend we'll be posting this tweet on GetGitcoin twitter handle?

i'll make a seperate twitter handle for the production app (probably called EthOS or similar).. you'll probably need to craete a seperate twitter account for testing

i think that images are fairly simple to generate with django views. the first step i think is probably finding a graphing (node + edge) visualization library, then we can layer the gif layers on top of each other

@owocki -- Thanks for the above clarifications.

Give this coin to someone who you don't know

I forgot for a moment that this is a solidcoin and will be passed on to the other person 😅

the faster you perform this task, the more Ethos you will receive.
p - this coin has been shared times. the top coin has been shared times.
button -

@owocki does this mean each time the same coin is shared -> since I was part of the chain -> I get EthOS coins ?

yes!

Checking out the functionality of tip / redeem colo coin
There we check if metmask is unlocked && installed -> and then show the forwarding address
If scanned without trust browser (have to figure this out too ) -> can I assume the above behavior doesn't change ?

afaik.. the web3 object should be the same whether youre using metamask / trust

(not sure if thats what youre asking)

@eswarasai @thelostone-mc Cleaned up some Gitcoin Bot comments... reminder that Ethereal is next weekend!

@vs77bb we'll shoot out the PR soon ^_^
Until then for reference this is where the code resides https://github.com/eswarasai/web/commits/ethos

@eswarasai are you still working on this issue?

  • [x] warning 1 (3 days)
  • [x] warning 2 (6 days)
  • [ ] auto removal (10 days)

just got the first cut of the physical ethos coins :) they look sickkk

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


@eswarasai has been removed for inactivity and the issue has been returned to an ‘Open’ Status. Let us know if you believe this has been done in error!

  • [x] warning (3 days)
  • [x] auto removal (6 days)

@eswarasai Hello from Gitcoin Core - are you still working on this issue? Please submit a WIP PR or comment back within the next 3 days or you will be removed from this ticket and it will be returned to an ‘Open’ status. Please let us know if you have questions!

  • [x] warning (3 days)
  • [ ] escalation to mods (6 days)

Funders only: Snooze warnings for 1 day | 3 days | 5 days | 10 days | 100 days

Yep. It's still WIP.

Would love to do these for colleges/student-focused hackathons!
dm me on twitter! https://twitter.com/calchulus

⚡️ A tip worth 0.7 ETH (512.31 USD @ $731.87/ETH) has been granted to @eswarasai for this issue from Kevin. ⚡️

The sender had the following public comments:

very excited this was a success.. thanks!

Nice work @eswarasai! To redeem your tip, login to Gitcoin at https://gitcoin.co/explorer and select 'Claim Tip' from dropdown menu in the top right, or check your email for a link to the tip redemption page.

⚡️ A tip worth 0.7 ETH (512.31 USD @ $731.87/ETH) has been granted to @thelostone-mc for this issue from Kevin. ⚡️

The sender had the following public comments:

very excited this was a success.. thanks!

Nice work @thelostone-mc! To redeem your tip, login to Gitcoin at https://gitcoin.co/explorer and select 'Claim Tip' from dropdown menu in the top right, or check your email for a link to the tip redemption page.

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


__The funding of 1.4 ETH (1024.61 USD @ $731.87/ETH) attached to this issue has been approved & issued.__

I'm curious what was preventing android from working? is the Trust wallet different in scanning?
would be happy to try this without trust wallet

Was this page helpful?
0 / 5 - 0 ratings