Comunidad Drupal considerando una arquitectura desacoplada
Publicado: 2015-12-12
A principios de esta semana, Dries Buytaert, creador y líder de proyecto de Drupal, abrió una discusión en su blog sobre el futuro de la arquitectura de Drupal en una publicación titulada ¿Deberíamos desacoplar Drupal con un marco del lado del cliente?
Buytaert sostiene que los usuarios esperan experiencias similares a las aplicaciones de los sitios web, dadas sus experiencias al interactuar con las noticias de Facebook, la bandeja de entrada de Gmail y la transmisión en vivo de Twitter.
"Muchas de las interfaces administrativas de Drupal y los sitios de Drupal podrían beneficiarse de una experiencia de usuario instantánea y sin problemas similar", dijo Buytaert. "Como líder del proyecto de Drupal, me pregunto: ¿cómo puede nuestra comunidad sentirse habilitada y alentada para comenzar a crear experiencias de usuario ricas?"
La discusión para desacoplar Drupal con un marco del lado del cliente llega en un momento interesante, ya que la dirección State of the Word de Matt Mullenweg anunció JavaScript como el futuro de WordPress y la web. Sus comentarios finales alentaron a los desarrolladores a aprender JavaScript y comenzar a crear aplicaciones basadas en WordPress para el futuro.
Un comentarista en la publicación de Buytaert establece una conexión con el lanzamiento de Calypso de Automattic:
Parece que esta publicación es, al menos en parte, una reacción al anuncio de Calypso de WordPress. Con suerte, podemos concentrarnos en tomar las decisiones correctas para el futuro de Drupal en lugar de reaccionar apresuradamente a lo que está haciendo otro CMS, especialmente cuando ha hablado una y otra vez de que WordPress no es la verdadera competencia de Drupal.
Buytaert sostiene que sus consideraciones para Drupal fueron motivadas de forma independiente, y esta no es la primera vez que escribe sobre desacoplar los extremos posterior y frontal.
“En cuanto al anuncio de WordPress de Calypso, en realidad comencé a escribir esta publicación de blog antes de que se anunciara Calypso”, dijo. “No creo que mi posición haya sido influenciada por Calypso”.
Buytaert inició esta discusión con el hecho de que los usuarios han llegado a dar por sentadas las experiencias similares a las aplicaciones como base para la interacción en los sitios web. Toda la web se está moviendo en esta dirección y los CMS como Drupal y WordPress ahora se ven obligados a escalar esta montaña si quieren seguir siendo relevantes. Ambos proyectos juegan desde atrás, tratando de alcanzar las expectativas de los usuarios.
El desafío de estandarizar un marco
En muchos sentidos, la discusión sobre la publicación de Buytaert es pertinente hacia dónde se dirige WordPress, especialmente la consideración de estandarizar en un marco particular.
Buytaert aboga por un desacoplamiento progresivo de la experiencia del administrador y del usuario final de Drupal, al mismo tiempo que permite que se construyan experiencias completamente desacopladas sobre la plataforma. Él propone que la mejor manera de hacer esto es “estandarizar formalmente en un marco MV * con todas las funciones (por ejemplo, Angular, Ember, Backbone y Knockout) o una biblioteca de vista basada en componentes (por ejemplo, React, Vue y Riot). ”

Como no es un desarrollador front-end, Buytaert está solicitando la opinión de la comunidad de Drupal sobre qué marco funcionaría mejor para el desacoplamiento progresivo. También reconoce las razones por las que la estandarización de un marco en particular podría ser desaconsejable a largo plazo:
A pesar de los beneficios potenciales, también hay buenas razones para no adoptar un marco único del lado del cliente. Se están creando nuevos marcos front-end a un ritmo que parece insostenible; cada nueve meses hay un chico nuevo en la cuadra. Es difícil para un proyecto tan grande como Drupal adoptar una sola tecnología cuando no hay garantía de su longevidad.
Sin embargo, Buytaert cree que una selección cuidadosa y una reevaluación periódica del marco pueden superar estos inconvenientes.
Cuando alentó a los desarrolladores de WordPress a aprender JavaScript, Matt Mullenweg no identificó un marco único, sino que lo dejó abierto. Dado que Calypso de Automattic se basa en React, parece ser uno de los primeros favoritos.
Si el núcleo de WordPress termina adoptando la tecnología detrás de Calypso (o una alternativa similar a Calypso) para ofrecer una mejor experiencia de publicación, ¿estandarizará el núcleo un marco/biblioteca o continuará habilitando y alentando a los desarrolladores de extensiones a usar cualquier marco?
Un comentarista señala problemas potenciales con Drupal al seleccionar un marco, que algunos pueden percibir como un respaldo oficial:
Ya hay muchos proyectos empresariales que usan un enfoque Drupal desacoplado y, naturalmente, usan muchos marcos diferentes, pero el que veo que más se usa es React. De hecho, en el proyecto en el que estoy trabajando ahora mismo, la organización apuesta por React. Si Drupal se decidiera por Angular, por ejemplo, ¿cómo afectaría a las organizaciones que están haciendo grandes inversiones en otros marcos? Tal vez no entiendo completamente cómo podría funcionar, pero la elección de un marco único parece que podría ser divisivo y disruptivo, disruptivo en el mal sentido, no en el sentido de SV.
Creo que facilitar las arquitecturas desacopladas es excelente y debería ser algo que Drupal haga, pero debería hacerlo de una manera que sea independiente del marco FE utilizado.
Buytaert identifica algunas alternativas para enviar un marco del lado del cliente con el núcleo de Drupal, que incluye recomendar un marco pero no enviarlo con él, o incluirlo en el núcleo pero facilitar su reemplazo con la elección de otro marco por parte del desarrollador.
Su publicación y los comentarios que siguen son el comienzo de una discusión animada y reflexiva que ayudará a dar forma al futuro del desarrollo de Drupal. Hoy, Buytaert está solicitando propuestas que describan un prototipo para una versión funcional del desacoplamiento progresivo.
Estaría interesado en leer una propuesta sobre cómo crear un prototipo de una versión funcional de desacoplamiento progresivo: https://t.co/tJxT66cKoy #drupal
— Dries Buytaert (@Dries) 11 de diciembre de 2015
Tanto WordPress como Drupal están actualmente comprometidos en la lucha por dar el salto tecnológico para brindar a los usuarios más experiencias similares a las de una aplicación. La conversación que rodea el desacoplamiento de la arquitectura de Drupal es importante para que los desarrolladores de WordPress la sigan y aprendan.
