26
1
submitted 4 months ago* (last edited 4 months ago) by cybersage@piefed.social to c/piefed_meta@piefed.social

As a community grows in popularity, it often shifts from hosting insightful discussions to attracting memes, funny, and low-quality content. This change appeals to a larger audience interested in such content, creating a vicious cycle where valuable discussions are overshadowed and marginalized by the platform's primary demographic.

It's the pendulum swing of pretty much every community on Reddit.

  • Community starts out with a small group of users dedicated to quality content related to the topic
  • Community growth reaches a point where the most popular posts begin to trend outside of the community
  • New users join the community after seeing popular posts show up in their own feeds. Growth accelerates
  • Community becomes "popular" enough that posts regularly trend outside of the community
  • New users flood in
  • Users flood the community with low-effort content to karma farm
  • Community now sucks.

It happened to basically every big sub on Reddit once reaching a large enough size.

https://lemm.ee/comment/552579

As the platform grows, it becomes increasingly important to have a system that differentiates between different types of content, such as insightful discussions and humorous posts. Without such a system, there is a risk that the platform could become dominated by low-quality content and memes, burying meaningful discussions and discouraging participation from users seeking more substantive interactions.

To address this concern, I propose implementing a nuanced voting system inspired by Slashdot's approach

this was something I loved about slashdot moderation. When voting, people had to specify the reason for the vote. +1 funny, +1 insightful, +1 informative, -1 troll, -1 misleading, etc.

That way you can, for example, set in your user preferences to ignore positive votes for comedy, and put extra value on informative votes.

Then, to keep people from spamming up/down votes and to encourage them to think about their choices, they only gave out a limited number of moderation points to readers. So you’d have to choose which comments to spend your 5 points on.

Then finally, they had ‘meta moderation’ where you’d be shown a comment, and asked “would a vote of insightful be appropriate for this comment” to catch people who down-voted out of disagreement or personal vandetta. Any users who regularly mis-voted would stop receiving the ability to vote.

I don’t think this is directly applicable to a federated system, but I do think it’s one of the best-thought-out voting systems ever created for a discussion board.

edit: a couple other points i liked about it:

Comments were capped at (iirc) +5 and -1. Further votes wouldn’t change the comment’s score.

User karma wasn’t shown. The user page would just say Karma: good. Or Excellent, or poor, or some other vague term.

https://beehaw.org/comment/208569

Normal, Offtopic, Flamebait, Troll, Redundant, Insightful, Interesting, Informative, Funny, Overrated, Underrated

Slashdot had this covered years ago, literally decades.

  1. Upvotes limited to +5.
  2. Votes categorized: funny, informative, insightful, etc.
  3. Number of votes limited per time frame and user karma.
  4. Meta-moderation: your votes (up/down both) were subject to voting (correct/incorrect). good score == more upvotes to spend.

It's a pity that Reddit and other sites didn't follow this model.

https://discuss.online/comment/65643

I'm thinking this seems pretty similar to post tagging. Perhaps both could be implemented with the same feature? Post tagging usually needs to be objective but that's indicated in the guidelines, perhaps there could be some subjective tags users could vote to sort the posts based on those tags.

Wikipedia — Slashdot Peer Moderation

27
2
submitted 4 months ago* (last edited 4 months ago) by The_Lemmington_Post@discuss.online to c/piefed_meta@piefed.social

I'm excited to see the new meme browsing interface feature in PieFed. I expected PieFed to be yet another Reddit clone using a different software stack and without any innovation. I believe there's an opportunity to take things a step further by blending the best elements of platforms like Reddit and image boards like Safebooru.

I wish there was a platform that was a mix between Reddit and image boards like Safebooru. The problem I have with Reddit is the time-consuming process of posting content; I should be able to post something in a few seconds, but often finding the right community takes longer than actually posting, and you have to decide whether to post in every relevant community or just the one that fits best. In the case of Lemmy, the existence of multiple similar communities across different instances makes this issue even worse.

