Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unlimited history for pro users #349

Open
5 tasks
stefankoegl opened this issue Feb 2, 2020 · 2 comments
Open
5 tasks

Unlimited history for pro users #349

stefankoegl opened this issue Feb 2, 2020 · 2 comments

Comments

@stefankoegl
Copy link
Member

In Slack a distinction between pro / sponsoring users and regular users was recently discussed.

Currently some history tables are very large (see #270), which is causing load on our limited resources. If we were to introduce some sponsoring (eg through Patreon), we would be able to provide

  • limited history (eg 1-2 years) to regular users
  • unlimited history to pro users

This would involve (at least) the following steps

  • decision on supported sponsoring mechanisms (PayPal, GitHub Sponsors, Patreon)
  • a way of exporting affected data for those that want to keep it locally but are unable to sponsor
  • announcement with sufficient lead time
  • some way of connecting the sponsorship with a gpodder.net user
  • a background job that removes old historic data for regular users

Any ideas, suggestions, comments?

@SiqingYu SiqingYu pinned this issue Feb 3, 2020
@SiqingYu
Copy link
Contributor

SiqingYu commented Feb 3, 2020

IMHO normal users don't care about episode history. It also seems AntennaPod doesn't have history integration with gpodder.net.

I think this could be a feature in a pro bundle. But the whole pro/premium plan needs more powerful features. If gpodder.net is moving towards commercialization and stable business, it needs to provide stronger incentives for users to become pros.

Instead of limiting usage to our existing users, as it always attracts backlash from users, developing a feature (e.g., web player) only available to new premium/pro users is a better strategy.
Here are the business models from other podcast products AFAIK:

  • Pocket Casts: One-time payment for life-time app use.
  • Stitcher: Premium podcast content.
  • Castbox: No ads; unlimited subscriptions.

Commercial FLOSS https://newsblur.com/ is also a great example. But these models don't necessarily apply to gpodder.net.

We may also need to draw discussions from the community members from gpodder.org and AntennaPod concerning this significant step.

@ByteHamster
Copy link
Contributor

I am currently rewriting the sync functionality in AntennaPod. Mainly to fix #243 but also to extract some interfaces and add the theoretical possibility to add more sync services (I have no plans to actually do that, though).

It also seems AntennaPod doesn't have history integration with gpodder.net.

AntennaPod uses the episode history to synchronize played state and position. We do not display the history explicitly. If I understood the code correctly, we are basically only interested in the most recent action for each episode. After requesting all actions since the last sync, we currently filter the history on our end to only contain one event per episode. Limiting the age of history entries could break synchronization. Limiting the number of events per episode would work totally fine.

Currently some history tables are very large

In order to implement AntennaPod/AntennaPod#2746 (in AntennaPod/AntennaPod#3970), on first sync, I plan to upload a history entry for each played episode. AntennaPod does not have analytics but my personal database has around 900 played episodes (3 years of app usage). When uploading all at once, I got timeout errors. So I now upload in batches of 30 items, which works fine. Is this a problem for your servers and database? Do you have better suggestions?


Off-topic but I do not think this is worth a new issue: Is it okay to include the gpodder icon in AntennaPod or is there a copyright?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants