I gave a little bit of thinking on the changes I want to do to #badgefed before making my server public.
The one who emits the badges, is a #fediverse actor, this should be no controversial, after all, I use the public/private keys to sign the badges itself.
But in the first prototype the recipient of the grant, was a record in the system itself. The idea was to allow recipients outside the fediverse to receive badges as well. I did not wanted to store the email, so I required a profile url, think of your fediverse url, or for those outside #linkedin, #blog, even #facebook if they want. However, it gets things a little bit more complex and less clean than what I want.
Today, I decided that the recipient MUST be an actor of the #Fediverse. That is, it, that will be embedded as a mention, and should be clean and neat. For those who are not in the fediverse, #badgefed will provide an actor (and profile url) where they can add basic information such name, and bio links. Or they can create an account in any of the fediverse platforms at the moment of receiving the badge.

UPDATE: A blog (that is federated) was created for communicate the progress, follow @badgefed
--
I am creating a #ActivityPub minimalistic implementation of a badge system similar to Credly, built using #dotnet and leveraging the #Fediverse
I have issued a first badge, the idea is to decentralize the verification systems, and allow organizations to self-certify. It is incredible that organizations like Microsoft or Non-Profits pay thousands of dollars to companies like Pearson to just provide "verified" badges. Similar to mastodons installed in social-dot-something, thinkg of badges<dot> mozilla<dot>com , certifications<dot>myschooldistrict<dot>com. Or even a podcast emitting a badge for its guests, with the verification in the domain.
ActivityPub already offers a secure way to sign artifacts and interact between actors. The fediverse already have people with profiles, a social graph as @mike says, ready to use. Think of how LetsEncrypt disrupted that market of few actors selling certificates for websites.
I have a functional poc,
@fediverse is not a mastodon, pledora or blog, it is an actor in a badge system, but you can follow it in Mastodon. Its badges will show in #mastodon but they are not notes or articles. If you want to learn more, follow me, I will be sharing the progress here. Or follow the github project here: https://github.com/tryvocalcat/activitypub-badges
Who wants a badge of early adopter?
Hello, I'm an open source software engineer in my late 30s living in #Seoul, #Korea, and an avid advocate of #FLOSS and the #fediverse.
I'm the creator of @fedify, an #ActivityPub server framework in #TypeScript, @hollo, an ActivityPub-enabled microblogging software for single users, and @botkit, a simple ActivityPub bot framework.
I'm also very interested in East Asian languages (so-called #CJK) and #Unicode. Feel free to talk to me in #English, #Korean (#한국어), or #Japanese (#日本語), or even in Literary Chinese (#文言文, #漢文)!
Introducing #BotKit: A #TypeScript framework for creating truly standalone #ActivityPub bots!
Unlike traditional Mastodon bots, BotKit lets you build fully independent #fediverse bots that aren't constrained by platform limits. Create your entire bot in a single TypeScript file using our simple, expressive API.
Currently #Deno-only, with Node.js & Bun support planned. Built on the robust @fedify foundation.
^ [all photos by me]
/ addendum:
Today we are merely building #ActivityPub software (see pinned talk [EN] or Berlin Fediday Talk [DE]).
This includes patterns which can be helpful for disasters too – like federated geocoding, wikidata, wikibase and OSM integration.
If it feels like you can help or are interested, let me know.
Offentlige virksomheter bør eie egen publiseringskanal
Sosiale medier som twitter har vært en populær og lett tilgjengelig publiseringsplatform for ting som værmeldinger og trafikkmeldinger og oppdateringer fra politiet.
Sosiale medier har også vært en fin måte for radioprogrammmer og TV-programmer som går live til å få reakskjoner og innspill fra lyttere/seere inn i programmet i sanntid.
Sosiale medier har vært en ypperlig måte for journalister til å kontakte kilder og få tips.
Sosiale meldinger har vært en måte for politikere å ha direkte kontakt med sine velgere og å snakke direkte til de samme velgerne.
Men så har det dukket opp problemer med bruk av sosiale medier.
De sosiale mediene kostet i utgangspunktet ingenting å bruke. Men ingenting er gratis, noen måtte betale for kostnadene med å holde serverene i drift.
Det som nå betaler for de “gratis” sosiale mediene, er at personer som har lagt inn informasjon de er avhengig av og knyttet kontakter de er avhengige av, betaler indirekte med å bli et produkt til de som skreddersyr reklame.
Et annet problem er at man kan bli sensurert på måter som virker helt vilkårlig, uten mulighet til å finne ut hvorfor man blir sensurert eller mulighet til gjøre noe med det.
Og… så kan et sosialt medium bli kjøpt av en milliardær med en agenda som ikke passer med et liberalt demokrati og en tolking av ytringsfrihet som er at alle som er enig med ham kan si det de vil, mens de som mener noe annet enn ham blir straffet.
Spørsmål som har blitt stilt er: hvorfor finnes det noe åpen kildekode-alternativ? Hvorfor er det ingen informasjonskanal som de som publiserer kan eie sjøl?
Svar på første spørsmål er at det finnes ikke bare ett åpen kildekode-alternativ, det finnes mange.
Svar på andre spørsmål er at det finnes en sånn informasjonskanal og at den heter “ActivityPub“. ActivityPub binder sammen tjenester som blandt annet mastodon og pixelfed og har eksistert siden 2018.
Hva er ActivityPub
Så: Hva er ActivityPub?
ActivityPub er en nettverksprotokoll som brukes til meldingsutveksling over internett.
ActivityPub er definert som et sett av standarder av W3C
Rent teknisk så består ActivityPub av JSON over HTTP.
JSON’en er JSON-LD og id til JSON-elementene er navigerbare HTTPS-URLer som peker på elementene, så ActivityPub danner faktisk et semantisk web (uten at jeg, eller noen andre jeg har sett så langt, vet hvordan denne egenskapen skal utnyttes til noe praktisk… men: artig å vite!).
ActivityPub knytter mange tjenester sammen
Jeg selv bruker 4 forskjellige tjenester som er knyttet sammen med ActivityPub
Jeg bruker mastodon som en slags hub mellom de andre tre tjenstene.
En kamerat av meg karakteriserte mastodon som “USENET med bilder” og det var egentlig ganske treffende (for oss som husker USENET).
Mastodon likner på twitter i utseende og oppførsel, men det er to klare forskjeller:
twitter.com med mastodon.social. Man kan spinne opp sin egen server og starte å følge folk på andre servere og så begynner trafikk å flyte innMerk: det at mastodon eller pixelfed ikke har algoritmer er ikke en egenskap som blir diktert av ActivityPub.
Det å ikke ha algoritmer til å styre brukernes feed, er et aktivt valg gjort av utviklerene back mastodon og pixelfed.
Metas Threads, som også støtter (til en viss grad) ActivityPub, omfavner algoritmer.
Hvordan flyter trafikk i ActivityPub
En ting jeg lenge lurte på, var: hvordan fungerer egentlig denne “federeringen“…? Hvordan er det postinger flyter rundt i fediverset?
Den enkleste måten å forklare er å bruke et eksempel.
Eksempelet er at noen, meg i dette tilfellet, setter opp en egen mastodon-server mastodon.bang.priv.no.
Når jeg setter opp og starter mastodon.bang.priv.no så sitter serveren bare der uten noen artikler og uten noen brukere. Den sender ingenting og mottar ingenting.
Så lager jeg brukeren @steinarb på serveren og det går fortsatt ingen trafikk ut og inn.
Bruker @steinarb poster en artikkel. Siden @steinarb@mastodon.bang.priv.no ikke har noen følgere så kommer ikke artikkelen lengre enn mastodon.bang.priv.no.
Så bestemmer @steinarb@mastodon.bang.priv.no seg for å følge @Gargron@mastodon.social (dvs. grunnleggeren av mastodon)
mastodon.social.bang.priv.no gjør et WebFinger-kall til mastodon.social for å finne konto-URLen til @Gargron@mastodon.social (“self” i responsen fra WebFinger)
{ "links": [ { "rel": "self", "type": "application/activity+json", "href": "https://mastodon.social/users/Gargron" } ]} Merk: bruk av WebFinger går utenfor ActivityPub, å bruke WebFinger for å få tak i brukerinfo er noe mastodon har begynt å gjøre og er oppførsel kopiert av andre fediverse-tjenster. Eugen Rochkos bloggpost fra 23. juni 2018 How to implement a basic ActivityPub server beskriver bruk av WebFinger for å identifisere en følger og det er eneste beskrivelse jeg har funnet av WebFinger sammen med en ActivityPub-server
Konto-URLen til @Gargron@mastodon.social returnerer JSON-LD for kontoen som inneholder bla innboks og offentlig krypteringsnøkkel
{ "@context": [ "https://www.w3.org/ns/activitystreams", "https://w3id.org/security/v1" ], "id": "https://mastodon.social/users/Gargron", "type": "Person", "preferredUsername": "Gargron", "name": "Eugen Rochko", "following": "https://mastodon.social/users/Gargron/following", "followers": "https://mastodon.social/users/Gargron/followers", "outbox": "https://mastodon.social/users/Gargron/outbox", "inbox": "https://mastodon.social/users/Gargron/inbox", "publicKey": { "id": "https://mastodon.social/users/Gargron#main-key", "owner": "https://mastodon.social/users/Gargron", "publicKeyPem": "-----BEGIN PUBLIC KEY-----\nMIIB...DAQAB\n-----END PUBLIC KEY-----\n" }} Merk: Feltet id inneholder en URL som er samme URL som ble brukt til å laste JSON’en over, dvs. “self reference” (dette er et SHOULD-krav i standarden)
@steinarb@mastodon.bang.priv.no gjør en HTTPS POST av ActivityPub Follow til innboksen til @Gargron@mastodon.social (dvs. https://mastodon.social/users/Gargron/inbox)
{ "@context": "https://www.w3.org/ns/activitystreams", "type": "Follow", "id": "https://mastodon.bang.priv.no/users/steinarb/outbox/123456789" "actor": "https://mastodon.bang.priv.no/users/steinarb", "object": "https://mastodon.social/users/Gargron"} mastodon.social sjekker at “object” matcher id på en lokal brukermastodon.social gjør så en HTTPS GET til URLen i “actor” og forventer der å finne en profil av liknende type som resultatet fra “self” overmastodon.social sjekker at returnert JSON-LD fra “actor” URL inneholder en inboxmastodon.social sjekker at Signature-header på HTTPS POST-operasjonen som legger Follow-meldingen i https://mastodon.social/users/Gargron/inbox, matcher publicKey i returnert JSON-LD fra “actor” URL mastodon.social gjør en HTTPS POST til innboksen til @steinarb@mastodon.bang.priv.no med en Accept (kunne vært en Reject…)
{ "@context": "https://www.w3.org/ns/activitystreams", "type": "Accept", "actor": "https://mastodon.social/users/Gargron", "object": "https://mastodon.bang.priv.no/users/steinarb/outbox/123456789"} mastodon.bang.priv.no svarer på HTTPS POST med en kvittering av mottatt melding og fortsetter asynkrontmastodon.bang.priv.no bruker id til å slå opp profil og finner ut at dette er en profil den allerede har lastetmastodon.bang.priv.no tidligere har lastet ned profil-JSON’en til @Gargron@mastodon.social har den allerede publicKey for kontoen og kan sjekke Signature-header på HTTPS POSTid til Follow-forespørslen dette er en Accept av, som kan sjekkes om samstemmer med en forespørsel som serveren tidligere har sendtmastodon.bang.priv.no legge @Gargron@mastodon.social inn i lista over kontoer som @steinarb@mastodon.bang.priv.no følger Etter at denne runddansen er over så har @steinarb@mastodon.bang.priv.no blitt med i følgerlista til @Gargron@mastodon.social og @Gargron@mastodon.social har blitt med i lista over kontoer som @steinarb@mastodon.bang.priv.no følger.
Når @Gargron@mastodon.social poster en melding, så går mastodon.social gjennom følgerlista til @Gargron@mastodon.social.
En av følgerne er @steinarb@mastodon.bang.priv.no, så derfor tar mastodon.social kontakt med mastodon.bang.priv.no og legger meldingen inn i innboksen til @steinarb@mastodon.bang.priv.no.
Serveren mastodon.bang.priv.no sjekker at det som kommer inn i innboksen til @steinarb@mastodon.bang.priv.no har en Signature-header som matcher “publicKey” i profilen til @Gargron@mastodon.social og dersom de matcher, slippe meldingen gjennom.
Nå har en posting kommet inn fra utsida, så nå har det blitt trafikk inn på mastodon.bang.priv.no.
I framtida vil alle postingene @Gargron@mastodon.social legger ut komme inn på mastodon.bang.priv.no.
Alle postingene @Gargron@mastodon.social bestemmer seg for å booste vil også komme inn på mastodon.bang.priv.no.
Postingene fra @Gargron@mastodon.social vi også bli synlige for eventuelle andre brukere på mastodon.bang.priv.no og dersom postingen inneholder en hashtag som følges av andre brukere, f.eks. #norsktut, så vil meldingen dukke opp i feeden til andre brukere på mastodon.bang.priv.no som følger hashtaggen.
Hvis mastodon.bang.priv.no skulle være nede eller utilgjengelig når @Gargron@mastodon.social poster en melding, så vil meldingen aldri komme i feeden til @steinarb@mastodon.bang.priv.no.
At man godtar at man kanskje mister en posting nå og da, fjerner mye kompleksitet fra serverene.
Dersom @Gargron@mastodon.social ser at han blir fulgt av @steinarb@mastodon.bang.priv.no og bestemmer seg for å følge tilbake, så vil samme verifiseringen som over skje i motsatt retning og nye postinger fra @steinarb@mastodon.bang.priv.no vil havne i feeden til @Gargron@mastodon.social (og være potensielt synlig for alle andre brukere på mastodon.social).
Men artikkelen @steinarb@mastodon.bang.priv.no postet før han hadde noen følgere, vil ikke være synlig for @Gargron@mastodon.social for den artikkelen kom seg aldri av mastodon.bang.priv.no.
Bruken av nøkler som matcher URLene posterne sier at de kommer fra gjør at selv om man ikke vet hvem som er i hver ende, så kan man anta at de hører hjemme på de serverene de sier at de kommer fra. Dette er som regel “godt nok”.
Hvordan er det med spam
Det er fort å tenke at dersom alle kan sette opp sin egen server så vil det være lett for spammere å sette opp egne servere og hamre løs med spam inn i fediverset.
Men det tar tid å sette opp en server og starte å federere trafikk.
Du trenger at noen følger deg for at du skal kunne sende trafikk ut fra egen server.
Ikke minst: de som skal se meldingene dine må følge deg.
Og det tar kort tid for de store instansene å stenge for servere som driver med spamming. Mastodon-programvaren har en del innebygde mekanismer for å utelukke postere og servere.
Så distribuert-biten er mindre sårbar for spam enn jeg fryktet.
Jeg har ikke opplevd veldig mye spam i fediverset.
Andre har opplevd mer:
Jeg har ennå ikke opplevd en eneste spam-melding direkte inn i feeden min. Kanskje fordi jeg ikke drar inn “new on server” inn i feeden min? Eller lytter på hashtagger som spammerne bruker?
I forrige uke så jeg de to første spam/phishing-artiklene jeg har sett på mastodon. De lå ikke på toppnivå, de kom som kommentarer på postinger så de ble ikke vist før jeg så hele tråden under postingene. Jeg rapporterte begge og de er borte nå.
Første opplevelsen av mastodon da jeg kom fra twitter var at det var mye mindre spam enn der jeg kom fra. Og ikke minst: mye mindre “lovlig” reklame (som i ingenting).
Men siden har det dukket opp dodgy følgere av samme type som dukket opp mye på slutten på twitter og gjerne lagd samme dag og som følger mange andre profiler og har ingen egne postinger.
Profilene har stort sett forsvunnet rett etterpå.
Spam-profiler som jeg har sett har vært på de store instansene (f.eks. mastodon.social).
Spam-profilene har vært av to typer:
Det har blitt mindre av den første typen fordi mastodon-programvaren nå blir distribuert med of åpen registrering disablet som default. Og de store instansene har blitt bedre på å beskytte seg selv.
Usikker på hva som skjer med kaprede profiler.
Hvordan jeg bruker mastodon som hub for mine ActivityPub-tjenester
Jeg har, som nevnt over, følgende tjenester som støtter ActivityPub:
Jeg har latt @steinarb@mastodon.social følge kontoene @steinarb@pixelfed.social, @steinar.bang.priv.no@steinar.bang.priv.no og @steinarb@bookwyrm.social.
Jeg lar @steinarb@mastodon.social booste alle postinger som kommer fra de andre kontoene, noe som betyr at all som følger @steinarb@mastodon.social også får postinger fra de andre, mer spesialiserte, kontoene mine i feeden sin.
Hvordan blir innhold fra andre tjenester vist i mastodon
Mastodon er en mikrobloggetjeneste som minner om twitter (som det var før det ble ødelagt av trollbots og reklame). Mastodon tillater flere tegn pr post enn twitter gjorde (mastodon tillater som default 500 tegn, mens twitter tillater 280 tegn), tillater opp til 4 bilder (eller annet medieinnhold) pr post og dersom man legger på en URL så vil mastodon se etter OpenGraph-informasjon på URLen og bruke OpenGraph-informasjonen (tittel, beskrivelse, bilde) til å lage et preview av URLen i posten.
Pixelfed er en bilde- og videodelingstjeneste ala Instagram. Jeg har aldri postet en eneste video der, men jeg poster enkelt-bilder og slideshow. Slideshow’ene kan inneholde opp til 12 bilder.
Jeg følger pixelfed-kontoen min fra mastodon-kontoen min. Det betyr at alt jeg poster på pixelfed-kontoen dukker opp i feeden til mastodon-kontoen min.
Figure 1: Et slideshow i pixelfed (til venstre) og samme slideshow vist som en mastodon-posting (til høyre)
Enkeltbilder vises omtrent på samme måte som på pixelfed, men slideshow blir nedgradert til de 4 første bildene. I tillegg er det en lenke tilbake til web-versjonen av pixelfed-postingen.
Pixelfed har mulighet til å kommentere på postinger og like postinger og fremheve postinger, på linje med det man kan gjøre i mastodon. Men mulighetene er begrensede i forhold til det man kan gjøre i mastodon. Pixelfed er først og fremst et sted du kan publisere bilder og der du kan se andres bilder.
WordPress er en blogg-platform. Med ActivityPub plugin aktivert på bloggen min (wordpress.com info om ActivityPub plugin) så ble bloggen synlig som en activitypub-profil (dvs. brukerkonto), som jeg så kunne følge fra mastodon-kontoen min.
I mastodon-feeden blir poster vist som full lengde tekst og med opp til 4 av eventuelle bilder på bloggen. Dvs. mastodon viser mer (av og til betydelig mer) enn de 500 tegnene mastodon selv tillater. Det er også mer formatering i bloggteksten fra wordpress, enn det mastodon legger opp til på sine egne postinger.
Dersom noen som får bloggposten i mastodon-feeden sin, svarer på posten, så kommer svaret som en kommentar inn i wordpress-bloggen. Dersom noen som får bloggposten i mastodon-feeden sin merker den som favoritt, så kommer det tilbake til wordpress-bloggen som en “like”.
Figure 2: En wordpress bloggposting vist i wordpress (til venstre) og samme bloggpost vist i mastodon (til venstre)
Den siste tjenesten jeg bruker som støtter ActivityPub, er bookwyrm. Bookwyrm er en åpen kildekode-erstatning for Amazons goodreads. Dvs. et sted der man kan finne og lage anmeldelser på bøker.
Koblingen til ActivityPub er at man kan spore endringer man gjør i forhold til bøker, som postinger på ActivityPub.
Eksempel på endringer som kan publiseres på ActivityPub
Akkurat som pixelfed så har bookwyrm en feed der man kan lese kommentarer på egne kommentarer og følge postinger fra andre.
Akkurat som pixelfed, så er bookwyrms muligheter for å følge og respondere postinger begrensede i forhold til det som man kan gjøre i mastodon. Bookwyrm er først og fremst et sted til å finne og lage informasjon om bøker (anmeldelser og kommentarer og bibliografisk informasjon).
Figure 3: Starte lesing av ei bok vist i bookwyrm (til venstre) og samme starting av lesing vist som en mastodon-posting (til høyre)
Hvor stort er egentlig fediverset?
Her er det jeg har klart å oppdrive av statistikk på fediverset:
Begge stedene inneholder estimater. Stedet de to ser ut til å være enige om estimatene er på aktive brukere (brukere som har vært aktive i løpet av siste halvår) og det er på ca 2.2 millioner.
Hvis vi sammenlikner med twitter, Threads og bluesky:
TjenesteMånedlig aktive brukereDaglig aktive brukereKildetwitter (X)557 millioner DemandSageThreads400 millioner115 millionerDemandSageBlueSky 3.5 millionerbacklinkoSå de “gamle” tjenestene er 100-gangen større enn hele fediverset.
Men spesielt twitter er belemret med spambots og sockpuppets sånn at det er usikkert av hvor mange ekte mennesker som er bak kontoene.
Threads er ikke så gammel men den fikk masse brukere “gratis” fra andre Meta-tjenester i oppstarten.
Det som kommer nærmest i størrelse er BlueSky.
Egentlig er jeg litt forbauset over at BlueSky og fediverset tilsynelatende er så nærme i størrelse for jeg har sett at en del kjente folk som jeg har fulgt på mastodon annonserte at de dro over til BlueSky for et halvårs tid sia.
Hva med Threads og fediverset?
Threads støtter faktisk (til en viss grad) ActivityPub-protokollen.
Jeg følger mange personer jeg tidligere fulgte på twitter ved å følge threads-kontoene deres på mastodon.
Men:
Hva med Bluesky? Er ikke Bluesky også distribuert?
Bluesky påstår at det er et distribuert system og sjefsutvikleren på Bluesky har en lang utledning om hvorfor ActivityPub ikke duger som protokoll og at BlueSky derfor har sin egen protokoll.
Det finnes broer mellom bluesky og fediverset. Jeg følger flere brukere fra bluesky på min mastodon-konto og får postinger fra dem inn i feeden min.
Men i likhet med Threads så aner jeg ikke om svarene og likes’ene mine kommer tilbake til bluesky. Jeg har aldri fått noen respons derfra, men vet ikke om det er fordi mine svar aldri kommer dit eller om de bare forsvinner i støyene.
Min mening: dersom man er på jakt etter en erstatning for twitter som ikke er eid og kontrollert av storkapitalen så er ikke BlueSky stedet å gå.
For bluesky er ikke der ennå, men det er definitivt dit de ønsker seg.
Hvorfor er ikke mastodon like populært som Threads og Bluesky?
Jeg tror mastodons manglende popularitet kan oppsummeres i tre ting:
De to siste har jeg ikke lyst til å gjøre noe med.
Men det hadde ikke skadet om antall aktive brukere økte.
Jeg tror også at da folk var på jakt etter et alternativ til twitter tilbake i 2022 så var alt snakket om “federering” og “mange instanser” og “du kan sette opp en egen server” mer til forvirring enn hjelp for de fleste.
En del folk kom seg forbi den bøygen og lagde seg en bruker på mastodon.social eller andre populære instanser tilbake i 2022 som kikket seg rundt og konkluderte med at “her var det for stille” (se over) og dro igjen.
Det kunne vært litt interessant å finne ut hvor mange av de 13 til 17 millionene med brukerkontoer som finnes i fediverset ble lagd i 2022 og siden ikke har blitt rørt? Jeg tror det er en del.
Hvordan kan norske offentlige etater bidra til å gjøre mastodon og resten av fediverset mer populært?
Dersom norske offentlige etater som Politiet og Vegvesenet og Meteorologisk Institutt tilbyr samme tjenester som de tidligere tilbød på twitter via ActivityPub så vil mange flere komme seg på mastodon (eller en annen fedivers-tjeneste) for å følge PolitiOps eller Vegmeldinger.
Dersom almenkringkasteren NRK lar folk som idag må laste ned og bruke appen deres, istedenfor får samme mulighet til å delta via ActivityPub så vil det bli mulig å sende inn kommentarer og bilder til TV- og radioprogrammer som man tidligere gjorde med twitter og instagram.
Igjen så er det en ting som vil få folk til å skaffe seg en mastodon- eller pixelfed-konto og kommunisere via en nettside eller en app på mobil.
Hvilke muligheter finnes for å ta ibruk activitypub
Enkleste mulighet er for etaten å spinne opp sin egen mastodon og/eller pixelfed-instans.
Mastodon og pixelfed finnes som ferdige docker-imager, eller man kan bruke docker-compose i kildekoden for å lage egne docker-image’r.
Mastodon og pixelfed finnes som nedlastbar og installerbar software for de som fortsatt har fysiske servere.
“Mastodon as a service” og “pixelfed as a service” finnes fra flere tilbydere (masto.host og mastodon-utviklerne for mastodon, eliesto for pixelfed)
Mastodon og pixelfed finnes også som kildekode som kan lastes ned og bygges.
Men dersom man, som Politiet og NRK, allerede har en egen app, som man har lyst til å fortsette med, så kan man bruke ett av mange programvare-bibliotek for å la app’ens backend også kommunisere via ActivityPub.
Her er noen få av de tilgjengelige bibliotekene:
Bibliotekspråk/platformlisensFedifyTypeScriptMITGo-ActivityPubGoMITBigBoneJavaMITKort oppsummert
Det er mange gode grunner for å ta ActivtyPub i bruk:
Jeg kommer ikke på noen gode grunner til å la være.
#activitypub #allheimen #fodiverset #fediverse #mastodon #norsktut #pixelfed #socialmedia #socialnetwork #threads #wordpress

Mein Blog ist mein Social Media Profil
Menschen sind Geschichtenerzähler
„Wir leben nicht nur in der Realität, sondern in unseren Erzählungen über die Realität.“
Geschichtenerzähler gibt es seit Urzeiten. Sie sind Unterhalter, Informierer, Warner, Ermutiger, Prediger, Kollegen, Helfer, Plauderer, Menschen.
Wo immer es etwas bemerkenswertes zu entdecken gibt, gibts eine neue Geschichte. Jedes Zitat, Erlebnis, Fotostory, Bericht beinhaltet ein persönliches Entdecken und gerade das Subjektive ist interessant. Im besten Fall verbreitet es ein Gefühl des Staunens, der Freude und des Sinns.
Das Subjektive, Persönliche, ist aber auch der nötige Experimentierraum, sich dem Objektiven, also der Wahrheit anzunähern „und die Wahrheit wird euch befreien“ (Johannesevangelium 8,32) – und mehr Freiheit wollen wir doch.
Dieser Freiraum muss frei bleiben.
Kommerzielle Soziale Medien haben sich die Geschichtenerzähler und ihre Freunde gekrallt
Von Ausnahmen abgesehen, haben die zentralisierten Sozialen Medien, die vorhandenen sozialen Netzwerke des realen Lebens gekapert, ihre Geschichtenerzähler gerne übernommen und ihr Geschäftsmodell immer weiter zu ihren Gunsten angepasst. Man nennt das „enshitification“.
Die „Vershitifizierung“ digitaler Räume, ein von Cory Doctorow geprägtes Konzept, beschreibt den Verfall von Online-Plattformen, da sie Profit über das Benutzererlebnis stellen.
Römisches Kolosseum
Twitter, von Elon Musk als X bezeichnet, hat das Geschäftsmodell eines modernen Kolosseums: Unten in der Arena gibts ein herzzerreißendes buntes Treiben und man schlägt sich die Köpfe ein. Das Publikum feuert an und will mehr. Die Betreiber meinen, Geld stinkt nicht und ausserdem, das Publikum will es ja so.
Dabei wird fast schon nebenbei ständig die Welt neu erklärt. Produzierte Erzählungen werden dann in grosser Menge konsumiert. Ein Überangebot, oft auch, radikaler Lösungen, formt unreflektiert das Denken der Menschen um.
So entsteht, unter anderem, Totalitäres.
Wie im alten Rom.
Abschalten?
Aber ganz ohne geht es nicht.
Also, öfter mal die Arena wechseln!
Darf ich vorstellen: Der vernetzte Blog oder, wie hier, der vernetzte Miniblog für Leute, die kleinere Häppchen wollen.
Was ist (m)ein Miniblog?
Beiträge hier haben meist nur 200 bis 500 Wörter, manchmal mehr.
Das ist oft ausreichend für ein Schlaglicht, einen kurzen, schnellen Einstieg in ein Thema und erlaubt Links zur Vertiefung.
Im Unterschied dazu erlauben klassische Mikroblogs, etwa 140 bis 500 Zeichen (nicht Wörter) dazu Links und einen Anhang.
Vernetzt
Blogbeiträge können per ActivityPub und anderen Protokollen im offenen sozialen Web verbreitet, abonniert, kommentiert, geliked und geteilt werden.
Außerdem:
Mein Blog ist mein Social Media Profil
„My blog is my castle“
Dem Profil folgen kann jeder mittels einer Vielzahl von Apps die z.B. ActivityPub unterstützen, wobei Mastodon und Threads.net derzeit nur die bekanntesten sind.
Freie Auswahl für Leser
Ich verwende z.B. Mastodon per Elk Web App oder JetPack Reader App von WordPress.com um Leuten zu folgen und Inhalte zu lesen.
Bei letzterem App kann ich fast allen Blogs folgen, selbst dann wenn sie noch kein ActivityPub sondern „nur“ RSS-Feeds unterstützen.
Bei RSS gibts halt keinen direkten Rückkanal, aber ich kann den Beitrag oder ein Zitat daraus re-bloggen, also erneut teilen und meinen Senf dazu geben.
Besonderheit dieses Blogs
Folgen über das Fediverse kann man bei diesem Blog nur den eigentlichen Blogbeiträgen und seinen Kommentaren, nicht aber den kurzen „Updates“ oder Beiträgen in den „Gruppen“.
Selbstorganisation, Kooperation, Wettbewerb
Das sind Ideen des freien und damit fast zwangsläufig dezentralen Internets bei gleichen Chancen für alle Beteiligten, durch unabhängige Standards, neu erfunden als freie soziale Medien, bekannt auch als das Fediverse.
Dezentral: Weniger Anfälligkeit für Marktversagen
Märkte neigen zu Monopolen, auch und besonders in Social Media. Monopole bringen einerseits überdurchschnittliche Renditen und produzieren durchgeknallte Milliardäre, benachteiligen aber anderseits Konsumenten, Kreative und herkömmliche Medienangebote. Regulierung mag Probleme lösen, schafft aber auch neue.
Wenn jeder Mensch, jede Gruppe oder auch jedes Unternehmen sein eigenes Social Media Profil selbst betreibt und vernetzt, ist das wie ein Markt mit vielen vielen kleineren und mittleren Anbietern, mit denen die Grossen dann konkurrieren dürfen und daher besser werden müssen.
Hallo Medienmacher, Verlage, ARD und ZDF, Kirchen, Pizzeria an der Ecke und alle anderen, die ihr über die Konzerne aus den USA jammert: ActivityPub, oder deren Weiterentwicklung, wäre vielleicht auch eine Lösung für eure Websites und Mediatheken?
Ich würde doch sofort meinen Lieblingssendungen / Publikationen über ActivityPub folgen in einer übersichtlichen Smartphone App meiner Wahl, die keinem einzelnen Konzern gehört und würde dann täglich nachsehen, was sich lohnt mehr Zeit damit zu verbringen. Und da dürft ihr dann auch gerne Werbung schalten.
Fürs Erste einmal: Testbetrieb
Diese Website ist derzeit noch im Testbetrieb. Noch einiges wird sich ändern bzw. ergänzt, auch dieser Text.
Das ist das schöne an ActivityPub: Jede Aktualisierung muss ich nur einmal machen. Der geänderte Text, kommt dann bei jedem Follower an. Die lesen immer das (aktualisierte) Original. So muss ich nicht zusätzlich neu posten/korrigieren, wie es z.B. bei Facebook der Fall wäre.
Aber hey, keine Ahnung ob das alles klappt.
Über Feedback freue ich mich.
Bild: DAL-E – KI
#ActivityPub #Fediverse #SocialMedia

Post explicando de forma mais detida o NeoDB e sua instância ocidental, a eggplant.place.
Nele, há um contexto histórico e um tutorial de como adicionar mídia (livros, filmes, séries, games, jogos de tabuleiro e podcasts).
O texto é longo, mas deixei um Sumário para ir direto a parte desejada.
PS: Não sei como fazer aquele código HTML ou Markdown para clicar e ampliar a imagem. Por enquanto, se o print estiver muito pequeno, basta dar zoom com Control + Scroll do Mouse :-) Depois tento editar e melhorar isso.
https://curadoria.bearblog.dev/neodb/
#NeoDB #EggplantPlace #Fediverso #Fediverse #Letterboxd #Goodreads #HowLongToBeat #Filmow #Skoob #Steam #IMDB #Bandcamp #Spotify #AppleMusic #BoardGameGeek #Podcast #Podcasts #Filme #Filmes #Series #Serie #Game #Games #Livros #Musica #Movies #Movie #Music #IndieWeb #SmallWeb #SurfandoWeb #CuradoriaDaInternet #ActivityPub #AP #fediversando #Resenha #Review #Tutorial #Guia #BoardGame #BoardGames