I like how image boards like Safebooru offer a streamlined posting experience, allowing users to share content within seconds. The real strength of these platforms lies in their curation and filtering capabilities. Users can post and curate content, and others can contribute to the curation process by adding or modifying tags. Leaderboards showcasing top taggers, posters, and commenters promote active participation and foster a sense of community. Thanks to the comprehensive tagging system, finding previously viewed content becomes a breeze, unlike the challenges often faced on Reddit and Lemmy. Users can easily filter out unwanted content by hiding specific tags, something that would require blocking entire communities on platforms like Lemmy.

However, image boards also have their limitations. What I don't like about image boards is that they are primarily suited for image-based content and often lack robust text discussion capabilities or threaded comments, which are essential for fostering meaningful conversations.

Ideally, I envision a platform that combines the best of both worlds: the streamlined posting experience of image boards with the robust text discussion capabilities of platforms like Reddit and Lemmy.

I would be thrilled to contribute to a platform that considered some of the following features:

I would also like to see more community-driven development, asking users for feedback periodically in a post, and publicly stating what features devs will be working on. Code repositories issue trackers have some limitations. A threaded tree-like comment system is better for discussions, and having upvotes/downvotes helps surface the best ideas. I propose using a lemmy community as the issue tracker instead.

28
1

Discord is a very popular chat application which has a business model that is partly based around the concept of Server Boosts. In this model, people "boost" (sponsor) the "servers" (chat rooms) they are part of. They do so by paying Discord the parent company, but it unlocks benefits for both the chat rooms they are a member of and want to support (enabling more features for all users of the chat room) and for themselves (they get more features as well as labels that show they support a particular room). Discord is targeted at gamers and therefore Server Boosts are heavily gamified and commercialized, however the core is clever and based around solidarity for the common space that people create, and something other projects could draw inspiration from. Having a way in which people can materially support the communities they are part of can possibly be a path to financial sustainability either for pyfedi the project or for individual instances.

Imagine that an instance can set up an Open Collective / Patreon / Liberapay to receive donations ( a practice which is already relatively common for Mastodon instances). Individual users of a pyfedi instance can support the instance or community with financial contributions and then connect their profile (using oauth) to Open Collective / Patreon / Liberapay to establish a link. Instance admins or community admins can then configure their instance or community to translate those contributions in to particular perks. For instance a label that shows the supporter level on the profile or something that enables more features (character limit? creating communities? posting to exclusive communities? unique emoji? ability to bookmark posts? immedately get rid of "new user" status? allow profile verification like mastodon?).

The model is nested: if a community receives multiple contributions the community management interface could show that and say "hey, pay some of it forward to your hosting instance". Similarly, the hosting instance would have an interface that says "hey this instance is sponsored by x amount, pay some of it forward to the project".

Pyfedi already has a relatively flexible model for "roles" which could be tied to community membership. Similarly, it already works with a gradual permissions system which would make this a good fit. At the same time, this is not only a model towards financial sustainability, but some long-running platforms use paid membership as a way to keep low-quality contributions at bay. See for instance MetaFilter's one time fee.

The crucial thing here is that communities or the software do become proprietary / exclusive necessarily, but that it provides a flexible model to support the work at various levels. It can also be designed in such a way that it is not a "freemium" model, where "advanced" but necessary functionality is pay-walled. Instead, it could be done in such a way that all the necessary features are available, but that additional features that allow the creation of a community identity are unlocked through material support for the project.

29
1
submitted 5 months ago* (last edited 5 months ago) by rimu@piefed.social to c/piefed_meta@piefed.social

Not sure if you noticed but half the threadverse is memes. They're not my thing but I enjoyed putting together the best meme consumption experience I could.

Check it out in this video or go to https://piefed.social/topic/chilling/memes?layout=masonry_wide&sort=hot to use it yourself. Click/tap on any image for a full screen lightbox-style image gallery that you can move through by swiping or using the arrow keys.

Can you think of any improvements?

30
2

By default, all posts show up in search results on #PieFed, #Lemmy and #Kbin. But in a first for the threadverse, PieFed has just added some privacy features that Mastodon had for a long time – being searchable is now optional!

Un-tick the “My posts appear in search results” checkbox in your settings and not only will your posts be hidden from the PieFed search on your instance, but on all other PieFed instances too (yes, it federates, but only to PieFed instances).

