Hey fellow users of the Fediverse, instance admins and platform developers. I’d like to see better means of handling adult content on the Fediverse. I’d like to spread a bit of awareness and request your opinions and comments.

Summary: A more nuanced concept is a necessary step towards creating a more inclusive and empowering space for adolescents while also catering to adult content. I suggest extending the platforms with additional tools for instance admins, content-labels and user roles. Further taking into account the way the Fediverse is designed, different jurisdictions and shifting the responsibility to the correct people. The concept of content-labels can also aid moderation in general.

The motivation:

We are currently disadvantaging adolescents and making life hard for instance admins. My main points:

  1. Our platforms shouldn’t only cater to adults. I don’t want to delve down into providing a kids-safe space, because that’s different use-case and a complex task. But there’s quite some space in-between. Young people also need places on the internet where they can connect, try themselves and slowly grow and approach the adult world. I think we should be inclusive and empower the age-group - lets say of 14-17 yo people. Currently we don’t care. And I’d like that to change. It’d also help people who are parents, teachers and youth organizations.

  2. But the platform should also cater to adults. I’d like to be able to discuss adult topics. Since everything is mixed together… For example if I were to share my experience on adult stuff, it’d make me uncomfortable if I knew kids are probably reading that. That restricts me in what I can do here.

  3. Requirements by legislation: Numerous states and countries are exploring age verification requirements for the internet. Or it’s already mandatory but can’t be achieved with our current design.

  4. Big platforms and porn sites have means to circumvent that. Money and lawyers. It’s considerably more difficult for our admins. I’m pretty sure they’d prosecute me at some point if I’d try to do the same. I don’t see how I could legally run my own instance at all without overly restricting it with the current tools I have available.

Some laws and proposals

Why the Fediverse?

The Fediverse strives to be a nice space. A better place than just a copy of the established platforms including their issues. We should and can do better. We generally care for people and want to be inclusive. We should include adolecents and empower/support them, too.

I’d argue it’s easy to do. The Fediverse provides some unique advantages. And currently the alternative is to lock down an instance, overblock and rigorously defederate. Which isn’t great.

How?

There are a few design parameters:

  1. We don’t want to restrict other users’ use-cases in the process.
  2. The Fediverse connects people across very different jurisdictions. There is no one-size-fits-all solution.
  3. We can’t tackle an impossibly big task. But that shouldn’t keep up from doing anything. My suggestion is to not go for a perfect solution and fail in the process. But to implement something that is considerably better than the current situation. It doesn’t need to be perfect and water-tight to be a big step in the right direction and be of some good benefit for all users.

With that in mind, my proposal is to extend the platforms to provide additional tools to the individual instance admins.

Due to (1) not restricting users, the default instance setting should be to allow all content. The status quo is unchanged, we only offer optional means to the instance admins to tie down the place if they deem appropriate. And this is a federated platform. We can have instances that cater to adults and some that also cater to young people in parallel. This would extend the Fediverse, not make it smaller.

Because of (2) the different jurisdictions, the responsibility has to be with the individual instance admins. They have to comply with their legislation, they know what is allowed and they probably also know what kind of users they like to target with their instance. So we just give a configurable solution to them without assuming or enforcing too much.

Age-verification is hard. Practically impossible. The responsibility for that has to be delegated and handled on an instance level. We should stick to attaching roles to users and have the individual instance deal with it, come up with a way how people attain these roles. Some suggestions: Pull the role “adult” from OAuth/LDAP. Give the role to all logged-in users. Have admins and moderators assign the roles.

The current solution for example implemented by LemmyNSFW is to preface the website with a popup “Are you 18?.. Yes/No”. I’d argue this is a joke and entirely ineffective. We can skip a workaround like that, as it doesn’t comply with what is mandated in lots of countries. We’re exactly as well off with or without that popup in my country. And it’s redundant. We already have NSFW on the level of individual posts. And we can do better anyways. (Also: “NSFW” and “adult content” aren’t the same thing.)

I think the current situation with LemmyNSFW, which is blocked by most big instances, showcases the current tools don’t work properly. The situation as is leads to defederation.

Filtering and block-listing only works if people put in the effort and tag all the content. It’s probably wishful thinking that this becomes the standard and happens to a level that is satisfactory. We probably also need allow-listing to compensate for that. Allow-list certain instances and communities that are known to only contain appropriate content. And also differentiate between communities that do a good job and are reliably providing content labels. Allow-listing would switch the filtering around and allow authorized (adult) users to bypass the list. There is an option to extend upon this at a later point to approach something like a safe space in certain scenarios. Whether this is for kids or adults who like safe-spaces.

Technical implementation:

  • Attach roles to user accounts so they can later be matched to content labels. (ActivityPub actors)
  • Attach labeling to individual messages. (ActivityPub objects)

This isn’t necessarily a 1:1 relation. A simple “18+” category and a matching flag for the user account would be better than nothing. But legislation varies on what’s appropriate. Ultimately I’d like to see more nuanced content categories and have the instance match which user group can access which content. A set of labels for content would also be useful for other moderation purposes. Currently we’re just able to delete content or leave it there. But the same concept can also flag “fake-news” and “conspiracy theories” or “trolling” and make the user decide if they want to have that displayed to them. Currently this is up to the moderators, and they’re just given 2 choices.

