Edit - March 19, 2018

Reddithereum has been revamped, rebranded, revised, redeployed, and re-released as SolClub. Check it out!


Backed by the full faith of a reddit bot I built over the weekend, reddithereum is an ethereum smart contract which implements a user account database (and some other stuff). Here’s how it works:

  1. Users sign up with their reddit usernames (free to join, just need a reddit account).
  2. Karma is implemented as transferrable ERC20 tokens (each user starts with 10,000 karma).
  3. Dapps which use the user/karma system can send a share of their profits into the smart contract.
  4. These donations are shared equally amongst all users.

My goal is to build 1 dapp every 2 months, and share the majority of any proceeds with the community (if anyone wants to collaborate on something, let me know). Most social-network-y type apps face a chicken/egg problem; they aren’t userful until people sign up, and people don’t sign up unless they’re useful. Reddithereum is my attempt to solve this problem without needing a scammy ICO crowdsale. We’ll see how it goes.

Sign up

1. Send a PM to reddit user “royalforkblog” with your ethereum address as the subject.
2. You’ll get a reply with detailed instructions on how to send your registration transaction.
3. Read the instructions and send your registration transaction.
4. Wait for the transaction to get mined.
6. You can also check out your account.
7. If you’re feeling generous, you can send some ether to the contract address.

Withdrawals

  • Each month is a “period”; January is period 1, February is period 2, etc.
  • New users can first collect a dividend for the period after they’re born; so if you register your account in period 1, you can first collect a dividend for period 2.
  • The dividend is simply the number of users divided by total amount of ether in the contract, minus the owner cut. Let’s say there are 10 ether, the owner cut is 30%, and there are 70 eligible users at the end of period 2; the dividend payment for period 2 will be .1 ether (edited March 4).
  • The period 2 dividend is collected by making a “withdraw” transaction at any time during period 3.
  • If a user fails to make a “withdraw” transaction during period 3 for their period 2 dividend, their dividend will be gifted to the owner (edited March 4). If you’re the forgetful type, I’ll be sending out reminders to anyone signed up to the newsletter.

FAQ

What’s the point of Karma?

I don’t know….just thought it might be useful down the road.

Why is the contract called “Karma” instead of “reddithereum”?

I have no afiliation with Reddit, and don’t want to get into any trouble with them. If they ask me to change the reddithereum name, I can easily do so on the blog. Less easy to change a smart contract.

Why is there a minter?

It leaves open the possibility of contract based account registration. Decisions like this will be put to a vote.

What’s to stop people from registering names they don’t own or endowing themselves with infite karma?

The “creation signature” is only valid for a single username, address, and amount. Registrations are only possible with a valid signature from the contract owner.

Is there any moderation?

Once registered, account can’t be removed, but moderator can place a user in “timeout”, which means they won’t be able to withdraw for 1 period. This will be used very judiciously, and only in extreme cases of abuse (I’d like to put another smart contract in front of this where users can vote to put someone in timeout).

What’s to stop people from creating a million reddit account and taking all the money?

Only reddit accounts created before Jan 24, 2018 are eligible for registration.

Can you send karma to non-registered users?

No, karma can only be transferred to registered users.

Will this make me rich

To be rich is not about how many ethers you have in your wallet, it’s about how much ether you have in your heart. While there’s no concrete evidence of any cardiological thermodynamic effects, we shouldn’t rule it out. Maybe.