Diferencias entre Lorea/Elgg/N-1 y Kune/Apache Wave

Lorea es una red social basada en Elgg. Su principal nodo, n-1.cc, ha sido muy popular en las protestas del 15M en España.

Tecnología
Técnicamente, Lorea está basada en multi-páginas estáticas de PHP (cada vez que cambias de página, se crea una nueva petición al servidor).

Por otra parte, Kune está desarrollado en GWT, AJAX y en una única página como una “aplicación web enriquecida“. Por ejemplo, si quieres navegar hacia alante y atras por Kune, comprobarás como el chat no se mueve ni se desconecta, además de hacer varias cosas simultáneamente con una minima interacción con el servidor. Con una única página, el servidor y el cliente sólo intercambian los bits de información adicional necesarios.

Twitter empezó siendo una aplicación web multi-página estática, pero en la actualidad ha evolucionado a algo más similar (desde el punto de vista tecnológico) a Kune (o a Google Docs, Gmail…). Estas aplicaciones web enriquecidas tienen un comportamiento similar al de una aplicación de escritorio.

Colaboración en tiempo real
En Lorea puedes escribir documentos en tiempo real usando pads (como en etherpad/piratepad). Sin embargo, los pads no tienen el comportamiento de las waves: son sólo texto plano, es decir, no puedes integrar un mapa, un video o un gadget. Además requieren un gran esfuerzo para integrar las diferentes funcionalidades con el resto de módulos (permisos de usuario, grupos, incrustaciones, federación…).

Kune no sólo se centra en la comunicacion por red social sino también en la colaboración en tiempo real. Por lo tanto, todos los contenidos dentro de Kune son waves que permiten que varios usuarios colaboren en tiempo real (simultáneamente) escribiendo un documento, etiquetando un mapa, compartiendo una galería multimedia, rellenando un calendario de eventos o cualquier cosa… Las waves son parte de la estructura de Kune, por lo que ya están integradas en todo a nivel de protocolo.

Extensiones
La funcionalidad de Lorea puede ampliarse mediante módulos escritos en PHP y ampliados con código de Lorea. Estos módulos puedes ser integrados y ejecutarse como código de Lorea, del mismo modo que los módulos de Drupal. Por lo tanto, las diferentes “distribuciones” pueden contener diferentes módulos de Lorea.

La funcionalidad de Kune puede extenderse mediante nuevas herramientas escritas en GWT y ampliados con código de Kune para formar parte del software de Kune. Del mismo modo, varias distribuciones de Kune pueden contener diferentes herramientas. Sin embargo, en Kune puedes desarrollar aplicaciones que pueden ejecutarse sobre Kune, del mismo modo que sucede en Facebook, iGoogle o Google+. Estas aplicaciones de Kune son gadgets (se ejecutan en waves) y bots (un “robot” que participa en una wave y que es capaz de ejecutar acciones) que son muchp más fáciles de programar, ya que no requieren conocer el código GWT de Kune, y pueden ser desarrollados en Java, JavaScript o Python. Cualquier Kune puede incluir su propio conjunto de herramientas y gadgets por defecto. De igual forma, cualquier usuario de Kune puede usar el gadget que desea en cualquier documento/blog/galeria/evento/etc (de la misma manera que un usuario de Facebook puede usar varias aplicaciones). Estos gadgets/bots son los mismos que se ejecutan en las waves (de Apache Wave), por lo que ya existen varios gadgets libres desarrollados por otros desarrolladores.

Esta capacidad de incorporar aplicaciones aumenta la extensibilidad (la curva de los desarrolladores para programar gadgets es muy baja) y la personalización (los usuarios pueden usar cualquier conjunto de gadgets independientemente de los disponibles por defecto en su servidor de Kune).

Federación
Lorea implementa OpenID para permitir a los distintos usuarios desplazarse entre sus diferentes nodos (servidores). El contenido también es federado por OStatus para replicarlo en distintas redes (descentralizándolo) por lo que permite tener distintos puntos de vista, edición y comentarios del contenido.

Kune no usa OpenID, OAuth o OStatus para la federación. En su lugar, utiliza el protocolo de federación de wave (una extensión del protocolo XMPP). La idea es que se pueda tener una cuenta en un nodo de Kune y se pueda colaborar con cualquiera en cualquier otro nodo (o servidor wave)… desde tu propia “bandeja de entrada” que te ofrece el servidor de Kune donde te registraste. Cualquier grupo puede tener usuarios registrados en distintos nodos (servidores) de Kune, pero también cualquier usuario puede compartir un documento personal con otro usuario que tenga una cuenta en Kune. Además, en la bandeja de entrada del usuario, se pueden ver todas las waves (documentos, galerías, eventos, etc) en las que participa independientemente de en qué nodo se encuentren. Puedes imaginártelo como si fuese un servicio de correo electrónico: tienes tu cuenta de correo en un determinado servidor y mandas emails a cualquiera independientemente de dónde tengan registradas sus cuentas. Así, desde la bandeja de entrada de Kune puedes interactuar con otras personas de una forma sencilla y transparente.

El protocolo XMPP sólo es usado para la comunicación servidor a servidor en la federación de waves, no como la comunicación habitual cliente a servidor. Kune también tiene un chat basado en XMPP pero que es independiente del protocolo wave. Por lo tanto, un nombre de usuario como [email protected] puede ser invitado a participar en una wave en kune.cc, o en cualquier otro nodo, o en una conversación a través de un chat basado en XMPP (como Jabber o Gmail).

2 Respuestas a Diferencias entre Lorea/Elgg/N-1 y Kune/Apache Wave

  1. Muy interesante la comparación con Lorea. Que hay con respecto a Diaspora? Están federadas mutuamente? Gracias

  2. vjrj says:

    Este comentario había quedado perdido entre el spam, respondo ahora.

    No, no lo están. La federación de diaspora, es bastante … simple, vamos, por lo que parece se puede explicar en un página.

Deja un comentario