Epicurean Revolutionary Libertarian Socialist

I make FOSS things:

wiki-user: db0

  • 22 posts
  • 0 comments
Joined 3 years ago
Cake day: June 9th, 2023

I discovered this after upgrading our instance yesterday, which also upgraded all frontends to their latest versions as well. After I did, our Tesseract frontend stopped working and I noticed immediately as it’s been my primary for a while. Initially I thought it was an API version mismatch, but no, it was much worse.

Someone pointed out that the developer of the frontend added an explicit hidden and unmodifiably blacklist which includes any and all instances to the left of Kissinger. There’s a commit which also explains their specious reasoning about our instance specifically, as it seems we’ve been on their shit list for a bit longer than that.

This instance and its admin staff encourages identity politics, groupthink, mob mentality, and extremist solutions to societal problems. Users who advocate violence are not moderated so long as the admins agree with the target. Caution and critical thinking are advised when interacting with this instance or its users.

When you use tesseract to connect to one blacklisted such instance , you just get a message informing you that Tesseract is “incompatible with that instance” which leads one to think of a technical issue, like an API mismatch, rather than the dev being an opinionated coward.

Isn’t it funny how all the software developed by turbolibs, like Piefed and Tesseract, end up with hidden control mechanisms from developers who think they know better than everyone else? That they don’t just think they deserve to tell you what you should think, but they should manipulate you to think it? Isn’t it funny how libs go on about how bad it is to support lemmy due to the ideology of the devs behind it, and yet lemmy has 0 opinions as a software? It does make one think…

Anyway, I forked - it as one does - and disabled the blacklist, but since this is a massively ideologically compromised software, I’ll doubt I’ll keep this frontend up after Lemmy 1.0. I think we’ll bring up mlmym again now that someone’s maintaining it again.

Recently there’s been quite a bit of outrage because the developer of Piefed publicly called out the Fediverse Anarchist Flotilla (FAF) for supposedly using LLM for automating instance moderation. and even though many of our admins the larger lemmy community took great lengths to debunk that post, it has become the disinfo that keeps on giving (see https://lemmy.dbzer0.com/post/68749575, https://kolektiva.social/@ophiocephalic/116518887925988112, https://lemmy.dbzer0.com/post/68222242 and more)

After clarifying our position for yet another time, someone suggested we should make an official post and an instance policy to “give me something I can boost as a positive example and a sign that things will be better going forward.” and given that this storm-in-a-teacup doesn’t seem to be abating as people are all too happy to bring it up again and again to malign the FAF; We’re making this post to once and for all clarify this situation.

History

We’re not going to rehash the whole drama and the many hit pieces against the FAF in the past two weeks, but I need to post the exact situation as it happened, without speculations and assumptions that people are all too happy to jump to.

  • One of our mods develops a tool to download a user’s public posting history through the lemmy API, to be used for evaluating them during moderation and shares it with some people in the admin team as something in progress. This tool does not feed anything to LLMs, it simply downloads the comments locally in a text file for easier review than going via the lemmy GUI.
  • Someone is reported to our instance admins for blatant zionism and genocide apologia.
  • An admin uses the tool to download the accused person’s comment history for evaluation
  • A quick evaluation (without LLM) confirms that this is a person that needs to be instance-banned. The moderation decision has now been locked-in at this point.
  • At the same time, that admin was curious to discover if LLMs can used to summarize people’s positions so that people can quickly follow-up with mod actions, without having to evaluate everyone’s posts manually and reduce the workload of admins writing long justifications)
  • As an experiment, the admin pass the user’s comment history through a locally-run open-weights LLM (Qwen) to see the summarized output. It happens to match their own decision.
  • The admin decides the leave the LLM summary in a pastebin along with that user’s posting history for reference. As an inside joke, they decide to claim the post was summarized by OpenAI, as they expected only our community would care about this and our stance on corporate-LLMs is well-known at this point.
  • The admin bans that person, providing a link to that pastebin as justification.
  • The admin decides not to continue using LLMs anyway for summaries, for many valid reasons. As evidence see the lack of other pastebins with LLM summaries.

