Discovery here IS bad, and — I hate to say it — the solution to that is an (entirely optional) algorithm that surfaces potential follows and compelling content right out of the gate.

Algorithms aren’t inherently evil. Hell, “show posts in reverse chronological order” is in itself an algorithm.

What matters are 1) choice and 2) the intention with which the algorithm was designed.

#Mastodon https://mastodon.social/@mimsical/110865836818850808

I was able to bootstrap myself here relatively easily because I was both part of the deluge of Twitter users in November of 2022 as well as highly-motivated to make it work because I hated what Twitter was becoming and inherently grokked the benefit of federation.

That’s not going to be the common case.

If Mastodon is to expand far beyond low-hanging fruit like me it absolutely needs to meet users halfway.

@jeff I’m still not getting the satisfaction from quality posts I used to get from when Twitter was good, so I agree that some kind of suggestion algorithm is needed for a service like this.

@jeff totally agree. A lot of really good accounts came here in November 2022 but some got immediately put off and still others gave up around New Year. Many stayed of course, and the software is better now, but a lot was lost.

I understand not wanting to repeat the mistakes of corporate social media but I think Masto has been overly cautious with this, and as the default Fedi option should aim to implement all Birdsite's core features in a more consensual, better way.

@jeff would it not be enough to ask new people "type in a few hashtags you're interested in or select from this well-curated list of popular hashtags" and then auto-follow these hashtags for them?

Boom, their timeline gets filled out immediately with stuff they're interested in, no need to have any kind of "recommendation algorithm" involved.

Sidenote: this is less of a problem on smaller instances with lively and relevant local timelines, I feel.

@rysiek @jeff No. Its still only sortable by chronology, I dont get to see post from people I follow from other timezones, and there is no real way for me to find people posts or news local to me. Making multiple algorithms available, making them open to analysis, and making them opt in/out sounds just fine to me.

@SarraceniaWilds

> I dont get to see post from people I follow from other timezones

I get such posts boosted into my timeline all the time.

> there is no real way for me to find people posts or news local to me

That's a fair point.

> Making multiple algorithms available, making them open to analysis, and making them opt in/out sounds just fine to me.

I am worried about the power dynamics of this. Such tools tend towards "winner takes all" situations, I feel.

@jeff

@rysiek @jeff Sure. Im also worried the same way about large instances. And also about the power dynamics of who gets to gatekeep whether an algorithm at all can be made available, let alone which one, and who that decision serves.

@SarraceniaWilds agreed on the large instances, I even wrote about it:
https://rys.io/en/168.html

The gatekeeping problem is wider, it's about who gets to decide the direction of the largest instance project on fedi, and why are certain features implemented and others are not.

But as I noted in a separate thread, recommendation algos can be implemented as bots, without having to wait for instance software to implement them.

@jeff

Mastodon monoculture problem

