Just a reminder to use the awesome language settingS for toots.

People then can filter toots in certain languages.
-> e.g. if you don't want to see my toots in German or Spanish. Or English.

This is a great tool, since it allows people to write and boost in different languages without having to think 'am I annoying my mutuals?'

By breaking the dominance of English, a heritage of colonialism and we'll make the Fediverse a more diverse place! 🦄

#Mastodon #MastodonTips #FediTips #Languages #Babylon #MastoHacks #FediHacks

So on the first one, @curvenote is this rich text editor (and more too) that's written in React and is written by the same ppl that make this sick as hell #Markdown dialect @mystmarkdown

so consider the interface part of that basically done, I'm assuming it's not that labor intensive to borrow their react components and juice out the text into markdown paragraphs.

the rest is literally just some minor modifications to the edit API and probably the activitypub serializer and then some UI candy for embedding the replies within the blogpost layout. right???
#MastoDev #MastoHacks

Ok I'm gonna try and do 1 hour on #DIYAlgorithms per programming day until I get a reasonable prototype with some basic Algo examples, that'll be here: https://git.jon-e.net/jonny/diyalgo
prior context here: https://wiki.jon-e.net/Masto_Forks/DIY_Algorithms

the first things I think are simple but the most requested ones I've seen on here:

  • #NRecent : feed with just the most recent n posts from everyone - to balance us adhd hyperposters with ppl more careful with their words.
  • #ChronoMatching - to rotate your friends who post at different times from you due to time zone/sleep cycle/etc. into your posting cycle.
  • #ExclusiveFeeds (@lina ) - a copy of your home feed without posts that have been included in an exclusive feed (and the exclusive feed itself) for situations like eg. #monsterdon where you don't want to mute something but you don't want it to flood your feed

for now this all just works by POSTing an array of status IDs to a modified lists endpoint in order to be maximally general/interoperable with other Algo implementations. things like NRecent make me think there should be some way to do diffs instead, where you remove one item on the feed and/or insert one in a position too tho. maybe I am preoptimizing.

I am thinking the way to do this will be to have a system of
a) features that can be lazily computed for different object types (status, account, or derived types like lists of accounts, etc.)
b) a tree of procession steps with each node returning a value bounded 0-1 and the root being used as the position on the feed. posts that should not be put on a feed have a special value of NA that terminates processing the rest of the tree.
so that
c) an algo can be defined as an easily serializable eg. JSON/ #JSONLD-like format that specifies features as dependencies and then describes the processing tree with an array of node objects, each pointing to some node type (and where it comes from, to plan ahead for plugins), parameters, and how it's connected in the tree.
d) eventually, new URL routes/API endpoints so you can link to, follow, and re-use other people's (opt-in public) algos in-medium.

the goal is to get very low-fi, ie. no big data, inaccessible hardware requiring NLP or neural nets and shit - explainability and transparency by designing simpler qualities that people combine in specific ways. yno. like .... designing an algorithm on purpose. for our own benefit, not some investor.

#LongPost #MastoDev #MastoHacks

diyalgo

DIY Algoritms for mastodon

jonny's computer website

Ok no I think the simpler way to do #ZenodoSocial is actually to just like generalize the types of messages you can send using #LinkedData / #JSONLD. I think one might call these #UserSchemas.

re: https://neuromatch.social/@jonny/110001265968620084

  • Make a schema that defines a type of message, eg with JSON Schema in RDF

  • Make an API endpoint that lets logged in accounts submit schema, as well as an {id} to use for a URL. if it is not already taken, that schema now can be found at instance.domain/schema/{id} and used in JSON-LD as a @context

  • Add a field to the API endpoints for posting statuses and fetching the home timeline that allows you to specify the schema that you're using when you post (ideally either local or by any resolvable URI, tho dealing with generalizable RDF parsing makes me gulp so maybe just start with JSON-LD schema). Don't deliver user schema messages to instances that don't support them or base masto accounts that have not specifically subscribed to them - see below. Alternatively just post JSON-LD from a base masto account and specify the type within the object.

  • Add a field to the instance metadata that specifies that you support user schema.

  • Backwards compatibility: generally, from a base masto instance one would make a designated alt that posts/receives user schema messages. Base masto accounts can specify an alt with profile metadata fields. User schema instances and other clients that use user schema know to resolve those fields and follow/query them. To follow user schema posts from a base masto account, one sends a structured DM to indicate that user schema posts should be DMed to it. clients know to expand threads to capture JSON-LD split across multiple posts

  • Make integrations with arbitrary other software that lets you swap structured data on your existing social infrastructure????? my first trivial example being to swap highlights and annotations in Zenodo, but that might be enough to pry more generalized linked data handling into masto without making a true plugin interface or completely rewriting it?????

#MastoHacks #MastoDev #UserSchemas

Jonny (@[email protected])

I wonder if you could hack masto so you have either multiple outboxes, or be able to handle multiple types of messages in the outbox - eg. I want to make a #ZenodoSocial highlighting extension that lets you post and subscribe to other people's highlights, but I wouldn't want those to show up as posts in the feed..... #MastoHacks #MastoDev

Neuromatch Social
I wonder if you could hack masto so you have either multiple outboxes, or be able to handle multiple types of messages in the outbox - eg. I want to make a #ZenodoSocial highlighting extension that lets you post and subscribe to other people's highlights, but I wouldn't want those to show up as posts in the feed.....
#MastoHacks #MastoDev
ok you know what would actually rock: a #Zenodo plugin where you could sync a collection to an #ActivityPub outbox, and do social public highlighting that way - share a set of papers under a topic for ppl to browse, but also share your annotations and then be able to show your friends annotations over the papers you're reading if u want to
#MastoHacks #MastoDev
I wanna make account-custom CSS that gets layered on top the current theme when u view someone's profile or their posts come on
#MastoHacks #CustomCSS
@shanselman @rashmi Also, follow your favorite hashtags. Immediately get great content. #MastoHacks

@tob @RyanJSuto @shoq

Just add buzzwords SYNERGY randomly in all caps throughout RETURN ON INVESTMENT the reply to increase post visibility and reach. 😋

#MastoHacks

Filter auf
"🐦🔗: https://twitt​er​.c​om/"
und schon sieht man die Crossposter nicht mehr...

Bitte. Gerne.
#MastoHacks