Dual Blog : DeFr's Weblog

Tout marche encore ? | mardi 20 novembre 2018, 01h12

Mood: Oohh

Un petit test, histoire de s'assurer que tout fonctionne encore et de savoir si il y a encore quelqu'un par ici ;-)

Je ne sais pas pourquoi, mais j'ai été pris d'un élan de nostalgie soudain, me faisant me demander si tout marchait encore sur ce blog. Ce n'était évidemment pas le cas…

Cela nous fait du coup un petit lot de commit sur le dépôt Mercurial, qui n'avait pas vu d'activité depuis 8 ans.

Visiblement, il reste un problème avec les commentaires. Bizarrement l'API d'Akismet semble avoir bouger…

Dual Blog libéré | jeudi 20 mars 2008, 15h07

Mood: Goggle

Utilisateur de logiciels libres depuis de longues années déja, programmeur, je n'avais pourtant, jusqu'à présent, rien réellement sorti sous une license libre qui puisse être particulièrement utile à d'autres... Probablement pour plusieurs raisons, notamment un certain perfectionnisme (vouloir publier du beau code, essayer d'optimiser un certains nombres de choses, ...) et un relatif manque de confiance dans l'utilité que mes divers utilitaires pourraient avoir pour d'autres. Cela a, d'un point de vue technique, changer lorsque j'ai commencé à mettre en ligne, par exemple, les codes pour les différents projets que j'ai effectué à l'ECN, une instance de Trac ayant même été crée pour le projet de groupe, mais cela est resté relativement marginal, d'une part due à l'absence de publicité faites à ces divers référentiels, et d'autres part à la spécificité de ces projets, qui présentent relativement peu d'interet pour les personnes étrangères à Centrale Nantes.

Cela a commencé à changer lorsque j'ai commencé, l'année passé, à travailler sur une classe en PHP de templates, basé sur XML, XPath et DOM, librement inspiré des principes de XML::Template. Je cherchais une solution de ce genre depuis un certain temps, et j'avais envie d'un projet pour tester Mercurial, le petit système distribué de controle de version (DVCS pour les intimes) qui a mes faveurs depuis plus d'un an déja. J'ai donc profité de l'occasion pour combiné les deux, et de publier le référentiel. Je me suis assez rapidement convaincu du potentiel de cette solution pour avoir une séparation propre des couches de présentations et de logique du code, en envoyant l'ensemble du XHTML dans les divers fichiers XML de templates, mais j'avoue qu'il devait être relativement difficile de juger du potentiel réel de la solution en se basant uniquement sur les quelques exemples que j'avais inclu dans le référentiel afin de servir de tests unitaires me permettant d'éviter les régressions.

En conséquence, j'ai décidé de l'appliquer sur quelques choses de plus gros. La cible évidente aurait été Méga-Poudlard, mais deux facteurs importants m'ont fait lui préférer Dual Blog, du moins dans un premier temps:

  1. Je pensais qu'il s'agissait de la bonne solution, mais j'avoue que je conservais quelques doutes sur la flexibilité du système, et notamment sur la possibilité de s'adapter à plus ou moins n'importe quelle structure XHTML. J'ai donc préféré commencer par un projet de nettement moins grande envergure:-)
  2. Je souhaitais l'utiliser dans un projet qu'il me serait possible de libérer ensuite. En l'état, c'était parfaitement envisageable pour Dual Blog, nettement moins pour Méga-Poudlard.

J'ai donc commencé à ré-écrire Dual Blog, en utilisant au maximum ces templates: cet effort s'est conclu en novembre dernier, moment où j'ai mis en ligne la nouvelle version, présentant une caractéristique fort plaisante: la possibilité d'utiliser exactement le même code pour la génération de la page en xhtml ou du flux de syndication Atom, au moyen d'un simple chargement de modèles différents. J'aurais probablement pu rendre public le code à ce moment là, toutefois, l'utilité en aurait été réduite: le code comportait en effet un certain nombre de présupposé sur l'adresse ou il résidait (sous-répertoire /blog par endroit, adresse complète dans d'autres, comme il est possible de le voir ), présupposait que les tables correctes soient crée en base de données... Quelques problèmes somme toutes embettant pour qui aurait voulu tester le tout ^^... La bonne nouvelle, c'est que je les ai récement régler, notamment en ajoutant un installeur.

Je voulais aussi faire un petit audit de sécurité du code avant de le publier, puisque ce dernier fonctionne en direct sur ce serveur, et qu'il m'aurait ennuyer de me retrouver avec une faille exploitée. L'interface d'administration repose entièrement sur l'authenfication de l'utilisateur via le serveur web, donc si le serveur web possède lui même une faille a ce niveau, le code est vulnérable... Mais il est probable que de plus grosses proies tombent avant ce weblog :-) D'autre part, le code valide les données qu'il recoit (notamment via l'utilisation d'une classe Requete fort pratique crée lors de mon premier stage chez OWS), donc ça devrait aller. Si toutefois vous trouver un problème manifeste, un petit mail à webmaster AT defr DOT org serait fortement apprécié ^^;

