Archive for the ‘Technologies’ Category

Jabber Feed 0.5 released

Sunday, January 24th, 2010


As I announced in a recent message (in French though), I am coming back to more visible activity on this public diary. To begin with, here is the new version of my Wordpress plugin: Jabber Feed 0.5. As a reminder, this plugin publishes your articles and the comments on XMPP’s pubsub nodes.


Asides for minor fixes, here are the three main changes:

  • A Wordpress widget has been added, enabling for any Wordpress administrator (even not computer-technically skilled) to add the XMPP feeds in one’s sidebar by simple drag-and-drop. This is part of the reason I redesigned my website a few hours ago with a new themes enabling the widgets (my old theme was coming from a time before widgets)!
  • The NET_DNS dependency has been removed for SRV Records support, under the assumption the server is running Windows with PHP 5.3.0 or superior, or GNU/Linux (any PHP version). For BSD (Mac included), the NET_DNS library is still required. Consequently my plugin has an intelligent behaviour, testing then using NET_DNS if available, otherwise the base PHP function when possible, or else it will deactivate SRV support.
  • Implementation of the algorithm for dealing with priority and weight of SRV records’ targets as described in RFC 2782. The SRV support is now nearly fully compliant (only the Time To Live parameter’s support still needs to be added).

My own tests succeeded, but I am welcoming any bug report or any feedback, obviously! Do not hesitate.
As a side information, I wanted to inform there exists now a XMPP pubsub reader, the first publicly released, as far as I know: OneChannel, by Process One. Unfortunately my MIPS machine does not handle well flash (and this software uses the Adobe AIR technology) so I am not able to try it out. If anyone out there wants to try and tell me how it reacts to the pubsub messages generated by my plugin, I am wide-eye-opened. Bye!

Compte rendu de «l’anniversaire décennal de Jabber»

Saturday, January 2nd, 2010

Avec environ 10 mois de retard, voici mon compte-rendu de la journée anniversaire du protocole XMPP, historiquement connu et introduit comme Jabber. Parce que tout de même, cet évènement mérite d’avoir une “fin” qui soit plus classe qu’un silence et que je m’en suis voulu donc d’en avoir entretenu un si longtemps (même si j’ai une excuse valable). Désolé donc si ce billet fait un peu hors sujet après tout ce temps.

Tout d’abord, c’était très sympa “techniquement”. Les présentations se sont faites assez fluidement je dirais, et elles étaient toutes extrèmement intéressantes. Et je ne dis pas ça pour mettre de la paumade: c’est vrai. D’ailleurs c’est moi qui ai choisi en majeure partie les intervenants, alors… forcément, c’est bien. ;-)
On a même eu certaines présentations qui ont soulevé pas mal de cris d’étonnement d’ailleurs (je pense notamment à la présentation des bots de Kael. Et dire que j’ai dû le forcer à participer, jusqu’à la dernière minute… au déjeuner, j’essayais encore de le convaincre de monter sur l’estrade!).

Pour l’organisation, je voudrais remercier plus particulièrement le Carrefour du Numérique pour leur accueil très sympathique et professionnel. On a même eu le droit à des énormes étendards super pros qui indiquaient l’évènement à l’entrée, faits à partir de notre affichette de l’évènement (celle faite par Johann Dréo que je veux aussi remercier chaleureusement car je ne crois pas l’avoir vraiment bien fait. N’hésitez pas à aller lire ses Geekscottes.).

Et surtout je voudrais une mention spéciale à Ubikod et à la personne physique les représentant, à savoir Laurent Lathieyre. Je ne dis pas cela seulement pour sa présentation très intéressante, mais aussi car ce fut le seul sponsor sur trois à ne pas nous avoir lâché, d’une part pour la présentation, mais aussi financièrement (y avait certes peu à payer… mais ce peu, ils l’ont financé!). Attention, je n’ai pas la moindre rancœur contre les autres: ils avaient des bonnes raisons qu’ils m’ont expliquées (leur absence fut donc malheureuse car non voulue). Et je garde de bonnes relations avec eux (aux dernières nouvelles et j’espère que ça va pas changer car j’aime bien ce qu’ils font). Mais Ubikod mérite clairement que ce point soit soulevé car ils ont été particulèrement cool, et donc… eh bien, je le soulève.