~2 weeks pass…

  • The piefed developer is banned by a different mod in our instance for “zionism”. (I put this in quotes as this is one mod’s opinion, and not necessarily our instance’s position.)
  • The piefed developer apparently starts going through our instance modlogs for banned zionists and parses all their justifications
  • The piefed developer discovers that modlog justification from 2 weeks before with the LLM summary.
  • The piefed developer ask quickly in the common lemmy admin channel about it, at which point our instance admin in question, clarifies that the LLM was not used in the decision-making.
  • The piefed developer does not officially reach to anyone else from our admin team, despite the fact that we’ve reached out before and asked them to contact us in advance for inter-instance matters to avoid escalations.
  • The piefed developer make the public call-out I linked above as a piece of investigative journalism. The piefed developer does not provide the comments from our team which conflict with their narrative. The piefed developer not ask us for an official statement.
  • The piefed developer to this day has not amended their public call-out from the comments multiple of our admins and lemmy users leave under their post, conflicting with the narrative.

If you feel I’ve misrepresented any steps of this history, please let us know and I’ll be happy to adjust.

Given that, we acknowledge that even though we didn’t use LLMs in moderations, we allowed it to appear as if we did, and that’s on us. We will of course not do the same mistake again (appear as to be using LLMs for moderation)

The FAF’s stance on LLM moderation

We are aware that our instance is seen as “LLM-friendly” due to our nuanced take on LLMs but that does not mean that we, as an instance, ever considered using LLMs for moderating our instance. So we want to make it absolutely crystal clear how we stand on the matter.

As an official policy:

  • We have never used LLMs to guide our moderation decisions. This includes using LLM summaries which we would then validate, as well as LLM summaries which we use to confirm our existing decisions. LLMs are just not in our moderation loop whatsoever.
  • We have never passed instance data to corporate LLMs.
  • We have not used any automated moderation tooling which utilizes LLMs. The closest we have is the FOSS anti-CSAM filter I’ve developed and shared for years now, which relies strictly on locally-hosted machine-vision models.
  • We have never officially considered using LLMs for moderation, nor do we plan to.
  • As a team we’re steadfastly against LLM for moderation due to its inherent biases.
  • If any of the above changes, we will publicly inform the FAF community.

We hope this can finally put this matter to rest.

Ever since I created this instance, I wanted this corner of the fediverse to explore new radical ways to run online social media which attempts to tear down the built-in hierarchies of website hosting. The first step of this was the introduction of admin recalls a while ago, and when some of my co-admins approached me about also adding a piefed.dbzer0.com domain I saw an opportunity to attempt something I’ve been mulling on for a while: An Anarchist Confederation!

You see, the issue with running a social media, is that there’s always a hierarchy with one person or organization having “the keys to the kingdom”, whether this is the person with sudo access, or the one who bought the domain etc. This is an inescapable reality of website hosting we cannot get around (Yes, I’m aware of things like nostr etc, but those have ending issues that are beyond the scope of this post). So at the end, you always end up with some form of BDFL, or at best, a non-profit somewhere with an oligarchy of people controlling it.

The Fediverse system is a good-ish solution to that. We get to have social media without any one entity controlling the whole network, but we still have a ton of (beefing) kings and kingdoms instead. Places go down, places come up, people are not sure where to set up accounts and so on. And each of those fediverse instances still have that inherent hierarchy, so the members of say, lemmy.world, are still beholden to the actions of its admins, and their only option is to uproot their whole presence there and go elsewhere, without any safety that the next admin won’t cause them issues as well.

So I had the idea, what if we create one single entity, which is nevertheless still not controlled by any one person? When you join that entity, you still get to know what it stands for, and can choose any of the services it operates, but most of those services will be run by different people, so it’s not possible for one of them to go rogue or have a burnout and ruin the whole thing.

Ultimately, this approach is meant to protects you, from people like me, pre-emptively.

So when the idea was floated of running an anarchist piefed along with /0, I suggested this concept to the other admins, who happily agreed to give it a try. This had the added benefit of not adding yet more website hosting overhead to myself and to also give a more stable stake to the admins who did the hosting job. Now not only do the admins of anarchist.nexus have the piefed instance they wanted, but they have the extra safety of me not being able to ruin the whole thing by having a burnout/meltdown/stroke or being arrested/disappeared etc.

But the point is not merely to have yet another fediverse instance. The idea here is that we’re much more tightly woven together, which further increases the social costs of someone going rogue, as well as strengthens the bonds of all the people involved, making us stronger as a team. What does this mean in practice? All the Flotilla members agree to the following:

Same Rules

This means that all instances in the flotilla follow the same rules, including those voted by our combined community. This means that whether you’re part of lemmy.dbzer0.com or anarchist.nexus, we’re still following the same code of conduct, we have the same rules like admin recalls, disengage and so on. You can choose your flavor or software, without having to worry about re-learning new rules or admin idiosyncrasies.

Same staff