Fedify is an #ActivityPub server framework in #TypeScript & #JavaScript. It aims to eliminate the complexity and redundant boilerplate code when building a federated server app, so that you can focus on your business logic and user experience.
The key features it provides currently are:
If you're curious, take a look at the #Fedify website! There's comprehensive docs, a demo, a tutorial, example code, and more:
Introducing #Hollo. Hollo is an #ActivityPub-enabled single-user microblogging software. Although it's for a single user, it also supports creating and running multiple accounts for different topics.
It's headless, meaning you can use existing #Mastodon client apps instead, with its Mastodon-compatible APIs. It has most feature parity with Mastodon. Two big differences with Mastodon is that you can use #Markdown in the content of your posts and you can quote another post.
Oh, and Hollo is built using #Bun and #Fedify.
https://github.com/dahlia/hollo
Esteemed #Fediverse 💖
all the nice videos from #PubConf24 popped up in the peertube channel.
Our Talk on the Why and How of #ActivityPub is https://video.publicspaces.net/w/9USsJ37cHVy4tY9Pn7DX2X
An hour is incredible short, we should maybe demo the protocol on a large table rather in an expo space next year (?)
You can view all videos at the channell page
https://video.publicspaces.net/c/pubconf/videos
…wenn eine Sache zu groß und mächtig wird. Gerade verkünden Medien den Verlust der Gemeinnützigkeit von „Mastodon“. Also für alle zum Mitschreiben: Mastodon ist der Name einer Software, welche die Teilnahme am Fediverse ermöglicht. Die Software wird unter einer Open Source Lizenz veröffentlicht (GNU Affero GPL) angeboten und ist damit...