Enfin au niveau du public, ce fut relativement décevant, avec environ une vingtaine de personnes (je n’ai plus le compte exact), ce qui est déjà bien, mais j’espérais bien plus. Néanmoins je prends la responsabilité sur ce point car c’est moi qui n’ai pas fait suffisamment bien la communication (ce n’est pas mon point le plus fort). Je peux même l’avouer maintenant: j’ai à certains moments failli abandonner tellement j’avais parfois le sentiment de me cogner à des murs pendant l’organisation de l’évènement. En plus (loi de Murphy oblige), mon présent site qui donnait le plus de détails sur les horaires, le lieu et le programme a été down le jour-même de la présentation et je ne m’en suis pas rendu compte immédiatement! J’ai eu vent qu’au moins une personne n’est pas venue à cause de cela, car il n’a pas trouvé les dernières informations. Ce fut donc vraiment une énorme boulette.
Au moins, si je devais à nouveau organiser un tel évènement, je serai un peu mieux préparé. :-)

Néanmoins aucun regret: je me suis battu pour organiser cette journée, et elle reste globalement réussie. Donc ce fut une autre bonne journée à rajouter à la très longue liste des bonnes journées de ma vie. :-)
Merci à tous (participants comme visiteurs)!

Anniversaire décennal de Jabber

Friday, February 27th, 2009

Bonjour à tous,

comme promis, voici quelques informations au sujet de l’évènement anniversaire de Jabber/XMPP. Cela se passera donc au Carrefour du Numérique, Cité des Sciences et de l’Industrie, dans la salle Agora (pour les conférences) et la salle d’atelier, samedi prochain, à savoir demain, le samedi 28 février 2009, de 11h à 18H.

Nous vous attendons nombreux lors de cet évènement, n’hésitez pas à venir, l’entrée est gratuite, tout le monde est accepté, et le public visé est aussi varié que possible, quel que soit l’âge notamment (car on m’a demandé si on pouvait emmener des enfants. Oui il n’y aura rien de choquant pour les enfants. ;-) Au contraire la messagerie instantanée est un sujet qui touche notamment beaucoup certains jeunes, bien que pas seulement!).

Logo de l'anniversaire des 10 ans de XMPP*

L'anniversaire des 10 ans de XMPP*

Alors… à samedi!

Les détails pour en savoir plus se trouvent ci-dessous.
(more…)

10 ans, l’âge de l’insouciance: appel à conférenciers et sponsors

Thursday, January 22nd, 2009

Quand j'avais dix ans,
j'étais insouciant.
Jabber à cet âge
est pourtant si sage.

Le protocole Jabber est jeune mais il n’est plus un bébé puisqu’il entame son second chiffre en base 10. Et pour fêter cela, quelques personnes plus vieilles ont décidé de lui réserver une danse. Cette danse de l’esprit se déroulera au Carrefour du Numérique (Paris, France) le samedi 28 février 2009, toute la journée.
Et maintenant, c’est de vous, acteurs actifs du protocole XMPP, dont nous avons besoin pour venir le présenter au grand public, aux professionnels, à la presse et au monde ce jour là.

10 bougies pour une ampoule

10 bougies pour une ampoule*

(more…)

Jabber Feed 0.4 : l’évolution avant la révolution

Friday, January 16th, 2009

