typoDix mois après ma migration de Wordpress vers Typo, je trouve enfin un moment pour réfléchir à un vrai bilan de mon utilisation de cet outil de blog développé en Ruby On Rails. Pour résumer, je dirais qu’il convient presque parfaitement à mes besoins et aux objectifs que je m’étais assignés lorsque j’ai choisi de changer d’environnement. Le tour de la question sous la forme d’une classique alternance de j’aime / j’aime pas.

J’aime : Typo fait ce dont j’ai besoin c’est (presque) tout.

Typo s’articule autour de six fonctionnalités principales :

  • L’écriture et l’édition de billets et de pages dites “statiques”.
  • La gestion des commentaires et des trackbacks.
  • La configuration d’une barre de menu personnalisée.
  • Une interface de sélection du thème à utiliser.
  • L’ajout de fichiers.
  • Une interface de configuration.

Et c’est tout. Ça tombe bien, dans un sens, je ne lui en demande pas plus.

Je n’aime pas : le balisage XHTML trop minimaliste.

Actuellement, le XHTML généré par l’application – en dehors des thèmes définis par les utilisateurs – est beaucoup trop minimaliste pour satisfaire les créateurs de thèmes. Il est notamment impossible, par exemple, de placer les billets dans un cadre extensible à bords ronds sans devoir modifier le code de base dans /app/views/articles/, ce qui risque fort de casser les thèmes existants. J’ai rencontré un problème similaire avec les éléments du menu qui ne disposent pas par défaut de leur identifiant. J’ai proposé un patch au mois d’avril, il devrait être ajouté dans la version 4.1.

J’aime : Ruby On Rails en lieu et place de PHP.

Il y a un peu plus d’un an, j’expliquais pendant vingt minutes au directeur technique d’une entreprise qui souhaitait me recruter pour une mission PHP pourquoi je n’aimais pas ce langage, et en quoi je le trouvais pourri, mal pensé, mal conçu, globalement dangereux et épouvantablement bancal, presque autant que Perl, c’est dire. J’admets sans problèmes aujourd’hui que c’était une bêtise, mais cela prouvait au moins que je savais de quoi je parlais, et ce côté “je vais au fond des choses pour mieux les utiliser” pouvait plaire. La preuve en est que j’ai eu la mission.

Mine de rien, en dehors des qualités intrinsèques de Ruby, utiliser un autre langage que PHP m’assure l’immunité contre 80% des script kiddies, et ce n’est pas rien. Restent ceux qui tentent de s’attaquer à mon serveur SSH en bruteforce, mais là aussi je vais régler le problème en revenant à mes premières amours : telnet over stunnel, l’arme des vrais guerriers à l’ancienne.

Je n’aime pas : L’interface d’administration.

J’avoue, l’ergonomie de l’interface d’administration me fait un peu penser à celle d’un fauteuil de dentiste du début du siècle dernier, elle avoisine donc ce qui se fait de mieux en matière d’horreur. Des éléments qui devraient être rassemblés se trouvent dans des sections différentes, les paramètres sont tous regroupés sur une seule et même page sans cohérence, et la CSS est à vomir. Mais là, je ne peux m’en prendre qu’à moi, je n’ai qu’à me bouger les fesses pour terminer la refonte complète de l’administration et soumettre mon patch à Scott, après tout, je me suis engagé à le faire (et ça avance).

J’aime : les développeurs écoutent la communauté.

Les développeurs de Typo sont à l’écoute des idées et des demandes de la (trop petite) communauté des utilisateurs de Typo, et acceptent volontiers les nouveaux contributeurs, charge à eux de faire leurs preuves. La majorité de mes suggestions ont notamment été intégrées à la version 4.0, à commencer par l’intégration de l’antispam Akismet par défaut.

Je n’aime pas : le système de sidebar.

Dans la version actuelle de Typo, la sidebar est constituée d’éléments sélectionnés par l’utilisateur via un un drag and drop.

