27
submitted 1 day ago* (last edited 22 hours ago) by CoderSupreme@programming.dev to c/programming@programming.dev

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.

you are viewing a single comment's thread
view the rest of the comments
[-] Ftumch@lemmy.today 5 points 22 hours ago

I think it might help to have different vote types. Instead of up and downvotes there could be things like agree/disagree, insightful, funny, quality shitpost, high/low effort post or things like that. That way people who want to see quality discussion could sort by insightful, while people looking for low effort shitposts or memes could sort by something else.

[-] staircase@programming.dev 3 points 19 hours ago* (last edited 19 hours ago)

The single vote approach is absolutely awful. Adding nuance is an improvement, but to be honest the whole idea of voting is insane. Imagine doing that to someone talking to you in person. It would be seriously weird at best.

Voting is a bad system and needs to be dug out from the roots and burned.

[-] Ftumch@lemmy.today 1 points 19 hours ago

I'd say it's similar to applauding or booing someone who's addressing a crowd.

[-] CoderSupreme@programming.dev 5 points 22 hours ago* (last edited 22 hours ago)

I think it might help to have different vote types. Instead of up and downvotes there could be things like agree/disagree, insightful, funny, quality shitpost, high/low effort post or things like that. That way people who want to see quality discussion could sort by insightful, while people looking for low effort shitposts or memes could sort by something else.

Slashdot moderation system, I like it, I'll see how it fits.

[-] Cricket@lemmy.zip 2 points 15 hours ago

My first thought when I read (skimmed) your post was Slashdot's moderation system. I feel that there were many really good ideas there that should be attempted again. Limited, random ability to vote, categories of votes (insightful, funny, etc.), meta-moderation (i.e., ask others to review someone else's votes). I think that those were all good ideas.

One other thing that Slashdot had that minimized the memes we see here: no images on posts.

[-] Ftumch@lemmy.today 2 points 18 hours ago

The comparison to tags got me thinking it might be cool if mods or posters could set custom tags/vote types per community or thread.

[-] CoderSupreme@programming.dev 2 points 18 hours ago* (last edited 18 hours ago)

I don't get it, could you expand on that? The idea I'm getting is something like "flairs" on Reddit that people vote on. Right now I'm thinking since all posts will probably be tagged thanks to booru-style collaborative curation, people could vote on the tags that are subjective to see which tags apply best to the post. Then we could sort based on some of the tags like the ones you mentioned.

[-] Ftumch@lemmy.today 2 points 18 hours 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.

[-] bitfucker@programming.dev 1 points 16 hours ago

That's more in line with what I was thinking, yeah. The rest is just hoping that people will not abuse the tag (which, with enough mass, the noise would probably be drowned out by genuine people anyway)

[-] bitfucker@programming.dev 3 points 20 hours ago

Implementation wise, I think it would be like tagging. See how many people tag the post as what

this post was submitted on 17 Jul 2026
27 points (93.5% liked)

Programming

27744 readers
357 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 3 years ago
MODERATORS