La comunidad no tiene fronteras: Discourse-as-a-Fabric - ideación y lluvia de ideas

En Soporte de ActivityPub: Borrador RFC de la Fase 1, esbocé un ejercicio de ideación para evaluar el caso de negocio de tener soporte de ActivityPub en Discourse, y pensar más allá de un MVP como si Discourse hubiera sido construido desde cero con la federación en mente:

Por lo tanto, iniciaré la ideación con algunas sesiones de lluvia de ideas, sin tener en cuenta las consideraciones técnicas prácticas dadas la base de código actual. Soy consciente de que hay muchos matices y casos extremos en todo esto. Esta es una visión de cómo podría ser el soporte de federación nativa. Aquí va..

La comunidad no tiene fronteras

(Foto de Pixabay de Pexels)

Todos compartimos un solo planeta :wink: entremezclándonos en estructuras sociales complejas. ¿Por qué una comunidad de Discourse está restringida a un solo foro?

Soy administrador de Humane Tech Community (HTC) y cubrimos una amplia gama de temas relacionados con la tecnología, teniendo (sub)categorías de «Libertad > Privacidad», «Alineación > Ética», «Alineación > Estándares». Quizás demasiado amplio, y existen muchos otros foros de Discourse que se especializan en estas categorías, y en ese campo hacen un mejor trabajo que nosotros. Pero para las personas interesadas en obtener una visión general de todo el campo de la tecnología humana, la posición amplia tiene sentido.

Federando categorías

¿Qué pasaría si pudiera federar nuestra subcategoría «Privacidad» con, por ejemplo, la subcategoría «Publicaciones de blog» del foro PrivacyTools? Quizás solo para sincronizar temas en una dirección, ya que la subcategoría de privacidad de HTC es más amplia en alcance, donde los temas creados en PrivacyTools aparecen en el foro de HTC, y nuestros miembros pueden interactuar con ellos. Las publicaciones de los temas en el foro de HTC se transfieren luego de vuelta al tema en PrivacyTools y viceversa. Los temas en ambos foros se mantienen sincronizados. Quizás incluso quiera sincronizar en una dirección múltiples subcategorías de PrivacyTools con «Privacidad» en HTC. ¿Y por qué no sincronizar con diferentes comunidades relacionadas con la privacidad de manera similar?

Otro ejemplo. Tanto Feneas como SocialHub comparten una categoría de nivel superior «ActivityPub». Hay superposición en estas, duplicación, miembros de una comunidad desconocedores de lo que sucede en la otra comunidad. Esta es una oportunidad donde «ActivityPub» es candidato para sincronización bidireccional, donde cada foro contiene entonces las mismas listas de temas.

Federando etiquetas y temas individuales

Lo mismo puede aplicarse a las etiquetas, donde una etiqueta particular se configura para ser federada. Esto podría configurarse, por ejemplo, de tal manera que cualquier tema con la etiqueta #specification en SocialHub se federé a la subcategoría «Alineación > Estándares» en HTC.

Los temas también pueden federarse caso por caso, activados por un comando de la barra de herramientas, donde especificas el foro de destino al que federar, y quizás también selecciones la categoría remota bajo la cual debe aparecer el tema (es decir, la lista de Categorías del foro también se federará para la navegación remota).

Menciones de miembros y vistas de perfil

Cuando un tema se federé a otro foro, cualquier mención dentro de él debe adaptarse para reflejar dónde reside el miembro. Mi identificador @aschrijver en HTC podría aparecer como @aschrijver@humanetech en el foro de SocialHub después de la sincronización.

Dado que también soy usuario en SocialHub, en la configuración de mi perfil podría conectar las cuentas, y tras una verificación, esto significa que en los temas sincronizados se podrá mostrar mi identificador de cuenta local.

Al hacer clic en un identificador remoto o en la imagen de perfil de un miembro, se mostrará la tarjeta de perfil del foro remoto. Al hacer clic nuevamente para ver el resumen del perfil, podría mostrar solo las métricas de actividad en el foro local que resultaron de la interacción con temas sincronizados. Alternativamente, y más interesante, mostraría resúmenes de todos los foros conocidos que forman parte de la configuración de federación. Por ejemplo, podría descubrir que la respuesta provino de un miembro muy activo y experto en el otro foro.

Mensajes directos y notificaciones

Los mensajes directos (MD) serían posibles en todos los foros federados, no solo localmente, etiquetando/mencionando al miembro remoto en el MD. Aparte de eso, no habría diferencia en la forma en que se produce la comunicación por MD. Funciona igual que los MD actuales que son solo locales.

