ScummVM DS - l’aventure sur une console portable

20 avril 2007

Vous vous rappelez sûrement de ScummVM. Je vous avais présenté ScummVM pour Pocket PC. Cet environnement d’exécution de jeux d’aventure de type “point-and-click” continue sa propagation et débarque sur la Nintendo DS !

Ce portage porte le nom original de ScummVM DS. Même si tous les jeux supportés par ScummVM ne tournent pas forcément dans la version DS (à cause des capacités réduites de la petite console japonaise), la réalisation est excellente. La taille de l’écran de la console peut être dans certaines situations un peu trop petite. Mais heureusement, l’équipe du projet a pensé à y intégrer un système de zoom.

A croire que certains jeux restent éternels…

Optimiser les titres de Wordpress

23 mars 2007

Voilà près de 15 jours que ce weblogue tourne sous Wordpress. Au fur et à mesure je mets les mains dans le cambouie pour améliorer quelque peu ce site. Aujourd’hui je vous explique comment optimiser le titre des pages avec Wordpress.

Vous avez pu remarquer que le format des titres pour un blog tournant sous Wordpress ressemble à ceci : “Votre blog >> Archives du blog >> Titre de l’article”. Il faut avouer que ce titre n’optimise pas la visibilité pour deux raisons :

  • L’information principale se trouve à la fin du titre. Le lecteur ne voit pas directement le sujet principal de la page.
  • Les moteurs de recherche tronquent souvent les titres trop longs. Ne voyant pas le titre exact de votre article, les utilisateurs ne vont même pas remarquer votre page dans les résultats de la recherche.

Pour remédier à cette faiblesse, je me suis très largement inspiré de l’article de Fran6 sur l’optimisation de la visibilité d’un blog. Voici la modification apportée dans le fichier header.php du thème utilisé :

<title><?php
if ( is_home()) {
	bloginfo('name');
} else if ( is_tag()) {
	?>"Archive pour <?php UTW_ShowCurrentTagSet('',array('first'=>'%tagdisplay%', 'default'=>'%tagdisplay%')); ?>" par <? bloginfo('name'); ?><?php
}else if ( is_single() ) {
	?>"<? wp_title(''); ?>" par <? bloginfo('name'); ?><?php
} else {
	?>"Archive de <? wp_title(''); ?>" par <? bloginfo('name'); ?><?php
} ?></title>

Vous pouvez remarquer que j’ai également personnalisé le titre des pages des tags. Pour celà, je n’ai rien inventé. Encore en fois je me suis inspiré du travail de quelqu’un d’autre qui explique comment afficher le nom d’un tag dans le titre de la page concernée (pour les utilisateurs de Ultimate Tag Warrior).

Pour finir, j’ai également modifié la page d’archive des tags. J’y ai ajouté en haut le message “Archive pour le tag ‘…’”. Ceci afin de rester homogène avec l’ensemble des pages d’archive. Pour celà, il faut modifier le fichier index.php du thème ainsi :

Rechercher la ligne <?php if (have_posts()) : ?>.

Insérer juste en dessous de cette ligne le bout de code suivant :

<?php /* If this is a tag archive */ if (is_tag()) { ?>
	<h2 class="pagetitle">Archive pour le tag '<?php UTW_ShowCurrentTagSet('',array('first'=>'%tagdisplay%', 'default'=>'%tagdisplay%')); ?>'</h2>
<?php } ?>

Voilà ! Votre blog sous Wordpress est un peu plus visible avec ces jolis titres ! ;-)

Personnalisation de Wordpress

15 mars 2007

Après une installation extrêmement rapide et très simple, et après avoir migré mon ancien blog vers cette nouvelle plate-forme, je suis parti à la découverte des possibilités offertes par Wordpress.

Thème

J’ai repris le thème par défaut que j’ai adapté pour obtenir un look semblable à ce que j’avais avant. Mais il reste encore quelques points à corriger améliorer.

Plugins

Je vous avais donné une première liste des plugins utilisés. Voici la nouvelle liste :

Pour information, vous avez peut-être remarqué la liste des plugins dans la barre de menu à droite. C’est un petit plugin qui permet d’afficher cette liste. Je reviendrai dessus un peu plus tard. Mais, ainsi vous pourrez consulter n’importe quand la liste des plugins présents sur ce blog. ;-)

Au niveau des plugins de statistiques, je n’ai pas encore fait un choix définitif. Je n’ai pas encore trouvé de plugin qui m’a complètement convaincu. D’autant plus que Wordpress Reports ne m’affiche que les statistiques en provenance de Feedburner. Je n’ai aucun résultat provenant de Google Analytics. :-(

J’ai également mis en place une newsletter. Et oui, il ne faut pas oublier les habitués au mail (ou ceux qui n’ont que ce moyen de communication dans la journée ;-) ).

Comparatif entre Dotclear & Wordpress

13 mars 2007

