The pattern is always the same:

  1. Someone passionate creates a community
  2. Early members are deeply invested — high-quality discussions, strong norms
  3. Community grows, hits the front page / “all”
  4. New users flood in, post memes, low-effort content, drive-by hot takes
  5. Old-timers get drowned out
  6. Mods either burn out and quit, or become dictators ruling their own fiefdom

Reddit’s model accelerates this. Any subreddit that gets popular enough hits the All feed, and at that point the incentives shift from “quality contribution” to “what gets upvotes from the broadest audience.” The people who built the community lose control of it.

I’m working on a social platform and I’m trying to design communities that don’t go through this lifecycle. This is what I have in mind right now. A user’s voting power within a community is proportional to their tenure in that specific community. So if someone’s been there for 2 years, their vote counts more than someone who joined yesterday. No matter how many new users show up, they can’t swing the community away from the people who built it.

The weighting wouldn’t be dramatic, maybe a logarithmic curve where the first month gives you baseline power and it grows slowly over years. The goal isn’t to create an aristocracy, just to make sure the signal from committed members isn’t buried by a flash mob.

Implementation-wise I’m thinking:

  • Each community membership has a joined_at timestamp
  • When scoring a post within that community’s feed, each boost/vote is multiplied by log2(days_since_join + 1) / log2(30) — so 1 day = 0.05x, 30 days = 1x, 1 year = ~1.7x, 5 years = ~2.1x
  • The algorithm still surfaces new content to everyone, but the ranking is weighted toward longer-tenured members’ tastes
  • Also considering: a slow-boot period where new members’ posts are held for review by existing members (like a probation phase)

But I’m second-guessing myself. Some concerns:

  • Does this just create a gerontocracy where old members gatekeep forever?
  • How do you handle the first 30 days when no one has much weight?
  • Would this actually prevent the decay, or just slow it down?
  • Is there a simpler/better mechanism I’m missing?

Curious what other approaches people have seen work (or fail). Has anyone implemented tenure-weighted voting before?

Edit: I appreciate the suggestions. A few of them actually align with features I’ve already built:

  • Trust graph: The platform already uses directed trust edges, with vouching and inviter accountability (if an invitee misbehaves, the inviter is penalized). I can extend this model from the platform level down to individual communities.

  • Invite-only mode: I already have trust-based monthly invite limits for the whole platform, so adding the same option for communities seems like a natural extension.

  • Slow-boot / probation: This is already in place, new members’ posts are held for curator review before being published.

  • Different interaction types: The system already supports multiple interaction types (like, comment, share, gift, emoji). I’m not sure how to expand these into Slashdot-style categories (e.g. agree/disagree, insightful/funny, quality/shitpost, high/low effort, etc.), but it’s something I’d like to explore.

  • Moderation limits: I like Slashdot’s approach of limiting moderation to prevent burnout. I’m less certain whether meta-moderation would be a good fit here, but I’m open to considering it.

  • Ftumch@lemmy.today
    link
    fedilink
    arrow-up
    1
    ·
    57 minutes ago

    For example, an advice community could have a “good answer” vote. Each post in an “Am I the Asshole” community could have a “You’re the Asshole”/“You’re NOT the Asshole” vote. That sort of thing.