De todo lo descrito anteriormente sobre la federación surge la necesidad de federar también las notificaciones. Si respondo a la publicación de un miembro remoto, me gusta su publicación o lo menciono en un hilo de tema sincronizado, podría aparecer una notificación de interfaz de usuario en el foro remoto para notificar al miembro. Las notificaciones por correo electrónico también son gestionadas por el foro remoto. Sin embargo, si el miembro tiene cuentas vinculadas en ambos foros, las notificaciones podrían provenir del foro local donde se produjo la interacción por primera vez.

Inicio de sesión único (SSO)

Tenga en cuenta que en toda la funcionalidad descrita hasta ahora, no hay necesidad de tener SSO. Un miembro remoto no tiene acceso privilegiado automático a otro foro federado. ¿Entonces qué pasa si son mencionados en un hilo de tema sincronizado en una sola dirección? En ese caso, recibirán una notificación de interfaz de usuario y un correo electrónico provenientes de su propia instancia de foro, y al hacer clic en ellos serán redirigidos al otro foro (quizás en una nueva pestaña del navegador) donde podrán simplemente ver el tema. Si quieren responder, primero deben registrarse y vincular cuentas para poder hacerlo.

Tenga en cuenta que el SSO es algo complicado en el Fediverso, que aún no tiene una buena solución. Pero para la federación de Discourse a Discourse, la funcionalidad de SSO podría ser mucho más fácil de implementar. Si hubiera integración de SSO, al hacer clic en la notificación podría abrirse el tema en contexto dentro del foro actual (como una «vista remota»), y permitir al miembro interactuar con él de manera fluida.

Gestión y complejidad de la federación

Todo este caso de uso se describe como si Discourse hubiera sido construido desde cero con soporte de federación integrado. Si todo esto se implementa, afecta casi todas las funciones del producto. A diferencia del caso de uso que dio inicio a este hilo —para feeds personalizados estilo Facebook—, la federación aquí es cuidadosamente gestionada por el personal del foro, no por el capricho de miembros individuales.

Gran parte de la configuración de la federación es exclusiva de administradores. Debe hacerse de manera estratégica y con un buen plan, para mantener la organización de la comunidad y el contenido intuitivo y lógico. La configuración de la federación se construye gradualmente con el tiempo como parte del flujo de trabajo de construcción de la comunidad, no es algo que se agregue casualmente.

Interoperabilidad

Por supuesto, esta visión del soporte de ActivityPub no necesita restringirse a Discourse. Cualquier proyecto de software compatible podría formar parte del tejido comunitario distribuido. Por ejemplo, el software de construcción de comunidades de código abierto de forem y la plataforma de toma de decisiones colaborativas de loomio, a ambos de los cuales acabo de señalar en la dirección de esta publicación. Pero Discourse tiene la oportunidad de tomar la iniciativa en todo esto.

Integración con el Fediverso

Todo el soporte de federación hasta ahora se limitaba al dominio de negocio de foros/comunidad, pero con la integración de ActivityPub la interoperabilidad puede ahora expandirse para abarcar el Fediverso más amplio, habilitando numerosos casos de negocio emocionantes. Solo para listar algunos que me vienen a la mente al azar:

  • Anunciar publicaciones de foros en todo el fediverso con toots en las plataformas de microblogging Mastodon / Pleroma.
  • Las imágenes incrustadas se cargan automáticamente en PixelFed y se sirven desde allí (ideal para, por ejemplo, comunidades de Blender).
  • La barra de herramientas de fecha/hora permite configurar un evento completo de Mobilizon dirigido al fediverso, con funciones completas de RSVP.
    • La integración es bidireccional, donde los Discusiones de Mobilizon en el evento son en realidad temas de Discourse.
  • Crear temas en PeerTube con funciones especiales de video, donde las publicaciones son el hilo de comentarios en PeerTube.
    • Lo mismo ocurre con Owncast si agregan soporte de AP (vea este problema).
  • Tu tema publicado se convierte automáticamente en una publicación de blog en Writefreely más un hilo de comentarios.
  • Incrustar partes de tu foro en Nextcloud como una aplicación a través de su soporte de ActivityPub.
  • Integrar funciones de podcast a través de Funkwhale (vea el reciente video sobre soporte de podcasting).
  • Obtener información de perfil de Flockingbird, red social profesional en desarrollo (tipo directorio de LinkedIn).

Y mira la cantidad cada vez mayor de aplicaciones en la Lista de vigilancia de ActivityPub y deja que tu imaginación te guíe :smiley:

Consecuencias

Olvídate por un momento de todos los obstáculos y dificultades técnicas y considera qué significa esto para Discourse como producto. O mejor dicho, como Discourse ya no siendo «solo un producto»: Discourse se ha convertido en un tejido comunitario distribuido.

El personal del foro ya no es solo eso. Adoptarán una perspectiva mucho más amplia para la construcción de la comunidad. Tanto la comunidad como el contenido de la comunidad existen en todo el tejido de Discourse. El personal buscará activamente otras instancias de Discourse, acercándose a su personal para forjar asociaciones y crear diseños de federación interesantes para dividir y organizar su comunidad y contenido de la manera más interesante para la base de miembros de la comunidad.