The Flotilla is built around the idea of sharing workloads. So the members of the instances agree to have admins and sysadmins which can float between them. This is not only meant to strengthen the common control, but also the trust and finally to only require one announcement for new admins, instead of having to have different admin onboarding/recalls per service.

This doesn’t necessarily mean that each admin/sysadmin will be active in all instances. For example I don’t have the time to be actively involved in anarchist.nexus atm, but I could easily do so if I found it. This creates a much easier way to spread our abilities according to our needs. People who have more capacity, can smoothly go to help in more instances, while those overwhelmed can dedicate themselves to fewer. We hope this both reduces the chance of burnout and gives flotilla members greater flexibility, by being able to use their preferred fediverse software, while staying within a community they helped build-up.

Common Governance

As a natural extension of those two concepts above. The instances will have a shared governance system. This means we will have a common governance community and voting structure. All validated members of the flotilla will be able to vote in governance threads with the same restrictions as we have now.

Likewise, all instances will have a normalized defederation list, which will be handled by following each other’s censures on the fediseer, and all bans will be also common from the instances as well. So the flotilla decides person A is not welcome, they’re not welcome in all our fleet!

The anarchist.nexus is hopefully just the first instance in our fleet (all kudos go to @fxomt@anarchist.nexus and @tenchiken@lemmy.dbzer0.com) and a proof-of-concept for the whole attempt. If this goes well, we may be able to extend to other software in the future.

As with everything novel, there’s bound to be teething issues we’re going to encounter, but we’re commited to figuring it out with all of you.

And of course, go and join https://anarchist.nexus/ if that’s more your speed!

The new release of Threativore adds Fediseer integration. It will allow you to keep your instance blocklist in sync with your fediseer censures. Not only that but the integration can be as fine-grained as you want, supporting collating multiple instance censures, filtering only censures with tags you want, or only censures collaborated by 1+ other instances etc.

Check out the usage manual for all the variables allowed.

For people who only want some basic protection, the default settings will by default protect you from all CSAM and bigoted instances as tagged by lemmy.dbzer0.com, lemmy.world and lemmings.world. This should provide a good initial blocklist even if you don’t populate fediseer yourself Bbut you can of course mix&match according to your needs.

This integration also prevents too many changes happening at one go in your blocklist. If threativore detects too many changes about to happen, it will ask for admin approval via DM before proceeding.

This sync will run every 10 minutes, so if you’re following the censures of other instances and they discover a new bad actor, you’ll be almost immediately protected, thus converting a fediverse weakness (information distribution) into a strength (information collaboration).

Let me know if you wish to see any improvements.

The newest release of Threativore allows admins to flag users with warning flags, which don’t lead to any immediate consequences, but they allow admins to keep track of potentially problematic users and also a way to send a warning to those users that doesn’t come from any specific admin account.

This was triggered by having a few problem users in our instance which had bad takes low-key enough to not cop an immediate ban but kept popping up in reports and moderation. In isolation any of those things might make an admin give the benefit of a doubt, but when seen holistically, it makes things more obvious.

Currently it only supports a warning flag, but I can easily add more if people have ideas. These flags can accumulate between admins and you can always see what others have added.

I’m hoping people can use this functionality more liberally than bans, as it will provide a warning to users for bad behaviour, and once someone gets more than 2 or 3 it would be a good chance to take more significant actions.

Flags can also be set silently (i.e. without informing the user) and also with an expiration date, if wished.

Hey peeps, 2 weeks ago we opened applications to onboard new instance admins. We had a ton of great people applying and just as we were getting ready to decide, I got struck down by the influenza b and completely flattened to my bed. Welp.

Well, no matter, I’m back now and decided to announce the new peeps we’re onboarding to the admin team. Initially I was planning to just add one new person, but we got so many strong applications that I felt bad choosing just one.

So without further ado, our new admins are:

Both seem to have a history which appears to align well with our values and will provide fresh perspectives and experiences to our admin team. Peeps, feel free to introduce yourselves with as many details, pronouns, and/or fanfare as you prefer.

That out of the way, this brings our admin team to 6 members, which starts getting to the point where’s the sheer amount of admins and users makes it more likely that conflict arises, either between admins, or between admins and the userbase. In most other forums, this kind of thing typically causes a closing of the ranks and/or internal purges of dissent with the site owner taking the role of the BDFL. We’ve seen it already with lemmy instances and the regular drama which hits meta-comms.

So, since I’m the actual owner and I hate nothing more than being a BDFL, I want to attempt something novel in this space. You see, one core concept of anarchism is instant recalls. As in, the people that represent any group for a specific project, are not representatives in the same way as in parliamentary democracy. Instead, they are there to follow the exact mandate given to them, and if they are seen as going against it, the people below them have the right to immediately recall their mandate. None of this “minimum a couple of years” and popularity contest shit which allows corruption in.

