Tutorial: Token Staking for Stream Discovery

Stream Growth Creates Discovery Challenges:

Celody is constantly expanding its available streams. Consider that there are now multiple hiphop, techno, pop, jazz, classical, and experimental streams. In fact, you can submit ANY of your own music here which means Celody has the potential to reach thousands (and even millions) of streams. With the growth in the number of streams, how can you discover what's good?

Discovering Streams

Likes vs Like Staking:

The standard method to signal content quality is a like button. If you like a YouTube video or a Facebook post, you click the "thumb" button to signal approval. Critically, there's no scarce resource behind the like. Any user can hit the button at virtually no cost. There's also an unlimited number of possible likes. It's not scarce. In contrast, Celody uses like staking: where you transfer IOTA tokens to signal your like. The more tokens you transfer, the more you are signaling that the stream is good.

Like Buttons

Likes - Pros and Cons:

Like buttons are ubiquitous for a reason. They are a fluid user experience. So long as you have an account, all you need to do is click a button. This increases the universe of people who can participate. Of course, the downside of easy-to-use is that it's both easy for good and bad actors. So the bad actors can setup click farms and other bot techniques to manipulate the like signal.

Ease of Use

Like Staking - Pros and Cons:

Like staking is a more difficult user experience by design (NOTE: Celody is working on a proxy system to simplify staking). To stake, there are several steps required, including a tagged token transfer. This is more complex than a like button click. But, it's both more complex for good and bad actors. This means the signal quality for a heavily used system may be higher. Click farms would be much more expensive to spin up (compared to a "like button" approach) because like staking uses a scarce resource.

Better Quality

Using Tokens While Hodling:

Like staking also allows you to use your IOTA tokens while you hodl. In other words, you are in control over your tokens at all times. If you believe the token will increase in value/utility, you lose no optionality because you still retain ownership. The tokens are in your staking address - an address that only you should have control over. Celody just monitors this staking address for its token balance. If you want to use your tokens on something else, you can transfer them at any time.


Like Staking with Tokens:

Like staking is the transfer of tokens to your own staking address using a tagged transaction. Tagging means you need to include the word "CELODY" in the tag field (or message field) of the transfer. You can use various wallets to send this tagged transaction or you can send it using the iota.js libary code. Only new tagged transactions to unused staking addresses are valid within the Celody ranking algorithm.

Transfer Tags

How to Stake on Celody:

To like stake a stream on Celody, first play the stream. Under the "Like Staking" section, enter your staking address. This should be an unused address that only you control. Celody recommends just creating a new wallet dedicated to staking. After submitting the address to Celody, you then need to do a tagged token transfer into that address. The value of your transfer indicates the level of like. Be sure to include a tag or message of "CELODY".

Stake Demo

Ranking Algorithm:

Celody monitors the balances of staking addresses on a periodic basis (not instantaneous). Token balances are weighted using a time-based ranking algorithm where more recent stakes are given a higher weight. The more tokens you stake, the higher the starting rank, but stake ranks decay over time. This approach is similar to sites like Reddit and Hacker News.

Adding Streams

The Popular Tab:

The streams with the highest current rank are then shown on the Popular tab. As the number of Celody streams continues to grow, like staking will be an important experiment for surfacing the best content for Celody users.