Los propios miembros de la comunidad también estarán mucho mejor atendidos. Contenido más interesante fluirá hacia su «portal» de foro y el foro será más activo que si fuera solo algo local. Los miembros de la comunidad podrán descubrir e interactuar con miembros de otras instancias de foros en todo el tejido. De hecho, la frontera de la comunidad ha sido eliminada: La comunidad no tiene fronteras.

17 Me gusta

Para ser justos, solo lo hojee ligeramente, pero: ¿qué problema estás intentando resolver con esta idea de tela?

2 Me gusta

En primer lugar, presenté un montón de posibilidades sin restricciones como entrada para la lluvia de ideas. Pero personalmente tengo dos problemas en los que me gustaría ver mejoras: uno como miembro general de la comunidad y otro como facilitador de la comunidad (personal en 5 foros actualmente, donde publico ocasionalmente en varios lugares):

  • Como miembro de la comunidad, tengo cuentas en 15-20 foros de Discourse, alternando entre ellas (algunas olvidadas) y contraseñas, y revisando los más populares de manera similar a un carrusel, sitio por sitio. Todos estos tienen muchas áreas de contenido que se superponen, dado mis intereses. Ahora, si me pidieran unirme a su excelente foro sobre mi tema favorito, aún estaría muy dubitativo en hacerlo y crear otra cuenta más.

  • Como facilitador de la comunidad, tengo un problema similar y relacionado. Mi comunidad puede ser pequeña, y usted podría decidir unirse a esa otra comunidad con contenido sobre temas similares, parcialmente superpuestos. O viceversa. O incluso podría no saber que existe esa otra gran comunidad (quizás yo, como facilitador de la comunidad, sé que existe, pero ¿dedicaría un tema fijado para informar a mis miembros sobre ello?).

Con el soporte de federación en su lugar, habría un beneficio mutuo para que los facilitadores de la comunidad cooperen en asociaciones y den forma a la organización de los foros para nuestras audiencias consecutivas y aprovechemos las fortalezas de los demás. Concretamente, esto implicaría:

  • Capacidad de proporcionar contenido de mayor calidad seleccionando las fuentes más apropiadas para federar.
  • Una base de miembros más grande: el agregado de la federación, y por lo tanto más personas con las que tener discusiones interesantes.
  • Niveles de actividad más altos en todas las instancias de foro que participan en la federación, lo que ayuda a retener a los visitantes recurrentes.

Tres aspectos: calidad, cantidad y actividad, que son clave para cualquier comunidad exitosa :slight_smile:

8 Me gusta

Estoy de acuerdo, esto puede ser realmente molesto. Yo resuelvo este problema agregando el feed RSS de las comunidades de Discourse y activando los correos electrónicos de resumen semanal integrados.

5 Me gusta

Acabo de terminar recientemente “La plaza y la torre” de Niall Ferguson, que trata sobre la influencia de las redes sociales (conexiones sociales informales y poco conocidas entre individuos) a lo largo de la historia mundial. No es un libro perfecto, pero refuerza consistentemente tu punto de que “la comunidad no tiene límites”. Las redes distribuidas son más resilientes, innovadoras e igualitarias que las jerarquías. Discourse se describe a sí mismo como “un reinicio desde cero, un intento de reimaginar cómo debería ser un foro de discusión en internet moderno hoy, en un mundo de teléfonos inteligentes, tabletas, Facebook y Twitter omnipresentes”. A menos que la ambición de Discourse sea ser simplemente el software de foro más nuevo y mejor por un tiempo, la integración con ActivityPub es la vía clara para desafiar seriamente a Facebook, Google, Twitter y otros, y revertir las expectativas sobre lo que puede ser una comunidad en línea.

8 Me gusta

@aschrijver Claro, personalmente me encantan las ideas y el planteamiento.

Esto parece ser bastante “fácil” de lograr. Para la parte de las cuentas, podrías utilizar un Discourse principal que actúe como proveedor de SSO. Otros foros de Discourse solo tendrían que unirse al sistema para construir una base de usuarios centralizada: tu nombre de usuario estaría reservado para ti en todos los Discourse que lo utilicen. Idealmente, los administradores/propietarios de los foros se unirían al crear su foro. Sería posible unirse más tarde; solo tendrías que resolver todos los nombres de usuario duplicados que aparezcan en ese momento: el administrador tendría que hacer que sus usuarios cambien su nombre de usuario si ya está en uso en el sistema.

Para la parte de la asociación, los plugins que utilicen Matterbridge y/o la API de Discourse deberían poder hacer todo. Habría que desarrollar y refinar algunos plugins aquí.

