CMS 2018

Últimamente hay bastante movimiento en relación a los sistemas de gestión de contenidos (CMS). Algunas de las iniciativas más interesantes:

ApostropheCMS (Javascript, MongoDB)

Locomotive CMS (Ruby, MongoDB)

Ghost

OctoberCMS

DatoCMS

Grav CMS (PHP, fichero)

SilverStripe

CMS Airship: priorizando la seguridad

Generadores de “sitios estáticos”

Jekyll (Ruby). CMS para Jekyll: Jekyll admin

Gitbook (Markdown)

Hugo (Go), Hexo (Node.js)

Gatsby (Node.js + ReactJs)

Sphinx Documentación (Python)

Headless CMS

GraphCMS: contenidos como API (respaldado por una “base de datos” GraphQL). La API la ofrecen ellos como servicio, por el cual facturan en función de la demanda.

Wiki

PmWiki (PHP, fichero)
FosWiki (Perl, fichero)

Editores

SummerNote

Cómo organizar el contenido de una web

En un minuto

El proceso se puede resumir en: escoger los tres contenidos clave de la web y ofrecerlos en la página principal, con enlaces en el menú de navegación principal (el de arriba). Si nos queda aún información relevante, agrupar los enlaces en uno o dos bloques en la navegación secundaria (al final de la página).

Si te puedes comprometer a ofrecer contenido en las redes sociales (1 o 2 son suficientes en general) o un blog, inclúyelos.

Y no olvides la información de contacto, integrada directamente en las páginas (no crees una página aposta salvo que realmente aporte algo). Dependiendo de lo importante que sea el contacto, puede merecer la pena ser original y plantarlo lo primero, arriba del todo. Si no, al final de la página es lo más común.

Introducción

Hay múltiples formas de categorizar contenidos. Tradicionalmente, los sitios web heredaban esquemas de otras disciplinas. Por ejemplo, la típica jerarquía de entidades que servía de paraguas a una pila de páginas que al final apenas aportaban información.

Con la experiencia ganada en todas las webs que nos preceden, se ha ido llegando a un enfoque más práctico: descubrir quienes son los visitantes (bien sobre el papel, en webs nuevas, o bien analizando el tráfico de una web en producción) y decidir concretamente qué información les resulta útil (nuevamente, bien por hipótesis o bien por análisis de las páginas y / o consultas más populares)

¿Qué tipos de información son los más comunes?

(aunque parezca muy corporativo, si te paras a pensarlo, todo esto que planteo sirve para un montón de tipos de web, no sólo de empresas o productos…)

Lo habitual es que esa información se reduzca a unas pocas páginas que se pueden organizar en un esquema plano. Además, suelen corresponder a dos preguntas básicas:

  1. Qué / Por qué: cuál es el “producto” que se oferta en la web, por qué decantarse por él en lugar de otros de la competencia
  2. Quién: la marca, la empresa, el equipo humano. En esta sección se puede hablar de los valores, la ética, la filosofía, la misión, la historia…

Hay otros tipos de información que también resultan interesantes, dependiendo de cada web en particular:

  • Únete: ofertas de empleo (“careers”)
  • Preguntas y respuestas: ayuda, soporte, preguntas frecuentes, foros…
  • Tienda: venta directa y en línea del producto que se está ofertando
  • Conecta / Síguenos: blog, redes sociales… Esto está tan de moda que muchos se sienten obligados a incluir enlaces a varios perfiles sociales, que luego no aportan nada porque no hay nadie que se encargue de mantenerlos actualizados y frescos. Lo mismo aplica para el blog asociado a la web. Total, que para cargar la web con artefactos sociales caducos, mejor no poner nada (de hecho, cada vez hay más webs que, o bien no incluyen perfiles sociales, o bien los ponen al final de la página, como algo secundario)
  • Contacto: correo electrónico, teléfono, dirección, soporte a prensa…
  • Multimedia: galerías de fotos y videos
  • Cuándo: información vinculada a fechas especificas (noticias, eventos, calendario…)
  • Dónde: información geográfica
  • Enlaces: aún hoy se considera un tipo de datos propio, pero en realidad se trata de algo demasiado general (salvo que la web sea algún tipo de portal). La tendencia es integrar en otras secciones los enlaces que realmente estén relacionados, y eliminar el resto

Configuracion puerto e IP Rails 2

El script server acepta los parametros -p y -b para especificar en que IP y puerto escucha el servidor de Rails.

Uno esperaría que esas opciones se pudiesen indicar también en un fichero de configuración, por ejemplo en el directorio config. Sin embargo, parece que WEBrick no contempla esa posibilidad. Se puede editar directamente el fichero vendor/rails/railties/lib/commands/server.rb, pero no me parece muy elegante.

A falta de algo mejor, una forma de configurar esos parámetros de Rails es modificando ARGV en script/server:

ARGV<< “–port=PUERTO”
ARGV<< “–binding=IP”

El reverso tenebroso de las GPU

Los procesadores de las tarjetas gráficas (GPU) han abierto nuevas posibilidades para cálculo que se están comenzando a aprovechar por ejemplo en la computación científica.

Pero… también han reducido notablemente la seguridad de las contraseñas tradicionales, incluso las que no usan palabras de diccionario y alternan números…

Así que, como recomienda Jeff Atwood, llegó la hora de cambiarse a las “frases clave

Plugins WordPress interesantes

Para hacer copias de seguridad de la base de datos, WordPress Database Backup. Para limpiarla (“optimizarla”), WP-Optimize.

Para agilizar la carga de las páginas, WP Super Cache.

Para una integración en Facebook y Twitter: Facebook Open Graph, Google+ & Twitter Card Tags o WP Facebook Open Graph protocol.

SEO: All in One SEO Pack

Para mostrar código, SyntaxHighlighter Evolved.

Para incrustar fácilmente videos de Youtube (si no viene de serie), WP Youtube Lyte

Para “proteger” los cambios, Revision Control.

Para recibir alertas cuando se hacen cambios, Email Post Changes.

Para reducir el spam, WP-SpamShield.

Formularios: WP Forms Lite o Contact Form 7