Hacía ya bastante tiempo que venía queriendo cambiar mi
antiguo blog, tenía un drupal. La decisión de poner un drupal como
blog fue algo que tomé así a la ligera, lo mismo que puse un drupal
podría haber puesto un wordpress4. La cosa es que cuando monté mi blog
en mi servidor personal era cuando se pusieron de moda los CMS estos y
yo opté por drupal.
Problemas con drupal
Drupal está muy bien, pero para un blog es algo así como matar moscas
a cañonazos. No es que yo tenga problemas de rendimiento o algo así en
mi blog, pero tener una base de datos, y todo el tema de php ahí
montado a día de hoy es una exageración para tener un simple blog.
Estos son los principales problemas con los que me he encontrado a la
hora de usar drupal como sistema de blog:
-
Urls limpias: Como servidor web estoy usando lighttpd 3 y no es
fácil hacer que un drupal te muestre urls sin parámetros por get con
este servidor.
-
Actualizaciones: Las actualizaciones de drupal no es que sean
complicadas de llevar a cabo, pero hay muchas cosas que hay que hacer
manualmente y que me molesta tener que hacer, no por falta de tiempo,
sino por pereza.
-
Comentarios: Últimamente me estaba empezando a entrar un montón de
spam diario en el blog a través de los comentarios, y eso que tenía
activado el módulo de recaptcha. Llegó hasta tal punto que decidí
desactivar los comentarios anónimos en mi blog.
-
Tema: Durante el tiempo que he tenido el blog en drupal he cambiado
un par de veces de tema. Sin embargo, como soy así un poco especialito,
no me gusta poner un tema así tal cual, sino que me gusta meterle mis
modificaciones y ponerlo un poquito más a mi gusto. Pues bien, cambiar
un tema de drupal no es muy buena idea si no lo vas a mantener, porque
las actualizaciones suelen romper los temas.
El ciclo de la web
Desde hace ya algún tiempo me he dado cuenta de que la web está
volviendo hacia atrás. Estamos volviendo un poco al pasado. Tras la
explosión de los blogs, cuando todo el mundo tenía uno, se hizo muy
famoso wordpress, drupal y este tipo de CMS, que tienen un montón de
funcionalidad, son modulares, extensibles, tienen sus temas y esas
cosas. Sin embargo, la mayoría de los blogs/páginas tienen un
contenido más bien estático y lo único realmente dinámico son los
comentarios.
Antes de la llegada del php y el código en servidor, la mayoría de las
páginas webs eran simples documentos html, que se actualizaban cuando
cambiaba el contenido. No había base de datos ni nada de eso. La web
era más estática, pero requería menos mantenimiento y recursos.
Hoy en día se está volviendo un poco a eso, en algunas partes. Muchas
webs están tendiendo a este tipo de soluciones por temas de
rendimiento y seguridad, servir documentos html sin código que se
ejecute en servidor es muchísimo más rápido y seguro que utilizar una
web php/python/cgi o lo que sea. Pero también se está volviendo a este
tipo de despliegues web porque es mucho más sencillo y lo anterior, en
muchos casos no tenía sentido.
Aún así, la vuelta atrás no implica perder funcionalidad ni facilidad.
No tiene sentido volver a escribir las webs en html, teniendo que
copiar o repetir partes de código como cabeceras, menus, etc. Ni
tampoco tiene sentido perder funcionalidad tan importante como son los
comentarios y la interacción de los visitantes.
La aparición de aplicaciones web que dan servicios son uno de los
factores que han facilitado esta vuelta atrás, por ejemplo
disqus, que te proporciona comentarios en tu web de forma fácil,
y así te olvidas tanto de almacenarlos como del spam (en gran medida).
Por esto han nacido multitud de sistemas de publicación/generación web
offline, que hacen la función de CMS, facilitando al usuario o gestor
de contenidos la tarea de la publicación y encargándose de generar el
código html que irá en el servidor.
El funcionamiento de estos generadores de sitios web estáticos es
relativamente sencillo. Se basan en una serie de plantillas que
rellenan con los ficheros de contenido que se van encontrando. Los
ficheros de contenido suelen ser ficheros con un formato tipo
Markdown o algo así, para facilitar su escritura. Y buscando por
Internet se pueden encontrar muchos diferentes.
Salto a Pelican
De entre todos los diferentes sistemas de generación de contenido
estático que existen me decanté por pelican. Esta elección es
meramente técnica. Pelican está escrito en python, que es un lenguaje
que domino, y utiliza el sistema de plantillas jinja, que es lo
que se usa en django y por lo tanto estoy familiarizado con él.
Ventajas de Pelican
La principal ventaja de utilizar Pelican es que a partir de ahora me
puedo olvidar de tener que administrar el CMS, ni actualizaciones ni
nada. El blog en el servidor será html plano, por lo que si no quiero
actualizar a la última versión de Pelican no me arriesgo a que haya
problemas de seguridad explotables o cosas así.
Además de esto, el uso de Pelican trae consigo una serie de ventajas
que no podemos pasar por alto:
-
Gestión del blog y cambios utilizando git11, esto hace que para mí
como desarrollador y usuario diario de git sea mucho más fácil
controlar los cambios que vaya haciendo en el blog, tanto de contenido
como de visualización. Además lo tengo alojado en github, por lo
que tengo backup automágico.
-
Escritura de entradas del blog con vim. Al escribir el
contenido desde mi máquina puedo utilizar mi editor de textos favorito
y además escribo los posts utilizando la sintaxis Markdown y
luego ya Pelican se encarga de transformar eso en html.
-
Mayor control, al controlar la tecnología con la que está hecha la
herramienta de generación puedo modificar a mi gusto y tengo control
absoluto sobre mi blog.
-
Comentarios externalizados, con lo que me olvido del tema del
spam... Al menos por ahora.
Contras de este nuevo modelo
-
Comentarios externalizados, de momento así será, pero no me gusta
que haya contenido por ahí desperdigado en servidores que no conozco y
que a saber qué hacen con los comentarios que la gente hace en mi
blog. Si fuera software libre me montaría mi propio servidor de
comentarios integrado, pero al fin y al cabo esto es más fácil y al
final la desidia es lo que tiene. Sin embargo esto me duele y tarde o
temprano lo cambiaré por otra cosa que sea software libre y que me
pueda instalar en mi propio servidor controlando así que ningún ente
externo esté haciendo cosas por ahí.
-
No hay edición web. Esto sería un problema si quisiera poder
escribir en mi blog desde cualquier parte y con cualquier dispositivo.
Pero no es el caso, así que es un problema menor, y en un momento dado
sería solucionable metiendo una pequeña aplicación de gestión de
ficheros markdown.
Conclusiones
Cambio mi blog por otra cosa. Esto es otra moda, como lo fue en su día
drupal y de igual manera me dejo influenciar por estas modas y cambio
mi blog a esta nueva tecnología. Esto me sirve para seguir
aprendiendo cosas nuevas y ya de paso le doy un poco de vidilla a
esto, que no se puede quedar parado.
Y así nos va :P
There are comments.