Alternativamente, para nuevos foros, podría haber una solución con un enfoque de “multisitio”: crear categorías en un Discourse principal (podría ser el mismo que el proveedor de SSO de la idea anterior), donde una categoría = un “foro”. Ajustando algunos aspectos, podrías “bloquear” a ciertos usuarios dentro de la categoría, eliminar las menciones a las “categorías” principales y reutilizarlas como diferentes “foros”. Al activar subcategorías, cada foro aún tendría 2 niveles de categorías. Hay ajustes que trabajar, pero esto permite directamente una base de usuarios común y mensajería privada interna (¡estás en el mismo Discourse!).

Puedes combinar los dos enfoques: tener foros alojados en el Discourse principal y otros externos enlazando a él. Creo que traducir tu visión a la realidad es bastante factible. Estoy potencialmente dispuesto a trabajar en esto si hay interés (aunque necesitaría algo de ayuda). He registrado el dominio webforum.link, que se puede utilizar para esto.

Nota (tras ver el mensaje anterior): ActivityPub es algo “abierto”. Las ideas anteriores serían mucho más “cerradas” y restringidas a foros de Discourse. Tampoco sería tan fácil unirse.

3 Me gusta

@aschrijver, continuando nuestro intercambio de publicaciones en ActivityPub Support: Phase 1 RFC - #50 by Mevo y tratando también de llevar las cosas aquí (este es un tema más apropiado):

Hay algo que he encontrado bastante interesante últimamente: algunas personas crearon un mercado gratuito y descentralizado llamado Openbazaar. La idea era básicamente tener algo totalmente abierto donde cualquiera pudiera poner cualquier cosa a la venta, sin posibilidad alguna de restricción o censura. Se basa en criptomonedas para los pagos, y existe la posibilidad de revisar a los vendedores y un sistema de moderadores para arbitrar eventualmente transacciones que puedan salir mal o tener problemas. SIN COMISIONES en las transacciones en absoluto; la cosa es 100% gratuita (habría una pequeña comisión para el moderador que necesite intervenir, si ese fuera el caso).

Quiero decir, en papel, esto es fantástico, en mi opinión. Sin embargo, nunca realmente despegó. Por otro lado, eBay o Amazon, que cobran bastantes comisiones en cada transacción, funcionan muy bien.

El punto es que tener a alguien que controle algo, que tenga un incentivo para que funcione porque obtiene ganancias financieras de ello y que invertirá hacia ese objetivo, generalmente hace que funcione mejor que las ideas gratuitas, abiertas y nobles. Puede ser muy triste, pero en la práctica, esto es lo que parece ocurrir en la vida real.

¿Ha tomado Mastodon el relevo de Facebook y Twitter? ¿Lo hará alguna vez? Los usuarios no parecen estar hartos de la cantidad de anuncios que consumen en Facebook.

De todos modos, me parece que no consideraste ese aspecto en tu visión sobre la federación. Así que aquí está para que lo consideres (o al menos lo conozcas). No significa que tener la opción de federar cosas o establecer asociaciones no sea una buena idea. Pero ir por la “federación completa” también podría quitar el atractivo de ejecutar un software que solo se convierte en un “nodo” y ya no es algo que tú controlas. Es bastante diferente, al menos.

1 me gusta

La evolución del uso de una plataforma no es lineal. Tomemos el ejemplo de Signal: Snowden dijo «usa Silent o Signal», y la app avanzó. Así, se mantuvo como un nicho. Cuando un Gafam comete un error de comunicación y Elon Musk dice «usa Signal», cientos de miles de usuarios llegan porque evalúan de forma sincrónica los mismos criterios y la aplicación de destino responde a su necesidad.

Algunos usuarios pueden haber dejado Twitter y Facebook recientemente, sin mucha cobertura mediática, porque el principal proveedor de reacciones en sus feeds ha visto eliminadas sus cuentas.

Cuanto más caótico se vuelva el sistema en las redes sociales, mayor será la probabilidad de que los usuarios participen de forma sincrónica en un masivo «desinstalar app1, instalar app2».

1 me gusta

No estoy seguro de que el ejemplo de Signal sea realmente comparable. Aquí hay una característica añadida clara, y un PORQUÉ por el que la gente debería usarla: «Usa comunicación cifrada para que lo que digas permanezca privado y nadie pueda escucharlo». Sería pasar de no cifrado a cifrado.

Pero al pasar de una plataforma «cerrada» y «aislada» a una «abierta», si pensamos en la «federación completa», ¿realmente aporta algo a los usuarios? ¿Realmente les añade una característica? Algunos dirán que sí, al ver cómo participan en varias comunidades y cómo esto podría aglutinarlas (entiendo lo pesado que es iniciar sesión en xx comunidades diferentes). Pero al mismo tiempo, si todos los usuarios se mudaran a una única comunidad «cerrada» que se volviera dominante, sería prácticamente lo mismo para ellos. No estoy seguro de que noten la diferencia o deseen la «apertura».