I want to attempt something similar in our instance. I don’t quite know how well it’s going to work, but I’m willing to give it a try. The way it’s going to work, the admin team is considered to have a mandate from the userbase to do admin shit. We don’t want to be calling a vote for every ban and improvement after all. However as a counter-balance, any stakeholder gets the right to initiate recall vote against any admin, including myself. The vote will be run at a 75% threshold to remove, using the governance community.

However due to the impact of such votes, the hope is that perhaps we can sort things out before it gets to it, so the expectation is that people will first open a “sense check” thread in governance to talk about it before taking it to a vote. But if things have reached a head, then a recall vote is there to check our instance admin power.

The remaining admins of course are expected to replace any removed admins to ensure the good instance operation.

I did say that you can even recall myself if you so voted, however there’s indeed some hard realities we can’t get around. I still control the servers and the domain, and it’s not possible to enforce their management based on such votes. So I will still ultimately be able to interfere, but I promise that even if I’m removed, I will only step in to ensure the instance recall functionality is respected. Ultimately this is an experiment that I want to attempt so I’m willing to roll with whichever way it goes.

Now there’s one more thing of concern, which is about someone gaming the system. This is not all set up to be super rigorous. I’m hoping our relative obscurity and super-low stakes will prevent anyone attempting to game the system. Likewise, if foul play is suspected, I am still as a failsafe to recover.

You might be asking yourselves: Why do this? Why even mess with this sort of radicalism when the BDFL approach is tried and tested. The answer is because…well, power corrupts. Having power over people does something to one’s brain, mates. So many times I’ve seen well meaning people turn to shit because they felt they were the only ones who knew best and could protect people from themselves. I don’t want that. Every BDFL approach eventually creates internal cliques, mistrust, “good ole boy clubs” and such. I base my life in trying to shed as much hierarchical power from myself as possible and it hasn’t led me astray, and if we want to change this shit world we’re living in, we need to try things that don’t repeat the same shitty structures. So while I can’t do something perfect, I’m willing to do something flawed and see how far it takes us.

So yeah, welcome the new mods and tell us what you think.

PS: We also upgraded to Lemmy 0.19.9.

Hey peeps, after hitting the frontpage of reddit, we got a good amount of new users on our instance, to the point where our admin team was struggling to keep up with the application forms.

More users means more issues and therefore more reports, so we are looking to onboard one more admin to the instance. If you are interested, these are the requirements:

Requirements

  • You must be an anarchist, and enthusiastically endorse the instance policies and our anarchist code of conduct. For example this means we also expect you to also be pro-piracy and not hostile to GenAI.
  • You must have been on this instance for at least 3 months, to ensure you understand our culture. Hopefully you’ve been a lemmy poster as well as we expect our admins to dogfood our service. If you were already a comm admin, even better!
  • At this point we are prioritizing women and/or PoC to reinforce our team’s diverse perspectives. So please apply if you are even if you don’t feel as confident.
  • At this point we are prioritizing timezones and countries outside of Europe and the USA to help us get better coverage and better perspectives.
  • You must be willing to use matrix as this is where we organize our instance and our real-time admin chat.
  • You must be willing to keep an eye on reports and applications throughout the day.

What is expected of you

  • We have a fairly chill community around this place, so it’s not too demanding. The time requirements are not too large and we will keep expanding the team to ensure the load per individual admin remains low. So long as using this instance is your primary social media, the “workload”, such as it is, shouldn’t even be noticable.
  • Initiative is encouraged. It’s cool enough for people to just want to help us keep this place tidy, but if you have ideas, you will be free to put them into action directly without asking permission all the time, so long as we can rollback easily.
  • You should have a anarchist democratic mindframe. We don’t need a voting decision on everything (just do direct action), but you should be willing to be judged on your decisions and roll them back if they are unpopular.
  • Remember that while we’re anarchist-flavored, we’re not just for anarchists. So we understand that many of our users might be liberals or otherwise misguided. On top of that, we make a point of welcoming neurodivergent people who don’t always understand social norms and might phrase things in a way that looks really bad when interpreted uncharitably. As such, we want to help people match our values, without turning a misunderstanding into a hostile experience through heavy-handed actions. So a softer hand and charitability is encouraged, while at the same time being firmly against clearly reactionary takes.