En plein dans le sujet, je viens de tomber sur un comparatif entre Dotclear et Wordpress réalisé par le site Comparer-Tout.org.

Cet article met en évidence mon premier ressenti. A savoir que Wordpress donne une image plus professionnelle et surpasse Dotclear sur la gestion générale, les plugins, les thèmes, etc… Par contre, le moteur de blog français est bien meilleur lorsqu’il s’agit de rédiger des articles.

En revanche, je suis quelque peu étonné de la mauvaise note donné à Wordpress sur le plan de l’administration.

Alors ? L’activité principale d’un blog n’est-elle pas la rédaction ? Je vous laisse choisir… En tout cas je reste avec Wordpress pour le moment ! :-p

Passer de Dotclear à Wordpress

12 mars 2007

Hier, je vous annoncais le déménagement du Weblogue de SeB. Cette migration a consisté à :

Pourquoi tous ces changements ?

Tout d’abord, je souhaite utiliser une URL un peu plus sérieuse que celle que j’avais chez Free. De plus, parfois les serveurs de Free (PHP ou MySQL) semblent avoir quelques problèmes de tenue de charge.

Pour finir, Dotclear m’a rendu de très bon service depuis près de 2 ans et demi. Cependant, cette plate-forme commence à vieillir. Il y a bien Dotclear 2 dans les tuyaux. Mais cette nouvelle version tarde à sortir et de plus je sais que j’aurai des problèmes pour l’installer chez mon hébergeur. Enfin, la communauté autour de Wordpress semble plus importante que celle de Dotclear.

Et dans la pratique ?

Beaucoup de personne comme Eric se demande comment passer de Dotclear à Wordpress. Personnellement, j’ai suivi la procédure présentée par Ced pour passer de Dotclear 1.2 à Wordpress 2.1. La migration s’est déroulée sans aucun accros. L’intégralité des utilisateurs, articles et commentaires ont été récupéré dans Wordpress. J’ai même pu réutiliser le thème crée pour Dotclear à moindre frais. En effet, le thème par défaut de Wordpress reprend à peu près la même structure (j’ai encore un peu de boulot de dessus tout de même) que celui de Dotclear.

J’ai profité de cette migration, pour intégrer les services de Feedburner pour les flux RSS du blog. Et comme l’indique ma précédente note, tous les lecteurs assidus ont été redirigé vers le nouveau site de façon transparente.

Ce que je regretterai chez Dotclear ?

Rien ! Non, non. Il faut être honête. Dotclear présente quelques avantages tout de même :

  • Le caractère français. ;-)
  • La gestion des acronymes (bien meilleure que sous Wordpress).
  • Les SPAM (je sais, c’est facile et mesquin :-p).
  • L’édition des articles en mode Wiki (il faut que je fasse encore des recherches de ce côté pour voir s’il n’y a pas un plugin pour Wordpress).
  • Pas de moyen simple pour faire des notes en bas de page d’un article.
  • Pas de découverte automatique des adresses de rétroliens.

Les plugins utilisés sous Wordpress

Il y en a déja pas mal d’installés :

Cette liste risque de bouger dans les jours ou les semaines qui vont suivre. Pour le moment, j’ai installé les plugins les plus populaires qui répondaient à mes besoins. Mais je sais qu’il existe d’autres solutions autre pour les filtres anti-SPAM, la gestion des acronymes, des marqueurs, etc… De plus, j’aimerai proposer une liste d’articles connexes en bas de chaque article (sur le site et dans le flux RSS). Je souhaite également proposer une newsletter (mais faut-il utiliser un plugin Wordpress ou un service basé sur Feedburner ?).

Je suis assez satisfait de cette migration. Je n’ai pas rencontré de problème majeur. Du côté fonctionnalités du moteur de blog, il y a des plus et des moins. Mais globalement, je pense y avoir gagné au final. Ce sera sur la durée que je pourrai vous répondre plus fermement. ;-)

Il ne me reste plus qu’a observer le comportement des moteurs de recherche (avec la redirection HTTP 301 que j’ai mis sur l’ensemble des articles de l’ancien blog). Je vais devoir également réapprendre pour Wordpress tout ce que j’avais pu connaitre sous Dotclear… :-)

D’autres personnes hésitent-elles ou ont-elles fait le pas ? Quels sont vos retours d’expérience sur le sujet ?

Migration du flux RSS

11 mars 2007

Comme je vous l’ai annoncé hier, le site a déménagé. Après avoir migrer le site, ce sont les flux RSS qui ont migré. J’ai utilisé une redirection HTTP 301 afin que cette migration soit transparente pour vous. Néanmoins, celà ne vous empêche pas de mettre à jour dans votre lecteur de flux RSS préféré les nouvelles URLs des flux RSS :

Je vous souhaite à tous une bonne lecture ! :-)

Le weblogue de SeB déménage

10 mars 2007