A la gente le importan el contenido, las interacciones, etc., pero ¿les importa cómo funciona técnicamente o quién lo controla? El paso a la «federación» es, de algún modo, un paso de COMPETIR a COMPARTIR para las comunidades. Pueden ser amigos entre sí y estar bien con enviar usuarios de una a otra, pero siguen compitiendo cuando están cerradas.

Tu segundo punto es interesante: ¿Preveniría alguna forma de «federación» las prohibiciones, la eliminación de cuentas y la censura? ESTO podría ser una característica añadida para la gente. Actualmente, con ActivityPub, supongo que puedes ser prohibido en sitios individuales, pero puedes seguir publicando en el resto de la federación… siempre que el sitio en el que te registraste no te prohíba el acceso. @aschrijver, ¿sabes cómo funciona eso? (No conozco bien ActivityPub). ¿Estás registrado a nivel de federación o en uno de los sitios que pertenecen a la federación? ¿Puedes ser prohibido a nivel de federación? ¿O eso es imposible? (¿Se supone que es imposible?)

@jibe-b La pregunta no iba realmente de una aplicación a otra, sino de aplicaciones individuales cerradas comparadas con algo federado (algo abierto). También puede haber aplicaciones individuales cerradas con políticas fuertes de libertad de expresión y que no prohíben a la gente (es muy fácil decirlo en retrospectiva, pero el «proveedor de reacciones» podría haberlo previsto). Puedes garantizar un entorno libre de prohibiciones descentralizando totalmente y eliminando la capacidad de prohibir de cualquier persona. No creo que prevenir la censura fuera el objetivo inicial de @aschrijver, aunque.

1 me gusta

(He citado fragmentos por brevedad). La analogía del restaurante se quiebra un poco aquí. Es como si estuvieras sentado en dos mesas al mismo tiempo, y además en un restaurante más grande y «agregado» con más gente para celebrar. Lo que dices puede ser cierto, pero también depende totalmente de cómo se implementen las cosas.

Mientras que el tema del RFC de ActivityPub y el caso de uso de @hellekin colocan a las personas individuales en pleno control, en mi descripción anterior dejo la estructura de la comunidad completamente en manos del personal de la comunidad. Ellos establecen alianzas con otras comunidades y, posiblemente, solo pueden compartir secciones transversales de su comunidad basándose en el consentimiento mutuo.

Pensé que hacerlo estaría más en el interés de Discourse (la empresa) y también de los administradores de comunidad que dedican tanto esfuerzo a construir su identidad y su base de miembros. Es decir, sería más bien un caso de negocio. Así, el personal seguiría teniendo el control total y también se encargaría de mantener la organización de la comunidad compuesta de manera integral e intuitiva. Ellos son los «editores del tejido de la comunidad».

Si permitieras plena libertad a los usuarios de Discourse para llenar su «portal» vacío con contenido de foros de cualquier parte, obtendrías una dinámica de comunidad completamente diferente. El caso de uso tiene valor para casos específicos, pero es totalmente distinto al caso de uso donde «el personal mantiene el control». Por supuesto, también son posibles todos los matices intermedios.

Sí, los conozco y me encanta la idea de OpenBazaar como un mercado descentralizado, pero fueron las criptomonedas las que me impidieron probarlo. Es un problema de confianza. Para muchas personas, eso también pudo haberlas frenado. Pero aparte de eso, son los enormes efectos de red de las grandes empresas tecnológicas establecidas los que hacen muy difícil que los nuevos actores hagan su entrada, donde lanzan un nuevo servicio, lo anuncian en sitios con millones de visitantes diarios y pueden operar con grandes pérdidas hasta que finalmente despegue.

Sí, estoy de acuerdo con eso. Por eso no me centré en la «plena libertad», sino en el caso de uso de «el personal mantiene el control», como se describió anteriormente. Donde el soporte de ActivityPub añade una propuesta de venta única (USP) a Discourse como producto para administradores de comunidad, los clientes que pagan. Bueno… si eligen una suscripción alojada en la nube, eso sí.

En ese sentido, Discourse (la empresa) podría hacer las suscripciones más interesantes ofreciendo servicios de valor añadido, como un servicio de descubrimiento y emparejamiento donde los administradores de comunidad de diferentes comunidades buscan activamente alianzas y cooperaciones para enriquecer sus comunidades (y, implícitamente, las de los demás). El servicio podría estar accesible para cualquiera, o solo para clientes de un plan de pago.

¿Deberían querer hacerlo? ¿Por qué debería ser ese el objetivo? ActivityPub, como protocolo, permite que muchas aplicaciones diferentes en muchos dominios distintos interoperen a cualquier nivel. Cada proyecto / aplicación / producto perseguirá sus propios objetivos y, en el caso del software comercial, sus propias propuestas de venta únicas (USP).

