Redes sociales descentralizadas

ActivityPub y ATProto

Brevísima historia de internet a mi modo de ver

ARPANET (1969)

  • Desarrollo colaborativo entre instituciones académicas
  • IP: no hay un camino único ni un centro, los routers deciden localmente
  • El protocolo no determina qué aplicaciones existen ni quién puede crearlas

1980–2000: Estándares abiertos

  • Internet empieza a convertirse en un medio de comunicación y publicación abierto a un público mucho más amplio
  • Surgen protocolos y estándares abiertos como HTTP (la Web) y SMTP (email)
  • Cualquier servidor que implemente estos protocolos puede comunicarse con cualquier otro, sin pertenecer a una misma plataforma

Pero empieza a aparecer una tensión...

La Web era descentralizada en el sentido de que cualquiera podía publicar, pero publicar no significa necesariamente ser encontrado

2000–2010: Plataformas

  • La Web crece hasta un punto en que encontrar información se vuelve un problema
  • Surgen grandes intermediarios: buscadores, redes sociales y plataformas de contenido
  • Los usuarios siguen pudiendo publicar, pero la plataforma empieza a controlar cómo se organiza, recomienda y distribuye lo que vemos
  • La infraestructura subyacente sigue siendo abierta, pero la experiencia del usuario se concentra en plataformas

Redes sociales descentralizadas

Dos aproximaciones al mismo problema

Spoiler:

ActivityPub → funciona como el email

ATProto → funciona como la Web + Google

ATProto: la Web + Google

La Web

  • Cualquiera puede publicar
  • Cada sitio es autoridad sobre sus propios contenidos

Google

  • Una capa independiente puede indexar, buscar y organizar esos contenidos

ATProto combina ambas ideas

Datos abiertos y distribuidos

+

servicios independientes que los indexan y presentan

Los datos y la experiencia no tienen que pertenecer al mismo proveedor.

¿Dónde se concentra el poder?

  • Identidad: ¿quién decide quién somos dentro de la red?
  • Datos: ¿quién los almacena y controla?
  • Algoritmos: ¿quién decide qué vemos?
  • Moderación: ¿quién decide qué está permitido?
  • Interoperabilidad: ¿podemos comunicarnos y movernos fuera de la plataforma?

ActivityPub: interoperabilidad

┌───────────┐          ┌───────────┐
│ Servidor A│◄────────►│ Servidor B│
│           │ Activity │           │
│  usuarios │   Pub    │  usuarios │
└───────────┘          └───────────┘
      ▲                       ▲
      │                       │
  comunidad                comunidad
                
  • Cada servidor puede tener sus propias reglas
  • Los servidores pueden comunicarse mediante un protocolo común
  • Los usuarios de diferentes servidores pueden interactuar

La descentralización se consigue mediante la interoperabilidad.

De una plataforma a una red

Modelo tradicional

        PLATAFORMA
       /    |    \
      A     B     C
                

Federación

   A ─── Servidor 1 ─── Servidor 2 ─── B
              │              │
          Servidor 3 ────────┘
                 │
                 C
                

La red social deja de ser una empresa y pasa a ser un conjunto de servidores que interoperan.