Recent moves by Eugen Rochko (known as Gargron on fedi), the CEO of Mastodon-the-non-profit and lead developer of Mastodon-the-software, got some people worried about the outsized influence Mastodon (

Songs on the Security of Networks
@rysiek @jeff Why should I rely on the chance that two of the people I follow also follow each other and one is in my timezone and one is not and the one that is boosts the other for me to see it at the right time?

@SarraceniaWilds sure.

But with recco algos you rely on chance that particular set of circumstances converge such that the given post gets picked up and promoted to you by the algo. And I am not even getting into the questions of who designed the algo, what are the edge cases, and so on.

You always necessarily rely on "chance", simply because there is too much stuff published on fedi, and physically not enough time to read it all.

@jeff

@SarraceniaWilds : "there is no real way for me to find people posts or news local to me"

@rysiek : "That's a fair point."

The solution is: hashtags of geographical names.
@jeff

@xdej @SarraceniaWilds @rysiek I live in Pasadena, California.

If I want to find local posts for my area, do I search for #Pasadena?

If so, I’ll likely get news for Pasadena, Texas.

Do I search for #PasadenaCA? That might work, but some people might tag their posts with #PasadenaCalifornia and I’ll never see them.

And that’s just a local example. Will people searching for #Georgia get posts about the US state, or the country?

Hashtags are a hack.

@xdej @SarraceniaWilds @rysiek And that’s not even considering the fact that people are awful about remembering to add hashtags to their posts. And who can blame them? Adding all the hashtags needed to make stuff discoverable results in a lot of ugly, spammy-looking posts.

It’s not just finding things relating to geography, either. They are at best a stopgap for more robust metadata and full-text search functionalities.

@jeff @xdej @SarraceniaWilds @rysiek I "fixed" the discovery problem by not joing a generalist instance, the various *.social. I'm mostly interested in gamedev, so by joining the "gamedev" instance and looking at the local timeline gives me all the discoverability I need. I'd do the same for other interests, Unix, arts, gardening. I understand however that this is not a thing everyone likes to do though. (For the geography problem ideally I'd like big cities to run their own instances).
@jeff @xdej @SarraceniaWilds @rysiek I live in the San Gabriel Valley and I don’t want to see posts that originate in #SGV I want to see posts about the #San #Gabriel #Valley or #Pasadena or whatever. But getting everything geo located sounds like a #CCPA / #CPRA nightmare. So do you introduce tags outside of hash tags? I agree hashtags are a hack, but everything else seems worse. See #sangabrielvalley hash tags here in this post as to how bad it can get.

@TedT A fellow local! 😃

On an unrelated note: I was a regular visitor to TheOneRing during an extended Tolkien kick I went in around the time the LOTR films came out (re-read the books, got into the lore, etc). Great work with that site — it was incredibly well-done for what it was.

@jeff thanks for all the kind words.
@xdej @SarraceniaWilds @rysiek @jeff Ugh. Freeform geotagging is always an awful solution. If I'm tagging local posts #Ypsilanti, but someone more casual is tagging posts #Ypsi, and someone more formal is tagging posts #YpsilantiMI, we end up with three groups of people not talking to each other, or people filling the footer of every post with multiple similar tags.
@xdej @SarraceniaWilds @rysiek @jeff The total lack of location awareness in #Mastodon's design is going to be an obstacle for improving discovery. "Activity near you" is a useful signal for algorithmic discovery (#Facebook makes it work better than #Twitter ever did), but Mastodon's designers are so afraid of the world that they can't be reasoned with.

@bauser first of all, there is a bunch of other software on fedi than just Mastodon.

Secondly, I don't think saying things like "[fedi] designers are so afraid of the world" is actually helpful as far as finding solutions to this is concerned.

It ignores — and I would even say: ridicules — the very real experience of people who got doxxed or otherwise harassed thanks to the design of other social networks, and decided to take precautions against that here.

@xdej @SarraceniaWilds @jeff

@bauser I'm sure you'd agree that summarizing your position in this using terms like "ignorant of how certain tools can power harassment" would be a pretty low blow. Maybe let's exercise some civility and at least try to pretend we respect the (very real, often coming from personal experiences) concerns of others involved in this conversation.

@xdej @SarraceniaWilds @jeff

@rysiek @xdej @SarraceniaWilds @jeff I'm well aware of "how certain tools can power harassment," but I'm also aware of the good things they can do like help people promote good messages and organize against bullies. (Some people on the Internet *deserve* their pile-ons.) Mastodon cuts off its trunk to spite its face because its designers only see worst-case scenarios. That's stupid fear, and I won't pretend otherwise.

@bauser I'm not convinced that calling people's lived experiences "stupid fear" is the winning strategy here, but you do you my friend. 🤷‍♀️

@xdej @SarraceniaWilds @jeff

@rysiek @bauser @xdej @SarraceniaWilds Yeah, I’m not going to co-sign that framing.

I do think, though, that there’s a tendency on here to reflexively dismiss a lot of pretty basic functionality needs outright rather than constructively engage with attempts to make them work more safely.

Discovery doesn’t inherently preclude adding privacy controls, opt-in/opt-out, etc, but a lot of these people aren’t even interested in having that discussion.

@rysiek @bauser @xdej @SarraceniaWilds Also, it’s worth noting that a lot of features that are de rigueur on Mastodon now have also been used for harassment campaigns.

A hashtag, for example, served as the rallying point (and even very identity) of the ‘GamerGate’ harassment mob.

@bauser @xdej @SarraceniaWilds @rysiek It’s a general problem with hashtags, really. Though geography presents some unique challenges.

There are other examples. One I came across with a couple months ago was using hashtags to keep up with news out of Apple’s developer’s conference.

We had people using some combination #WWDC, #WWDC23, and #WWDC2023. To get everyone talking together you had to pollute your post with ALL of those tags. It was a mess.

@jeff @bauser @xdej @rysiek Consider also the case of government agencies creating own instances to host accounts to make announcements to locals. No way to find out that this has happened, no way to prioritize the post, no way for the agency to get around this. Use a bot to reboost every hour so the followers lucky enough to find it actually see it? Clunky and inelegant, barely useable, perfect for government implementation and open source collaborative project, drinks all around, ship it.
@rysiek @jeff Also a hashtag doesnt make a post interesting. A topic doesnt make an op ed impactful. A genre doesnt make a book well written. Faves and boosts dont either, but if people with similar tastes to me find certain things interesting, I might too, and Id like to see it.

@SarraceniaWilds an algorithm doesn't either, as I'm sure we agree.

I'm not going to die on this hill. But I do feel there is value in the direct human connection, so to speak, created by what I see in my timeline coming either directly from people I follow, or boosted by them.

I can always say: "this is exactly why I got this in my timeline, and this is the person responsible for it, for good or bad."

I find this kind of trivial transparency and humanity refreshing.

@jeff

@SarraceniaWilds of course as long as I can disable or not use any kind of recommendation algo, I can have my trivial transparency and humanity of my timeline, and you can have your recommendations. Which is great.

But the point about power dynamics of such recommendation systems remains.

@jeff

@rysiek @jeff Implying any alternate system than your preferred one is inhumane is just wild my dude

@SarraceniaWilds where is this coming from? Does any mention that "I like the humanity of X" implies that any and all alternatives are immediately "inhumane"?

I don't see how "I like the humanity of having a walk with a friend" would imply that walking alone or cycling is "inhumane." "Inhumane" is an extremely loaded term, and no, I am not implying recco algos are inevitably "inhumane."

Why read and interpret what I wrote above this particular (pretty hostile, it feels) way?

@jeff

@rysiek @jeff And as for transparency I dont understand why you think an algo cant be open source.
@rysiek @jeff Like am I misunderstanding some fundamental thing about the order of showing posts that it cant possibly be known how the calculation is done? Chronological is an algorithm in that its a choice of sorting presentation of posts. If an algorithm isnt allowed to be transparent how do you know it is showing you truly chronological sorted posts and boosts? Like what are you even saying?

@SarraceniaWilds where did I say an algo "cannot be open-source"? 👀

Algorithmic transparency requires more than just openness of code, though. If the algo, for example, uses any kind of machine learning, apart from the code itself you need information on the datasets used in training, how they are labeled/categorized/etc, and so on.

That's why I wrote "trivial transparency." There is a way to have transparency with recco algos, it's just *more difficult*.

@jeff

@rysiek @jeff Im not even necessarily talking about recommendations from outside who I follow. Im talking about weighted sorting of what I see. I dont get to see things from the people I already follow if its chrono only. Also what about an algo that tracks what Ive already seen and weighs unseen content? That has nothing to do with outside recs.
@SarraceniaWilds @jeff sure, and I can see myself having less of an issue with that since it's sorting/searching through posts you already had access to. So, much less useful for abuse.
@rysiek @SarraceniaWilds @jeff The best solution is if people could more easily recommend follows to each other, not just boost posts. https://mastodon.social/@misc/110725796435114474 And I've never loved follow friday because I hate picking favorites. I think the best solution I've seen is what @stavvers recently did, exporting her follows and inviting friends to join and import those from the get go. If Mastodon made it easy to do this, it would be a big deal.

@rysiek @jeff Not really, because you're expecting newbies to know which hashtags will find good content on their specific instance/federation, which isn't a newbie-friendly approach (especially on young or otherwise under-federated instances).

I'm noticing a trend in these discussions, in that the response to any criticism of #Mastodon is effectively "New users just need to be social media experts."

@jeff I just want this to be easy to use so that other people don’t try it, completely fail to understand how to get going, and never open the app again.
@jeff
Agreed. I feel like "show posts with a certain threshold of likes and/or boosts" would be a nice touch, though it might not be good for smaller content creators.
@jeff is it possible to have an algorithm that shows me content i might find compelling and *not* give a company access to my user data?

@feelnotes Probably not.

But it is possible to make using discovery features entirely opt-in, as well as provide full transparency over what information is collected and how it is to be used.

Plus, it’s not as if a malicious actor couldn’t be collecting this sort of information now, if you use their server.

@jeff i dunno, it’s hard for me to imagine that kind of algorithmic feed existing without the incentives of data harvesting and advertising, but maybe that’s just a failure of imagination on my part.

i do remember early social media, before algorithmic feeds/ recommendations, and it was just fine.

@jeff When I'm in the mood for some algorithm I check out the # Explore feed.

When I need to search for something I saw before, I frown and go to ex-Twitter.

@jeff @mammoth are doing something similar to this.
there is a "Following" and a "For You" tab in there app.
@MrLee @jeff If @mammoth are listening, I love the app but can’t use it because of the way it truncates long toots without any indication that there’s more to them.
@jeff

Tumblr open sourced their feed algorithm. People smarter than me might come up with a clever solution for the Fediverse.
@jeff I've been thinking about this and this doesn't have to be solved by Mastodon. Individuals can write bots which implement algorithms. Has anyone written a "hottest toots" bot yet? Seems easy.
@weyoun6 @jeff
Just going to say- if it seems so easy, you are already working on it and should have it done soon, right?
@EvilGinger013 @jeff it would be a fun weekend project.
@weyoun6 @jeff Lucky you, then. It's Friday! Get going! :)

@weyoun6 @jeff

you have "hottest toots", it's explore tab.

@EvilGinger013

@jeff I'm using Trunks on Android - it's got an "explore" tab which surfaces interesting content, hashtags and ppl to follow. It's been really helpful
@jeff I have been using Ivory since it came out and it has a trending tab. That has been working super well for me and it doesn’t feel intrusive at all. No idea how it works though
@allie it's from Mastodon itself. It provides posts and hashtags that are used "more than others" (whatever that means).

@djvdq That’s a curious one. It does work though. It feels a bit like the Reddit frontpage in 2011 or so, where it has somewhat interesting stuff, but it doesn’t feel like it’s personalised.

Think that might be what throws me off the modern web, where it’s different for everyone. I miss when there was 1 “front page” for everyone on a site

@jeff Yes! As long as it’s chosen/activated by the user, it would be a great addition to Mastodon. Some help text could even transparently explain in a couple of lines what the algo does.

It could take several form, for instance a different sorting mode for the home timeline, or a “For you” mode for the Explore tab, or its own timeline.

I had opened this issue on Github which might be partly relevant: https://github.com/mastodon/mastodon/issues/4451 (as well as this one about the Explore tab https://github.com/mastodon/mastodon/issues/23973 )

Discovery/Catch-up timeline · Issue #4451 · mastodon/mastodon

This is an idea for having a new extra timeline for discovering content and people and catching-up with toots you may have missed in your Home timeline. It would displays something like: The most r...

GitHub

@jeff and, to add to that argument, the queries and logic around "in reverse chronological order" in Mastodon are ridiculously complex¹. Complex algorithms already decide what&who you see in your timeline.

¹spread through the codebase. But to fill your seemingly simple reverse chronological timeline, Masto must consider instance blocks&filters, personal blocks&filters, deletion, replies, visibility, delivery latency, hashtag subscriptions, deduplication of all that. And federation of all that.