Dual Blog : Nouveautés arrivées et à venir | mardi 09 août 2005, 21h04

Mood: Clop

Mon stage chez Open Web Solutions m'ayant réellement donné le goût de l'orientation objet en PHP, je ne pouvais laisser mon weblog dans son état actuel ^^; En effet, comme les lecteurs réguliers le savent, le code de mon weblog était un mélange étrange de code d'origine variées, avec des fonctionnalités se rajoutant au fur et à mesure. Ainsi, il était possible de trouver des lignes de code révélant un portage direct de l'ASP vers le PHP, et autres joyeusetés. Je ne pouvais pas laisser cela en l'état, et j'ai donc décider de reprendre le tout en main en utilisant une joli syntaxe orientée objet en PHP5.

Cependant, si je n'avais que cela, je n'aurais probablement pas bloggé dessus, puisque l'interet aurait été relativement minime : si le code change, je compte bien encore une fois montrer toutes les vertues de la séparation apparence / contenu en faisant en sorte que le changement soit invisible à l'utilisateur final. Cependan, quitte à me replonger dans le code, j'en ai profité pour rajouter quelques fonctionnalités qui manquaient à ce weblog, trouver au fil de mes pérégrinations sur le web et qui ont retenues mon attention.

Tout d'abord, changement qui n'est pas directement visible pour vous, mais qui aura un impact indirect sympathique : j'ai modifié mon administration, pour qu'elle gère les émoticones que je mets en mood sur ces posts. J'avais fait quelque chose de très basique auparavant, qui s'est retrouvé écrasé lors d'une édition malheureuse du fichier, j'ai donc décidé de tout recommencer à zéro... pour un résultat nettement meilleur ^^ J'ai d'ailleurs à cette occasion découvert que l'on pouvait mettre des img dans des option, du moins dans Firefox, ce qui me permet dans le cas présent d'obtenir un menu déroulant très sympathique :

Un select, avec une image en face de chacune des options

Concretement, cela devrait se traduire par la présence d'une emot sur chacun des posts à venir, et en plus me permettra d'augmenter la variété, en me rappellant à chaque fois ce que j'peux choisir ^^

Nettement plus interessant pour vous, l'implémentation de tags à la façon Flickr ou Technorati, qui permette d'associer différents mots-clés à un post, et de lister par la suite les posts associés à un mot clé donné. C'est nettement plus pratique que les catégories habituellement présentes sur les systèmes de weblogs, puisque l'on est pas obligé d'attribuer un et un seul mot clé à un post. On peut associer aux posts associer à un mot clé par l'utilisation de http://defr.org/blog/tags/Nom_du_tag. A terme, http://defr.org/blog/tags/ devrait contenir la liste des tags utilisés, avec une indication des plus utilisés.

Evidement, dans le cas idéal, je repasserais sur l'ensemble de mes anciens posts pour leur associer les tags qu'ils méritent. Cependant, si cette tâche n'est pas totalement herculéenne, elle prendrait un tems non négligeable, et je dois bien avouer que j'ai des tonnes d'idées plus agréables de passer ces moments de vacances. Mais ca fait partie des choses que je vais faire un jour.

Je compte aussi passer la feed ATOM de ce blog de la version 0.3 à ce qui devrait devenir la 1.0, puisque les évolutions sont assez positives... Et que ma feed 0.3 actuelle n'est même pas valide. Accessoirement, je vais peut-être mettre aussi une feed sur les commentaires, pour pouvoir les récuperer eux-aussi de facon externe. Le niveau de complexité devrait être presque nul, et je suppose que ca pourrait au moins me servir à moi. ^^;

Sites visités