XMPP es útil precisamente en dos casos:
El primer caso es si no desea rediseñar algo que XMPP ya hace. Un ejemplo podrían ser las videollamadas: XMPP ya lo hace, y el diseño se originó en el equipo de Hangouts de Google, por lo que está altamente probado. WebRTC puede ser el transporte del video, pero necesita algo para manejar la señalización, y XMPP puede hacerlo por usted con las bibliotecas existentes, la infraestructura, etc.
El segundo caso es si necesita interoperabilidad. Esto puede deberse a que desea interoperar con otro servicio, o porque desea “intercambiar” la infraestructura de back-end.
- ¿Qué herramienta se usa para aplicaciones móviles y web?
- ¿Cuáles son algunos ejemplos de buen diseño de UI / UX para una aplicación web b2b?
- ¿Cuáles son los pros y los contras de algunos de los lenguajes de back-end más populares para el desarrollo de aplicaciones web?
- Escalabilidad: ¿Cómo encontrar cuellos de botella en su sitio web / producto web durante las pruebas?
- ¿Cuál es la ventaja de escribir una aplicación web con Node.js en EC2 frente a Python en Google App Engine?
Entonces, ¿por qué no son más populares?
En el primer caso, hay muchas personas que piensan que es mejor inventar algo nuevo. Slack, por ejemplo, podría haberse construido fácilmente sobre XMPP, pero en su lugar escribieron su propia infraestructura y luego entregaron el diseño de UX a un tercero. Tan extrañamente, pasaron su propio tiempo haciendo algo que ya existía. A veces hay buenas razones para esto, pero la mayoría de las veces hay razones que simplemente sonaban bien para alguien en ese momento.
En el segundo caso, todos construyen y, por lo tanto, eligen la tecnología para el desenfrenado caso de éxito. Las redes sociales exitosas, etc., sobreviven porque alcanzan una masa crítica más allá de la cual se activa el efecto de red. La interoperabilidad no es importante, porque pueden capturar una participación de mercado significativa dentro de su jardín amurallado. Y se diseñan para una gran escala desde el principio porque seguramente necesitarán millones de usuarios en línea de una vez en cualquier momento.
Me encanta el optimismo, de verdad, pero están cayendo en el sesgo de supervivencia: la mayoría de las redes sociales nuevas nunca llegan a su masa crítica y pasan desapercibidas. Son solo los que lo hacen que alguien haya oído hablar alguna vez. Sería mucho más útil construir una carga de redes más pequeñas pero conectadas, y mucho mejor para los usuarios. Sin embargo, ¿por qué una corporación querría reducir el riesgo y enfrentar recompensas más bajas por su inevitable éxito?