Une nouvelle version de mon plugin Wordpress se montre au petit jour!
Ci-dessous la liste des nouveautés. Ce sont beaucoup de nouveautés liées à la sécurité (identification, encryptage, etc.) et au réseau, donc assez techniques. Pour résumer les changements, si vous ne comprenez pas tout, dites vous juste que c’est beaucoup mieux!

  • Encryption TLS des communications si proposé par votre serveur. Attention néanmoins, mon utilisation de TLS par les fonctions PHP n’inclut pas la validation du certificat X.509 (du peu que j’en comprends), qui permet une bien meilleure identification du serveur (en plus de l’encryption). En fait je n’ai pas étudié la question à fond, ni n’ai trouvé de docs suffisantes et pas trop chiantes pour comprendre tout cela (cependant si un utilisateur aguerri de PHP veut m’aider, n’hésitez pas à me le dire et à me donner davantage d’indications pour intégrer cela dès maintenant à mon plugin).
    En réalité, j’encrypte avec SSLv2 ou 3, car apparemment Gmail ne gère pas TLS même s’il dit le gérer (après tests. Encore une fois, si je dis une bourde, tout retour est le bienvenu. Car ce sont des sujets complexes qui ne sont pas trop dans mon domaine de compétence). L’encryption SSLv23 semble donc le compromis à court terme.
  • Nouvelles méthodes d’identification SASL: le plugin sait s’identifier actuellement avec les méthodes suivantes (par ordre de préférence): DigestMD5, CramMD5, PLAIN. Notez que seul DigestMD5 et PLAIN ont été testés en réalité et que je ne supporte que l’identification SASL, ce qui est de toutes façons l’identification recommandée.
  • Création et configuration automatiques des noeuds pubsub: cela existait déjà avant, mais a été amélioré. Le plugin se charge automatiquement de créer les noeuds nécessaires et de les configurer. Voici comment sont configurés les noeuds: inclusion du contenu par défaut dans les notifications (pubsub#deliver_payloads), changement du titre des noeuds (pubsub#title) avec des noms significatifs (sauf si un titre a été manuellement mis, auquel cas le plugin ne le changera pas!), rendre les items persistants (pubsub#persist_items), augmentation automatique du nombre maximum d’éléments à sauvegarder dans le noeud (pubsub#max_items), autoriser la souscription au noeud (pubsub#subscribe).
  • Gestion des SRV Records: désormais si le nom de domaine gère les enregistrements de Services (SRV Records), il n’y a pas besoin de préciser les données serveur/port sur les serveurs configurés de manière particulière (par exemple le domaine gmail.com qui est joint sur des sous-domaines!). Cela simplifie donc la configuration pour l’utilisateur final, est mieux pour l’internet en général (car les enregistrements de service sont une grande évolution qui n’est malheureusement pas encore assez utilisée, notamment dans aucun navigateur web pour les services web!), et permet de gérer la haute disponibilité (si des domaines ont de nombreux serveurs pour répartir la charge ou gérer l’arrêt d’un serveur, le plugin sait boucler jusqu’à trouver un serveur fonctionnel).
  • Possibilité d’envoyer un extrait ou un résumé à la place des articles complets: lorsque cette case de configuration est activée, alors le plugin n’enverra que le résumé de l’article, si vous en avez fourni un. Si vous n’avez pas fourni d’extrait, mais que vous utilisez la balise <!-- more -->, il enverra seulement l’introduction avant la dite balise. Enfin si vous n’utilisez ni l’un ni l’autre, il enverra l’article complet.
  • Envoi de l’article en html: lorsque la case est cochée, l’article est envoyé dans deux versions: html et texte brut, de sorte que si le client de l’utilisateur inscrit sait lire le html, alors il pourra afficher une page formatée en html. Si le client ne connaît pas le html, alors il aura toujours la version texte à disposition. Il n’y a donc aucune perte d’information lors de l’activation de cette option, uniquement une méthode alternative.
  • Et évidemment la correction de divers bugs que j’ai vus ou qui m’ont été pointés du doigt par des admirateurs utilisateurs ;-) .

Tout retour est le bienvenu. Pour information, je ne serai malheureusement plus disponible à partir de mars/avril (à peu près). Il se peut même que l’on n’entende plus trop parler de moi avant longtemps après cela (ou peut-être que si… car la vie est pleine de surprise! Mais pour l’instant, c’est mystère et boulet de canon). Par conséquent si vous souhaitez faire un retour, c’est maintenant. D’un autre côté, si quelqu’un souhaite reprendre la maintenance du projet, qu’il me contacte afin que je lui passe les rennes.

Tchouss’!

P.S.: si personne ne se manifeste avant que je disparaisse, je laisserai de toutes façons à quelqu’un de confiance l’ensemble de mes accès sur mon serveur, les divers projets auxquels je participe, etc. Je laisserai donc également le moyen de le contacter, de sorte que si quelqu’un souhaite reprendre le travail sur un de mes codes une fois que je ne serai plus là, il puisse le faire.