Applying

  • You can leave your comments here, which can allow other members of this comm to vouch for you.
  • Please mention your “credentials” and why you think you would make a good member of the team.
  • If you don’t feel comfortable with sharing info, you can reach out to me (or another admin you feel more comfortable with) through PMs or matrix.

Spectating

If you’re just watching this governance thread, feel free to upvote applications you feel are worthy, and/or comment on people you want to vouch for. If you’re a supporter, remember you can also vouch for people directly through a threativore PM.

  • governance type: sense check
  • show all flair

As a result, our instance https://lemmy.dbzer0.com/ got 625 new user registrations (of which 536 where accepted) in the past 24 hours! And the registrations are not abating even now. We still get like 10 new ones per hour!

I suspect this is probably the largest advertisement, for lemmy specifically, since the main reddit blackouts 1.5 years ago.

Have your own instances also seen an influx of new users?

Latest update for threativore was pushed in order to be able to handle our anti-Xitter links rule.

What it adds is the scope keyword when setting up a new rule. Scope can either be:

  • global: The same as the existing implementation; it will match regardless of instance.
  • instance: Will only match from local communities (local to the instance threativore runs in)
  • community::<community_name>: Will only match from within the local community named <community_name>.

This means that threativore can now also be used for specific local community management. However currently threativore doesn’t accept commands from non-admins, so if any community mod needs to set up a threativore rule, they need to contact the instance admins. In the future hopefully I can allow direct filter specifications from comm-mods.

Lots of releases since my last post roughly 1 week ago. Suffice to say, I’ve been hard at work :)

  • Threativore now allows specifying a governance community. Posts in that community can be used for voting. Voting relies on the specified user tags within threativore to figure out which votes to count and which not. You can see this in action in our very first voting thread in lemmy.dbzer0.com.
  • A lot more work has gone into preparing threativore to serve tags as flairs, with flair ordering mechanisms using env var definitions
  • Two new threativore PM commands added
    • vouching for users, which gives them a special flair and allows them to participate in votes. Vouching PMs are open to all trusted uses, has controls to prevent multiple/duplicate vouching, and PMs target and source accorindly.
    • assigning/removing flair, which gives them the flair tag on threativore and PMs them accordingly. This is open only to threativore admins.

The threativore manual has been updated with all relevant information for all of these

My work on threativore and flairs was the stepping stone for something I wanted to achieve ever since reddit. A way for a community (instance in our case) to be able to vote on decisions, without having to rely on comment-votes and manual counting, but also without allowing every rando on the service to vote on your internal matters.

To this end, I have now deployed the governance community on our instance and it’s live, let’s say in testing mode. Please check the manual I just linked for more in-depth explanation of how it works.

As discussed in the previous thread, the initial plan is that only stakeholders can vote and open threads. Everyone who is supporting us with donation is a de-facto stakeholder, however An icon of a doubloon with a black hole in the center in orange-red, black and white colors threadiverse enjoyers cannot open new threads. Also after the discussion I decided to allow a minimalist compass icon. Orangered color vouching for others, which any supporter at the higher tiers can do twice. Vouching gives voting access, so this means you can specify other people who you personally know are valid members of the instance, and that will allow them to take part in the decision making, even if they’re otherwise only lurking. Effectively vouching puts someone at the same level as a threadiverse enjoyer.

EDIT: I had a change of heart about this. I plan to initially allow both An icon of a doubloon with a black hole in the center in orange-red, black and white colors threadiverse enjoyers and a minimalist compass icon. Orangered color vouched to also open threads. If this causes problems, we can re-evaluate.

On a voting thread, the bot will maintain a control thread and refresh the tallies every 15 mins, (so don’t expect instant updates.)

Currently most of y’all won’t have voting rights, because ko-fi tiers will only be applied at the next donation or the monthly charging time. Liberapay is handled more often, but it requires a manual step on your end which you can do on your own already.

If you have any suggestions for MVPs for our instance, please do suggest them.

Unfortunately no feedback from any UI developers until now so as to add threativore flairs to the UI itself. I guess I have to learn javascript as well one of these days…

Anyway, this is only the beggining. I want to add more voting options, more automatic ways to nominate others for MVP. And I still need to distribute the affiliation tags (they will be visible when you comment in a governance thread). Eventually I want to even allow threativore to be usable my comm mods than just instance admins.

There’s already a test thread in governance, so go ahead and downvote/upvote it. I plan to open a proper one soon, with a small decision I want to make. I wouldn’t suggest trying to open a thread yourselves yet until voting-enabling tags are distributed, as the bot will just lock it)

