Depuis longtemps je n’avais rien publié sur le blog mais je n’étais pas inactif !
Certe je n’écris pas beaucoup et/ou souvent mais ce n’est pas seule raison. Le temps passé a été riche en découvertes et cela m’a pris beaucoup de temps.

L’une de mes occupations a été de trouver une solution à l’obsolescence de Drupal 6.
La première option était de migrer vers une version récente de Drupal qui est maintenue.
Les tests effectués n’ont pas été concluant :

  • le transfert n’était pas indolore : je ne retrouvais pas mes données lors de la mise à jour, les informations disponibles n’étaient pas explicites pour le non-spécialiste que je suis. il fallait donc investir beaucoup de temps avant d’espérer parvenir à mes fins sans trop de pertes.
  • la consommation ressource importante : les tests de Drupal 7 et 8 ont mis en évidence une consommation excessive des ressources ; le temps de réponse lors du premier accès à une page était très long
  • l’utilisation de Drupal pour un petit blog comme le mien ne se justifiait pas, c’était prendre une masse pour écraser une mouche !

Ayant déja eu des problèmes lors de la migration de la version 5 à la version 6 et voyant que c’était encore la même galère, j’ai décidé qu’il fallait trouver une autre solution.

J’ai réalisé des tests sur plusieurs CMS utilisant une base de données pour enregistrer les articles, à chaque fois le résultat était quasiment le même : les accès étaient lent.

Au cours de mes recherche j’ai découvert les générateurs de site statique comme Jekyll, Pelican, Docpad

Il existe beaucoup d’articles qui expliquent en détail le fonctionnement de ces générateurs de sites qui utilisent tous le même principe : un ensemble de dossiers pour y placer les éléments du sites (articles, photos, …), des scripts pour transformer les fichiers source en pages Html, des templates qui permettent de définir la présentation des pages.

Lors d’une génération le résultat est enregistré dans un dossier dédié, c’est le contenu de ce dossier qui sera transféré après contrôle sur le serveur Web.
Lors de la consultation d’une page, le serveur Web doit juste fournir la page Html demandée ce qui est plus rapide qu’un CMS ou la page doit être reconstruite à chaque consultation à partir de données issues de multiples requètes dans une base de données.

Autre particularité de presque tous ces générateurs c’est d’utiliser le Markdown pour l’écriture des articles et cela m’a plus :

  • la syntaxe est simple
  • elle peut être utilisée pour différentes production. j’ai remplacé l’utilisation de LaTex ou LibreOffice par le Markdown pour l’écriture et Pandoc pour générer la cible finale
  • on peut utiliser son éditeur favoris, dans mon cas c’est Vim

Finalement après avoir testé plusieurs générateur de site statique j’ai décidé de choisir Jekyll.
Il reste encore des évolutions à apporter comme un thème personnalisé mais cela viendra plus tard.