La primera parte es importante. Elige tu federación con cuidado. La federación total nunca debería ser el objetivo si pierdes toda tu identidad como producto al hacerlo.

En primer lugar, hay una diferencia entre «federación» y «el fediverso». Si construyes una federación usando ActivityPub, puedes hacerla funcionar de cualquier manera que quieras. Si la construyes con el objetivo de integrarte con el Fediverso, entonces hay ciertos estándares de facto establecidos sobre cómo funcionan las cosas. No es posible una prohibición a nivel de usuario en todo el fediverso, y las prohibiciones en instancias específicas se basan en decisiones de los moderadores de cada una de las demás instancias, y se configuran en listas de bloqueo y de permitidos. Estas listas a menudo se comparten (como las listas de bloqueo de anuncios) y pueden llevar a que ciertas instancias queden completamente bloqueadas en todo el fediverso («son empujadas a los márgenes del fediverso»)."

Un buen video que explica el concepto es:

Al igual que los foros, cada instancia federada en el Fediverso está moderada. Y creo que eso es algo bueno. Sigue habiendo plena libertad, porque puedes crear tu propio foro / instancia de servidor sin moderación donde todo vale. Otros tienen la libertad de bloquearte basándose en eso.

4 Me gusta

Delegar la gestión de la comunidad

Dado que esto es una lluvia de ideas libre y acabo de ver este tema Búsqueda de administradores de comunidad voluntarios :mega: … pensé:

¿Y si la gestión de la comunidad estuviera federada?

Imagina que eres un nuevo administrador de comunidad en un foro de Discourse recién instalado, un completo novato en la interfaz de administración y en las prácticas de construcción de comunidades. ¿Y si pudieras pedir ayuda a un administrador de comunidad experimentado durante un periodo determinado para que te asesore y supervise tu trabajo?

Ahora sé que diréis: “¿Por qué no crear simplemente una cuenta de personal en ese foro… no hace falta federación!” y tendríais razón. Pero vamos a darle la vuelta y quizás hacerlo más interesante: ¿Y si quisiera ofrecer mis habilidades en Discourse y en gestión de comunidad, ya sea como voluntario o como profesional (es decir, remunerado)?

Querría poder gestionar de forma productiva tantas comunidades como sea posible en mi ‘cartera de clientes’. Esto conduce a una triple victoria:

  • Los nuevos administradores de comunidad pueden obtener un servicio de incorporación para empezar más rápidamente.
  • Los administradores de comunidad pueden beneficiarse más ampliamente de sus habilidades, más allá de su propia comunidad.
  • Los dos puntos anteriores significan que Discourse añade otra propuesta de venta única (USP) a su producto.

¿Cómo sería esto entonces? No lo sé… hay muchas posibilidades. Algunas sugerencias, donde en cada una de ellas el administrador delegado trabaja desde su propio portal de foro mediante federación, gestionando potencialmente muchas comunidades:

  • El administrador delegado puede configurar la configuración del foro, instalar complementos/componentes/CSS, que el administrador real aprueba antes de que surtan efecto.
  • El administrador delegado tiene acceso a categorías y grupos exclusivos del personal y participa en discusiones para dar sus consejos.
  • El administrador delegado gestiona las señales (flags) levantadas en el foro, donde solo el tema con la señal se federará a su portal.
  • El administrador delegado, conociendo el panorama de la comunidad, ayuda a organizar asociaciones con otras comunidades y el intercambio de contenido.

Considera lo siguiente a partir de lo anterior:

Esto también podría ser un servicio de valor añadido y combinarse con lo anterior. Todas las partes involucradas tienen interés en que los administradores delegados sean evaluados como buenos administradores de comunidad hasta cierto punto. Discourse (la empresa) solo podría permitir que las personas se conviertan en administradores delegados si están en una suscripción (¿de pago?). Discourse o un socio podría ofrecer un curso de gestión de comunidad que, al aprobarse, otorgue un certificado con el sello de aprobación de @codinghorror.

Bueno… si te gusta la idea o no. Fue una buena sesión de lluvia de ideas para mí, ja ja :grinning_face_with_smiling_eyes:
¿Quizás tú puedes mejorarla?


Edición:

El propio Discourse utilizaría este servicio también. Al inicio de nuestra suscripción de pago, un miembro del equipo de Discourse formaba parte del personal de nuestro foro para ofrecer el mismo tipo de ayuda. Con esto pueden hacerlo desde su propio ‘cockpit’ remoto, o… delegarlo.

Otra cosa que tiene que ver con compartir partes de una comunidad… Varias veces, cuando publiqué un tema en Meta pidiendo ayuda específica, el tema se hizo privado (a veces porque contenía información sensible) y se gestionó como un ‘ticket de soporte’ por parte del equipo de Discourse. Con la federación, podría tener la parte de Soporte de Meta integrada en mi propio foro.

