¿Por qué Woost?
Introducción
Woost es una completa solución de gestión de contenido de código abierto impulsada por Whads desde hace más de 10 años.
En muchas ocasiones, los nuevos clientes nos piden que les argumentamos porque consideramos que Woost es mejor herramienta para ellos que otras alternativas más populares como Drupal , Wordpress , Joomla o Typo3 .
Este documento expone los motivos que nos llevaron a crear esta solución, así como los que creemos que son sus principales ventajas e inconvenientes .
Ante todo queremos aclarar que hablamos con pleno conocimiento de causa. Aparte de nuestras realizaciones en Woost tenemos una dilatada experiencia en las plataformas Drupal , Wordpress , Typo3 y Joomla , ya sea por exigencias de nuestros clientes, por el aprovechamiento de instalaciones. preexistentes o por qué, sencillamente, hemos creído que alguna de estas opciones era la que mejor se adaptaba a los requerimientos concretos de un proyecto.
Un proyecto necesario
Whads centra su actividad en ofrecer soluciones online de calidad. Esto incluye aspectos como la estrategia, el diseño o el posicionamiento y muy especialmente, el desarrollo tecnológico. En este aspecto, siempre que podemos utilizamos aplicaciones y servicios existentes en la red antes de hacer cualquier desarrollo a medida.
Por este motivo, antes de iniciar el proyecto de Woost, evaluamos decenas de soluciones de software libre. Detectamos dos grandes carencias generalizadas: falta de soporte nativo para contenidos multilingües y mucha rigidez a modelos de datos , es decir, mucha dificultad para adaptarse a las necesidades específicas que cada solución requiere. Entendiendo que estas dos funcionalidades eran irrenunciables, decidimos iniciar nuestro propio proyecto.
Hoy Woost es un proyecto consolidado que impulsa un gran número de webs, entre las que destacan el Palau de la Música , MANGO o la Fundación Carreras contra la leucemia. Sobre esta base estable seguimos incorporando mejoras regularmente.
Gestión multidioma integral y productiva
Actualmente, buena parte de los gestores más populares disponen de opciones para gestionar contenidos multilingües . No obstante, en la mayoría de los casos, esta funcionalidad no forma parte del diseño base de la solución, sino que se añade vía módulos o extensiones desarrollados por terceros.
En contrapartida, Woost nació con el multilingüismo como requerimiento central, lo que ha permitido diseñar y optimizar la solución para la gestión de los contenidos multilingües desde la base.
Dispone, además, de una funcionalidad que prácticamente no hemos encontrado en ninguna otra solución: la edición "lado a lado" o edición "en paralelo" , que permite editar varios idiomas simultáneamente. Esto supone un incremento muy notable de la productividad de los editores que pueden editar, comparar y corregir varias traducciones desde una misma vista. En comparación, el circuito de traducción habitual del resto de gestores (editar una traducción, guardar los cambios, conmutar a la siguiente traducción ...) resulta muy pesado y poco usable.
Modelos de datos, adaptación total
Woost estructura el contenido de un sitio web basándose en modelos . Cada modelo describe un tipo de datos específico, ya sea una página, una noticia, un libro o un producto de una tienda electrónica. El sistema permite definir nuevos modelos (o modificar los que proporciona ya de salida) para satisfacer los requisitos de cada sitio web de forma precisa. Por ejemplo, una web para una ONG podría necesitar tratar con campañas, socios y donativos, mientras que un portal para hacer reseñas de restaurantes necesitaría modelos por los locales y las reseñas.
Con Woost, adaptar el gestor para dar cabida a estos contenidos tanto específicos resulta sumamente sencillo. Los desarrolladores de la web declaran los diferentes modelos , sus campos , sus vinculaciones con otros modelos y sus reglas de validación. A partir de esta información, el gestor se encarga de generar la interfaz de edición, listado y búsquedas de forma automática . Esta capacidad proporciona ventajas muy significativas:
- El personal técnico se ahorra esta tarea y puede concentrar toda su atención en las necesidades específicas de la solución. De esta manera hay una reducción drástica de los tiempos de implementación , a la vez que se obtienen resultados más robustos.
- La interfaz resultante es altamente consistente : ya se estén editando páginas, noticias, libros o recetas de cocina, todos los tipos se listan, crean, editan o buscan de forma muy similar, facilitando la formación de los editores.
- El gestor incorpora de serie muchas funcionalidades avanzadas como las búsquedas de texto libre, las vistas en miniatura de documentos PDF y vídeos, o la exportación a Excel. En otros entornos, los desarrolladores de la web deben implementar estas funcionalidades para cada modelo que añaden al gestor.
En contraposición, cuando trabajamos con gestores de contenidos más populares, la adaptación a las necesidades específicas del proyecto suele ser problemática. Normalmente se resuelve mediante la adopción de una suma de extensiones de terceros y con desarrollo específico. Optar por una extensión implica invariablemente resignarse a compromisos y relajarse o alterar los requisitos del proyecto para alinearlos con los previstos por el autor de la extensión, además de suponer un trabajo de integración y acondicionamiento que a menudo suele derivar en código poco riguroso y sólido. Por el contrario, un desarrollo propio esquiva estos problemas, pero introduce costes y tiempo de desarrollo adicional, a la vez que incrementa la superficie de código a probar y mantener.
Finalmente, es relevante comentar que algunos gestores como Drupal sí incorporan sistemas de definición de modelos de planteamiento similar a Woost. Sin embargo, suelen ser muy rudimentarios, con limitaciones importantes que comprometen la fidelidad del modelado a los requisitos del proyecto.
Edición por bloques, libertad sin errores
La edición por bloques permite maquetar páginas de cualquier complejidad sin conocimientos de HTML añadiendo y moviendo (drag & drop) bloques funcionales y de contenido : textos con imágenes, galerías, videos, mensajes de Twitter, listados de noticias, o cualquier otro.
En la mayoría de gestores de contenidos, la única opción para realizar este tipo de maquetación consiste en editar directamente el código HTML y ello conlleva numerosos problemas: introducción de errores, variaciones arbitrarias de diseño, frustración los editores, imposibilidad de realizar modificaciones de forma global, etc.
Con el sistema de bloques, si se quiere, por ejemplo, modificar el tamaño, el diseño y / o la funcionalidad del reproductor de videos de Youtube de la web, es suficiente con redefinir el bloque de vídeo y , automáticamente, todas las páginas reflejarán los cambios. Si, por el contrario, el código de Youtube había introducido directamente en cada página, habría que buscar y revisar este código plana plana.
Woost es código abierto y gratuito
El software libre es un modelo de desarrollo y distribución del software que permite que su usuarios puedan estudiarlo, modificarlo y redistribuirlo. Muchos de los proyectos basados ??en este principio fomentan el crecimiento de comunidades de usuarios que colaboraron para mejorar el proyecto y dar apoyo y servicios para la solución. Las ventajas de coste y flexibilidad proporcionados por estas soluciones hacen que muchas empresas e instituciones escojan gestores de software libre para construir sus webs.
Woost es software libre. Se puede descargar de forma gratuita, y cualquier usuario puede utilizar o modificar libremente. Más allá del código del propio gestor, todos los módulos y componentes de terceros que utiliza son a su vez software libre de disponibilidad gratuita. De esta manera, incluso en el caso de que Whads dejara de prestar sus servicios, los clientes disponen de acceso completo a todo el código de la solución.
Apoyo y tiempo de respuesta
Las ventajas de utilizar soluciones con una base de instalaciones y usuarios considerable resultan obvios. En este sentido, Woost se encuentra en desventaja respecto a otras soluciones más populares. Aunque se ha beneficiado de varios años de desarrollo y se ha utilizado en un número muy respetable de proyectos, los órdenes de magnitud en que operan proyectos como Wordpress, Drupal o Typo3 son incomparables.
Sin embargo, el reverso positivo de esta condición es la proximidad y el nivel de apoyo que podemos ofrecer. La autoría de la herramienta nos permite ofrecer una atención , una personalización y un tiempo de respuesta que las empresas que se basan en soluciones genéricas no pueden igualar. De la misma manera, también podemos guiar la evolución del proyecto rigiéndonos estrictamente para aquellas necesidades y demandas surgidas de proyectos reales de nuestros clientes.
Seguridad
Uno de los principales dolores de cabeza de las instalaciones web es la seguridad. La complejidad de la red hace que sea muy complejo gestionar y mantener soluciones de forma segura. Abundan los ataques que ponen en compromiso los datos, utilizan los propios recursos para realizar actividades masivas de spam, etc.
La arquitectura de Woost, su situación en el mercado y unas prácticas de desarrollo muy rigurosas lo hacen muy poco vulnerable a los ataques.
- Inmunidad contra inyección de SQL
Woost no utiliza bases de datos SQL para almacenar los datos del lugar, por lo que es inmune a ataques basados ??en inyección de sentencias SQL, muy frecuentes en otros entornos web. En su lugar, se utiliza ZODB, una base de datos orientada a objetos de código abierto. - Archivos ejecutables
En muchos entornos de desarrollo web populares (PHP, ASP, JSP) las direcciones (URLs) se corresponden directamente a archivos que contienen el código a ejecutar. Bajo este modelo, cualquier directorio publicado en el servidor web se convierte en un posible vector de ataque, si hay un medio para crear o modificar uno de sus ficheros. Por ejemplo, un formulario que incorpore un campo para archivos adjuntos que no cuente con las medidas de validación adecuadas.
Woost no es susceptible a este problema, ya que no se basa en el sistema de archivos para publicar sus contenidos. Las páginas residen íntegramente a la base de datos. - El precio de la popularidad
Desde el punto de vista de la seguridad, Woost se beneficia de ser una plataforma menos popular. Los problemas de seguridad de proyectos como Wordpress o Drupal se publicitan ampliamente, y suelen ser objeto de ataques masivos indiscriminados que recorren la red en busca de instalaciones no actualizadas vulnerables a problemas conocidos. A pesar de ser circunstancial, se trata de un punto muy relevante. - Código deficiente de terceros
La mayoría de gestores populares ofrecen mecanismos de extensibilidad que permiten que terceras partes modifiquen el funcionamiento o incorporen nuevas características. La utilización de estos módulos externos puede comprometer seriamente la seguridad de la solución, ya que resulta difícil garantizar el rigor y calidad del código desarrollado por estas terceras partes, así como la capacidad de sus autores para responder a los problemas detectados y ofrecer y publicitar adecuadamente las actualizaciones pertinentes.