But wait, there’s more. Google will not add your profile or any of your posts to it’s index (because of the <meta name=”robots” content=”noindex”> tag used when rendering your posts) AND comments you made on other people’s posts won’t be indexed by Google either (because of the

So if you’re tired of living in a fishbowl, want a bit of privacy or would rather people can’t follow you around, PieFed is here for you.

31
1
submitted 5 months ago* (last edited 5 months ago) by rimu@piefed.social to c/piefed_meta@piefed.social

Or both?

32
1

PieFed seems to be the only fedi software that allows you to automatically receive notifications on a post when you comment on it (which i love!) so I'm wondering if this was something custom you built since no one else has been able to ship this.

33
1

Good luck with the project!

34
2
submitted 5 months ago* (last edited 5 months ago) by freamon@endlesstalk.org to c/piefed_meta@piefed.social

This is probably just me, but I found INSTALL.md to be a bit confusing.

So, for a fresh install of Ubuntu in a Windows Hyper-V VM, this is the list of steps I took to get something that at least looks like it might be the right thing:

remove unattended-upgrades, and clean up after OS install

sudo systemctl stop unattended-upgrades
sudo apt-get purge unattended-upgrades
sudo apt autoremove

install postgresql 16

sudo apt install ca-certificates pkg-config
wget --quiet -O - [https://www.postgresql.org/media/keys/ACCC4CF8.asc](https://www.postgresql.org/media/keys/ACCC4CF8.asc) | sudo apt-key add -
sudo sh -c 'echo "deb [http://apt.postgresql.org/pub/repos/apt/](http://apt.postgresql.org/pub/repos/apt/) $(lsb_release -cs)-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
sudo apt update
sudo apt install libpq-dev postgresql

install python libs

sudo apt install python3-pip python3-venv python3-dev python3-psycopg2

install redis server

sudo apt install redis-server

install git

sudo apt install git

set up database

sudo -iu postgres psql -c "CREATE USER pyfedi WITH PASSWORD 'pyfedi';"
sudo -iu postgres psql -c "CREATE DATABASE pyfedi WITH OWNER pyfedi;"

clone PieFed

git clone [https://codeberg.org/rimu/pyfedi.git](https://codeberg.org/rimu/pyfedi.git)

cd into pyfedi, set up and enter virtual environment

cd pyfedi
python3 -m venv ./venv
source venv/bin/activate

use pip to install requirements

pip install wheel
pip install -r requirements.txt

edit .env file

cp env.sample .env
nano .env
(change SECRET_KEY to some random sequence of numbers and letters)

initialise database, and set up admin account

flask init-db

run the app

flask run
(open web browser at http://127.0.0.1:5000))
(log in with username and password from admin account)

Maybe this will help someone else (or maybe someone has spotted something that I missed - like I say: it looks right when loaded in a browser, but I'm not 100% sure)

35
2
submitted 5 months ago* (last edited 5 months ago) by rimu@piefed.social to c/piefed_meta@piefed.social

Look for the wee magnifying glass on the main menu. For logged-in users only.

36
1
Now you can create audio posts (ia601202.us.archive.org)
submitted 5 months ago* (last edited 5 months ago) by rimu@piefed.social to c/piefed_meta@piefed.social

When you make a normal 'link' post, if the url ends with .mp3 then PieFed will provide audio player controls on the page and put a little speaker icon on the post teaser, shown in lists of posts.

Go to https://piefed.social/post/44964 to see it in action.

37
1
All about email (piefed.social)

The last week has been all about email.

With the addition of the private message ( kinda -private message...) feature the previous week it became more important that recipients are aware they have an unread notification waiting for their attention. Without an email telling them about it they might not see the message for days or whenever they next log in.

So now there's an automated email that goes out to people with unread notifications. The logic of it all took a while to get right - the system needs to track when someone last used PieFed, keep track of whether an email has already been sent for a notification, handle bounces, stop sending after a few bounces, etc. Also getting AWS SES set up right and SPF/DKIM/DMARC was quite a rabbit hole but one I'm very familiar with so it was pretty smooth sailing.

If you'd rather not receive those notification emails, click the unsubscribe link in the bottom of one of them or go to https://piefed.social/user/settings and untick the second checkbox. There's a checkbox for email newsletters too, which is a different thing.

Instance admins now have an email newsletter function which will email everyone. I'll probably use that once a month or so to give a summary of new features, news, etc.

Many people's email inboxes are overflowing or ignored so I'll be looking at adding push notifications pretty soon. As part of this PieFed will need to have a service worker, which will make it into a PWA.

38
2
submitted 5 months ago* (last edited 5 months ago) by rimu@piefed.social to c/piefed_meta@piefed.social

PieFed can now send messages to other people on the same instance as well as people on Lemmy instances.

In this screenshot there is only one conversation shown in the left-hand panel but if I had chatted with more people they would all be shown in a list on the left. Clicking on a person will show our conversation on the right. Things I've said are left aligned while comments from the other party are shown right aligned. This layout should be familiar to anyone who has used messenger.com or similar apps.

To send a message to someone new, go to their profile and click the 'Send message' button. Read replies at https://piefed.social/chat (Account -> Chats). You'll get a notification when someone replies.

If your account is less than a week old or if you've been downvoted a lot you won't be able to message anyone.

I've built it in such a way that it'll be easy to add group chat functionality later, where several people can be in a conversation at once. This will be useful for moderators.

39
2
submitted 6 months ago* (last edited 6 months ago) by rimu@piefed.social to c/piefed_meta@piefed.social

NSFW should federate but no other threadverse platform supports NSFL so I doubt you'll see many of those. On other platforms they use nsfw for anything objectionable, including gore, intense war footage, gross medical conditions, etc whereas on PieFed we have the option of making a distinction.

(Posts from other instances that have "NSFL" in the title have their nsfl flag set automatically, so that's better than nothing)

At https://piefed.social/user/settings you can choose whether posts flagged as nsfw/nsfl show up in your feed. Communities dedicated to nsfw posts are not allowed on piefed.social but occasional nsfw posts can appear in any community depending on the rules there.

I'm probably going to add a more flexible mastodon-style Content Warning option pretty soon. However it's a similar situation to the nsfl icon - no other threadverse platforms would show it.

40
1
submitted 6 months ago* (last edited 6 months ago) by kierunkowy74@piefed.social to c/piefed_meta@piefed.social

Both kbin.social and lemmy.ml are out of order as for now. (At least there are other ones)

Also, this is my first post on Piefed, hi!

Edit: lemmy.ml now works again :)

Edit 2: Now both instances are working :)

41
1

cross-posted from: https://discuss.online/post/4986083

As of today, PieFed includes a ‘theme engine’ which makes it easier for people with low or no Python skills to change how PieFed looks and behaves.

PieFed is a lemmy/kbin clone written in Python with Flask.

42
1
43
1
submitted 6 months ago* (last edited 6 months ago) by cabbage@piefed.social to c/piefed_meta@piefed.social

Hi,

The CSAM scandal the other day got me thinking about the (often lacking) capability of the Threadiverse to deal with quickly with content moderation, and since PieFed has already been a bit experimental in this regard, I figured maybe this is a place where I could ask if an idea is feasible. Sorry if it's a bad match!

The idea is to identify trusted users, in the same way that PieFed currently identifies potentially problematic users. Long term users with significantly more upvotes than downvotes. These trusted users could get an additional option to report a post, beyond "Report to moderator": Something like "Mark as abuse".

The user would be informed that this is meant for content that clearly goes against the rules of the server, that any other type of issue should be reported to moderators, and that abuse of the function leads to revoke of privilege to use it and, if intentional, potentially a ban.

If the user accepts this and marks a post as abuse, every post by the OP of the marked post would be temporarily hidden on the instance and marked for review by a moderator. The moderator can then choose to either 1) ban the user posting abusive material, or 2) make the posts visible again, and remove the "trusted" flag of the reporting user and hence avoiding similar false positives in the future.

A problem I keep seeing on the threadiverse is that bad content tends to remain available too long, as many smaller instances means that the moderating team might simply all be asleep. So this seems like one possible way of mitigating that. Maybe it's not technically feasible, and maybe it's just not a particularly good idea; it might also not be a particularly original idea, I don't know. But I figured it might be worth discussing.

44
2
submitted 6 months ago* (last edited 6 months ago) by rimu@piefed.social to c/piefed_meta@piefed.social

In grey text on each post is the domain name of the content being linked to. Clicking on that takes you to a list of all posts that link to that domain, such as this one: https://piefed.social/d/3909

In the right hand column there is a "Block" button which will stop posts linking to that domain from being shown to you.

Instance admins have an additional button, "Ban instance-wide", which stops posts at the federation level - no posts linking to that domain will be accepted from remote instances. It also removes all existing posts that link there - great for cleaning up spam floods.

45
2
submitted 6 months ago* (last edited 6 months ago) by rimu@piefed.social to c/piefed_meta@piefed.social

One of the issues with joining the threadverse is that until you subscribe/join some communities, the Home feed is either very sparse (because they couldn't find the right communities) or flooded with random garbage (same reason I guess).

I'm trying a few things to help fix this.

  1. I'm subscribing myself to every popular community I can find so this instance already knows about it and has content in it, making it easier for others to find.
  2. Communities are grouped into a shorter list of topics. Viewing a topic shows posts from all communities in that topic, and a list of child communities in the right hand column. The viewer can drill down into a community to see a more focused subset of posts.
  3. After registering a new account, new users are taken to https://piefed.social/choose_topics where they can choose some topics that look interesting. Upon clicking 'Choose', they automatically join every community in those topics. For example if they chose 'technology' they'll be subscribed to about 25 communities. If they chose a few other topics too then they could potentially find themselves part of 100 communities right after registration.

It's a good start. Eventually I'd like to incorporate something like https://lemmyverse.net/communities which knows about every community there is, without needing someone to manually add it and manually assign it a topic. Some day.

46
1

In PieFed, communities are grouped under topics . Some of these topics are becoming quite big already (e.g. Technology and could perhaps be split up while there are probably very important topics that escaped my attention.

If you'd like a new topic, please suggest it in the comments below. There needs to be at least 3 reasonably active communities (active enough to have had a post in the last week) that can be put into the topic, to make it worth it.

47
2

Wondering if the roadmap for PieFed includes being able to use Lemmy mobile clients like Boost and Liftoff?
Its running ok as a web app in Android atm.

48
1

There are quite a few communities that are entirely image posts so presenting them as a vertical list of thumbnails doesn't really make the best of what is there.

To improve on that I've made use of the common web design pattern called 'masonry', where the images are arraigned like bricks in a wall. Check it out:

https://piefed.social/c/aww@lemmy.world

https://piefed.social/c/artporn@lemm.ee (wide tile - best on large monitors)

On each tile there is the title of the post at the bottom which can be clicked on to view the post and it's comments. This footer could be improved with voting buttons and perhaps the number of comments, in future.

This doesn't work as well for meme communities as memes often contain a lot of text, which gets squished. Perhaps there needs to be a 2 or 3 column version with larger thumbnails.

49
1

I've recently added keyboard shortcuts for common actions. I find it much quicker to vote by using the A or Z keys! Also using X to see an image is very useful.

For now this works for posts but not comments. The HTML structure of comments is more complicated so I'll need to write different code for navigating those.

50
1

I've just added a new section in the sidebar, the right-hand column. It's titled 'Rational Discourse Toolkit' and shows a random selection of links to resources that are intended to encourage mindful and informed discussions rooted in awareness, critical thinking, and the well-being of the community.

You can see a complete list of all the links at https://codeberg.org/rimu/pyfedi/src/branch/main/app/inoculation.py

These links are drawn from my history and research which is limited by my experience and interests. Any suggestions you have for additional or better links and resources will be much appreciated, just put them in the comments below!

view more: ‹ prev next ›

PieFed Meta

170 readers
16 users here now

Discuss PieFed project direction, provide feedback, ask questions, suggest improvements, and engage in conversations related to the platform organization, policies, features, and community dynamics.

Wiki

founded 7 months ago
MODERATORS