Ce système présente l’avantage d’une simplicité enfantine, puisque chaque éléments, en fait un greffon, contient sa propre administration. L’utilisateur n’a donc pas à modifier son thème pour intégrer telle ou telle fonctionnalité. En contrepartie, ce système présente un certain nombre de défauts non négligeables.

Il est pratiquement impossible de faire des design en plus de deux colonnes. Vous pouvez notamment oublier le modèle menu / contenu / menu, et le modèle affichant les éléments du menu l’un à coté de l’autre – contenu / menu / menu ou menu / menu / contenu – est envisageable avec une bonne connaissance de CSS et un esprit un peu tordu.

Il existe trois sortes de greffons pour la sidebar :

  • La publication d’un contenu interne au blog comme le flux RSS, les archives, catégories ou tags.
  • L’intégration d’un contenu externe, comme Delicious, Flickr ou Technorati.
  • La publication d’un contenu XHTML statique saisi par l’utilisateur.

Certains greffons manquent clairement à l’appel, notamment la gestion d’une blogroll. Le greffon “statique” ne fait malheureusement pas tout, alors que je me pose encore la question de l’utilité de certains greffons, comme celui du numéro d’utilisateur XBox League intégré de base dans l’outil.

J’aime : l’annuaire de thèmes.

Il existe un grand nombre de thèmes librement disponibles, et je les trouve pour la plupart magnifiques. Le script Lightbox utilisé pour les visualiser me ressort par les yeux, mais en dehors de ça, le site est vraiment pratique.

Je n’aime pas : la syntaxe XHTML 1.0 transitionnel fait une erreur quand on veut passer en XHTML 1.1.

Oui, je sais, c’est idiot, d’autant que je ne sers pas mes pages XHTML 1.1 avec le bon type mime : trop paresseux pour faire les modifications adéquates pour changer le type de HTML/XML en text/HTML quand le site est accédé par un Internet Explorer, je sers le mauvais type mime par défaut.

J’aime : le support des tags par défaut.

Contrairement à la plupart des outils de blogs qui nécessitent l’installation d’un greffon pour supporter le microformat rel="tag", Typo le supporte de bases, ce que je considère comme un très bon point aussi bien pour l’adoption des tags par le plus grand nombre que pour les paresseux dans mon genre qui n’ont pas envie de télécharger et installer un greffon de plus.

Je n’aime pas : le manque d’internationalisation.

Là, je n’ai qu’à m’en prendre qu’à moi-même, j’avais une version 2.6 fonctionnelle supportant gettext et traduite en français , malheureusement, ni Apache ni Lighttpd ne trouvaient le support de gettext, et je n’ai jamais compris pourquoi. Des versions localisées seraient pourtant un bon point pour la diffusion de Typo.

J’aime : l’installateur, simple et efficace.

La version 4.0 apporte un installateur automatisé vraiment bien fait, qui permet d’installer des instances de Typo tournant sous Mongrel avec une base SQL Lite :

    powerbook58-de-frederic-de-villamil:/tmp neuro$ sudo gem install typo
    powerbook58-de-frederic-de-villamil:/tmp neuro$ typo install /var/www/typotest

Et voilà, chez moi ça marche.

Je n’aime pas : chercher des défauts juste pour garder l’alternance des j’aime / j’aime pas.

En conclusion, je dirais que j’aime Typo, un environnement certes largement perfectible, mais qui bouge vite, avec des développeurs à l’écoute et une communauté certes petite mais sympathique. Ses petits défauts et la nécessité de plonger régulièrement dans le code font qu’il n’est cependant pas prêt à passer entre toutes les mains.

Note : Olivier, ce billet est pour toi, en attendant que je trouve la motivation de te créer un vhost pour que tu puisses jouer un peu avec une instance de Typo avant de te décider.

Perry the Platypus wants you to subscribe now! Even if you don't visit my site on a regular basis, you can get the latest posts delivered to you for free via Email: