Damien Mathieu

Blog d’un développeur web

SQL : créer un nouvel uplet si la requête ne retourne aucun résultat

octobre22

Supposons le contexte suivant : vous avez une application traduite en plusieurs langues.
Pour chacune des langues, vous avez une ou plusieurs chaines de caractères. Et dans votre application, vous faites, par exemple :

__(’maChaine’);

Ainsi, la chaine appropriée est affichée en fonction de la langue que vous avez sélectionnée.
Suite à cela, vous avez une base de données qui contient chacune de vos chaines avec la langue et la valeur dans cette même langue.

Lorsque vous appellez la fonction __() avec la valeur de votre choix, vous faites donc un appel à votre base de données qui vous retourne la valeur de la chaine pour la langue en cours.

Le problème, c’est que lorsque vous développez votre application, vous ne pensez pas toujours à ajouter la chaine à chaque fois que vous la placez dans votre code source. Cela serait un tantinet lourd.

La procédure stockée suivante vous permet dont de faire la requête de selection adéquate en fonction de la chaine de caractères et de la langue.
Et si il n’y a aucun élément de retourné, elle en ajoutera un dans la base, avec la chaine vide.

Après, vous n’avez plus qu’à remplir toutes les chaines qui ont été ajoutées lorsque vous surfez dans votre application :)

CREATE PROCEDURE getTrads
@chaine varchar(150),
@langue int
AS
BEGIN
SELECT valeur FROM params_langue
WHERE chaine = @chaine
AND id_langue = @langue
IF (@@Rowcount < 1)
INSERT INTO [params_langue] ([chaine], [valeur], [id_langue]) VALUES (@chaine, ”, @langue)
END

Note : cette procédure a été construire pour fonctionner sous SQL Server. Elle n’est pas forcément portable sur tous les SGBDR. Notamment la variable @@Rowcount, qui peut ne pas être disponible partout.

Puis appellez votre procédure stockée :

EXECUTE getTrads
"maChaine", 1

Ou 1 est l’identifiant de votre langue (vous pouvez remplacer cet identifiant par son nom si vous le désirez. Mais je vous le déconseille).

Meta !

septembre1

Encore une promotion diront certains !
Petit rappel de mon histoire dmozienne parce que les anciens billets à ce sujet ont été perdus lors de la migration du blog

Pour plus d’informations sur la hiérarchie dmozienne qui a des termes hyper compliqués, voir “qui fait quoi dans dmoz“.

Concrètement, que signifie cette promotion ?
J’ai les mêmes jouets que lorsque j’étais catmod à ma disposition, c’est à dire :

  • Acceptation ou refus des nouveaux éditeurs
  • Acceptation ou refus des demandes de catégories par les éditeurs

Mais non plus de manière limitée à la section francophone du répertoire mais partout.
A cela viennent s’ajouter les droits suivants :

  • Acceptation ou refus des demandes de réactivation de comptes d’éditeurs
  • Modification des droits des éditeurs (ajout, suppression de catégories et désactivation de compte)
  • La possibilité d’éditer partout

A première vue, cela me permet d’avoir encore plus de liberté en faisant ce que je veux.
Dans la pratique, c’est plutôt le contraire puisque je dois donner une image de “leader” et donc être encore plus irréprochable qu’avant (ca, c’est pas gagné ! :mrgreen: ).

Et puis comme je peux maintenant éditer partout, je peux également en profiter pour me pencher sur des sujets qui m’intéressent et ou je ne me penchais pas auparavant car je n’y avait pas les droits d’édition.

Ainsi j’ai décidé de me concentrer sur deux catégories principales. World/Français et Computers.
Je viens d’ailleurs de passer une bonne heure à traiter des candidatures de nouveaux éditeurs dans la seconde branche citée.
5 nouveaux éditeurs y ont donc été acceptés ce soir ;)

posted under Dmoz | 3 Comments »

Le secret de la réussite d’un projet libre (ou pas)

août19

Tout projet impliquant plusieurs personnes et particulièrement lorsque ces personnes sont bénévoles nécessite de motiver ces personnes afin de les garder dans ce projet et de leur donner toujours envie de donner de leur temps :-)

Motiver des bénévoles n’est pas toujours chose évidente. Il faut trouver le moyen de leur donner envie de rester et de donner du temps … sans pour autant les rémunérer.
Mais que peut-on leur donner en échange ?

La réponse est pourtant plutôt simple (sur le papier du moins) : communiquez, communiquez, recommuniquez et récompensez.

La communication
Le défaut énorme de dmoz vu de l’extérieur est son manque de communication. Les webmasters se plaignent de ne pas savoir si leur site est encore en attente ou non; si il est listable ou non; pourquoi des éditeurs visitent leur site mais celui-ci ne se retrouve pas listé etc.

Et pourtant nous communiquons dès que nous le pouvons, que ce soit via le forum public ou via le blog des éditeurs francophones.
Cette communication est cependant contrôlée. Nous choisissons ce que nous disons afin d’éviter de dévoiler certaines de nos méthodes de fonctionnement aux spammeurs.

Mais les utilisateurs d’un projet communautaire ne sont pas ceux qu’il faut motiver.
C’est les participants à ce projet qu’il faut motiver.

Et pour motiver les éditeurs, nous communiquons beaucoup plus !
Par les forums internes évidemment.
Mais également en assignant à chaque nouvel éditeur un “coach”. Plusieurs éditeurs séniors ont accepté de s’occuper de gérer les nouveaux en vérifiant régulièrement les catégories qu’ils éditent et en leur envoyant des emails en cas d’erreurs afin que celles-ci soient corrigées.

Nous communiquons evidemment également en transmettant régulièrement (tous les deux-trois mois environ) un email à chacun des éditeurs francophones en leur signalant les dernières actualités de la branche.

Une newsletter publique est également publiée une à deux fois par an. Vous pouvez voir celle de mars dernier.

Par ailleurs nous tentons le plus régulièrement possible d’organiser des rencontres entre éditeurs dans les grandes villes.
Chez les francophones, Paris et Lyon sont les plus actives au niveau des rencontres d’éditeurs. Mais les Belges et les Suisses ne s’en sortent pas trop mal non plus ;-)

En communiquant avec les membres de la communauté, nous tentons ainsi au maximum de ne pas se contenter d’être en relation avec eux “seulement” pour l’édition. Mais nous lions de vrais contacts avec eux.
De vraies amitiés se sont ainsi crées, pas seulement par mail mais également “en vrai” (biz à stegozor).

Les récompenses
Tout travail mérite salaire dit-on.
Cependant dans un projet ou tous les membres sont bénévoles, il est difficile voir impossible de payer ceux-ci en billets verts (ou bleus).

Il faut donc trouver des solutions alternatives pour permettre aux membres d’un projet de trouver leur satisfaction dans celui-ci.

C’est entre autre pour cela qu’existent les “mozzie awards”, qui sont un vote réalisé environ une fois par an et dans lequel les éditeurs votent pour l’éditeur auquel ils souhaitent attribuer un awards.
Une cinquantaine d’awards sont distribués au final.

Best Français Editor
Cutest Couple

Pour finir, le maitre mot à retenir pour motiver et conserver les bénévoles d’un projet, c’est donc bien : la communication.

posted under Dmoz, Général | 7 Comments »

Adaptive Referer Remover pour Firefox 3

juillet27

L’extension Adaptive Referer Remover était, de l’époque de Firefox 2, un indispensable dans mes extensions firefox en tant qu’éditeur dmoz.
Et je n’étais pas le seul. J’ai expliqué pourquoi tout éditeur dmoz devrait l’utiliser dans la dernière newsletter des éditeurs.

Cependant il semble que le développeur originel de cette extension ne la maintienne plus. Il n’y a donc eu aucune adaptation pour Firefox 3.
Aucune officielle du moins puisque chaos127 a fait la mise à jour nécessaire. Merci à lui.

Vous pouvez télécharger et installer cette version pour Firefox 3.
Note : je l’héberge moi même pour être sur qu’elle soit toujours disponible même si Robert/chaos127 la supprime de son serveur ;-)

10 ans plus tard …

juin5

Rich Skrenta aurait-il imaginé, il y a dix ans, que dmoz existerait toujours, qu’il aurait toujours autant d’éditeurs … Et surtout qu’il serait devenu aussi gros …

Quelques chiffres. Dmoz, c’est (au 4 juin 2008, chiffres basés sur le RDF) :

  • 4 578 575 sites indexés (dont 218 000 en World/Français)
  • 750 300 catégories
  • 14 664 éditeurs actifs
  • Plus de 80 000 comptes d’éditeurs (actifs ou inactifs)
  • 12 administrateurs (voir qui fait quoi dans dmoz)
  • 102 éditeurs méta
  • 39 editall
  • 54 cateditall
  • Deux documents RDF de 300Mo et de 70Mo chacun générés toutes les semaines

