home.social

Search

1000 results for “href”

  1. More incompetence from #IDX... There's an email address in the footer of their web site: "[email protected]". It's a link. Except they've formatted the link wrong: instead of saying href="mailto:[email protected]" in the page source, they left off the "mailto:" part, so the browser interprets the link as an https link and it doesn't work. These people are incompetents. Clowns. Asshats. I'm sure their identity theft monitoring service works _great_ (not).
    #infosec #privacy #IdentityTheft

  2. So #Dimension20's new series, City Council of Darkness, as far as I can tell is based on the following premise:

    What if we took the LEAST COMPETENT group of vampires we could find. The kind of vampires where typically we'd kill their sires and their grandsires for not terminating them. The kind that their best case prospects are being used for canon fodder or scientific experiments.

    Take that group and put them in charge of a Court of a small town. For some reason.

  3. Google confirme (à nouveau) que les balises Hreflang sont des signaux (comme les canonical tag) et non une directive (comme par exemple la meta robots).

    searchenginejournal.com/google

    Avoir le même contenu sur un site international ne va clairement pas vous aider à mieux vous indexer sur la bonne version régionale du moteur.

    #google #hreflang #international #indexing #seo #indexation

  4. Alpha launch - .well-known/avatar - feedback wanted

    shkspr.mobi/blog/2025/10/alpha

    I've gotten sufficiently annoyed with a trivial problem that I'm preparing to write an IETF RFC. Yeah. That's how ticked off I am!

    Every site that I sign up for asks me to upload an avatar to represent myself. Whenever I change my photo, I have to log in to a hundred sites and change it there0.

    Perhaps they could all use Gravatar - but that's a centralised service1 and doesn't work with wildcard email addresses. Libravatar also relies on email addresses and requires implementers to set up new DNS entries.

    So I'm proposing .well-known/avatar. Here's how it works (for now). I'd like your feedback before going further2.

    I sign up to a service and use the email address [email protected].

    The service looks up my avatar using a well-known path. For example, request https://shkspr.mobi/.well-known/avatar?resource=acct:[email protected] and you'll get back this JSON:

    {    "subject": "acct:[email protected]",    "links": [        {              "rel": "http:\/\/webfinger.net\/rel\/avatar",             "type": "image\/webp",             "href": "https:\/\/shkspr.mobi\/.well-known\/avatar\/avatar-1024.webp",            "sizes": "1024x1024"        },        {              "rel": "http:\/\/webfinger.net\/rel\/avatar",             "type": "image\/jpeg",             "href": "https:\/\/shkspr.mobi\/.well-known\/avatar\/avatar-512.jpg",            "sizes": "512x512"        }    ]}

    That's a slightly enhanced https://webfinger.net/rel/#avatar which adds a sizes parameter. The service can then pick the appropriate MIME and size.

    Alternatively, you can request the same URl but with a header of Accept: image/gif and receive the default sized avatar in that specific format.

    Try it by running:

    curl -H "Accept: image/avif" https://shkspr.mobi/.well-known/avatar/ --output "test.avif"

    You should receive an auto-converted version of my avatar.

    Some Thoughts

    Please add your thoughts to the comments box. Here's some feedback I've received so far.

    Perhaps this is too complicated? What's wrong with just serving up an image when the URl is requested? That would make it easier for static sites.

    Simon Josefsson

    @[email protected]

    @Edent Thinking about this, while I like content negotiation as a clever hack, I wonder if maybe it isn’t too clever. The nice thing with WKD is that you can deploy it with any normal static HTTP file without any special magic. Maybe the protocol could be dumbed down to simply rely on WKD-style URLs? I’m not sure how to configure my web server (Apache) for your avatar well known URL with negotiation magic.

    2025-10-23, 16:50 0 boosts 1 favorites

    What about a size parameter?

    Chip

    @[email protected]

    @Edent It'd be nice if the query could limit the size of the avatar being returned. If only there were `Accept-Max-Size`, but maybe a query param? I wouldn't want my performance taking a dive if Alice has a 35M avatar that my client starts downloading. If my client had requested with `max_size=3072` I'd rather not see the avatar than degrade performance/pull excess data

    2025-10-23, 15:02 0 boosts 1 favorites

    Will anyone actually use it?

    Andreas Gohr

    @[email protected]

    @Edent good luck with getting the hundreds of services to implement it. I mean it. it would be awesome and you might be well connected enough to make it happen.

    2025-10-23, 15:03

    What about hashing the email?

    David Bushell 🎮

    @[email protected]

    @Edent would using a hash of the email address in its place improve privacy? 🤔

    2025-10-25, 11:52 0 boosts 0 favorites

    You've already given the service your email address, and your domain already knows your account name - so there's no privacy leak here. Obviously, a service shouldn't hotlink to your avatar image.

    How about DNS?

    I like it. Is there an argument that service / endpoint should be specifiable at the DNS level?As others in your comments pointed out, if your site is currently just static, some users might prefer to run an entirely separate dedicated avatar service.

    Emily Shepherd (@emi.ly) 2025-10-25T11:57:43.456Z

    Personally, I think that's a bit complicated, but I'm happy to be convinced.

    Is this restricted to email?

    No! For example, if you know my GitHub username then you should be able to get the avatar from https://github.com/.well-known/avatar?resource=acct:edent

    How can a service tell if the avatar has been updated?

    Perhaps a hash, timestamp, or something else?

    Can requests for multiple accounts be sent at once?

    I'm not sure how / if WebFinger handles this. I suppose there ought to be some limit to avoid overwhelming a server.

    Proposal

    I think the default should be to return an image.

    If an accept of image/… is requested, the server should try to return an image in that format.

    If an accept of application/json or similar is requested, the server should return a JSON document listing the available avatars.

    I don't think a ?size= GET parameter is necessary; services can resize once they've downloaded, or use the JSON document to get the right size.

    A limited amount of alt text could be added using the title attribute in the JSON.

    Before I start writing up anything formal - I'd love your constructive criticism on this.

    1. OK, I don't have to. But I want to. I dislike having last year's photo cluttering some half-remembered social network. ↩︎

    2. We live in the redecentralised future now! ↩︎

    3. I wrote about this in 2004 and in 2020. It takes me time, but I get there eventually! ↩︎

    #IETF #ReDeCentralize #standards #web

  5. 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

    1. mastodon, som er et sosialt medium av type “mikroblog“, som minner om twitter (eller “X” som noen insisterer på å kalle det idag)
    2. pixelfed, som er et sosialt medium lagd for å utveksle bilder (minner litt om instagram, men uten algoritmer og notifikasjoner)
    3. wordpress, som er en bloggeplatform
    4. bookwyrm, som er en åpen kildekode-tjeneste for bokanmeldelser, et alternativ til Amazons goodreads

    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:

    1. Det er ikke bare én server for mastodon, dvs. det er ikke bare at man bytter ut 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 inn
    2. Det er ingen algoritmer. Meldinger som kommer i feeden din kommer enten fra
      1. Postinger fra andre folk du følger (disse kan komme fra andre servere)
      2. Hashtagger du følger (her ser du bare meldinger med denne hashtaggen som havner på samme server som du er på)

    Merk: 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 @[email protected] ikke har noen følgere så kommer ikke artikkelen lengre enn mastodon.bang.priv.no.

    Så bestemmer @[email protected] seg for å følge @[email protected] (dvs. grunnleggeren av mastodon)

    1. mastodon.social.bang.priv.no gjør et WebFinger-kall til mastodon.social for å finne konto-URLen til @[email protected] (“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

    2. Konto-URLen til @[email protected] 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)

    3. @[email protected] gjør en HTTPS POST av ActivityPub Follow til innboksen til @[email protected] (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"}
    4. Returverdien på HTTP POST av Follow er bare en kvittering på avlevert melding til innboksen, resten fortsetter asynkront
    5. mastodon.social sjekker at “object” matcher id på en lokal bruker
    6. mastodon.social gjør så en HTTPS GET til URLen i “actor” og forventer der å finne en profil av liknende type som resultatet fra “self” over
    7. mastodon.social sjekker at returnert JSON-LD fra “actor” URL inneholder en inbox
    8. mastodon.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
    9. mastodon.social gjør en HTTPS POST til innboksen til @[email protected] 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"}
    10. mastodon.bang.priv.no svarer på HTTPS POST med en kvittering av mottatt melding og fortsetter asynkront
    11. mastodon.bang.priv.no bruker id til å slå opp profil og finner ut at dette er en profil den allerede har lastet
    12. Siden mastodon.bang.priv.no tidligere har lastet ned profil-JSON’en til @[email protected] har den allerede publicKey for kontoen og kan sjekke Signature-header på HTTPS POST
    13. I tillegg kommer id til Follow-forespørslen dette er en Accept av, som kan sjekkes om samstemmer med en forespørsel som serveren tidligere har sendt
    14. Dersom alt er oppfylt, så vil mastodon.bang.priv.no legge @[email protected] inn i lista over kontoer som @[email protected] følger

    Etter at denne runddansen er over så har @[email protected] blitt med i følgerlista til @[email protected] og @[email protected] har blitt med i lista over kontoer som @[email protected] følger.

    Når @[email protected] poster en melding, så går mastodon.social gjennom følgerlista til @[email protected].

    En av følgerne er @[email protected], så derfor tar mastodon.social kontakt med mastodon.bang.priv.no og legger meldingen inn i innboksen til @[email protected].

    Serveren mastodon.bang.priv.no sjekker at det som kommer inn i innboksen til @[email protected] har en Signature-header som matcher “publicKey” i profilen til @[email protected] 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 @[email protected] legger ut komme inn på mastodon.bang.priv.no.

    Alle postingene @[email protected] bestemmer seg for å booste vil også komme inn på mastodon.bang.priv.no.

    Postingene fra @[email protected] 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 @[email protected] poster en melding, så vil meldingen aldri komme i feeden til @[email protected].

    At man godtar at man kanskje mister en posting nå og da, fjerner mye kompleksitet fra serverene.

    Dersom @[email protected] ser at han blir fulgt av @[email protected] og bestemmer seg for å følge tilbake, så vil samme verifiseringen som over skje i motsatt retning og nye postinger fra @[email protected] vil havne i feeden til @[email protected] (og være potensielt synlig for alle andre brukere på mastodon.social).

    Men artikkelen @[email protected] postet før han hadde noen følgere, vil ikke være synlig for @[email protected] 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:

    • Helt nylagde brukere som følger mange og som blir fulgt av ingen egne brukere og uten egne postinger (opprettet av bot-farmer styrt av spammere eller trollfabrikker). Disse forsvinner oftest etter kort tid
    • Brukere som ser legitime ut men som tydeligvis ble lagd på tida Musk kjøpte twitter (2022) og ble såvidt prøvd ut da og siden ikke har vært i bruk

    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:

    1. Mastodon: @[email protected]
    2. Pixelfed: @[email protected]
    3. WordPress: @[email protected]
    4. Bookwyrm: @[email protected]

    Jeg har latt @[email protected] følge kontoene @[email protected], @[email protected] og @[email protected].

    Jeg lar @[email protected] booste alle postinger som kommer fra de andre kontoene, noe som betyr at all som følger @[email protected] 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

    • Wants to read: blir postet når man legger bøker inn i bokhylla (jeg bruker å poste en sånn når jeg kjøper ei ny bok)
    • Starting to read: blir postet når man registrerer at man starter å lese ei bok
    • Finished reading blir postet når man er ferdig med ei bok. Her pleier jeg å legge en liten anmeldelse av boka

    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:

    • https://fediverse.observer/stats lister
      • 9.4 millioner brukerkontoer på mastodon
      • 17.3 millioner brukerkontoer totalt i fediverset pr. november 2025
      • 2.3 milliober brukerkontoer som har vært aktive i løpet av siste halvår før november 2025
      • 923 tusen brukerkontoer som har vært aktive i løpet av siste måned før november 2025
    • https://fediverse.party/en/fediverse/ lister
      • 13.7 millioner brukerkontoer
      • 2.2 millioner aktive brukerkontoer

    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 millionerbacklinko

    Så 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:

    • Threads-kontoer blir ikke automatisk tilgjengelige på ActivityPub
    • Det er ganske vanskelig å finne ut hvordan man skal slå på ActivityPub på en Threads-konto
    • Kontoer i EU-området er ekskludert fra ActivityPub (Meta påberoper seg GDPR som årsak, noe som virker sutrete og passivt-aggresivt i mine øyne)
    • Jeg har aldri fått noen respons tilbake fra et svar på posting til en threads-konto eller posting jeg har gjort til en bruker på en threads-konto. Men jeg vet ikke om det skyldes at postingene mine ikke flyter over til threads, eller om det bare er at jeg forsvinner i støyen
    • Threads tillater kun fediverse-trafikk fra mastodon og kun fra utvalgte servere

    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:

    1. Manglende kritisk masse (den er forsåvidt ikke så mye mindre enn BlueSky): dvs ingen her
    2. Ingen algoritmer som “krydrer” feeden din med ting som gjør deg opprørt: dvs. kjedelig
    3. Hyggeligere og høfligere brukere : dvs. kjedelig

    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-ActivityPubGoMITBigBoneJavaMIT

    Kort oppsummert

    Det er mange gode grunner for å ta ActivtyPub i bruk:

    • Kostnadene er lave
    • Man eier sin egen infrastruktur for publisering
    • Man kan nå 2.2 millioner brukere over hele verden (potensielt 115 millioner brukere på Threads dersom krav fra brukerene skulle framtvinge at de åpner ActivityPub skikkelig)
    • Nyttig informasjon fra Vegvesen, Meterologisk institutt, NRK og Politiet vil drive aktivitet opp i fediverset og sende journalister og politikere inn dit
    • Forskjell fra RSS som mange fortsatt har er at ActivityPub tillater interaksjon med leserene: leserene kan like og svare på og dele postingene med andre som også kan like og svare på meldingene

    Jeg kommer ikke på noen gode grunner til å la være.

    #activitypub #allheimen #fodiverset #fediverse #mastodon #norsktut #pixelfed #socialmedia #socialnetwork #threads #wordpress

  6. #Marseille Je cherche des #SauvonsLesMeubles pour chez moi
    - Un meuble de bureau : cube à roulettes avec tiroirs
    - Une grande table ronde
    - Des étagères à livres/cd à poser sur le sol
    - Un petit meuble pour accueillir de la literie
    Si vous avez ça et que vous souhaitez vous en débarrasser, je suis preneur !
    #dons #débarras
    Crédits photos : Photo de <a href="unsplash.com/fr/@erdaest?utm_c">Erda Estremera</a> sur <a href="unsplash.com/fr/photos/teckel-">Unsplash</a>

  7. @shadychars @lahosken aaah, #freshrss complains the xml is invalid:

    ```
    shadycharacters.co.uk/feed/ is invalid XML, likely due to invalid characters. XML error: Mismatched tag at line 19, column 11 [shadycharacters.co.uk/feed/]
    ```

    I think your link tags are not properly closed:

    <link href="shadycharacters.co.uk/feed/" rel="self" />
    <link href="shadycharacters.co.uk" />

  8. 📢 New blog post! Using the Web Monetization API for fun 🤩
    and profit 🤑:

    🔗 blog.tomayac.com/2025/11/07/us

    Learn how I use the proposed #WebMonetization standard by the @Interledger Foundation on my blog to (hopefully) pay for my virtual private server! The whole secret is this tag:

    ```html
    <link rel="monetization" href="ilp.gatehub.net/348218105/eur" />
    ```

  9. Filtering out results to Meta's walled gardens in my search results?

    Knowing a bit of CSS that turned out to be surprisingly easy :

    startpage.com##.result:has(a[href*="facebook.com"])

    I'm all for the open web, and all the results requiring me to create an account I'm really not interested in those.

    Do you filter your search results?

    Are there smarter ways than creating you own custom filter? (I suppose there is, so please hit me up!)

    #startpage #adblock #meta

  10. Sometimes I consult for large corporations

    So Verizon’s new CEO sent me an email…

    Where shall I begin?

    First — You can’t simply reply. I get it. It’s hard to have a mailbox on the Internet these days. So many bounces, to deal with (I’m serious.)

    Second — So when you go to drag-select, copy and paste that “[email protected]” email address, you discover it’s not what it seems.

    Pasting into your email client’s “To” field, you actually create a list of multiple recipients: The first recipient is “s”, then the second is “sampath”, etc—none of which are the email address you meant to copy and paste. So you have to type it into your email client. Not a big deal, but probably enough to stop most people. If they really cared, they’d just give us an

    <a href="mailto:[email protected]">[email protected]</a>

    and let us just click or touch it, et voila!

    Okay, but why can’t we copy and paste? Because in the HTML source in their email, it’s actually:

    If you can read HTML, you see there are HTML entities jammed in various places in that email address. I had to lookup the entity &zwnj; — that’s a Zero Width Non-Joining space. Meaning it’s not visible (“zero-width”) and it’s job is to keep whatever is left and right from “joining”… in the sense that complex characters can join to make a glyph— For example: An ‘a’ and ‘e’ can join to make the single character ‘æ’ if your language supports that. (But, of course, English does not have any joining characters at all.) I’m confident this is just an artifact of their bulk-email-sending composer software; it’s common for such things to “defend” an email address in the middle of text from harvesting looking for emails. So this wasn’t maliciousness on Verizon’s part.

    Third — …but it’s ironic that, in a message that contains, “It’s not just better service — we are setting a new standard, beginning today,” I have to flip between windows as I retype that email address.

    Fourth — Because I’m a level-39 nerd wizard, I do reply to these things. (I mean, I start a new email message addressed to that email address.) And because we (said wizards) are quick to anger and regular Internet users (ie, Sampath) are tasty with ketchup, I send things like this…

    I’ll followup when I get my 17.5%.

    ɕ

    #InternetTech #Snark #Verizon
  11. CSS question:
    Is there a selector (or a combination or selectors) to target the <a> pointing to the element targeted by the current URL?

    Let's say I have

    <a href="#id1">link 1</a>
    <a href="#id2">link 2</a>
    <h1 id="id1">hello world</h1>

    If I click the link, I know that I can now target the h1 with the `:target` pseudo-class. But can I target the link itself?

  12. My Lash Obsession: A Cautionary Tale? - Reviews and Expert Insights

    Introduction
    <p>Lash obsession has taken the beauty world by storm, with many of us seeking longer, fuller lashes without the hassle of mascara. However, a closer look at the reviews and expert opinions on <a href='userreview.net/en/content/my-l'>My Lash ...

    🔗 userreview.net/en/content/my-l

    #beauty #lashes #reviews

  13. Boundaries between AP and AS2, and between AS2 and non-AS2 socialhub.activitypub.rocks/t/

    Looking to hear from #ActivityPub and #FediDev audiences: When do you expect a link (either an id or a Link.href) to have an AS2 representation? When do you expect it might *not* have one? Is there a good way to make those expectations clearer or more explicit? Please weigh in.