Anàlisi Temporal de la Diversitat del Fedivers

Hola,

He realitzat un petit anàlisi en dos punts temporals de la diversitat del Fedivers quant a comptes per node i quantitat de nodes.

EDIT: la publicació original contenia un error i situava el primer punt temporal el 09 de Març de 2023 quan en realitat és de 03 de Setembre de 2023.

Les dades que he utilitzat les ha recopilat el fedizen @spla@mastodont.cat. Li agraeixo molt l’ajuda!

Ara sí, entrem a l’anàlisi en si.

Data n Servidors Comptes Comptes Actius Comptes/Servidor Actius/Servidor
2022/09/03 8673 5046306 634561 581.8409 73.16511
2023/05/17 21099 9181234 1397236 435.1502 66.22285

El primer que podem observar és que han crescut tant el número de servidors, el número de comptes i el número de comptes actius al Fedivers. Quina bona notícia!

Nota: el número de comptes actius només l’he tingut en compte als servidors que tenen instal·lat el programari Mastodon, ja que no està tant extès en la resta de programari fediversal.

Si ens fixem, tot i haver-hi més comptes, el ratio de comptes per servidor i de comptes actius per servidor ha disminuit, el que ja suggereix major diversitat entesa com una distribució més equitativa dels comptes entre els servidors.

Però aquests ratios són mitjanes. Hi ha indicadors de diversitat més globals que s’utilitzen en el camp de l’ecologia i de la immunologia (per analitzar la clonalitat de cèl·lules T i B) que ens poden ser útils en aquest estudi. En concret he utilitzat:

  • Índex de Shannon: és una forma de medir la uniformitat de les espècies en una comunitat. El terme uniformitat es refereix a com de semblants són les abundàncies de diferents espècies en la comunitat. En aquest cas les espècies són els servidors. Font.
  • Índex de Simpson: mesura de la diversitat d’una comunitat. Valor que va de 0 a 1 sent 1 la major diversitat. Font.

Mesurem aquests índex a les dades i aquest és el resultat:

Data Shannon I. - Comptes Simpson I. - Comptes Shannon I - Actius Simpson I. - Actius
2022/09/03 4.375168 0.9401716 3.599674 0.9095200
2023/05/17 5.176178 0.9693727 5.022663 0.9600337

Veiem que tots els indicadors donen suport a la tesi d’un increment en la diversitat al Maig respecte al Setembre de 2022. Tant a nivell de comptes totals com de comptes actius, veiem un increment en la diversitat i en la uniformitat entre els servidors.

Finalment, creem una representació que ens ajuda a visualitzar aquest increment de diversitat. En el següent gràfic representem la distribució dels 10 servidors més grans i la resta agrupats en l’etiqueta Altres.

Una vegada més, el resultat suggereix que la diversitat ha augmentat. O el que és el mateix: tot i que els nodes principals creixen en número absolut de comptes, sembla que el Fedivers s’està descentralitzant.

És una gran notícia! Seria interessant anar seguint la dinàmica per veure com evoluciona.

A continuació publicaré el codi en llenguatge R utilitzat per a l’anàlisi:


library(tidyverse)
library(ggsci)


Fedi<-rbind(
  read.csv("FediversData_20220903.csv") %>% select(server, users, mau, alive, software) %>% add_column(Time="2022/09/03"),
  read.csv("FediversData_20230517.csv") %>% select(server, users, mau, alive, software) %>% add_column(Time="2023/05/17")
)

Fedi.users<-Fedi %>% 
  filter(alive == "t") %>% 
  group_by(Time) %>% 
  arrange(desc(users)) %>% 
  mutate(server=case_when(
    server %in% server[1:10] ~ server,
    T~"Altres"
  )) %>% 
  group_by(server, Time) %>% 
  summarise(users=sum(users), mau=sum(mau)) %>% 
  group_by(Time) %>% 
  mutate(users.perc=users*100/sum(users)) %>% 
  arrange(desc(users.perc)) 

Fedi.users.serv<-
  Fedi.users %>% ungroup() %>% arrange(desc(users.perc)) %>% filter(server != "Altres") %>% pull(server) %>% unique()

Fedi.mau<-Fedi %>% 
  filter(alive == "t" & software == "mastodon") %>% 
  group_by(Time) %>% 
  arrange(desc(mau)) %>% 
  mutate(server=case_when(
    server %in% server[1:10] ~ server,
    T~"Altres"
  )) %>% 
  group_by(server, Time) %>% 
  summarise(users=sum(users), mau=sum(mau, na.rm=T)) %>% 
  group_by(Time) %>% 
  mutate(mau.perc=mau*100/sum(mau)) %>% 
  arrange(desc(mau)) 

