flamingos

joined 2 years ago
[–] flamingos@feddit.uk 1 points 1 month ago

The discourse around decentralisation has elevated a form of network architecture that facilitates and contributes to a healthier social internet into a goal into itself.

Big agree with this.

[–] flamingos@feddit.uk 2 points 1 month ago (1 children)

That doesn’t feel like how search should work. It should be ranking results that fit the search query better higher than ones that fit it less.

But the existing filters already prescribe an order outside of how closely the search term matches, you brought up top month and I don't see how you'd want that to work other than a binary filter sorted by votes.

What you're describing would be a new sort order, analogous to Reddit's 'Relevance' sort. It's certainly doable with postgres' builtin distancing operators, though it be slower.

[–] flamingos@feddit.uk 4 points 1 month ago

I wonder what objections there could to the statement other than procedural. It's a nice 'let's work on making stuff better rather than fighting with each other' message.

[–] flamingos@feddit.uk 8 points 1 month ago

This from @mackuba@martianbase.net is good and up-to-date: https://mackuba.eu/2025/08/20/introduction-to-atproto/

[–] flamingos@feddit.uk 7 points 1 month ago (2 children)

And the fact that AT Proto requires the full firehouse replicated to all relays.

It doesn't, not even Bluesky runs a full network archive relay anymore because it proved to be too complicated and expensive.

[–] flamingos@feddit.uk 2 points 1 month ago* (last edited 1 month ago) (3 children)

This doesn't have anything to do with sort ordering though, which is based on time and votes. Text search is just a filter on top of sorting.

You want exact word matches prioritised ahead of entirely unrelated words that include the same characters. Like “enum” should turn up your comment, but rank a comment that contains the text “renumbers” much more lowly. A particularly smart search page might keep “enumerate” high while rejecting “renumbers”, though.

Of course, it’s true that at least in the current latest release, Lemmy fails at all of this. I hope 1.0 is at least fixing some of it?

How Lemmy does text search is via pg_trgm which works by breaking down both the content text and search text into trigram* and if the content contains enough of the search trigrams, it's considered to match the search term.

* A trigram is just a 3 character 'words', for example the trigram of 'enum' is {" e"," en",enu,num,"um "}.

What you're describing is closer to a tsvector, so you could open up an issues on Lemmy's GitHub to move from trigram to tsvector. One advantage trigrams have though is that they're language agnostic while tsvectoss need both a dictionary and to know the language (thankfully, Lemmy already has this info via the language setting, though the way it's stored will need to be changed to accommodate this). But tsvectors does provide much more intuitive language matching, like what you outlined.

[–] flamingos@feddit.uk 2 points 1 month ago (5 children)

Eh, I don't think it's that surprising. Getting a list of comments on a post vs getting them from a search term are very similar operations, so it doesn't make too much sense for these to have different queries in the backend. One thing you could do, but no client to my knowledge does, is add a search bar to a post that searches through the comments only within that thread.

Everything in the backend uses the same sorting as the posts do on that page except comments, which is frustrating. Comments do need a different sort enum as there are some options that don't apply to comments (scaled, new comments, etc.), but yeah the fact the top options don't work for comment search when they should is opaque and not user friendly.

I can't wait for 1.0 to actually come out because I feel like a broken record, but this is fixed there.

[–] flamingos@feddit.uk 2 points 1 month ago (7 children)

Ah, right comments don't actually top with time ranges in 0.19: https://join-lemmy.org/docs/users/03-votes-and-ranking.html#sorting-comments, my bad. The fact lemmy-ui still shows all of them is very confusing, I'll admit.

This is different in 1.0, the logic was changed for both posts and comments so these will work in future.

[–] flamingos@feddit.uk 7 points 1 month ago* (last edited 1 month ago)

Doing it this way is why small instances gets hammered when a user’s post goes viral.

Setting up caching in the reverse proxy layer would alleviate this a lot of this. Like, GoToSocial only recommends to set up caching for the key and webfinger endpoints, where having it set up to cache posts and profiles for like 60 seconds (or however long the Cache-Control header says, Mastodon defaults to 180s) would alleviate the strain on the server so much.

There are other thing you can do, like this post explains some other things for Misskey, but the defaults should be sensible so you don't have to be a sysadmin expert to host an instance and they're currently not. I host 2 Lemmy instances (ukfli.uk and sappho.social) from a £5/month VPS and they're able to handle bursts of hundreds of requests without issue.

Bluesky is built to assume a handful of big relay (remember that a relay can merge in contents of another) and a bunch of appview and a ton of PDS servers, feed generators, moderation labelers, etc.

People are already building small, non-archival relays so this assumption seems mute. It's also important to remember that relays are an optimisation, not a core part of the protocol.

[–] flamingos@feddit.uk 7 points 1 month ago (2 children)

I mean, this would become less trivial the more replays go into use, where to get a full view you'd have to pull from all the relays that exist.

ActivityPub's solution to this is just IMO better, the original post has a replies collection attached to it that acts as the authority the replies the post has. This also allows creators to eject replies from the collection. There are issues with the way fedi software currently handles fetching from these reply collections, but the missing replies thing is very solvable in ActivityPub.