4 Me gusta

(Mi formato). Me encanta esa definición, @JE-FF, y encaja perfectamente con el enfoque innovador que se debe adoptar con los conceptos de “la comunidad no tiene fronteras” y “discourse como tejido”. Sin embargo, dudo, como también le mencioné a @Mevo, si Discourse realmente debería querer desafiar a las grandes tecnológicas de redes sociales. Podrían hacerlo si quisieran, pero no es necesario. Discourse tiene un gran éxito por derecho propio y ahora está posicionado de manera diferente, es decir, como un SaaS multiinquilino, una “nube de foros de comunidad independientes”. Aunque al expandir los conceptos de comunidad más allá de los límites de los inquilinos, podrían estar mejor posicionados frente a sus rivales, tanto en el espacio de los foros como en el de las redes sociales.

2 Me gusta

Muchas gracias, @aschrijver. Está muy claro y, honestamente, estoy casi totalmente de acuerdo contigo en todo lo que has dicho. Escribí mis mensajes con la idea de que lo que proponías era un «paso intermedio» hacia una «federación completa (y totalmente abierta)» como objetivo final. Ahora, ni siquiera estoy seguro de dónde surgió esa idea, y es posible que nunca hayas dicho nada parecido. Puede ser una interpretación errónea (e incluso una idea inventada) por mi parte, o tal vez mezclé cosas que dijeron otras personas.

ActivityPub permite hacer todo lo que podría permitir, y al mismo tiempo puedes elegir cómo quieres hacer las cosas; sí, todo esto me suena increíble. Supongo que tienes razón: puede haber confusión entre ActivityPub y el Fediverso (ya lo explicaste en otro tema sobre ActivityPub).

Personalmente, me encantan todas las ideas que has planteado. En cuanto a la «gestión de comunidades» federada, también sería muy útil tener acceso a moderadores de esta manera. Moderadores que podrías utilizar temporalmente cuando tu comunidad esté en auge o cuando haya, por ejemplo, un evento especial que requiera más moderadores (todo esto quizás estaba incluido en la «gestión de comunidades» en tu mente. Hablaste de banderas, pero también podrías tener acceso a más personas de tipo «administrador», además de «moderadores» o «gestores de comunidad», si defines estas tareas como diferentes).

Como se ha dicho antes, todo esto puede lograrse «por separado» mediante plugins y/o un sitio secundario (podría haber un sitio secundario de «freelancers» que liste y proponga servicios con personas que vayan a trabajar directamente en la comunidad. No es tan agradable como tener su propia plataforma desde la que puedan gestionar todo de forma remota y agregada gracias a ActivityPub, pero ya sería un buen comienzo).

Todo depende de si el equipo de Discourse quiere utilizar algunas de estas ideas para implementarlas directamente en Discourse o no.

4 Me gusta

No estoy de acuerdo aquí. He estado utilizando configuraciones de múltiples sitios para facilitar la propiedad grupal de una instancia de Discourse, donde un grupo cercano puede convertirse en su propio personal manteniendo un vínculo directo con la comunidad más amplia. En mi opinión, jugar con los límites de la comunidad empodera a la misma al aplicar el principio de subsidiariedad: que las decisiones se toman lo más cerca posible de la práctica.

Primero, parece que interpretas lo que dijo como «los usuarios se portarán mal sin cierto «control del personal»», lo cual, en mi opinión, no es lo que dijo. Segundo, solo habló de una «dinámica comunitaria completamente diferente», sin juzgar si esto es bueno o malo. De hecho, pareces estar de acuerdo con él al decir que es algo bueno (aun así es «diferente»).

Pero esto no era el tema de la discusión. No se trataba de ese «control», ni de tener algún problema con los usuarios.

Sí, en su mayor parte se trataba de mostrar la amplia gama de opciones disponibles y la total flexibilidad para adaptarse a escenarios específicos. Si me centro únicamente en el ámbito de ActivityPub, este permite al desarrollador de funciones de federación tener un control total del ‘balón’. Los casos de uso implementados son todos igualmente válidos (asumiendo que fueron diseñados deliberadamente como parte del desarrollo del producto).

Veo que el caso de @hellekin no se encuentra realmente en el extremo de la libertad total, y sería interesante profundizar más. @hellekin gestiona más foros que yo, y de maneras creativas, como se puede observar en el foro de SocialHub, donde los equipos individuales de software de ActivityPub tienen control sobre sus propias secciones del foro. Estos equipos suelen tener otro foro independiente propio (por ejemplo, en el caso de Mastodon). Debe alentarse a realizar el ‘doble trabajo’ para mantener a la comunidad de AP informada sobre las extensiones de federación personalizadas que integran en sus propios softwares. Además, SocialHub cuenta con lo que podrían considerarse foros satélites.

3 Me gusta