Fedi.mau.serv<- Fedi.mau %>% ungroup() %>% arrange(desc(mau.perc)) %>% filter(server != "Altres") %>% pull(server) %>% unique()


Fedi.servers<-unique(c(Fedi.users.serv, Fedi.mau.serv))

Fedi.users$server<-factor(Fedi.users$server, levels=c("Altres", rev(Fedi.servers)))
Fedi.mau$server<-factor(Fedi.mau$server, levels=c("Altres", rev(Fedi.servers)))

colors<-c("white", pal_igv("default")(length(Fedi.servers)))
names(colors)<-c("Altres", Fedi.servers)

g.users<-ggplot(Fedi.users, aes(Time, users.perc, fill=server))+
  geom_bar(stat="identity", color="grey30")+
  scale_fill_manual(values=colors, drop=F)+
  labs(y="% de comptes", title="Distribució de comptes", fill="Servidor", x="")

g.mau<-ggplot(Fedi.mau, aes(Time, mau.perc, fill=server))+
  geom_bar(stat="identity", color="grey30")+
  scale_fill_manual(values=colors, drop=F)+
  labs(y="% comptes actius (MAU)", title="Distribució de comptes actius\n en servidors de Mastodon", x="")

ggpubr::ggarrange(
  g.users,
  g.mau,
  nrow=1, common.legend = T, legend = "right", align = "h"
)

merge(
  Fedi %>% group_by(Time) %>% summarise(n.servidors=n()),
  Fedi %>% group_by(Time) %>% summarise(comptes=sum(users, na.rm=T), comptes.actius=sum(mau, na.rm=T))
) %>% rename(Data=Time) %>% mutate(`comptes/servidor`=comptes/n.servidors, `actius/servidor`=comptes.actius/n.servidors)

## Diversity analysis

divers<-data.frame(
  "Data"=c("2023/03/09","2023/05/17"),
  ShannonIndex.Comptes=c(vegan::diversity(Fedi %>% filter(Time == "2022/09/03") %>% filter(users >= 0) %>% pull(users), index="shannon"),
    vegan::diversity(Fedi %>% filter(Time == "2023/05/17") %>% filter(users >= 0) %>% pull(users), index="shannon")),
  SimpsonIndex.Comptes=c(vegan::diversity(Fedi %>% filter(Time == "2022/09/03") %>% filter(users >= 0) %>% pull(users), index="simpson"),
    vegan::diversity(Fedi %>% filter(Time == "2023/05/17") %>% filter(users >= 0) %>% pull(users), index="simpson")),
  ShannonIndex.Actius=c(vegan::diversity(Fedi %>% filter(Time == "2022/09/03" & software == "mastodon") %>% filter(mau >= 0) %>% pull(mau), index="shannon"),
                         vegan::diversity(Fedi %>% filter(Time == "2023/05/17"& software == "mastodon") %>% filter(mau >= 0) %>% pull(mau), index="shannon")),
  SimpsonIndex.Actius=c(vegan::diversity(Fedi %>% filter(Time == "2022/09/03"& software == "mastodon") %>% filter(mau >= 0) %>% pull(mau), index="simpson"),
                         vegan::diversity(Fedi %>% filter(Time == "2023/05/17"& software == "mastodon") %>% filter(mau >= 0) %>% pull(mau), index="simpson"))
)
divers
6 'M'agrada'

Espectacular treball i sorprenent resultat :wink:

1 'M'agrada'

Sens dubte, una molt bona notícia :slight_smile:

2 'M'agrada'

Estaria bé anar obtenint aquestes dades regularment (penso en 1 al mes o al trimestre).

2 'M'agrada'

cap problema, repetim el procés en un mes.

2 'M'agrada'

Bona feina @marcelcosta !!

Anàlisi de la Diversitat del programari

Hola!

En la línia d’un anàlisi previ i recuperant l’interès que he vist al Fedivers, he ampliat el aquest anàlisi focalitzant-me en la diversitat del programari.

Les dades s’han obtingut amb el codi escrit per @spla.

Abans d’entrar en l’anàlisi en si, voldria remarcar que la mesura de comptes actius és confusa. Alguns servidors mostren major nombre de comptes actius que de comptes totals! I en la resta probablement també s’està sobre-estimant la seva activitat. Tot i que pot haver-hi una explicació tècnica per aquest fenomen, dificulta la seva interpretació.

Dinàmica en valors absoluts per programari

