Pleroma is significantly more lightweight than Mastodon, is compatible with both Twitter and Mastodon clients, and is one of the bigger (maybe the biggest that isn't working on Elixir itself?) free software Elixir projects. Worth giving a look if any of that interests you!
It still requires the user to install and admin a postgres instance which already makes it a non-starter for 99% of the target audience, this design choice is tragically stupid - the chance that an instance of pleroma will reach a usage volume that can't be handled by sqlite and basic caching is not on the horizon, if they ever reach this problem they could then develop a version that works against an actual rdbms.
It's pretty much fire-and-forget. I know a bunch of non-technical people who are running Pleroma instances: you don't have to worry about it that much.
Pleroma is built using Elixir + Phoenix (iirc), which has excellent Postgres support with Ecto. That could have been a design decision. Postgres also supports some features SQLite doesn't, such as array types. For certain applications (such as tagged imageboards, boorus), that makes anything but Postgres nearly a non-starter. SQLite data type storage can also be a concern.
Chances are, if you have a server capable of running the Elixir + web framework stack, storage space for cached images, and a proxying web server, Postgres probably isn't much of an overhead on top of that.
Bare in mind that each fedi instance dosen't only host the content generated by users, but also whatever content they repeat/reply to. The fact it needs to be stored (or cached) is one reason why there's so much blocklisting/defederation - because people may not want to host certain content from instances known to commonly host it. It may even store more from the public timeline (I'm not sure about the specifics of Pleroma). Nevertheless, even with five users, you can fill up quite a lot of space in a database and on the filesystem.
Your strong statement about postgres doesn't sound right to me. You can't use an array values as foreign keys. Array column wouldn't be my first choice even it could do this: you're limited and constricted in usage overall for a little gain if any. Which imageboard/booru engines use array column for tags?
Why arrays are preferable over m2m tables? What so special about pg arrays that makes anything but them inferior in "tagging" case? I genuinely don't get it.
We do provide a step-by-step guide, which also involves installing postgres. In general, I think installing Elixir and Erlang is the much scarier part for most people, because few people have ever used them.
Sadly, we can't just use SQLite because we use Postgres-only features like jsonb extensively.
You’re not entirely incorrect, but you’re not being kind, either.
Really all we’re talking about here is whether or not the thing that writes the files is in-process or an adjacent process.
If they can manage to run Pleroma, they can manage to run a Postgres beside it. I think the hurdle you are describing is to self-hosting anything in general. Standing up a self-hosted postgres is actually easier/simpler/better supported than some random weird elixir app.
Sorry, but it's true for the other steps as well with postgres being a particularly pain because it is a networked service that requires administration, security minding etc. The end result is a high-friction onboarding process and the fact that it is technically justifiable is besides the point for people who just want to use the thing not to hack on it.
The "if they can manage to run Pleroma" is not a very helpful approach to actually get more people to run Pleroma.
Haven't looked into the Plemora code myself, but it'd likely be feasible to patch it to be sqlite compatible. Unless there's a lot of Postgres specific SQL (triggers? mat views? hyperlog data types?) and the older version of Ecto the SQLite adapter uses. Still it would be fun to something like Plemora run on a RPi4 without needing Postgres. Then again, maybe Postgres would run alright... :-)
Thanks for the info! Well maybe someday I'll see if I can bake a Nerves image with Postgres running on it. If I'm going to install it might as well on an RPI right?
I think standing up pretty much ANY type of server might be a non-starter for 99% of the audience...But then proper documentation would resolve that. In the case of pleroma, the database stuff is simpler, while the elixir and erlang stuff is what is dark magic...though that could be because my background is mostly LAMP sort of stuff. Thankfully, there is documentation for setting up/administering a pleroma instance, and as with most things, better versions of the documentation will surface more and more as time goes by.
It's sort of a "doomed if you do, doomed if you don't issue". SQLite lowers the barrier to start, but if your community grows even modestly then you'll be facing a very scary database migration (or at least scary for small admin teams).
I suspect a soft fork or subversion targeted towards small instances might be more sustainable, but that obviously requires more developers to build and maintain that.
I've been thinking about these kinds of things for some time and starting to talk about it.
I think we need an open source set of 'bouncers / blockers' - that people can use, perhaps best as a chrome / ffx extension? That blocks content from various portals or individual posts or posters that you may not want to see.
Different people want to censor different things, and some want to censor the same things less and some more.. so by have an open source set of blocker bots people can discussion the blocking lists.. people can pick and choose what they see / not see..
That's on a basic beginning - I could see them also getting into 'unsubsbrcibe to stuff from server A and mastadon B' can take it further..
Since cloudflare came out as censor friendly - I've given up hope the big players will be all 'open info utopia' ever again. I think the best we can hope for is to get individual blocking bots and open up the web more. Otherwise we will have more censoring across the board and will succumb to whichever lowest common denominator of whoever gets to be in charge and make new rules.
This way some people can choose to filter sex workers and not furries and some can choose to censor furries but not sex.. Of course I am sure many people will choose some broad auto-block and stick with that, making their internet more like fbook's daycare.. but having transparent options will certainly have many people turning off the 'safesearch' and explore the whole world, or larger parts of it.
You are right in that we may need more tools for individual users to take control in this expanded universe.. but things like 'peter's ad block list' kind of things can be more beneficial than depending on MostPopular Mastadon Server being pushed to choose what to block for the masses and what to let through and the whack-o-mole that tends to create.
If they are open and clone-able / editable - some might want peter-and-pauls-block-more lists.. and some may like furfriendlyButnotPron lists.. and I hope many more options for choose your own censor.. rather than having them chosen for us as most have succumbed to.
My current random thoughts on the subject - hope others chime in to make it better and more of a possibility instead of just napkin notes.
I don't have anything against either furries or sex workers being there, just that between this and half of the public feed being in languages other than English the "what is this all about ?" experience is rather deterring.
Two basic things they could do is add some categorization and have users opt-in to topics for their public feed and limit the posts shown to English plus the languages that can be deduced from the user-agent data - it is after all one of the few legitimate purposes it can be used for.
Why not just find people you like on it first and then use it? Joining a social network you know nobody on seems weird.
Also, the Public Timeline is your local instance's. My local instance has no users that speak different languages than I do, so the timeline is without content I don't understand.
The Whole Known Network goes way too fast to be of use, but it too is mostly filled with English speakers (albeit mostly non-desirable sorts).
Mastodon client can filter on language. Hashtags are a thing, most clients can search/filter on them.
The pond is tiny, so certain non-mainstream communities that were driven out of other "real" platforms (i.e. platforms that are trying to sell you something) are a much higher percentage of the feed. But it's more or less just like Twitter, loudmouths tend to dominate, and 95% of the feed is garbage.
Instance homing is really the biggest problem Fedi has right now, instances are hard to characterize without camping them for some time, they're mostly small hence the loudmouth problem, and stability is an issue, they still come and go frequently. One of the problems with anarchy is that it's hard to manage.
I was having my 2 cents thought on the topic as well, my conclusion is: A shared blocking list (Or a blockchain system, hehe) can only be used as the last resort.
Yes, it can block "unwanted" posters and bots when a correct list is given, but it could also sometime block innocent accounts when somebody is been mistakenly added to the list (Or that somebody just simply changed their behavior for the better).
For such system to work, the maintainer of the list must be trustworthy, which is the hardest part and almost always falls apart.
Add to the injury, it can also be very hard for others to detect mistakes sneaked into the list, as the list may contains more than 10,000 items, makes it impossible to be completely verified manually.
And what to do if a mistake is indeed discovered? Maintain an unblock list to automatically request the user to unblock? Now user has to maintain their own "Yes I manually blocked this guy" list to counter act the automatic one.
My suggestion is: Yes, you can use a shared block list if there is no other way (The Twitter case). But since Mastadon is open sourced, maybe let's try something else first while still can?
Please give this a little thought: Can a system be designed in such way that makes it really hard for their user to accidentally come across some unwanted posts (without having to block the poster)?
Don't forget that blocklist admins can be jerks, too. If I run a blocklist that gets popular, I could make people I don't like disappear without anyone really noticing.
Good point!
This is one reason why I a want a few portals with the bots and showing discussions about them, easy option to fork / clone / change.
Would be nice to have something check for updated bots and discussions about them and put a flag in the browser bar maybe every two weeks -
Some bots will get better over time - but some people who liked the old one may not appreciate the changes and want to re-hatch the old one with a merged list minus X and Y but leave Z.
I had not heard of the twitter block list - thanks for the info.
My thought on the blocker bots things in this thought process is that a few portals could spring up with the various bots listed and open discussions / comments about them will be available - and it should be a one-click to clone and rename / change.. so that people are encouraged to create new ones.
Having open source blocking and discussion with one click clone and change will hopefully create lots of transparency, and give end users for options for finer grained control -
The open discussions should have shape the various bots - something I have not figured is a process to auto-take and another bots updates and remove all instances of x and y terms.. and make Paulines-Copy-bot auto update when Pete's now block lists are added.
I too would prefer not to block people and servers and instead just hide by topics as a first line of defense.
Like mashable on fbook - I'd like to keep them in my feed, and block the stupid things they post about trump.. if I don't get a way to do this, I'll have to lose mashable completely.
I think the discussions on the bots would be educational for people as well. I myself have read articles that discuss some of the edge cases of bans for things like the ISPs in the UK and the health sites and such.. but I don't think most people see that kind of news.. and some may benefit from seeing discussion about other things that are unintentionally, or intentionally blocked.. and make decisions on the info and controversy instead of taking the one size fits most censorship each country seems to have.
I low-key love that blocking furries is the example here.
I used to be a part of that community and it's got a hell of a poor signal to noise ratio and a major broken-step problem. There are some good ones, but all the others ever seem to want to do is fight.
I'm amazed they can arrange to get out of bed in the morning.
And when choosing your following wisely your timeline will just contain what you want it to (e.g. not a furry in sight). This is not so different to Twitter.
Same here. After the subsequent ten minutes I concluded that moderating a distributed social network is likely to be impossible.
I'd be pretty open to a non-federated social network provided it was a co-op or a foundation running it along a wiki style funding model (eg annual mass begging).
Nobody who you aren’t following can put things into your feed. That’s all the moderation you need; you need not be concerned with the content of the timelines of those you do not follow.
Moderation of one's own feed is not the problem here, the problem is that a community like this is likely to remain perennial if the first impression of it is wierding out the average would-be user.
The problem isn't even that. There's no global account catalog you could search. Thus, you have no way of knowing who of the people you know is on there already. Asking everyone if they know about Mastodon and which instance they're on isn't the answer. I have an idea about making a DHT out of instance servers, but at this point it's purely theoretical. If it does work though, you'll be able to easily import your existing friend lists from centralized services. Could use either their APIs or — better — the GDPR-mandated export feature.
Now think about all the places where that doesn’t happen, and think of all the censorship that is being imposed on harmless true self-expression.
That’s a feature, not a bug. Being able to post without fear of getting ToS’d and losing your entire audience is one of the major benefits of decentralized systems.
Now we just need to figure out how to solve for overzealous admins. I think the default for AP should become “bring your own domain”, even as a leaf user, so that you can seamlessly migrate instances if, for example, your web host or local admin takes issue with something you say.
As someone already mentioned, mastodon.social is not the best entry point. Which is ironic, because it should be. But even if you find a cool instance, it's hard to find people there to follow or conversations you want to join, because you can only search for hashtags. #and #people #dont #write #like #this
Imo a screenshot is more useful than people think.
Developers think "well, you see, any number of arbitrary clients can load the data and even impl their own UI features so a screenshot doesn't really make sense because...".
But people mainly want to know what that even looks like at all. Especially with how open-ended "social network" can be. That the screenshots just look like Twitter answers some preliminary questions.
Admittedly, this is dated, but is still valid, and should help you get a basic understanding of what pleroma is - including a few screenshots. I hope that helps!
It saddens me that every time I see a fediverse-related post on HN, it gets inundated by people who don't "get it" and that is to be expected: fediverse is not Twitter and everybody gets Twitter. That change in mentality is not easy.
Fun story: massive influx of users from India recently and the timelines got flooded by posts indirectly asking: "what is the way to fame here? How do I get followers?". Fediverse doesn't work like that. You just… talk with others. There's no "you and your followers". There's "us".
Analogy: you are not in a metropole. You are in a village that is extremely well connected to all other villages. You do not need to shout to be heard.
I'm on a FOSS-focused instance. We talk all kinds of stuff and FOSS is one of them. I have my Home timeline where I follow all the people I want to hear from (both my instance and all others). I have my Instance timeline where I'm basically guaranteed to read interesting stuff I can reply to and meet new people who also considered this instance to be their haven. And the Known Fediverse timeline… Well, it's fun to browse but come on, imagine a timeline of all tweets on Twitter: mostly useless.
Choosing the right instance also involves choosing the right moderators for you. Mods can block other instances. If you don't like what the mods do, change instance or start your own community. After all, it's not Twitter, the people decide how content is moderated, not a for-profit company.
That's the fediverse for ya. Hope to see you there!
I like to run mastodon as a single-user, and actively connect to other instances by following certain people. What I find lacking (but that might be a configuration issue): I cannot seem to get the replies to other people statuses, which are not from my server (so, basically, all). That'd be a bummer if that doesn't work.
Pleroma v2.0.0[1] lets you hover over the "Reply to" text to get the replied to status in a little popup (which might be new in v2.) But also a little "popout" icon that will open the entire thread in another window (which previously existed pre-v2.)
[1] running as essentially a single-user instance.
Sadly, this is a bit spammy method, but I had only a dozen or so complaints so far and my "Whole known network" is now seeded pretty well : https://s.pnn.sh/ (this is a small single user home instance on ARM, so it's slow)
And TBH I find the Pleroma UI better than Mastodon for the single user instance - plus clicking on the date to get replies in the Mastodon frontend always feels weird (but it's personal taste !)
Careful with this. A lot of communities don't like scraping of their public content. There was a guy who got booted from archive.org I think for trying to archive an instance that had a lot of under-18 folks' content.
I'd encourage you to build a federated app instead. :)
I think you are making the assumption that I am scraping content based on the fact that I am developing a free software content scraper that anyone is invited to use.
Yep, just like I assume countries that enrich plutonium to weapons grade levels and stick it on the pointy end of an ICBM are threatening others with nuclear weapons, even if they're never launched.
If you think developing web spider software is akin to developing nuclear weapons, I think you might want to go have a talk with some larger, well-known companies who have not only half-developed not-yet-working software (like my activitypub spider, which doesn't even have a storage backend at the moment), but who have fully developed advanced web spiders that have actually downloaded and archived exabytes of data from the web, to be saved privately for all time. Frequently they even let anyone who wants search the full text of it, usually without authentication!
If you don't want second parties to have copies of your data, configure your webserver not to send it to them when they request it. You can't force someone to do something with an HTTP request.
Your first statement looks like it should be logical, but when read for soundness, the consequent ("[then] I think you might...") makes absolutely no sense following the antecedent ("if you think..."). I only mentioned nuclear weapons to try to really emphasize to you that a technology's existence is enough to cause fear in people and communities, which does have real world consequences. But I don't think you care about that.
Anyway, I work at one of those companies. You know what they have? Ways to let users opt out (ex: ROBOTS.txt), ways to ensure they're not DOSing people when scraping (which uses material resources: compute time, spindles, electricity, etc), ways to track the copyright of the source material (which belongs to the author, usually), and ways to respond to second-party requests (legal and non-legal notices) who want to know how much of their data has been scraped or exercise their rights over their material. These technological features are because this is what human societies have found to be a decent balance between scrapers' rights and internet users' rights. Your solution lacks this due consideration and gives internet users a giant middle finger.
In your last paragraph it is pretty clear you are doing this because of some ill-conceived "ethical" notion that "because HTTP responded with this payload, it is now mine with an 'ethical license' to do anything". There are other ways to point out security flaws in ActivityPub that are way more constructive and less asshole-ish, but it seems you're pretty keen to erase a lot of moral and legal nuance to prove "because I have a technological capability means I have the moral ought and the legal right". Sorry, but no: the world is a lot more complex than this.
Just because I have the technological capability to transmit the message "you're being a dick" from the comfort of my home doesn't automatically mean it would be ethical for me to, so of course I am not going to tell you "you're being a dick", and normally I wouldn't type this sentence at all but in this special case I am because it shouldn't be a problem with your ethical system since I'm not actually saying it despite having the technological capability, so it should have no impact on you (and if it did, it should give you pause to reconsider that maybe you need to do more self-reflection on discovering your actual reasons for doing this ill-advised project).
Because you have not cared to clarify your ethical view in the last 3 responses to me, nor in your ethics statement of your project.
Your system is designed to download and save information in an unaccountable manner on behalf of anyone, "unaccountable" literally is a doorway to "for any further purposes", so it's a very safe assumption.
The lack of clarity also comes from ignoring the bulk of my previous message. Ball is still in your court. I am inviting you to make this exact clarification (plus far more), when all you seem interested in doing is dodging, delaying. The worst action you could possibly take is accusing me for assuming in order to fill in the very deliberate blanks you are leaving behind.
> Your system is designed to download and save information in an unaccountable manner on behalf of anyone
I think perhaps you have confused some source code that I have released with a service that performs a function on behalf of a user. I operate no such service.
All I have done is produced a tool that allows a user who downloads and builds and runs that tool to download data from a website, much like a browser or any other HTTP client. There is no "on behalf of"—it's just a tool for a first party to use.
I am happy to let you keep showing off your circular reasoning to the world, and will happily repeat myself pointing out all my counterpoints you did not engage with and ignored.
For example:
- I claimed a technology's existence is enough to cause real world consequences. You ignored this point.
- I mentioned you are not including safeties to building a tool to protect its user[0] (the "first party" user of your tool) and its targets ("second party" people the tool-users are subjecting to your tool). That makes it legally/morally unappealing to use as a tool(puts self in danger), and morally unappealing to be subjected to. Why build a tool this way to be completely legally/morally unappealing, unless you want to cater to users specifically that do not have such legal/ethical concerns? You ignored this point.
- I have invited you to clarify your ethical view. You are circling back to a previous non-argument.
- You simply refuse to verbalize your implicit moral stance -- that your role as a "toolmaker" absolves you of all the moral consequences of its use[1]. If this is incorrect, I welcome clarification from you.
[1] This moral position has long been well-criticized and is not a sufficiently nuanced moral stance in this day and age. For an old example, consider Tom Lehrer's criticism of von Braun: "'Once the rockets are up, who cares where they come down? That's not my department', says Wernher von Braun." [2].
I'm going to be blunt: your ethics statement sucks. It reeks of "I don't care what you intended, I'm going to use your data in ways you didn't want because nothing is physically stopping me". At the very least, that's a terrible attitude to describe as an "ethics statement". If you were to call it "justification" instead, at least it would be internally consistent.
I see that your code makes no mention of robots.txt, so you've designed it in such a way that explicitly ignores each instances' published intention. You can't reasonably make any claims about "consent" while pretending that "User-agent: *; Disallow: /" isn't there.
From a first glance it does not scrap the web UI, and uses public APIs only. So mentioning that it ignores robots.txt is not a solid argument. These APIs are there specifically for automated use.
I agree that this "ethics statement" is of no use, though. The author should have ignored these people who get upset because of their posts being copied.
Every time people get upset because of reasonable behavior of others and unreasonably attempt to control that behavior, it is an opportunity for teaching.
According to whom? Every dictator thinks it's reasonable behaviour for them to crush the opposition, while those who look on, or those who suffer, will usually believe that to be unreasonable behaviour.
Someone I learned from a colleague once is this:
"No one ever thinks they are the bad guy."
So your concept or reasonable behaviour may not match mine, and you may exhibit behaviour that will upset me. That's not an opportunity for me to learn, that's an opportunity for me to seek some sort of recourse against you.
Publishing software is protected expression in the place I am writing it, so I will absolutely be surprised if others attempt that: it would be illegal under the laws in this place.
I mean, it is legal. Stopping him wouldn't work well.
Sleazy? Arguably. Allowed? I mean, it's not like it's pulling any magic tricks. It's operating within what the protocol (and the law) permits. People could use a better protocol that doesn't have these problems, but hey, who cares, right?
I think perhaps you are confusing morals with ethics. Morals are a subjective matter, unique to each person, and are derived from their own individual values.
Ethics were designed as a more objective framework that can be consistently applied in a society so that groups may be able to reach consensus about decisions that affect others. I have yet to see any argument that developing and publishing software that allows people to download public information from the web is unethical, especially considering the fact that you cannot download any information from a webserver that that server does not willingly provide to you. You send a request, and perhaps you receive a response—or not. It is wholly within the determination of the server what, if anything, it sends to you. My software speaks plain ol HTTP, no hax or subterfuge or fuckery of any kind.
Indeed, such HTTP client software development and distribution is widespread in our society: you're probably using some software like it right now to read these words. Other tools that perform this function are shipped with every single install of most OSes. It's some of the most common software on the planet. When you browse Mastodon or Pleroma instances, software on your computer is doing the same thing that my software would do, if you ran it.
Despite the fact that some people are irrationally upset over people's choice of HTTP clients with no justification offered, the burden of proof remains on you or anyone else who has a problem with my software to explain why, from an ethical perspective, I shouldn't be writing it or publishing it. No one has offered such an explanation to me, nor can I, in what I think to be a thorough consideration of all the possible consequences or systems of ethics which might apply, discover one myself. I do not believe that such exists, considering the circumstances of how common even advanced HTTP client software is. If you have one, please speak up.
Remember: whether something is moral or not is a personal opinion; it cannot be right or wrong. Whether or something is ethical or not, however, is more or less an objective analysis within a given ethical framework. It is not an opinion.
What behavior is that? Writing a tool that people can use to download information published on websites? Does the creator of `wget` or `curl` put people's lives at risk too? Chrome?
I think perhaps you may have misattributed the responsibility for the side effects of publishing data globally.
Actually, the behaviour of the Mastodon author promising a "safe space" in his paid, targeted advertising campaigns without any real plan for data security is the unethical behaviour. If you don't like that people can scrape the fediverse, fix the damn security.
I humbly suggest that you have just pointed out the major flaw for federated social networks and decentralised platforms in general: they do not serve the same purpose of Twitter, Facebook and the like.
Users come to these popular platforms not worried about what it will take from them, but what they can take from the platforms. Notoriety, fame, a following.. validation or just a business model.
I don't think being different is a flaw, but people are drawn towards the familiar and what I'm pointing at is that this is the reason why gaining real traction beyond the dev community is so hard.
> Mods can block other instances. If you don't like what the mods do, change instance or start your own community.
Doing so costs you all of your followers. This is one of the main issues with the culture of heavyhanded instance operator censorship: you can’t simply switch like you would an email host with your own domain, because few/no AP implementations support bring-your-own-domain virtual hosting.
This is like saying “well, if you don’t like that the mail admin simply doesn’t let you email certain domains, just change your email address!”
This is sadly not quite correct. You can send out a 'Move' activity from your old account, notifying other servers that you have moved. There's no guarantee that they understand that activity, or, if they understand it, that they actually follow the new account automatically.
In practice, nearly all your followers will be using fediverse software that understands and supports Move{Actor} in a similar way to Mastodon. There's not a massive amount of fediverse software - it's not like IndieWeb where everyone does their own thing - and the microblogging-focused software largely implements the same feature set.
I probably need to look into supporting this in my federated social network thing. It does work with Mastodon and Pleroma right now, but it certainly could do better.
That depends on that software being deployed in a timely manner. There's plenty of instances out there still on Mastodon 1.6 and 2.0 because the admin installed it 2 years ago and hasn't updated since.
Even if the move notification worked perfectly, the people on instances your local admin has defederated with will never receive it as a result of the defederation. I don’t think this is a solution.
I would love if social media platforms could stop letting people know who followed who, even to the followers themselves... I think it would make places less vain and toxic
I can't see how it would make it less toxic - a lot of the toxicity I see comes from accounts where it just wouldn't be possible for them to know who followed them because they're well into the 100ks, if not millions.
Going back to the original quote: "The fediverse is like interconnected villages instead of a large metropole. There's no need to shout." and I think it's quite apt.
The fediverse is far closer to early online fora, bulletin boards then it is to e-mail. Maybe you were deeply entrenched in a particular online community, establishing an online identity, a reputation, visibility,... connected to your name. But outside of that domain? Well, you have little social credit on other discussion boards.
This approach models closely to how societies work in reality. And how individuals prioritize their own social connections. First family, then extended family, friends, co-workers, and society at large - an online audience - way down the road. Each of us will subconsciously look at people starting from the implicit question "Who is part of my tribe, who's an outsider?"
Now, the important part here is that you may feel compelled or forced to leave a group, family, tribe,... So, this implies giving up your locally established social credit and hope you can rebuild that elsewhere. For most people, that's an extremely expensive and risky proposition.
So, what do Reddit and Facebook do different, then?
Reddit is hugely successful because it provides a platform that can sustain thousands of small communities. Much like how online fora - but also e-mail based newsgroups or BBS'es - used to work in earlier days. Facebook's killer app is not the wall or your profile - contrary to what you may think - but... facebook groups. The same is true for Telegram or WhatsApp. These are tools that allow you to establish small communities.
And then you have the entire "followers/following" thing.
What Facebook and Reddit did was successfully merge the idea of a portable, persistent identity - a profile - between local communities by building a platform that also made migration and establishing new communities really easy and cheap (just a few clicks: bam! new group or subreddit!)
Now, followers / following: that's NOT a social network. That's an audience. And there's a distinct difference between those two. (even though there's an overlap too)
For all the talk over "engagement", communicating towards an audience is mostly a one-to-many one-way street. You may reach hundreds of thousands on Twitter, but you may only directly engage - and establish a meaningful relationship - with a handful of people.
If you want to directly and presently reach a large audience, then either e-mail newsgroups, the fediverse or online fora are the wrong venues. Arguably, even Reddit is the wrong platform if you directly tap into millions from a single or a few publishing points (accounts).
If you're looking for small communities in which you want to get entrenched, then the fediverse is the right place to be. Even though that comes with the perpetual yet very real trade off of establishing social credit locally which you can never carry with you if you migrate away.
Back in the day when ICQ and the first instant messengers showed up, there used to be a "find a friend" feature. You just specified what you were interested in chatting about and it would return a list of people who had said the same thing. That was all it took to meet interesting folk and make meaningful connections.
Needs to be simple for civilians I guess is what am saying.
I tried the federated social thing with Mastodon after Twitter started really ramping up their censorship of conservative views.
A social justice warrior complained to the admin of my instance that I was conservative and they banned me.
That was my first and last foray into the federated socials. You trade a big corporate censor for a mom and pop censor, but none of them appear to actually be "free" (as in speech)
Though the point of the fediverse is that you can run your own and connect to others. You’re not at the mercy of a single instance, unless I’m misunderstanding what happened.
For what it's worth, there's a decent number of 'free-speech' instances out there. They tend to be populated by the sort of thick-skinned people who playfully call each other slurs, which you may or may not be into.
I'm sorry someone promised you the Fediverse as if it is "free speech heaven". It isn't. Which is fine by me.
To be honest, I think your view of what "free speech" is, is a ridiculous extreme. Go use FreeNet. If I don't seem compelling, I've put together an essay to address this in more detail [0]
> As you are somebody who is responsible for stewarding the ActivityPub specification
I am not associated with the W3C in any way, and had absolutely no hand in creating ActivityPub. Chris Webber and many others deserve that credit. I don't attend the SocialCG meetings either (which are open to all).
The most I can say is I've implemented a library implementation in Go (there are other Go projects), and I voice my opinion in the community.
> I am seriously disappointed by this dismissive attitude.
Dismissive? My apologies, that's not what I am going for. I'm precisely showing how certain folks' expectations in the free speech community were unrealistic and showing a mature technology that precisely delivers what they want.
Consider what ActivityPub is not: it is not a way to physically get your free-speech in byte form forcefully delivered to others on the network. That's what multiple free-speech folks have repeatedly drawn the line at when I poked and prodded what their disappointment stems from. Instead, to get this technological capability, one needs to switch to blockchain or FreeNet protocols as this is what they do. The former actually requires consensus whereas the latter doesn't! ActivityPub as a technology does not guarantee any of this.
I think free speech is important (I wrote a whole damn blog post about it, and here I am writing more), and I think there are important conversations to be had around it. But complaining about ActivityPub not being a censorship-proof technology ("I got banned from one instance for being too conservative") is not a productive discussion to be had. There's better ones out there.
I'm sorry to hear about that experience, that's not IMHO the way it should be. That leaves you the opportunity to take your knowledge and opinions elsewhere. This would not be possible if you got banned from Twitter.
I had new users land fresh from abandoning Twitter.
- New user, day one: This is neat! Hi everyone!
- New user, day two: Wow, there sure are a lot of ${slurs} around here.
- Me: We don't say that here. Don't do it again please.
- New user: I thought this was a free speech zone! Conservatives just can't catch a break!
I'm absolutely not saying this is what happened in your specific case. I know instances that quite possibly would block someone just for voting Republican, and maybe that's what happened to you. And if so, I'm sorry you had that experience. I have several right-leaning users who are polite and respectful, and I 100% defend their right to express their own opinions. But, I've personally seen a lot of cases where people were asked to stop being jerks, not because of their opinions, but because they were were acting like jerks, who then went on a rant about censoring conservative speech before rage quitting.
You basically left a global community because two people didn't like you. Just move to a different instance or start your own. Who cares what people you don't know or don't like think?
Pleroma is mostly great except that you click follow and.... it doesn't work. The devs are mysteriously dismissive of this issue despite it being reported very, very consistently. I switched to running a ~single user Mastodon instance despite Pleroma being otherwise perfect for my needs (IT'S SO MUCH MORE RESOURCE-EFFICIENT). I was really hoping to see something about this issue in the release notes.
Nope, never started working. I asked kaniini; she suggested extending a particular timeout config value. No values for this worked. I heard this a lot from other people, though I'll acknowledge I shut down my instance a while ago so maybe it's been fixed?
112 comments
[ 2.8 ms ] story [ 117 ms ] threadChances are, if you have a server capable of running the Elixir + web framework stack, storage space for cached images, and a proxying web server, Postgres probably isn't much of an overhead on top of that.
Bare in mind that each fedi instance dosen't only host the content generated by users, but also whatever content they repeat/reply to. The fact it needs to be stored (or cached) is one reason why there's so much blocklisting/defederation - because people may not want to host certain content from instances known to commonly host it. It may even store more from the public timeline (I'm not sure about the specifics of Pleroma). Nevertheless, even with five users, you can fill up quite a lot of space in a database and on the filesystem.
Edit: nevermind, Philomena has a table for the many-to-many relationship and uses Elasticsearch for the heavy lifting.
https://shon.github.io/2015/12/21/postgres_array_performance...
https://gist.github.com/joevandyk/031cf5812bd656887623
To search for a post with multiple tags, you need to do a join for each tag. You don't have that problem with arrays.
Sadly, we can't just use SQLite because we use Postgres-only features like jsonb extensively.
Really all we’re talking about here is whether or not the thing that writes the files is in-process or an adjacent process.
If they can manage to run Pleroma, they can manage to run a Postgres beside it. I think the hurdle you are describing is to self-hosting anything in general. Standing up a self-hosted postgres is actually easier/simpler/better supported than some random weird elixir app.
The "if they can manage to run Pleroma" is not a very helpful approach to actually get more people to run Pleroma.
I suspect a soft fork or subversion targeted towards small instances might be more sustainable, but that obviously requires more developers to build and maintain that.
"Man this thing looks really promising, just think of the potential of a social network unhindered by the dark machinations of the googtwitface !"
Me after ten minutes on the public feed of mastodon.social:
"So do the furries post for the sex workers or is it the other way around or what ?"
I think we need an open source set of 'bouncers / blockers' - that people can use, perhaps best as a chrome / ffx extension? That blocks content from various portals or individual posts or posters that you may not want to see.
Different people want to censor different things, and some want to censor the same things less and some more.. so by have an open source set of blocker bots people can discussion the blocking lists.. people can pick and choose what they see / not see..
That's on a basic beginning - I could see them also getting into 'unsubsbrcibe to stuff from server A and mastadon B' can take it further..
Since cloudflare came out as censor friendly - I've given up hope the big players will be all 'open info utopia' ever again. I think the best we can hope for is to get individual blocking bots and open up the web more. Otherwise we will have more censoring across the board and will succumb to whichever lowest common denominator of whoever gets to be in charge and make new rules.
This way some people can choose to filter sex workers and not furries and some can choose to censor furries but not sex.. Of course I am sure many people will choose some broad auto-block and stick with that, making their internet more like fbook's daycare.. but having transparent options will certainly have many people turning off the 'safesearch' and explore the whole world, or larger parts of it.
You are right in that we may need more tools for individual users to take control in this expanded universe.. but things like 'peter's ad block list' kind of things can be more beneficial than depending on MostPopular Mastadon Server being pushed to choose what to block for the masses and what to let through and the whack-o-mole that tends to create.
If they are open and clone-able / editable - some might want peter-and-pauls-block-more lists.. and some may like furfriendlyButnotPron lists.. and I hope many more options for choose your own censor.. rather than having them chosen for us as most have succumbed to.
My current random thoughts on the subject - hope others chime in to make it better and more of a possibility instead of just napkin notes.
Two basic things they could do is add some categorization and have users opt-in to topics for their public feed and limit the posts shown to English plus the languages that can be deduced from the user-agent data - it is after all one of the few legitimate purposes it can be used for.
Also, the Public Timeline is your local instance's. My local instance has no users that speak different languages than I do, so the timeline is without content I don't understand.
The Whole Known Network goes way too fast to be of use, but it too is mostly filled with English speakers (albeit mostly non-desirable sorts).
The pond is tiny, so certain non-mainstream communities that were driven out of other "real" platforms (i.e. platforms that are trying to sell you something) are a much higher percentage of the feed. But it's more or less just like Twitter, loudmouths tend to dominate, and 95% of the feed is garbage.
Instance homing is really the biggest problem Fedi has right now, instances are hard to characterize without camping them for some time, they're mostly small hence the loudmouth problem, and stability is an issue, they still come and go frequently. One of the problems with anarchy is that it's hard to manage.
Systems like such already been developed, for example there is one for Twitter made by third-party called "Twitter Block Chain" (https://github.com/satsukitv/twitter-block-chain).
Yes, it can block "unwanted" posters and bots when a correct list is given, but it could also sometime block innocent accounts when somebody is been mistakenly added to the list (Or that somebody just simply changed their behavior for the better).
For such system to work, the maintainer of the list must be trustworthy, which is the hardest part and almost always falls apart.
Add to the injury, it can also be very hard for others to detect mistakes sneaked into the list, as the list may contains more than 10,000 items, makes it impossible to be completely verified manually.
And what to do if a mistake is indeed discovered? Maintain an unblock list to automatically request the user to unblock? Now user has to maintain their own "Yes I manually blocked this guy" list to counter act the automatic one.
My suggestion is: Yes, you can use a shared block list if there is no other way (The Twitter case). But since Mastadon is open sourced, maybe let's try something else first while still can?
Please give this a little thought: Can a system be designed in such way that makes it really hard for their user to accidentally come across some unwanted posts (without having to block the poster)?
Would be nice to have something check for updated bots and discussions about them and put a flag in the browser bar maybe every two weeks -
Some bots will get better over time - but some people who liked the old one may not appreciate the changes and want to re-hatch the old one with a merged list minus X and Y but leave Z.
My thought on the blocker bots things in this thought process is that a few portals could spring up with the various bots listed and open discussions / comments about them will be available - and it should be a one-click to clone and rename / change.. so that people are encouraged to create new ones.
Having open source blocking and discussion with one click clone and change will hopefully create lots of transparency, and give end users for options for finer grained control -
The open discussions should have shape the various bots - something I have not figured is a process to auto-take and another bots updates and remove all instances of x and y terms.. and make Paulines-Copy-bot auto update when Pete's now block lists are added.
I too would prefer not to block people and servers and instead just hide by topics as a first line of defense.
Like mashable on fbook - I'd like to keep them in my feed, and block the stupid things they post about trump.. if I don't get a way to do this, I'll have to lose mashable completely.
I think the discussions on the bots would be educational for people as well. I myself have read articles that discuss some of the edge cases of bans for things like the ISPs in the UK and the health sites and such.. but I don't think most people see that kind of news.. and some may benefit from seeing discussion about other things that are unintentionally, or intentionally blocked.. and make decisions on the info and controversy instead of taking the one size fits most censorship each country seems to have.
I used to be a part of that community and it's got a hell of a poor signal to noise ratio and a major broken-step problem. There are some good ones, but all the others ever seem to want to do is fight.
I'm amazed they can arrange to get out of bed in the morning.
I'd be pretty open to a non-federated social network provided it was a co-op or a foundation running it along a wiki style funding model (eg annual mass begging).
Ironically, the only way to do that now is posting on twitter, asking people to reply with their mastodon accounts
That’s a feature, not a bug. Being able to post without fear of getting ToS’d and losing your entire audience is one of the major benefits of decentralized systems.
Now we just need to figure out how to solve for overzealous admins. I think the default for AP should become “bring your own domain”, even as a leaf user, so that you can seamlessly migrate instances if, for example, your web host or local admin takes issue with something you say.
Developers think "well, you see, any number of arbitrary clients can load the data and even impl their own UI features so a screenshot doesn't really make sense because...".
But people mainly want to know what that even looks like at all. Especially with how open-ended "social network" can be. That the screenshots just look like Twitter answers some preliminary questions.
Admittedly, this is dated, but is still valid, and should help you get a basic understanding of what pleroma is - including a few screenshots. I hope that helps!
Fun story: massive influx of users from India recently and the timelines got flooded by posts indirectly asking: "what is the way to fame here? How do I get followers?". Fediverse doesn't work like that. You just… talk with others. There's no "you and your followers". There's "us".
Analogy: you are not in a metropole. You are in a village that is extremely well connected to all other villages. You do not need to shout to be heard.
I'm on a FOSS-focused instance. We talk all kinds of stuff and FOSS is one of them. I have my Home timeline where I follow all the people I want to hear from (both my instance and all others). I have my Instance timeline where I'm basically guaranteed to read interesting stuff I can reply to and meet new people who also considered this instance to be their haven. And the Known Fediverse timeline… Well, it's fun to browse but come on, imagine a timeline of all tweets on Twitter: mostly useless.
Choosing the right instance also involves choosing the right moderators for you. Mods can block other instances. If you don't like what the mods do, change instance or start your own community. After all, it's not Twitter, the people decide how content is moderated, not a for-profit company.
That's the fediverse for ya. Hope to see you there!
[1] running as essentially a single-user instance.
If other people want to do that and switch from Twitter -> Fediverse, I wrote a bunch of scripts to switch from Twitter to Fediverse :
https://git.sr.ht/~pierrenn/twitter_escape
Sadly, this is a bit spammy method, but I had only a dozen or so complaints so far and my "Whole known network" is now seeded pretty well : https://s.pnn.sh/ (this is a small single user home instance on ARM, so it's slow)
And TBH I find the Pleroma UI better than Mastodon for the single user instance - plus clicking on the date to get replies in the Mastodon frontend always feels weird (but it's personal taste !)
Thanks for the links!
> Well, it's fun to browse but come on, imagine a timeline of all tweets on Twitter: mostly useless.
BTW. This will happen too, it's just not popular enough to catch that.
https://git.eeqj.de/sneak/feta
I'd encourage you to build a federated app instead. :)
If you don't want second parties to have copies of your data, configure your webserver not to send it to them when they request it. You can't force someone to do something with an HTTP request.
Anyway, I work at one of those companies. You know what they have? Ways to let users opt out (ex: ROBOTS.txt), ways to ensure they're not DOSing people when scraping (which uses material resources: compute time, spindles, electricity, etc), ways to track the copyright of the source material (which belongs to the author, usually), and ways to respond to second-party requests (legal and non-legal notices) who want to know how much of their data has been scraped or exercise their rights over their material. These technological features are because this is what human societies have found to be a decent balance between scrapers' rights and internet users' rights. Your solution lacks this due consideration and gives internet users a giant middle finger.
In your last paragraph it is pretty clear you are doing this because of some ill-conceived "ethical" notion that "because HTTP responded with this payload, it is now mine with an 'ethical license' to do anything". There are other ways to point out security flaws in ActivityPub that are way more constructive and less asshole-ish, but it seems you're pretty keen to erase a lot of moral and legal nuance to prove "because I have a technological capability means I have the moral ought and the legal right". Sorry, but no: the world is a lot more complex than this.
Just because I have the technological capability to transmit the message "you're being a dick" from the comfort of my home doesn't automatically mean it would be ethical for me to, so of course I am not going to tell you "you're being a dick", and normally I wouldn't type this sentence at all but in this special case I am because it shouldn't be a problem with your ethical system since I'm not actually saying it despite having the technological capability, so it should have no impact on you (and if it did, it should give you pause to reconsider that maybe you need to do more self-reflection on discovering your actual reasons for doing this ill-advised project).
Why do you believe that that is my view?
Your system is designed to download and save information in an unaccountable manner on behalf of anyone, "unaccountable" literally is a doorway to "for any further purposes", so it's a very safe assumption.
The lack of clarity also comes from ignoring the bulk of my previous message. Ball is still in your court. I am inviting you to make this exact clarification (plus far more), when all you seem interested in doing is dodging, delaying. The worst action you could possibly take is accusing me for assuming in order to fill in the very deliberate blanks you are leaving behind.
I think perhaps you have confused some source code that I have released with a service that performs a function on behalf of a user. I operate no such service.
All I have done is produced a tool that allows a user who downloads and builds and runs that tool to download data from a website, much like a browser or any other HTTP client. There is no "on behalf of"—it's just a tool for a first party to use.
I am happy to let you keep showing off your circular reasoning to the world, and will happily repeat myself pointing out all my counterpoints you did not engage with and ignored.
For example:
- I claimed a technology's existence is enough to cause real world consequences. You ignored this point.
- I mentioned you are not including safeties to building a tool to protect its user[0] (the "first party" user of your tool) and its targets ("second party" people the tool-users are subjecting to your tool). That makes it legally/morally unappealing to use as a tool(puts self in danger), and morally unappealing to be subjected to. Why build a tool this way to be completely legally/morally unappealing, unless you want to cater to users specifically that do not have such legal/ethical concerns? You ignored this point.
- I have invited you to clarify your ethical view. You are circling back to a previous non-argument.
- You simply refuse to verbalize your implicit moral stance -- that your role as a "toolmaker" absolves you of all the moral consequences of its use[1]. If this is incorrect, I welcome clarification from you.
[0] The laundry list of features of other scrapers I mentioned, here: https://news.ycombinator.com/item?id=22533439
[1] This moral position has long been well-criticized and is not a sufficiently nuanced moral stance in this day and age. For an old example, consider Tom Lehrer's criticism of von Braun: "'Once the rockets are up, who cares where they come down? That's not my department', says Wernher von Braun." [2].
[2] https://www.youtube.com/watch?v=TjDEsGZLbio
I see that your code makes no mention of robots.txt, so you've designed it in such a way that explicitly ignores each instances' published intention. You can't reasonably make any claims about "consent" while pretending that "User-agent: *; Disallow: /" isn't there.
I agree that this "ethics statement" is of no use, though. The author should have ignored these people who get upset because of their posts being copied.
> ... reasonable behavior of others ...
According to whom? Every dictator thinks it's reasonable behaviour for them to crush the opposition, while those who look on, or those who suffer, will usually believe that to be unreasonable behaviour.
Someone I learned from a colleague once is this:
"No one ever thinks they are the bad guy."
So your concept or reasonable behaviour may not match mine, and you may exhibit behaviour that will upset me. That's not an opportunity for me to learn, that's an opportunity for me to seek some sort of recourse against you.
Don't be surprised if others attempt that.
Even though several people are saying that what you're doing is unethical, you're effectively saying:
> "Screw you, I think it's OK, so I'm going to go ahead and do it, and no one can stop me."
Sleazy? Arguably. Allowed? I mean, it's not like it's pulling any magic tricks. It's operating within what the protocol (and the law) permits. People could use a better protocol that doesn't have these problems, but hey, who cares, right?
Ethics were designed as a more objective framework that can be consistently applied in a society so that groups may be able to reach consensus about decisions that affect others. I have yet to see any argument that developing and publishing software that allows people to download public information from the web is unethical, especially considering the fact that you cannot download any information from a webserver that that server does not willingly provide to you. You send a request, and perhaps you receive a response—or not. It is wholly within the determination of the server what, if anything, it sends to you. My software speaks plain ol HTTP, no hax or subterfuge or fuckery of any kind.
Indeed, such HTTP client software development and distribution is widespread in our society: you're probably using some software like it right now to read these words. Other tools that perform this function are shipped with every single install of most OSes. It's some of the most common software on the planet. When you browse Mastodon or Pleroma instances, software on your computer is doing the same thing that my software would do, if you ran it.
Despite the fact that some people are irrationally upset over people's choice of HTTP clients with no justification offered, the burden of proof remains on you or anyone else who has a problem with my software to explain why, from an ethical perspective, I shouldn't be writing it or publishing it. No one has offered such an explanation to me, nor can I, in what I think to be a thorough consideration of all the possible consequences or systems of ethics which might apply, discover one myself. I do not believe that such exists, considering the circumstances of how common even advanced HTTP client software is. If you have one, please speak up.
Remember: whether something is moral or not is a personal opinion; it cannot be right or wrong. Whether or something is ethical or not, however, is more or less an objective analysis within a given ethical framework. It is not an opinion.
I think perhaps you may have misattributed the responsibility for the side effects of publishing data globally.
Users come to these popular platforms not worried about what it will take from them, but what they can take from the platforms. Notoriety, fame, a following.. validation or just a business model.
Doing so costs you all of your followers. This is one of the main issues with the culture of heavyhanded instance operator censorship: you can’t simply switch like you would an email host with your own domain, because few/no AP implementations support bring-your-own-domain virtual hosting.
This is like saying “well, if you don’t like that the mail admin simply doesn’t let you email certain domains, just change your email address!”
This is not true anymore. You can "transfer" your account to another instance, and all the followers will not need to refollow.
Going back to the original quote: "The fediverse is like interconnected villages instead of a large metropole. There's no need to shout." and I think it's quite apt.
The fediverse is far closer to early online fora, bulletin boards then it is to e-mail. Maybe you were deeply entrenched in a particular online community, establishing an online identity, a reputation, visibility,... connected to your name. But outside of that domain? Well, you have little social credit on other discussion boards.
This approach models closely to how societies work in reality. And how individuals prioritize their own social connections. First family, then extended family, friends, co-workers, and society at large - an online audience - way down the road. Each of us will subconsciously look at people starting from the implicit question "Who is part of my tribe, who's an outsider?"
Now, the important part here is that you may feel compelled or forced to leave a group, family, tribe,... So, this implies giving up your locally established social credit and hope you can rebuild that elsewhere. For most people, that's an extremely expensive and risky proposition.
So, what do Reddit and Facebook do different, then?
Reddit is hugely successful because it provides a platform that can sustain thousands of small communities. Much like how online fora - but also e-mail based newsgroups or BBS'es - used to work in earlier days. Facebook's killer app is not the wall or your profile - contrary to what you may think - but... facebook groups. The same is true for Telegram or WhatsApp. These are tools that allow you to establish small communities.
And then you have the entire "followers/following" thing.
What Facebook and Reddit did was successfully merge the idea of a portable, persistent identity - a profile - between local communities by building a platform that also made migration and establishing new communities really easy and cheap (just a few clicks: bam! new group or subreddit!)
Now, followers / following: that's NOT a social network. That's an audience. And there's a distinct difference between those two. (even though there's an overlap too)
For all the talk over "engagement", communicating towards an audience is mostly a one-to-many one-way street. You may reach hundreds of thousands on Twitter, but you may only directly engage - and establish a meaningful relationship - with a handful of people.
If you want to directly and presently reach a large audience, then either e-mail newsgroups, the fediverse or online fora are the wrong venues. Arguably, even Reddit is the wrong platform if you directly tap into millions from a single or a few publishing points (accounts).
If you're looking for small communities in which you want to get entrenched, then the fediverse is the right place to be. Even though that comes with the perpetual yet very real trade off of establishing social credit locally which you can never carry with you if you migrate away.
I remember when I first used Twitter in 2006 or 2007 it actually had that as a feature. It was useless, but still fun as you mention.
Back in the day when ICQ and the first instant messengers showed up, there used to be a "find a friend" feature. You just specified what you were interested in chatting about and it would return a list of people who had said the same thing. That was all it took to meet interesting folk and make meaningful connections.
Needs to be simple for civilians I guess is what am saying.
That sounds wonderful - any hint how to find/join that instance? (Searching for mastodon/pleroma FOSS instances doesn't return anything useful here.)
A social justice warrior complained to the admin of my instance that I was conservative and they banned me.
That was my first and last foray into the federated socials. You trade a big corporate censor for a mom and pop censor, but none of them appear to actually be "free" (as in speech)
To be honest, I think your view of what "free speech" is, is a ridiculous extreme. Go use FreeNet. If I don't seem compelling, I've put together an essay to address this in more detail [0]
[0] https://cjslep.com/c/blog/censorship-is-a-tool
I am not associated with the W3C in any way, and had absolutely no hand in creating ActivityPub. Chris Webber and many others deserve that credit. I don't attend the SocialCG meetings either (which are open to all).
The most I can say is I've implemented a library implementation in Go (there are other Go projects), and I voice my opinion in the community.
> I am seriously disappointed by this dismissive attitude.
Dismissive? My apologies, that's not what I am going for. I'm precisely showing how certain folks' expectations in the free speech community were unrealistic and showing a mature technology that precisely delivers what they want.
Consider what ActivityPub is not: it is not a way to physically get your free-speech in byte form forcefully delivered to others on the network. That's what multiple free-speech folks have repeatedly drawn the line at when I poked and prodded what their disappointment stems from. Instead, to get this technological capability, one needs to switch to blockchain or FreeNet protocols as this is what they do. The former actually requires consensus whereas the latter doesn't! ActivityPub as a technology does not guarantee any of this.
I think free speech is important (I wrote a whole damn blog post about it, and here I am writing more), and I think there are important conversations to be had around it. But complaining about ActivityPub not being a censorship-proof technology ("I got banned from one instance for being too conservative") is not a productive discussion to be had. There's better ones out there.
I had new users land fresh from abandoning Twitter.
- New user, day one: This is neat! Hi everyone!
- New user, day two: Wow, there sure are a lot of ${slurs} around here.
- Me: We don't say that here. Don't do it again please.
- New user: I thought this was a free speech zone! Conservatives just can't catch a break!
I'm absolutely not saying this is what happened in your specific case. I know instances that quite possibly would block someone just for voting Republican, and maybe that's what happened to you. And if so, I'm sorry you had that experience. I have several right-leaning users who are polite and respectful, and I 100% defend their right to express their own opinions. But, I've personally seen a lot of cases where people were asked to stop being jerks, not because of their opinions, but because they were were acting like jerks, who then went on a rant about censoring conservative speech before rage quitting.
Just block them and give them no mind space.
A link to the "main" instance, or a list of instances to join would help. Without that, I don't see the average person using it
Just call it leaf, cheese, or poppy.
Cheese 2.0 that’s some killer tech
What did these configuration flags become?