[–] flamingos@feddit.uk 9 points 1 month ago (4 children)

If your idea is that the replies to every post look the same to any user, anywhere, at any time

This is only true of Bluesky because everyone is using Bluesky's infrastructure at the moment. If Bluesky ever deindexes someone and they start posting to an alternative relay, you suddenly don't have a guarantee of a full view of a post's replies.

[–] flamingos@feddit.uk 62 points 1 month ago

They even had a banner on the site for a little bit about how successful they were able to transfer support from Patreon:

https://web.archive.org/web/20250610153337/https://catbox.moe/

 

Cory Doctorow explaining why he endorses the "Free Our Feeds" initiative (Lemmy discussion)

During the Napster wars, the record labels seriously pissed off millions of internet users when they sued over 19,000 music fans, mostly kids, but also grannies, old people, and dead people.
[…]
One thing everyone agreed on was how disgusted we all were with the labels. What we didn't agree on was what to do about it. A lot of us wanted to reform copyright – say, by creating a blanket license for internet music so that artists could get paid directly. This was the systemic approach.

Another group – call them the "individualists" – wanted a boycott. Just stop buying and listening to music from the major labels. Every dollar you spend with a label is being used to fund a campaign of legal terror. Merely enjoying popular music makes you part of the problem.

Here's what I would say when people told me we should all stop listening to popular music: "If members of your popular movement are not allowed to listen to popular music, your movement won't be very popular."

We weren't going to make political change by creating an impossible purity test ("Ew, you listen to music from a major label? God, what's wrong with you?"). I mean, for one thing, a lot of popular music is legitimately fantastic and makes peoples' lives better. Popular movements should strive to increase their members' joy, not demand their deprivation. Again, not merely because this is a nice thing to do for people, but also because it's good tactics to make participation in the thing you're trying to do as joyous as possible.

[…] When social media is federated, then you can leave a server without leaving your friends. Think of it as being similar to changing cell-phone companies. When you switch from Verizon to T-Mobile, you keep your number, you keep your address book and you keep your friends, who won't even know you switched networks unless you tell them.

There's no reason social media couldn't work this way. You should be able to leave Facebook or Twitter for Mastodon, Bluesky, or any other service and still talk with the people you left behind, provided they still want to talk with you.

That's how the Fediverse – which Mastodon is part of – works already. You can switch from one Mastodon server to another, and all the people you follow and who follow you will just move over to that new server. That means that if the person or company or group running your server goes sour, you aren't stuck making a choice between the people you love who connect to you on that server, and the pain of dealing with whatever bullshit the management is throwing off.

We could make that stronger! Data protection laws like the EU's GDPR and California's CCPA create a legal duty for online services to hand over your data on demand. Arguably, these laws already require your Mastodon server's management to give you the files you need to switch from one server to another, but that could be clarified. Handing these files over to users on demand is really straightforward – even a volunteer running a small server for a few friends will have no trouble living up to this obligation. It's literally just a minute's work for each user.

Another way to make this stronger is through governance. Many of the great services that defined the old, good internet were run by "benevolent dictators for life." This worked well, but failed so badly. Even if the dictator for life stayed benevolent, that didn't make them infallible. The problem of a dictatorship isn't just malice – it's also human frailty. For a service to remain good over long timescales, it needs accountable, responsive governance. That's why all the most successful BDFL services (like Wikipedia) transitioned to community-managed systems.

There, too, Mastodon shines. Mastodon's founder Eugen Rochko has just explicitly abjured his role as "ultimate decision-maker" and handed management over to a nonprofit.

I love using Mastodon and I have a lot of hope for its future. I wish I was as happy with Bluesky, which was founded with the promise of federation, and which uses a clever naming scheme that makes it even harder for server owners to usurp your identity. But while Bluesky has added many, many technically impressive features, they haven't delivered on the long-promised federation.