En projet depuis très longtemps, le déménagement de ce blog est enfin fait. Vous pouvez oublier l’adresse http://zer0.free.fr/blog et utiliser maintenant http://blog.lecacheur.com.

Je reviendrais bientôt sur les détails de la migration, notamment pour la redirection de l’ancien site vers le nouveau. Pour le moment je dois encore mettre en place la redirection des flux RSS.

Cross-domain en Javascript

9 février 2007

Introduction

Qu’est-ce que le cross-domain ? Un script Javascript est dit cross-domain lorsqu’il est hébergé sur un serveur avec un nom de domaine bien précis et qu’il fait des requêtes HTTP vers d’autres domaines.

Par défaut, ce comportement est interdit par les navigateurs butineurs. Non pas pour pourrir la vie des développeurs, mais pour protéger celle des utilisateurs. Cependant il existe quelques techniques qui permettent de contourner le problème.

Solutions

Le proxy

La première méthode consiste à mettre en place sur son propre serveur un proxy. Le Javascript interroge le proxy qui lui-même va interroger le serveur distant qui peut être sur un autre domaine. Cette solution n’est pas idéale car elle oblige à mettre en place ce fameux proxy. De plus dans le cadre la distribution d’une API Javascript, la technologie utilisée côté serveur par les utilisateurs sur service n’est pas maîtrisée.

Notons tout de même qu’elle a l’avantage de pouvoir mettre en place un système de cache (au niveau du proxy) pour améliorer les performances[1].

Les images invisibles

Cette astuce consiste à ajouter la référence d’une image dans le document HTML dont l’URL pointe vers le serveur distant. Bien entendu cette image est invisible et l’URL pointe vers un service et non vers une image. Si je ne me trompe pas, cette astuce est utilisé par Google Analytics.

La contre-partie est qu’il n’est pas possible de récupérer des informations. Cette méthode a ses limitations puisqu’elle ne sert qu’à envoyer des données à un serveur distant et non à en récupérer.

JSON

Qu’est-ce que JSON ? C’est un format de structure des données. Et il a l’avantage[2] d’utiliser la notation des objets JavaScript.

Cette technique consiste à ajouter la référence d’un script dans le document HTML dont l’URL pointe vers le serveur distant. Le serveur doit alors retourner son résultat sous le format JSON. Ensuite à la réception des données, une fonction de callback Javascript exécute le traitement des informations retournées par le serveur.

Cette solution nécessite que le serveur distant puisse retourner son résultat dans le format JSON. Néanmoins, de plus en plus de services tels que ceux de Yahoo! ou Google proposent de spécifier le format de retour[3] et même la fonction de callback !

Cette méthode possède ses limitations. Cependant, dans le cadre de la mise en place d’un service web avec la mise à disposition d’une API Javascript, cette technique se révèle être terriblement efficace ! Elle permet donc d’envoyer des informations à un serveur distant et de recevoir des données en retour.

Conclusion

Chaque méthode a ses avantages et ses inconvénients. Tout dépend du contexte. Il faut retenir que pour seulement envoyer des données la méthode des images invisibles suffi. Alors que pour récupérer des informations, il faut utiliser selon les cas un proxy ou JSON.

 

Notes

[1] Et économiser de la bande passante. ;-)

[2] Pour notre problème.

[3] En général XML ou JSON.

Mais où est donc l’API de requête pour les EJB3 ?

8 février 2007

Pour rappel, les EJB3 sont le résultat du mariage entre les EJB2 et Hibernate et XDoclet Hibernate Annotation.

Lorsque les développeurs travaillent avec Hibernate, ils prennent vite l’habitude d’utiliser le HQL pour les requêtes statiques et l’API Criteria pour les requêtes dynamiques[1]. Cependant, le passage d’Hibernate aux EJB3 Entities provoque quelques frustrations. En effet, mis à part le JPQL[2] qui est l’équivalent du HQL chez Hibernate, il n’y a aucune API pour générer dynamiquement des requêtes sur les EJB3 Entities ! :-/

Faut-il attendre les EJBs 3.1 ou 4 ? Au moins de quelqu’un nous sorte de son châpeau une petite API Criteria pour les EJB3;-)

 

Notes

[1] Comme expliqué dans SQL natif, HQL ou API Criteria ?">le comparatif SQL, HQL et API Criteria.

[2] Pour lequel il existe un tutorial et une documentation de référence du language.

Firefox - corrige les fautes

30 janvier 2007

Si comme moi, vous êtes quelque peu dyslexisque du clavier, vous avez sûrement déja installé une solution pour corriger les erreurs de saisi[1] pour votre GNU/Debian.

Cependant, ceci ne corrige pas le problème de saisie des URLs dans Firefox. Comment faire pour enlever vos mouffles ? Installez URL Fixer et vos erreurs de saisie d’URLs seront corrigées automatiquement.

Merci à Eric pour ce tuyau !

Notes

[1] Un peu de publicité pour cet excellent site de documentation pour la Debian ne fait pas de mal. ;-)