Par ailleurs dmoz, c’est aussi l’un des plus anciens services communautaires du web. Alors que tout le monde parle des “nouveautés du Web 2.0″, l’ODP était l’un des précurseurs de cela en s’y mettant dès le 5 juin 1998 …

Et bien que l’interface n’ait quasiment pas évolué depuis dix ans (voir le billet sur aef-dmoz), nous avons appris très récemment que de grosses modifications vont être apportées pendant l’été.

Je ne peux vous en dire plus à ce propos. Mais ce qui nous a été annoncé promet d’être très excitant ! :p

Alors bon anniversaire DMOZ !

Merci à farwarx (son blog) pour le “montage”

Ils en parlent aussi :

posted under Dmoz | No Comments »

Teasing

juin4

Guess who that is
Devinez de qui il s’agit

Lézard

La réponse demain (5 juin) !

Un indice : Il fête ses 10 ans demain ! Bel âge pour un lézard. Surtout quand on sait qu’il a toujours toute sa forme !

Edit : Hop ! :-)

posted under Dmoz | No Comments »

Dmoz is NOT like gold

mai8

Bah ouais quoi ! Vous connaissez le groupe Gold (Emile et Images était mon groupe préféré au lycée. J’écoute moins aujourd’hui. Mais j’aime toujours autant ;) ). Et dmoz n’est pas un groupe musical.

Plus sérieusement. Notre cher staffer (technicien payé par AOL et en charge du projet ODP) bbqgrant a posté aujourd’hui un billet sur le blog officiel dmozien intitulé “DMOZ Is Like Gold“.

Opinions et démontage en bonne et due forme.

bbgrant cite un article sur un site que je ne nommerais et vers lequel je ne ferai pas de lien.

Ce site dit :

Getting a site into DMOZ is like Gold.

Google loves links from DMOZ and your site will reap the benefits.

The big catch however is actually getting your site into the directory in the first place.

Find the perfect category for your site and check to see if it has an editor. If you see a link “Volunteer to edit this category” try and find another relevant location.

Pages without active editors take much longer to get listed into.

Once you find the perfect directory submit your site every 4-6 months until listed.

If you are lucky you will get in eventually.

Alors, premièrement, si vous regardez sur le billet, vous verrez que notre cher staffer a rajouté toute la partie sur le lien dmozien qui vaut de l’or. Sans cette remarque, la phrase est beaucoup moins positive pour l’annuaire.

Notre cher staffer cherche donc à déformer ce que le webmaster a dit en remontant l’image de dmoz. Vu ce qu’il ajoute, on ne peut vraiment pas considérer qu’il s’agisse d’une citation. Le fond est totalement modifié.

Mais … Que vois-je également ? Il dit “si il n’y a aucun éditeur dans la catégorie, choisissez une autre catégorie pour que votre site soit listé plus rapidement”.

Horreur et damnation ! Ceci est la dernière chose à faire. Si vous suggérez votre site dans une catégorie appropriée, celui-ci sera de toute façon déplacé par l’éditeur vers la catégorie appropriée.

Par ailleurs, le fait qu’une catégorie n’ait pas d’éditeur ne signifie pas que personne n’y passe. Tous les éditeurs peuvent éditer dans les catégories où ils sont marqués comme éditeur. Mais également toutes ses sous-catégories.

Par ailleurs, près de 300 éditeurs ont les droits nécessaires pour éditer dans toutes les sections de l’annuaire.

Ne pas soumettre votre site dans la bonne catégorie peut multiplier par deux le temps d’attente de votre site. Faites donc bien attention à l’endroit où vous suggérez votre site.

Enfin notre cher staffeur a vraissemblablement posté son article beaucoup trop rapidement. En effet, celui-ci n’est qu’une copie d’un autre article publié 10 jours plus tôt ici.

Si les seuls éditeurs rémunérés pour travailler sur l’ODP ne respectent pas nos directives d’éditions et mettent en avant des sites n’ayant pas du contenu original, où allons nous ?

De nombreuses choses m’ont déçu à l’ODP depuis un an. Celle-ci serait-il la goutte d’eau ? Je me donne le week-end pour y réflechir et presser où non le gros bouton rouge.

P.S. : promis, le prochain article sera technique.

posted under Dmoz | No Comments »

Rss Feeds

En Français
In English