For the specific categories we can have a look at existing legislation. Some examples might include: “nudity”, “pornography”, “gambling”, “extremism”, “drugs”, “self-harm”, “hate”, “gore”, “malware/phishing”. I’d like to refrain from vague categories such as “offensive language”. That just leads to further complications when applying it. Categories should be somewhat uncontroversial, comprehensible to the average moderator and cross some threshold appropriate to this task.

These categories need to be a well-defined set to be useful. And the admins need a tool to map them to user roles (age groups). I’d go ahead and also allow the users to filter out categories on top, in case they don’t like hate, trolling and such, they can choose to filter it out. And moderators also get another tool in addition to the ban hammer for more nuanced content moderation.

  • Instance settings should include: Show all content, (Blur/spoiler content,) Restrict content for non-logged-in users. Hide content entirely from the instance. And the user-group <-> content-flag mappings.

  • Add the handling of user-groups and the mapping to content-labels to the admin interface.

  • Add the content-labels to the UI so the users can flag their content.

  • Add the content-labels to the moderation tools

  • Implement allow-listing of instances and communities in a separate task/milestone.

  • We should anticipate age-verification getting mandatory in more and more places. Other software projects might pick up on it or need to implement it, too. This solution should tie into that. Make it extensible. I’d like to pull user groups from SSO, OAuth, OIDC, LDAP or whatever provides user roles and is supported as an authentication/authorization backend.

Caveats:

  • It’s a voluntary effort. People might not participate enough to make it useful. If most content doesn’t include the appropriate labels, block-listing might prove ineffective. That remains to be seen. Maybe we need to implement allow-listing first.
  • There will be some dispute, categories are a simplification and people have different judgment on exact boundaries. I think this proposal tries to compensate for some of this and tries not to oversimplify things. Also I believe most of society roughly agrees on enough of the underlying ethics.
  • Filtering content isn’t great and can be abused. But it is a necessary tool if we want something like this.

🅭🄍 This text is licensed “No Rights Reserved”, CC0 1.0: This work has been marked as dedicated to the public domain.

  • algernon
    link
    fedilink
    arrow-up
    12
    arrow-down
    1
    ·
    10 months ago

    …and you think 14-17 year olds won’t circumvent this in mere seconds? Like, they’d just sign up at an instance that doesn’t implement these labels, or doesn’t care about them, or use their parents accounts, or ask them, or an older friend to sign them up, and so on. Even if age verification would be widespread and legally mandated, I highly doubt any sufficiently determined 14-17 year old would have any trouble getting past it.

    • h3ndrik@feddit.deOP
      link
      fedilink
      arrow-up
      3
      arrow-down
      2
      ·
      edit-2
      10 months ago

      That is part of my idea. I don’t think it should be water-tight and not circumventable. My personal opinion is if a 16 yo really wants to watch porn or something, and they put in the effort to circumvent something that is a bit more elaborate than just clicking on “Yes” on a popup… They should be allowed to see it.

      But that’s just my opinion. And I’m not really concerned with what other instances do. It’s enough if it enables me and a few other people to have my instance how I like and invite people to my instance without worrying too much. I mean my own server is also the only one I’m held responsible for. As far as I’m concerned other people can do what they like.

      And it’s kind of pointless to try. Kids don’t need Lemmy or the Fediverse to watch adult content. They can just go to Pornhub and click yes. So I’m already in a position where I don’t care about other domains. But I’d like to keep my own Website and Minetest server clean. And also potentially offer some more services and at least do my best to do it right there.

      • algernon
        link
        fedilink
        arrow-up
        6
        ·
        10 months ago

        There’s a very easy solution that lets you rest easy that your instance is how you want it to be: don’t do open registration. Vet the people you invite, and job done. If you want to be even safer, don’t post publicly - followers only. If you require follower approval, you can do some basic checks to see that whoever sends a follow request is someone you’re okay interacting with. This works on the microblogging side of the Fediverse quite well, today.

        What I’m trying to say is that with registrations requiring admin approval gets you 99% of the way there, without needing anything more complex than that.

        • h3ndrik@feddit.deOP
          link
          fedilink
          arrow-up
          1
          arrow-down
          1
          ·
          edit-2
          10 months ago

          Sure. But what about federation? Arbitrary content is pulled from other instances. And my users are confronted with that content, too. Not only with each other. I’d need to also disable federation. (Or am I missing something?)

          I think at that point I’d be better off installing Discourse or Flarum. And I’ve changed the whole vision of my instance. I’ve started with envisioning a federated platform that simultaneously can cater to adults and adolescents. And now I’ve locked it down to just cater to the few adolescents I directly invite, done away with the federation aspect and also cancelled all the appeal to adults. I think there’s not much left of what I’d like.

            • h3ndrik@feddit.deOP
              link
              fedilink
              arrow-up
              1
              ·
              edit-2
              10 months ago

              Meh. Since you’re here… How is Friendica? Should I try that? I read it’s focusing on privacy and being a nice place, has communities and distributed forums, “relationship control” and add-ons.

              On the paper it looks like it has many more features to offer than for example Lemmy. I’d be interested in the distributed forum aspect. Do the added features tie into every aspect of the platform? Or is it mainly microblogging with a basic forum added on top? And when participating for example in this Lemmy discussion… Is it a smooth experience, or can you tell you’ve left Friendica and only have basic functionality here? (I mean I can tell from over here, that you’re from a different platform, since it includes the @ user mentions like Mastodon does. And I’ve tried Mastodon and I think it’s not really a great experience interacting with Lemmy and KBin communities. Some of the structure of the threads gets lost in the process and comments from other branches of the discussion don’t show up.)