Skip to main content
Seb's blog

Je me remets à tester des GSS.

Pélican me suffit mais des fois il est important de ne pas se contenter de ce qu'on a, je suis donc depuis quelques jours, sur un projet pour migrer mon site.

Sans donner un ordre particulier, je teste Pélican (plusieurs thèmes et réglages), Hugo, Hexo (oui je lui redonne une chance et ça passe bien mieux), Zola, Jekyll (juste pour la forme) et pour finir un petit dernier de 2018 je crois, 11ty ou eleventy.

Sans grands secrets, je peux annoncer que je n'irais pas sur Jekyll, j'ai beau essayer, plutôt retenter puisque mon blog fut un temps propulsé par lui, mais là je n'y arrive pas, pour plusieurs raisons. Tout d'abord la lenteur, il prend 3.53 secondes pour fabriquer le blog actuel c'est à dire environ 700 posts et 11.48 secondes pour 1906 billets, plus précisément car j'ai fait un benchmark sur l'ensemble des GSS testés, c'est le plus lent si on utilise pas le système de cache qui est dans sa version 3.x peu pratique. En fait, ce n'est pas le plus lent, Pélican pour le coup y est bien plus propose en sortie de boite bien plus de choses. C'est surtout celui qui est le plus nu dans sa sortie de boite, je sais ça se change mais le coup des thèmes qui nécessitent des plugins, puis aussi GEM à lui seul me rebute.

J'ai donc été voir du coté de Hexo, juste avant ça marchait bien, mais maintenant avec un site de plus de 1900 billets (56sec contre 11.48 pour Jekyll), ça ne passe plus et je me retrouve avec un soucis de temps dépassé alors que j'avais fait plusieurs essaies avant avec les mêmes billets (ceux des news d'openSUSE). J'ai bien aimé, c'est peut être mon chouchou, mais au moins deux choses me déplaisent en dehors du fait que je n'arrive plus à fabriquer un site avec 1900 billets, c'est les thèmes qui sont majoritairement en asiatique, du coup il en reste que peu qui soit pour nous. L'autre chose est le temps de compilation du site, pour mon blog et ses 700 billets, ça donne 5.70 secondes puis avec le cache incrémentiel 3.20 secondes. Je vais retenter un build des 1900 billets en essayant de trouver ce qui coince, je suppose un billet avec du code.

Hugo et Zola me font ça en moins d'une seconde, je peux pas dire qui est le plus rapide, c'est 390ms pour +700 billets et les 1900 sont fait en 711ms. Je peux pas dire qui va le plus vite entre les deux, car un instant c'est Hugo qui va nous faire 1 billet en 27ms puis Zola en 31ms et l'instant d'après c'est l'inverse. Par contre je ne sais pas si je veux me faire chier avec eux, Zola est plus simple qu'Hugo, la doc est un peu vide mais c'est plus facile de comprendre car Hugo en fait trop. Si on veut quelque chose de rapide, faut essayer l'un des deux, c'est les plus rapide que j'ai vu et j'en ai vu pas mal! Hugo a beaucoup de thèmes, Zola est en manque de ce coté là mais c'est dû à son jeune age. Du coup, je me sentirai mieux sur Zola pour la compréhension mais vu que je reproche déjà un manque de thèmes pour Pélican, je n'irai pas dessus pour la même raison. Et pour Hugo, c'est simple, une mauvaise configuration et hop les temps se multiplient à l'infini, j'ai eu par exemple le cas avec un mauvais layout, du coup les 1900 billets se sont fait en 10 secondes au lieu de 700ms.

Pélican, celui que j'utilise actuellement, n'est pas le plus chouette, ni le plus populaire, ni le plus aimé, ni le plus moderne, ni le plus rapide, ... J'aime bien et je l'ai choisi pour plusieurs raisons, il est disponible dans toutes les distributions, ce qui évite d'utiliser pipe, il est en python qui lui est déjà installé sur ma bécane car utilisé pour de nombreuses application (comme deluge), il pardonne ma fainéantise et il compense mes lacunes, du coup quand je veux importé sur un autre moteur c'est la merde car les autres sont plus carrés. Un exemple tout con est la date, je n'ai pas fait gaffe mais mon script qui me fabrique mon fichier avec dedans les métadonnées déjà pré-remplie, donne des mois comme 1-2-3-4-5-... oui il n'y a pas de zéro, les autres SGG me font des grimaces mais pas Pélican. C'est un exemple comme ça parmi un nombre incalculable de conneries que je fais. Je m'en suis rendu compte là en testant à nouveau les moteurs. Pour les 1900 billets c'est en 18 secondes que ça se passe, puis avec le cache c'est 6.63 tandis que les 700 billets se font en 6.72 secondes puis en 2.54. En fait, avec Pélican, je suis toujours avec le cache sauf quand je change de thème, c'est pourquoi je dis qu'il est plus rapide que Jekyll car son cache est vraiment fonctionnel. Alors que Jekyll et son cache, j'ai eu des misères qui m'obligeait souvent à builder sans. Si je devais trouver un soucis avec ce dernier, je parlerai des thèmes vieillots, des plugins qui ne sont pas forcément entretenus. Pour ma part j'utilise aucuns plugins car de boite il fait déjà tout ce dont j'ai besoin.

Le petit dernier, mais pas des moindres, date de 2018, je parle de 11ty, il est totalement flexible, s'adapte à ce qu'on a. La courbe d'apprentissage pour le débutant que je suis est abrupte, c'est --je trouve-- le plus dur à prendre en main car justement il ne précise pas de cadre.

*Eleventy n'est pas un framework JavaScript, ce qui signifie qu'il n'y a pas de JavaScript standard côté client . Nous envisageons à long terme de nous retirer de la course effrénée du cadre. La chaîne d'outils, les modules et les composants que vous utilisez dans votre pile frontale sont découplés de cet outil. Travaillez à partir d'une base solide de modèles pré-rendus qui répondent aux exigences de base d' amélioration progressive de votre projet.

C'est sur celui-ci que je pense miser mais faudra d'abord que je le maitrise et c'est pas chose gagné. Je vais m'y plonger et on verra bien.

Comme je vous le disais, j'ai à nouveau tenté avec Hexo et les 1900 billets, ça marche, je comprends pas ce que j'ai fais de plus ou de moins, en tout cas le temps est bien plus long que pour Jekyll, c'est dans les 56 sec.

Affaire à suivre.

Commencer la discussion: Venez écrire un commentaire dans le forum