EDIT: I decided to extend the voting a bit further. Now votes of local instance members who otherwise have no voting rights will also be accounted at a rate of 1/100 from a random sample of up to 1000 of their votes. This means that a vote can go up to max +/- 10 from local community votes and it’s a fractional count (i.e. +1.1, or -0.7) which should make the local community sentiment an excellent tiebreaker, without overwhelming the people who are directly supporting the instance. Furthermore, I decided to display the “outsider sentiment” which is votes from non-valid-voting users from other instances. The outsider sentiment is only flavour (“Positive”, “Negative” etc) and is disregarded from the total. This is just shown for reference of the outsider sentiment which I think might be useful.

Hey peeps, I got a few things to talk about.

First of all I am happy to announce that the Divisions by zero will be joining the newly minted Haidra non-profit org. The plan is to use Haidra as the fiscal host for your donations to the instance and have things a bit more organized in the backend. Haidra is our own non-profit, so it should carry our values and avoid conflict with people who don’t understand our ethos.

With the non-profit in place, I wanted to put into action a plan I had for a long time. To implement some sort of radical instance democracy. I don’t believe in Benevolent Dictators for Life and thus I always look for ways to receive a mandate for my actions all stakeholders, rather then deciding top-down. Unfortunately the nature of hosting a service like this does not allow anarchist democracy to be practised, as at the end of the day, there’s a sysadmin with the passwords holding all the power, but given that for this specific instance, that sysadmin is myself, I want to try and experiment with this.

As part of Haidra, the project itself (i.e. the divisions by zero) maintains full autonomy, so its own decision-making remains in its own community. However as a member project, it also effectively gets a vote in the internal running of Haidra. For me use your mandate, I need to figure out a way to receive it. To this end, I want to try and implement some sort of system to allow such democratic decision making.

Unfortunately we cannot reasonably allow every registered member to vote on instance policies, as it’s trivial for any bigot to join and make sockpuppets and throwaway accounts to affect our policies.

So I want the voting process to be somehow run by the instance stakeholders, so I came up with the concept that the only people who should be able to take decisions on the instance, are those who have monetary contributed to the hosting and personnel costs, or who are putting significant effort into nurturing communities here and potentially in the larger fediverse. The idea is that if you’ve put into action your support of this instance, you should deserve some say on how it’s run. That said, while I’m still doing most of the work behind the scenes, I still need to feel good running this instance, so I will need to come up with ways to reject people from the voting process if they don’t match our ethos. I won’t in good faith allow bigots to vote, just because they have money.

Now the trick is how to do this in a way that is manageable. While I have access to the accounts subscribed on Ko-Fi and Liberapay, connecting them to accounts in here is a massive PITA. Likewise it’s not easy to easily remember who is contributing in direct action to this instance.

So once more the mad science lab that is my brain, has come up with some new ideas. First I have updated the threativore bot so that it now also provides a REST API on top of its bot functionalities. The REST API can now be used to retrieve extra user info that is maintained by the instance admins about users on our instance, that is not always relevant to the software (and as such is unlikely to be added to the API by the devs).

One big aspect of this update is that I can maintain user tags inside threativore. These tags are free-form and will allow us to mark users as contributors through ko-fi or other means. In fact, I even setup a complete backend DB connection to threativore and a webhook for ko-fi, so that as soon as you donate to the instance, you will be marked on threativore as a contributor, so long as you used the same email address on both (if you didn’t, and you want to be recognized, please send me the email you used on ko-fi in a PM and we can override)

However, because I can’t just do things only a little bit, I decided to extend the tags functionality to also have a key for “flair”. Each tag assigned to a user has an optional flair key, which can be an emoji, or a link to an image. Currently those flairs don’t serve any purpose, but I have already pinged some of the popular third party UIs (which we’re currently hosting and I wholeheartedly suggest you use), to assist us in making those flairs visible.

In fact, those flairs are not even restricted only to our own instance, we can potentially flair any user from any instance and I have a lot of plans to make expand this functionality. The only limitation is finding UI developers to handle that end.

In fact, I have already created and onboarded some starting flairs for our instance. Some of them will be automatically assigned by the ko-fi webhook, and some others will be automatically assigned by the way you answered your registration application. Here they are:

Ko-Fi