En aquest primer gràfic, represento la dinàmica pel que fa al nombre de servidors utilitzant el programari, nombre total de comptes i nombre de comptes actius. Mostro de forma individual els programaris que arribin a l’1% en alguna d’aquestes mesures i agrupo la resta en la categoria “Altres” (ja que si no seria difícil de visualitzar).

Com es pot observar, hi ha un gran increment del programari mastodon en les tres mesures. Al Maig, hi ha 4 vegades més nombre de servidors utilitzant-lo que els que hi havia al Setembre de 2022. I el nombre de comptes actius ha augmentat 3 vegades!

La variació de la resta de programari és menys evident, de manera que he exclòs mastodon de l’anàlisi per poder centrar millor l’escala.

D’aquests resultats, més o menys tots els programaris mostren un increment en el nombre de servidors, especialment wordpress, akkoma i també la categoria d’Altres.

Pel que fa al nombre total de comptes, misskey mostra un increment significatiu i podem veure un descens en comptes de peertube i sobretot de diaspora. Aquest últim és degut al tancament d’una gran instància, joindiaspora.com.

Centrant-nos en els comptes actius, destaquen pleroma i pixelfed, a més de la categoria d’Altres.

Distribució relativa del programari

El següent anàlisi representa la distribució relativa del programari en les tres mesures.

Podem observar que mastodon era el programari més utilitzat al Setembre, tot i que no arribava al 50%. Aquesta dominància s’ha incrementat en els darrers 6 mesos, convertint-se en majoria.

El domini de mastodon és encara més clar pel que fa al nombre de comptes i de comptes actius.

Variació en la distribució relativa del programari

Per a poder visualitzar millor la variació en contribució de cada programari he graficat la diferència en percentatge entre els dos punts temporals (eix x) per cada programari (eix y). La mida dels punts representa el percentatge de cada mesura al Maig.

Com es podia veure al gràfic anterior, l’increment en nombre de servidors utilitzant mastodon és significativament major que la resta, augmentant més d’un 10%. A més a més, gotosocial, akkoma, calckey, wordpress i birdsitelive també mostren un increment en percentatge.

Pel que fa al nombre de comptes, misskey, brighteon i birdsitelive s’uneixen a mastodon al mostrar una variació positiva. Diaspora i peertube clarament retrocedeixen en representació. Aquest últim mostra una reducció clara de comptes actius, mentre que el nombre de comptes actius que no utilitzen cap dels programaris llistats s’incrementa de forma destacada.

Creixement del programari

Per tal de centrar l’anàlisi en el creixement de les tres mesures he graficat el ratio entre els dos punts temporals (eix x) i el valor absolut de la mesura al Maig. La mida dels punts representa el percentatge al Maig.

Tot i tenir un quantitat petita de servidors, calckey, birdsitelive i akkoma mostren un gran creixement en aquest aspecte. Birdsitelive també mostra un gran creixement en nombre total de comptes, mentre que calckey creix de forma clara en comptes actius.

Variació en la diversitat global del programari

Finalment, he aplicat els índex ecològics de divesitat i equitat que vaig fer servir en l’estudi previ però analitzant la distribució del programari en aquest cas.

Data Shannon.Servidors Simpson.Servidors Shannon.Comptes Simpson.Comptes Shannon.Actius Simpson.Actius
2022/09/03 2.070341 0.7645023 1.0462905 0.4405626 0.5227572 0.1902811
2023/05/17 1.903229 0.6545103 0.9360958 0.3210791 0.4099790 0.1293983

En línia amb l’increment del domini de mastodon al Fedivers, totes les mesures de diversitat es redueixen en aquests 6 mesos.

Conclusions

Per tant, sembla que el Fedivers està descentralitzant-se quant a distribució de servidors (en referència al primer anàlisi) però, en canvi, l’ús del programari està esdevenint menys divers. També és destacable la pèrdua de comptes de diaspora i amb menys intensitat de peertube, amb un gran creixement de calckey, birdsitelive i akkoma.

3 'M'agrada'

Brutal Marcel ets un crack!!

1 'M'agrada'

Havia llegit converses a la Fedi sobre el creixement de servers d’Akkoma i Calckey. Les dades ho confirmen, doncs. No coneixia el Birdsitelive. Amb tema “naming” anem fluixetes a la Fedi, eh… jajaja.

En fi, mercès per la feinada d’analitzar les dades i explicar-nos-ho. Aquí al SocialHub, on altres fedizens hi diuen la seva també :slight_smile:

1 'M'agrada'

Merci!

Probablement ja ho hauràs buscat, però és un crossposter per a seguir comptes de Twitter…