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.

  • queerlilhayseed@piefed.blahaj.zone
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    6 hours ago

    Instead of an infinite log curve of influence, you could have a probationary “reputation vesting” period. New users with no rep have certain limitations like limited posting or commenting rates, an indicator by their username indicating they’re new to the community, restrictions to certain “newbies allowed” spaces, etc. Once someone reaches the vesting cap, they are a full, regular member, equal to anyone else who has reached the cap.

    That prevents you from developing a gerontocracy / aristocracy where those with the highest tenure get the most weight, and still puts up a soft barrier to new members that hopefully attenuates the flood without completely discouraging new members from participating.

    I’m not sure offhand what the best design for the vesting period would be to accomplish your goals. You’d need a culture of accepting new members who want to meaningfully participate in the group as full and worthy members, and not alienate them from the fully-vested rest of the community, while still offering the community and mods ways to deal with unruly newbies.

    One idea I’ve been kicking around for community design is limiting the number of upvotes each member has per time period. My hypothesis is that it will make people stingier, but hopefully also more thoughtful, with their upvotes, so low-effort, easily consumed content like memes would be less likely to get huge amounts of upvotes compared to longer form / more complex / more thoughtful content. You could tie it to the date of account creation, or you could make upvotes expire for everyone at the end of the week or month, making a kind of artificial upvote party at the end of the period where people might be more relaxed with their upvotes. I think it’d be fun, but I’m not sure my idea of fun translates well to the broader internet community.

    You could also make it so that newbie votes show up differently than vested member votes, and the ratio of newbie:vested votes on a given post could be a useful indicator of who in the community thinks that post is worthy of attention. Highly-newbie-vote posts wouldn’t necessarily be bad, but I imagine they’d be more likely to be low effort compared to posts with a more balanced ratio.