These 4 are coming from Ko-Fi subscribers. The idea is to use them to flair people so I can quickly see whose votes would count in the democratic process. Initial plan is that every subscriber should be allowed to vote, but only subscribers who fund a lot can open new votes for mandates.

  • An icon of tankart of grog in orange-red, black and white colors: Drinking Mate is the tag for people who have donated in Ko-Fi, once off. The tag will expire after 2 months.
  • An icon of a doubloon with a black hole in the center in orange-red, black and white colors: Threadiverse Enjoyer: The people at the lowest end of the ko-fi support.
  • An icon of anchor crossed with two staves in orange-red, black and white colors: Deck Hand: The people who support significantly through the year (as it stands, each of them effectively covers half a month of hosting per year)
  • An icon of two crossed cutlasses with a skull in the center in orange-red, black and white colors: Salty Dog: The people who massively support each month (each of them effectively covers ~1/5th the monthly cost)

Liberapay

  • An icon of a doubloon with a black hole in the center in orange-red, black and white colors: Threadiverse Enjoyer: Same as Ko-FI
  • An icon of powder barrel in orange-red, black and white colors Powder Monkey: The people who support significantly through the year
  • An icon of  two crossed belaying pins and a hourglass in the center, in orange-red, black and white colors: Buccaneer: The people who massively support each month

Affiliations

The below flairs are going to be assigned depending on how you answered the registration application. If you mentioned more than affiliation, you will be assigned all of them matching.

  • A book with a loaf of bread in the cover  in orange-red, black and white colors: The bread book: Will be assigned if you mentioned an anarchist.
  • an icon of pirate jolly roger skull wearing a hat, in orange-red, black and white colors: Jolly Roger: Will be assigned if you mentioned a pirate
  • an icon of a wildebeest, in orange-red, black and white colors: Wildebeest: Will be assigned if you mentioned a FOSS advocate/software.
  • Early Bird: a parrot, orangered colors: Early Bird. Will be assigned if you registered before our instance had an registration application process, so only around 5K users ever got this one.
  • ADHD: A lightning butterfly in orangered color: ADHD Assigned if you specified you have ADHD
  • ASD: The ininity symbol in an orangered/white color: ASD Assigned if you specified you have ASD
  • Snowflake: a snowflake in orangered color: Snowflake is assigned if you mentioned someone who is neither an Anarchist, Pirate, nor FOSS (advocate)
  • First: a victory cup, orangered color: First is assigned if you were the first to mention that particular Anarchist, Pirate, nor FOSS (advocate)

Other

  • a minimalist compass icon. Orangered color Vouched: This signifies a user for whom a trusted user of this instance has vouched for. This is another way to be able to take part in the decision-making of this instance. Vouching will be restricted to tiers higher than An icon of a doubloon with a black hole in the center in orange-red, black and white colors threadiverse enjoyer and a star icon, in orange-red, black and white colors MVPs.
  • a star icon, in orange-red, black and white colors MVP: Is a flair which I plan to assign to signicant contributors to the instance in some way. Perhaps lifetime funding and/or fediverse presence? Perhaps we should vote on it :D

All of this is only the beginning of what I want to do here, but this beginning will be short-lived if we can’t get UI developers on board. So if you’re maintaining one of the 3rd party UIs in the sidebar, please contact me. Likewise, if you’re excited by any of this and you can help hack the exising lemmy UIs (including the default one) for our instance purposes, please speak up and that would be a good ground for an MVP a star icon, in orange-red, black and white colors flair! :)

In the meantime I will use threativore to start doing some scripting to allow only-staholder voting, and we’ll try it out soon.

If you have ideas and improvements about all this please post. If you have ideas for more flairs and way reasons to get them, let me know. If you have thoughts about how this democratic experiment should be structured, now is a good time to write them!

With threativore 0.8.x I have finally released a feature I’ve been planning for a while, the ability to maintain and view it via REST API.

The first thing that is released in the REST API is the ability to see a user’s information, which at the moment contains the user’s profile ID, their threativore roles and the newest fields, which is tags for users

{
  "user_url": "https://lemmy.dbzer0.com/u/db0",
  "roles": [
    "UserRoleTypes.MODERATOR",
    "UserRoleTypes.ADMIN"
  ],
  "tags": [
    {
      "tag": "ko-fi_tier",
      "value": "deck hand",
      "flair": "https://lemmy.dbzer0.com/pictrs/image/0cc8915a-acf8-451b-8350-c889f469ac42.webp",
      "expires": "2025-03-15 13:18:46.305405",
      "description": "This user is donating a moderate amount to their instance through Ko-Fi"
    },
    {
      "tag": "pirate",
      "value": "true",
      "flair": "https://lemmy.dbzer0.com/pictrs/image/156d1970-0600-4bea-b3d2-53435be3c314.webp",
      "expires": null,
      "description": "This user likes pirates"
    },
    {
      "tag": "anarchist",
      "value": "true",
      "flair": "https://lemmy.dbzer0.com/pictrs/image/61a552e5-d1db-43a5-a120-f584e3082c2d.webp",
      "expires": null,
      "description": "This user likes anarchism"
    },
    {
      "tag": "foss",
      "value": "true",
      "flair": "https://lemmy.dbzer0.com/pictrs/image/00ac9132-cecd-41e6-ba81-8ffd51043bdd.webp",
      "expires": "2025-01-14 13:07:57.467910",
      "description": "This user likes free software"
    },
    {
      "tag": "liberapay_tier",
      "value": "powder monkey",
      "flair": null,
      "expires": "2025-03-16 20:05:57.525031",
      "description": "This user is donating a moderate amount to their instance through Liberapay"
    }
  ]
}

