Permanently Deleted (lemmy.world)
submitted 8 months ago* (last edited 8 months ago) by to c/memes@lemmy.world
 

Permanently Deleted

top 50 comments

sorted by: hot top controversial new old
[–] 218 points 8 months ago (77 children)

List of blocked words in community names:

shit
piss
fuck
cunt
cocksucker
motherfucker
tits
memes
piracy
196
greentext
usauthoritarianism
enoughmuskspam
political_weirdos
4chan

Seems like one of the PieFed devs has some opinions about the kind of content they dislike, and are unilaterally forcing that on every PieFed instance. I can somewhat understand filtering out curse words, but specific communities should not blocked by default, and definitely not hidden in a hardcoded list in the source code.

Edit: Important context here: https://lemmy.world/comment/21323475 Seems this blocklist is more limited in scope; it's not blocking federation entirely, just blocking (from what I can tell) their appearance in search and automatically federating with them when adding an instance. Still problematic to exclude specific communities in a non-configurable way with little justification IMO.

  • source
  • hideshow 77 child comments
  • [–] 130 points 8 months ago (12 children)

    Damn this should honestly be spread and talked about more. I don't think many people know this is a thing?

  • source
  • parent
  • hideshow 12 child comments
  • [–] 131 points 8 months ago (11 children)

    Considering PieFed users won’t shut the fuck up about how much better and less politically opinionated it is, yeah we should probably shout this from the rooftops.

    Reminds me of Brave browser users a bit

  • source
  • parent
  • hideshow 11 child comments
  • [–] 15 points 8 months ago* (8 children)

    One of PyFed's selling points was that it was easier to work with than Lemmy. It's going to be amusing when that takes a 180 turn and people start complaining.

    Python is great for prototyping and iterating on small projects or as glue for modules written in C and C++. What it isn't great at is linearly scaling on a single node. When the day that throwing more powerful hardware at the problem stops being an option, Kubernetes is going to walk through that door and fuck any semblance of simplicity up.

  • source
  • parent
  • hideshow 8 child comments
  • load more comments (7 replies)
  • [–] 11 points 8 months ago* (last edited 8 months ago)

    "Ours is not biased and less opinionated, because it agrees with my bias and opinions."

    This is every single Lemmy v PieFed argument. No matter what platform you host or use, its just this on the grand scale of things.

  • source
  • parent
  • load more comments (1 reply)
  • [–] 58 points 8 months ago* (12 children)

    They also put "memes" and "enoughmuskspam."

    The latter I guess could be used to stop Musk spam (since the community is literally nothing but Elon Musk news) but not allowing the word "memes" in a community name?

    Utterly stupid.

    But they do appear to be fans of Carlin based on the first 7 banned words.

    There's no racial slurs in there either. I might have assumed this was merely an example an operator is meant to edit themselves, but these are some weird ass choices for even that.

  • source
  • parent
  • hideshow 12 child comments
  • [–] 28 points 8 months ago (11 children)
  • load more comments (2 replies)
  • [–] 43 points 8 months ago (8 children)

    I'm not okay with them filtering profanity, who the fuck are they to define what is or is not acceptable?

  • source
  • parent
  • hideshow 8 child comments
  • load more comments (6 replies)
  • [–] 13 points 8 months ago (3 children)

    So if I started a piefed instance and wanted to host a 196 community I'd have to edit the list, but would every single other instance also have to or no?

  • source
  • parent
  • hideshow 3 child comments
  • load more comments (1 reply)
  • load more comments (23 replies)
    [–] 62 points 8 months ago

    Hardcoded blacklists are never a good idea.

    That shit belongs in a config file.

  • source
  • [–] 60 points 8 months ago (11 children)

    Jesus that's a lot of spaghetti code, and why are they hardcoding a bunch of terms? Is this just for a public facing site, or does every deployed instance effectively filter these out?

  • source
  • hideshow 11 child comments
  • [–] [S] 77 points 8 months ago* (last edited 8 months ago) (8 children)

    It's hardcoded in the PieFed source code, so every instance does this by default unless you patch it like I did.

    The combined swearwords + excluded communities list seems to appear at least 3 times in the codebase (not referenced, copied verbatim).

    Let's just say that it wouldn't pass my code review if I saw this at work

    EDIT: It has been removed from 2/3 places in the codebase.

  • source
  • parent
  • hideshow 8 child comments
  • load more comments (3 replies)
  • [–] 12 points 8 months ago (1 child)

    Yeah. The list should be in the site config. Go ahead and include those as defaults to block, but allow sites to override that.

    OP, are you saying that the federation is blocked on the OUTGOING side? Because then that just seems bass ackwards.

  • source
  • parent
  • hideshow 1 child comment
  • [–] [S] 9 points 8 months ago

    No, it's incoming. When you first set up an instance you have to kickstart the federation process by adding communities to federate. The linked code excludes those specified communities from that. Once federated, they won't be blocked AFAIK.

  • source
  • parent
  • [–] 56 points 8 months ago* (10 children)

    What, why 196? Actually why any of these? I get 4chan and greentext sort of(?) but even ignoring the terrible programming practices here, this is really stupid.

    Edit: actually almost makes me regret switching to Piefed

  • source
  • hideshow 10 child comments
  • [–] 25 points 8 months ago (5 children)

    They just removed it from the list 15 minutes ago

  • source
  • parent
  • hideshow 5 child comments
  • [–] 31 points 8 months ago (3 children)

    Ah, that's good to hear. I'm still sketched out by the hardcoded blacklist of terms though. I'm very much a person against the sort of free speech that hinders other's freedom to live without discrimination but the filter still seems so arbitrary and entirely the response to the dev's own vandettas and that just gives me bad vibes.

    On top of that, hardcoding English language terms to block is bad programming on a number of levels. Why isn't it a configurable list? The hardcoded values don't contain any other language variants so you can still have those communities if you speak something other than English (or just add an extra couple characters or anything really)

  • source
  • parent
  • hideshow 3 child comments
  • load more comments (3 replies)
  • load more comments (1 reply)
  • load more comments (4 replies)
    [–] 48 points 8 months ago

    Sir a second hardcoded blacklist hit the fediverse

  • source
  • [–] 39 points 8 months ago

    Never meet your heroes

    Never read the code of a project you respect

    That is some nasty code.

  • source
  • [–] 31 points 8 months ago* (last edited 8 months ago) (12 children)

    If you dont like it, fork it. Stop bothering us about it

    -devs of PieFed

    Oh wait no, that's the devs of Lemmy when asked the same request. (edit: 'asking' to 'asked')

    Hopefully Rimu will be more accommodating when you ask him? (codeberg issue creation prefered)

    It might be time to move this away from a hard-coded list now, if the expectations that someone installing an instance is going to read through the code is lower now than previously.

  • source
  • hideshow 12 child comments
  • [–] 9 points 8 months ago (1 child)

    What a shit show of a discussion on that issue… Not only is hard coding bad design in general[^1], but doing so for constantly evolving and highly context dependent word list is even worse. Reading the discussion I see their decision as extremely short sighted and arrogant if not just stupid.


    [^1]: Having hard coded configurations has it's uses, but it's a strong red flag that might complicate maintenance down the road, and should be used with caution.

  • source
  • parent
  • hideshow 1 child comment
  • load more comments (1 reply)
  • load more comments (10 replies)
    [–] 27 points 8 months ago (2 children)

    Dear God, that code! Why is it all in one file? The more I read it the worse it becomes!

  • source
  • hideshow 2 child comments
  • [–] 26 points 8 months ago* (last edited 8 months ago) (4 children)

    The code that OP has linked to is part of a convenience function for admins to add content to their new instances. It can query individual remote instances (e.g. lemmy.world), or it can query lemmyverse.net, and fetch communities that look to be popular and active.

    It's completely unrelated to routine federation, and doesn't prevent anyone subscribing to communities that may have those words in their names.

    The admin function could potentially be used to fetch hundreds of communities. It runs as a background process, so you don't know what they were until after they'd been followed. The "bad words" list acts as a safeguard against bringing in things you might not want or expect. One reason is that you may want to curate the first impression you give new visitors, as there as some that will be put off by the "fuck this" and "shitpost that" reddit-isms. Another is that you don't typically want communities that are disproportionately popular than others (e.g. if you bring in the default 25 communities, and one of is 196, then it completely dominate your front page).

    If there's a particular community that you are interested in (e.g. because you moderate it), using this function isn't an efficient way to add it. In addition to the "bad words" filters, it will also exclude communities that are NSFW, or below thresholds for popularity and activity. Rather than fetching a bunch of communities at the same time, and hoping that the one you want is included, it's better to just add it manually (via a ! link or by using the "Add remote community" link) in much the same way as you would on any other platform.

  • source
  • hideshow 4 child comments
  • load more comments (4 replies)
    [–] 22 points 8 months ago* (4 children)
  • [–] 9 points 8 months ago*

    this is also a capability in a nextcloud app so an admin can more easily replicate a users bug report and see for themselves what's going wrong. that said i struggle to see how you could implement that in such a way as to avoid abuse, but isn't that true of any admin powers? this isn't encrypted cloud storage, it's a public forum. i'd imagine the process is at the very least heavily logged so other admins and maybe even federates to other instance admins or even mods too so impersonation actions are clearly visible as such. but i don't know enough about code to read thru and see if it does in either app.

  • source
  • parent
  • [–] 22 points 8 months ago

    Huh, so thats why i havent seen greentexts in quite some time.

  • source
  • [–] 15 points 8 months ago (4 children)

    Side note: lmfao wtf is this Mickey Mouse block-quote-but-not-really bullshit?

  • source
  • hideshow 4 child comments
  • load more comments (4 replies)
    [–] 13 points 8 months ago (6 children)

    That's interesting. I understand not wanting to fed some of those communities.

  • source
  • hideshow 6 child comments
  • [–] [S] 19 points 8 months ago (5 children)

    I definitely understand wanting to filter out obscenities, but I think the filtered communities should be a seperate configurable list.

  • source
  • parent
  • hideshow 5 child comments
  • load more comments (3 replies)
  • [–] 10 points 8 months ago

    goddamn, asshole, peepee, and poopoo are missing.

  • source
  • load more comments
    view more: next ›