Sneak peek: Bitcoin Cash enabled podcast app.
A Bitcoin Cash enabled podcast player that aims to combat self-censorship and give podcast creators the ability to monetize their content in a decentralized, permission-less way.
It's still very rough around the edges and I’m aiming to have a beta ready somewhere in January 2022.
Here’s a short video of “Boost” functionality in action:
What follows is a story on why I started building this app, what's wrong with current proposals/implementations and what to expect of this app in the near future.
Backstory
You can skip to the “A simpler approach" section if you just want to know what the app is about.
In July 2021 Adam Curry was on the Joe Rogan Experience and they talked about a variety of subjects. One that grabbed my attention was the Podcasting 2.0 movement Curry started, you can read all about it on their GitHub page.
It consists of three parts, but the "Value for Value" principle in particular grabbed my attention.
From their GitHub:
The final step is monetizing your content with cryptocurrency so your listeners can support you directly with no middle-men. This allows your content to be truly free from the pressures of advertising. Advertising serves a necessary role in any free market, but it does come with a cost. That cost is censorship - whether it's direct censorship by the advertisers themselves or self-censorship as you restrict your speech as to not offend the advertisers.
I fully agree that (self) censorship is a bad thing and currently available methods of monetizing a podcast, either through sponsors, monetizing on YouTube, Patreon or just accepting PayPal donations, is risky. Sponsors might not want to be associated with your podcast any longer when discussing certain subjects and payment processor have the ability to close your account whenever they desire.
The, not so decentralized, Podcasting 2.0 way.
Using crypto sounds like a great solution to solve that problem. However I do not agree with the Podcasting 2.0 way of solving it. I'll describe their proposed solution, and the problems I see with it, before describing a much simpler solution that I have implemented in the app.
In order to add information to a podcast on where to send those crypto payments to, the Podcasting 2.0 movement proposed a <podcast:value>
tag for the podcast RSS feed.
While that may be the cleanest way of adding new information to an RSS feed, so far zero podcast hosting platforms have taken steps to allow their customers to add this tag, and the proposal has been out there for over a year already.
Obviously, the lack of interest from hosting platforms hinders adoption significantly, this is where the podcastindex.org service comes in to play. It’s a service set up by the Podcasting 2.0 team and is a giant, open, database of podcast feeds. Podcast creators can claim their feed through yet another service set up by the Podcasting 2.0 team, named: Podcaster Wallet.
Once you have claimed your podcast you can use podcasterwallet.com to attach the <podcast:value>
tag to it which Podcast Index will then serve to any (web)apps querying it.
What's wrong with it?
I think you will agree that this already starts sounding kind of complicated, especially for the average podcast creator who is just looking to monetize through crypto. Not to mention that the Podcast Index now becomes the central source of podcast feed information for all apps that want to add “Value for Value” functionality.
Once sign-up and ownership verification through the Podcaster Wallet website are finished, payment information can be added. When I tried this myself (back in August 2021) the only payment information one could possibly add was a BTC Lightning node pubkey. While the <podcast:value>
tag specification aims to be crypto currency agnostic, the entire site is completely geared towards using BTC Lightning. Even worse, the website suggests using 3rd party services to host a Lightning node for you. So much for the "no middle-men" in their original proposal. Once you set a Lightning node id the changes are reflected in the podcastindex.org database and any app/site using that index is able to retrieve the information.
Let's sum up the main issues so far:
No popular podcast hosting platform has support for the
<podcast:value>
element.Podcast creators have to sign up and claim their podcast on podcasterwallet.com so podcastindex.org can serve up that information to potential podcast players implementing it.
Podcasterwallet.com only supports adding BTC Lightning payment information.
Everything now becomes heavily centralized around podcastindex.org since there is no other way of obtaining the
<podcast:value>
information.
At face value the "Value for Value" idea sounds awesome but it's completely focused on BTC Lightning and implementing it in a podcast is needlessly complex. It wouldn't be such a big deal if BTC Lightning was a perfect fit, but it's far from it:
While it's possible to run your own BTC Lightning node, it's not something the average podcaster necessarily wants to get in to or even spend money on ($200+ for hardware alone that needs to run 24/7)
The main point of Value for Value was to cut out the middle-men and take advantage of the decentralized nature of crypto. Using a 3rd party BTC Lightning node goes completely against that narrative.
Setting the BTC Lightning node issue aside, there are many hoops the (not necessarily technically inclined) podcast creator has to jump through. Just getting familiar with using crypto is enough of a challenge already for most people.
Note that it’s not my intention to bash the Podcasting 2.0 team, I really do applaud their efforts to prevent podcasting from turning into a walled garden and drafting specs for new tags. I just think the execution of the Value 4 Value proposal has been done poorly, not keeping the decentralized nature of it in mind and underestimating the amount of complexity a podcast creator is willing to deal with when trying to monetize through crypto.
A simpler approach.
I believe simplicity is key when it comes to podcast creators adopting monetization through BCH. It should be easier/less time consuming than opening a PayPal account.
To make it work only two things are needed:
Bitcoin Cash enabled podcast player. (the app I'm working on)
A way to add a Bitcoin Cash address to the RSS feed so the player can automatically pick it up and enable tipping/donation functionality.
Every podcast author having published at least one episode will be familiar with how to edit the description of an episode. So in order for them to enable Bitcoin Cash tipping functionality all they need to do is add a Bitcoin Cash address in the description, on the very last line for example (but anywhere will do), and the app will automatically pick it up!
There is no need for the podcast creator to download the app, just a (generic) BCH wallet is required to generate the receiving address that goes in the description and they are set. Listeners not interested in BCH or supporting the podcast can just keep using whatever they currently are using and BCH enthusiast can start using the BCH enabled podcast player app.
The barrier to entry for podcast authors looking to monetize their podcast in a decentralized, permission-less way is very low using this method. They have nothing to lose by adopting this and can be used alongside existing methods. Adding a Bitcoin Cash address to an episode description takes nearly zero effort but opens up an entire new way of monetization.
App & technical details.
The app in its current state is a minimal but functional podcast player with BCH functionality (a hosted wallet).
There is a "Boost" button in the player that will be enabled if an address has been found in the current episode's description. It's a quick way to show your support for a certain episode and results in an on-chain transaction directly to the podcast creator's wallet.
Right now Boost functionality is limited but the plan is to add a timestamp and optional message as an OP_RETURN
output in the Boost transaction. The timestamp will indicate where in the episode the Boost occurred. The app will eventually contain a live view of Boosts for the episode you are currently listening to. It should be very entertaining watching the Boosts (and optional messages) come in.
Another interesting idea, as proposed by the Podcasting 2.0 movement, that I want to implement is the ability to voluntarily stream sats. to an episode. Basically this comes down to setting a rate of payment e.g. 1000 sats. per minute which the app will then send in 5 min intervals (to save on fees). So if you enable this and start listening to an episode it'll send 0.00005 BCH every 5 min. This could be a great way to support a podcast when you are driving for example or otherwise unable to access your device to press the Boost button.
How can you help?
The app will be ready for beta testing somewhere in January of 2022, if you want to be part of the beta team send me a message (on Reddit) or leave a comment here and I'll get back to you with instructions when it's ready.
If you own a podcast yourself or know a podcast creator looking to monetize through BCH, now would be a great time to get in touch so they can prepare their episode descriptions in advance. All that is needed is a Bitcoin Cash address somewhere in the description. If the description contains more than one address, the last one will be used.
Once you have added BCH addresses or convinced another podcast author to do so, send me the name of the Podcast so I can add it to the Suggested Podcasts section in the app.
[spam]