The tags are free-form and any threativore admin can assign any tags to any users with whatever values. For example one of my plan in lemmy.dbzer0.com is to add a boolean tag for pirate if the user mentioned a pirate in their application form, or alternatively anarchist or FOSS respectively. Likewise I have automated adding tags based on whether someone has donated to the site through ko-fi recently and at which tier.

Currently these tags don’t have any effect, but I want to bring together the various frontend developers, such as @ptz@dubvee.org from tesseract, @sheodox@lemmy.world from alexandrite, @aeharding@vger.social and so on to see if we can come up with a standard where we can specify within threativore how the tags could be utilized. Or perhaps agree for a standard location where the threativore can always be sought by UIs to retrieve info (as it’s not part of the lemmy API proper)

For example I can arrange for a new field per tag, which would contain an emoji code, or an image url, which would be displayed by the UI as flavor for that user. I want to provide ways for each instance to be more unique, (until and if lemmy itself adds such functionality in the backend).

Another functionality which is not immediately obvious is that I now added code to allow threativore to reach in directly to the lemmy DB and extract any data needed. This is for example how lemmy.dbzer0.com can match users on ko-fi with users in lemmy. I plan to extend this functionality in the future to hopefully provide more ways for threativore to detect and deal threats, even without info publicly available in the API.

With all this I want to make threativore a valuable companion software to lemmy, to provide a lot more extensibility through the UIs and empower instance admins to do even more for the looks and security of their instances.

If you want to deploy threativore, I provide a simply code chunk you can add to your lemmy UI in docker-compose. You can even disable the anti-spam capabilities if you want (although they don’t do anything until you populate them), and just keep it as an API only.

Let me know what you think.

You know that little information thing below posts telling you which other communities a specific post has been posted to?

That one, won’t appear if you crosspost a pure-text post. Sure you’ll get a link in the body, but lemmy won’t “intuitively” know the two posts are connected.

By using an image in the URL of the post, not only do you give your text post a thumbnail, but you allow lemmy to easier link them together when cross-posting.

If you’re wondering “But where the hell do I find an image for each post”, well, Generative AI to the rescue! I always just fire up Lucid Creations and use it to generate something fitting to the subject, or just something pretty at 768x512.

cross-posted from: https://lemmy.world/post/276633

Been using this one for over a decade. Works with Firefox’s bookmark keywords feature.

Make a new bookmark, set the link as follows:

https://lemmy.world/c/%s (or your own Lemmy instance)

And in the “Keyword” field, use “c” or “lemmy” or whatever.

Now, when you want to visit a specific Lemmy community on your home instance, you can simply type:

“c community_name” in the address bar, or “lemmy community_name” in Firefox and it will automatically open the community.

Hey y’all I wanted to make something clear. While the lemmy.dbzer0.com allows anyone to create community because I feel there’s a lot of creativity to be found by giving people this freedom, I also don’t want a sea of flotsam in our communities list.

So while I’m not going to shut down community creation, I am planning to start curating the available communities a bit more from now on.

What it means for you is that if you plan to create a community, I expect you to actually have a plan to grow it. Not just register the name so that you squat on it and hope other join so that you end up the top mod other users built-up.

Practically this means that we expect to see some activity on those communities, a sidebar that explains what it’s about, reasonable names and titles etc. Please also do the effort of adding a banner and an Icon. I’ve developed a free Generative AI art tool you can use even!

Communities which we perceive to be abandoned or squatting will be summarily purged. My plan for now is to purge empty communities within 1 week after giving a warning. I haven’t decided how to deal with communities which have posts and subscribers yet, but if it’s inactive long enough and the amount of posts is trivially small, I’ll probably start purging those within a month. I do not think I’ll purge communities with significant amount of posts and subscribers however.

I also plan to post a report about purged communities when we do so, so that people are aware.

Thanks for reading. Let’s try to keep the quality of the divisions by zero sufficiently high.