Acabo de decidir registrarme en otro foro más de Discourse, solo para ayudarles y proporcionar (copiar/pegar) algunos enlaces útiles a temas en otros foros. Otro usuario más de Discourse que gestionar.

El foro es Fedeproxy, un nuevo proyecto ActivityPub que busca sincronizar forges de código (repositorios de Github, Gitlab, Gitea, etc.) entre sí. Podría convertirse en una implementación del protocolo Forgefed y es interesante mencionarlo aquí por dos razones:

  1. Este es otro ejemplo de un dominio empresarial completamente diferente que puede beneficiarse enormemente de la federación mediante ActivityPub.
  2. Si Discourse tuviera soporte de federación, la categoría #development de este foro podría sincronizarse bidireccionalmente con la subcategoría #software de SocialHub, sin necesidad de trabajar en dos foros ni duplicar discusiones.

Actualización:

En el foro de Fedeproxy, un usuario (que, por cierto, no quiso registrarse aquí, solo para dejar un único mensaje) me señaló una ontología interesante de Datos Enlazados para comunidades: la Especificación de la Ontología Central SIOC, donde el proyecto SIOC significa “Comunidades Online Semánticamente Interconectadas”. La ontología define las siguientes semánticas en Datos Enlazados:


Lo menciono aquí porque resalta el pensamiento en dominios empresariales y vocabularios, y puede servir de inspiración para la lluvia de ideas :slight_smile:

(Nota: No dejes que el término “Web Semántica” en las especificaciones de SIOC te desvíe. No se trata de eso, que sería demasiado complejo, sino de buscar vocabularios de Datos Enlazados cerrados para definir un dominio particular.)

Actualización 2:

Hoy encontré un gran proyecto, también en un dominio similar al de Discourse, e inicié allí una discusión titulada “La comunidad no tiene fronteras”:

PubPub forma parte del Grupo de Futuros del Conocimiento, quienes también están trabajando en el proyecto de Grafo de Conocimiento Distribuido Abierto Underlay (que se acerca a una idea que tengo para la agregación de conocimiento desde foros de Discourse).

Actualización 3:

Me di cuenta de que la discusión sobre la comunidad es mucho más amplia que Discourse por sí solo, ya que los conceptos de comunidad son universales en nuestra sociedad. Para el Fediverse, inicié una discusión sobre la estandarización de un dominio de Comunidad y la modelación de una extensión de ActivityPub basada en ello:

7 Me gusta

ActivityPub es una buena idea, pero incluso el software más nuevo que lo implementa como ciudadanos de primera categoría tiene que solucionar varios huecos en las especificaciones, así que para nosotros tiene sentido esperar y ver.

Además, esto es totalmente factible como un plugin si es algo por lo que un grupo en particular está muy entusiasmado.

13 Me gusta

Sería increíble ver que una integración así se incluya mediante una solicitud de extracción en la aplicación chat-integration para que simplemente podamos publicar en múltiples plataformas por etiqueta, categoría o mención después de agregar nuestras credenciales. ¡Saludos!

7 Me gusta

Gracias @codinghorror. Sí, efectivamente, en la especificación de ActivityPub hay lagunas. Pero estas están presentes más o menos deliberadamente, tanto porque los autores de la especificación no querían crear un estándar tecnológico enorme y complejo que lo abarcara todo, como porque, en el momento de redactarla, no sabían cómo evolucionaría la especificación. Así que esperaron a que surgieran implementaciones de referencia (esto también tuvo algunos inconvenientes, como, por ejemplo, que Mastodon utilizara una API de cliente personalizada en lugar de la parte de Cliente a Servidor de la especificación, aunque Mastodon también definió algunas extensiones de namespace útiles para su uso).

Actualmente, la mayoría de estas lagunas han sido cubiertas por otros estándares abiertos (aunque todavía hay algunas por rellenar). Existen las Firmas HTTP para la federación de Servidor a Servidor (o, menos utilizado, las firmas JSON-LD); para las menciones de usuario federadas se utiliza Webfinger. El acceso de Cliente a Servidor emplea OAuth2 con credenciales de cliente, y existen especificaciones de facto como NodeInfo y NodeInfo2 para comunicar las capacidades del servidor.

Estoy de acuerdo en que una gran cantidad de cosas discutidas en este hilo (la mayoría, probablemente) pueden implementarse mediante Plugins y la excelente API de Discourse. Sería, como dice @sunjam, realmente genial si alguien se animara a explorar este camino :slight_smile:


A partir de esta lluvia de ideas, he iniciado algunas discusiones más generales en el foro de SocialHub, a las que me gustaría referirme:

Actualización 07/03/2021: En SocialHub, en el tema sobre la creación de una extensión de vocabulario AP para comunidades, profundicé un poco más en cómo Discourse encajaría en un modelo de comunidad. Véase mi publicación:

7 Me gusta