Bluesky sure seems like a lot of fun! They've pulled tens of millions of users over from other systems, and by all accounts, they've all having a great time. The problem is that without federation, all those users are vulnerable to bad decisions by management (perhaps under pressure from the company's investors) or by a change in management (perhaps instigated by investors if the current management refuses to institute extractive measures that are good for the investors but bad for the users). Federation is to social media what fire-exits are to nightclubs: a way for people to escape if the party turns deadly.

So what's the answer? Well, around Mastodon, you'll hear a refrain that reminds me a lot of the Napster wars: "People who are enjoying themselves on Bluesky are wrong to do so, because it's not federated and the only server you can use is run by a VC-backed for-profit. They should all leave that great party – there's no fire exits!"

This is the social media version of "To be in our movement, you have to stop listening to popular music." Sure, those people shouldn't be crammed into a nightclub that has no fire exits. But thankfully, there is an alternative to being the kind of scold who demands that people leave a great party, and being the kind of callous person who lets tens of millions of people continue to risk their lives by being stuck in a fire-trap.

We can install our own fire-exits in Bluesky.

Yesterday, an initiative called "Free Our Feeds" launched, with a set of goals for "billionaire-proofing" social media. One of those goals is to add the long-delayed federation to Bluesky. I'm one of the inaugural endorsers for this, because installing fire exits for Bluesky isn't just the right thing to do, it's also good tactics.

Here's why: if a body independent of the Bluesky corporation implements its federation services, then we ensure that its fire exits are beyond the control of its VCs. That means that if they are ever tempted in future to brick up the fire-exits, they won't be able to. This isn't a hypothetical risk. When businesses start to enshittify their services, they fully commit themselves to blocking anything that makes it easy to leave those services.
[…]
We can do better than begging people to leave a party they're enjoying; we can install our own fucking fire exits. Sure, maybe that means that a lot of those users will stay on the proprietary platform, but at least we'll have given them a way to leave if things go horribly wrong.

After all, there's no virtue in software freedom. The only thing worth caring about is human freedom. The only reason to value software freedom is if it sets humans free.

If I had my way, all those people enjoying themselves on Bluesky would come and enjoy themselves in the Fediverse. But I'm not a purist. If there's a way to use Bluesky without locking myself to the platform, I will join the party there in a hot second. And if there's a way to join the Bluesky party from the Fediverse, then goddamn I will party my ass off.

 

I would like to use Bluesky. They've done a bunch of seriously interesting technical work on moderation and ranking that I truly admire, and I've got lots of friends there who really enjoy it.

But I'm not on Bluesky and I don't have any plans to join it anytime soon. I wrote about this in 2023: I will never again devote my energies to building up an audience on a platform whose management can sever my relationship to that audience at will.
[…]
Enshittification can be thought of as the result of a lack of consequences. Whether you are tempted by greed or pressured by people who have lower ethics than you, the more it costs to compromise, the fewer compromises you'll make.

In other words, to resist enshittification, you have to impose switching costs on yourself.

That's where federation comes in. On Mastodon (and other services based on Activitypub), you can easily leave one server and go to another, and everyone you follow and everyone who follows you will move over to the new server. If the person who runs your server turns out to be imperfect in a way that you can't endure, you can find another server, spend five minutes moving your account over, and you're back up and running on the new server.

Any system where users can leave without pain is a system whose owners have high switching costs and whose users have none. An owner who makes a bad call – like removing the block function say, or opting every user into AI training – will lose a lot of users. Not just those users who price these downgrades highly enough that they outweigh the costs of leaving the service. If leaving the service is free, then tormenting your users in this way will visit in swift and devastating pain upon you.
[…]
Bluesky lacks the one federated feature that is absolutely necessary for me to trust it: the ability to leave Bluesky and go to another host and continue to talk to the people I've entered into community with there. While there are many independently maintained servers that provide services to Bluesky and its users, there is only one Bluesky server. A federation of multiple servers, each a peer to the other, has been on Bluesky's roadmap for as long as I've been following it, but they haven't (yet) delivered it.

That was worrying when Bluesky was a scrappy, bootstrapped startup with a few million users. Now it has grown to over 13 million users, and it has taken on a large tranche of outside capital.

Plenty of people have commented that now that a VC is holding Bluesky's purse-strings, enshittification will surely follow (doubly so because the VC is called "Blockchain Capital," which, at this point, might as well be "Grifty Scam Caveat Emptor Capital"). But I don't agree with this at all. It's not outside capital that leads to enshittification, it's leverage that enshittifies a service.

A VC that understands that they can force you to wreck your users' lives is always in danger of doing so. A VC who understands that doing this will make your service into an empty – and thus worthless – server is far less likely to do so (and if they do, at least your users can escape).

 

At least 18 public-sector websites in the UK and US send visitor data in some form to various web advertising brokers – including an ad-tech biz in China involved in past privacy controversies, a security firm claims.

[…]

In the US, .gov websites are not supposed to run ads. In the UK, ads are allowed on .gov.uk websites, subject to some limitations. The .gov and .gov.uk sites flagged by Silent Push each publish an ads.txt file that spells out the businesses allowed to automatically sell that site's ad space to advertisers as a visitor arrives.

[…] Silent Push found a bunch of UK and US government websites with [the ads.txt] file listing various advertising exchanges and resellers ranging from Google (like what El Reg uses) to one in China.

[…]

One of the ad-tech vendors used by the .gov.uk sites, and highlighted by Silent Push, is Yeahmobi. This Chinese entity reportedly had its mobile ad SDK removed from the Google Play Store in 2018 for alleged ad fraud. Yeahmobi did not respond to requests for comment.

[…]

Silent Push's report identifies four .gov sites that, in our experience, do not display adverts though do ping web ad platforms, do list various exchanges in their ads.txt files, and may break US government CISA rules. In the UK, it's a different story, as 18 sites identified by Silent Push use Yeahmobi among others to display ads somewhere on pages.

 

From their Twitter:

FireAlpaca 12th anniversary in this November! Thank you for your continued support! We have released FireAlpaca for Linux […] FireAlpaca for Linux is available for free download from the official website. (System requirements: Ubuntu 23.04 or later, Fedora 36 or later, Debian 12 or later.) -Download FireAlpaca for Linux firealpaca.com/download/

view more: ‹ prev next ›