Feb/080
Ruby on Rails : Récupérer le contenu d’une session dans la console
Lors de certaines phases de debug avec la console, il peut être utile parfois d'avoir accès au contenu d'une session utilisateur.
Actuellement, j'accède à l'objet session de cette façon :
1 - Rechercher dans le répertoire 'sessions' la session qui m'intéresse. (par exmple, la dernière session créée)
2 - Ouvrir la console est taper :
s = Marshal.load(File.open('/tmp/sessions/ruby_sess.6aa3fe56e4c32cef'))
Ensuite, je peux manipuler l'objet session pour analyser ce qu'il contient et repérer un éventuel bug.
Existe-t-il un moyen plus élégant avec Ruby On Rails pour effectuer ce style de debugging ?
Jan/082
Wikia lance un moteur de recherche open-source
Après un an de développement, le projet open-source Web Search dédié à la création d'un moteur de recherche libre est enfin lancé !
Le but de ce projet, est de produire un algorithme de moteur de recherche libre et transparent. Donnant ainsi une meilleure visibilité sur le fonctionnement interne des systèmes et des algorithmes.
Jan/0811
Une astuce très simple pour simuler un CAPTCHA
En cherchant sur le Web une méthode pour implémenter un système CAPTCHA dans un formulaire, j'ai trouvé une solution très simple qui fonctionne très bien.
Il suffit d'ajouter dans son formulaire un champ du type :
<input class="cfrm" name="host" type="text" value=""/>
Ensuite, dans votre CSS vous ajoutez :
.cfrm { display: none; }
Cette classe CSS va masquer le champ "host", l'utilisateur final ne verra pas le champ dans le formulaire.
Lorsque le formulaire est posté, il suffit de vérifier que le champ "host" est vide. En effet, la plus part des robots rempliront ce champ. Ils ne s'apercevront pas que celui-ci ne fait pas parti du formulaire.
J'ai testé cette astuce sur plusieurs sites et le résultat est sans appel, 99% des posts effectués par les robots sont éliminés !!
Jan/083
Comment avoir des URLs de recherche SEO avec Wordpress
Traditionnellement, dans Wordpress les URL de recherche se présentent sous la forme :
http://<nom-de-domaine>/?s=mot1+mot2 ou bien, http://<nom-de-domaine>/index.php?s=mot1+mot2
Il est possible de modifier la forme des URL pour obtenir une orientation un peu plus SEO. Par exemple :
http://<nom-de-domaine>/search/mot1+mot2
Cette petite transformation n'est pas très difficile à faire, il suffit de modifier quelques fichiers.
Voici la marche à suivre :
Dans le fichier : wp-includes/widgets.php
Recherchez la function : wp_widget_search($args)
Remplacez dans le corps de cette function le code suivant :
<form id="searchform" method="get" action="<?php bloginfo('home'); ?>">
<div>
<input type="text" name="s" id="s" size="15" /><br />
<input type="submit"
value="<?php echo attribute_escape(__('Search')); ?>" />
</div>
</form>
Par celui-ci :
<script type="text/javascript">
function goSearch() {
var p = document.getElementById('searchform').s.value;
p = encodeURIComponent(p).replace(/%20/g, '+').replace(/\+$/, '');
location.href = '<?php bloginfo('home'); ?>/search/' + p;
}
</script>
<form id="searchform" action="#_" method="get"
onSubmit="goSearch(); return false;">
<div>
<input type="text" name="s" id="s" size="15"/><br/>
<input type="submit"
value="<?php echo attribute_escape(__('Search')); ?>"/>
</div>
</form>
Vous devez appliquer la même modification dans les templates de votre thème. Certains thèmes Wordpress implémentent une template spécifique pour la restitution du formulaire de recherche. Généralement, celle-ci est nommé : searchform.php
Pour tous ceux qui utilise une version de Wordpress supérieure à 2.0, l'opération est terminée. A partir de maintenant, vous devriez avoir les nouvelles URL de recherche fonctionnelles.
Par contre, dans certaines version de Wordpress, vous devez ajouter une règle de rewrite dans le fichier .htaccess destiné au serveur Web Apache.
Dec/071
Wordpress SEO, pour les débutants
Aujourd'hui, les moteurs de recherche sont des outils incontournables pour générer du traffic sur son site Web. Il est possible d'augmenter significativement la fréquentation de son site en appliquant simplement dans Wordpress quelques principes de SEO très simples.
Dans ce post, vous trouverez une présentation brève de quelques plugin très simple à utiliser qui permettent de mettre en place facilement une approche SEO pour votre Blog personnel ou professionnel.
1# Valorisez vos titre, description, meta balise
Il y a pas mal de plugin Wordpress dédiés à cette tâche. Vous pouvez les ajouter est les tester simplement avec le système de plugin Wordpress. La plus part de chacun d'entre eux ont toutes les fonctionnalités nécessaires pour effectuer une bonne approche SEO avec Wordpress.
Dec/070
Une commande ruby très pratique
On peut faire des chose très utiles avec une seule ligne de commande ruby (de la même façon qu'avec perl).
Exemple, comment remplacer la chaine 'top' par 'tip' dans tous les fichiers .html avec en plus sauvegarde de tous les fichiers originaux modifiés en .orig
% ruby -i.orig -pe 'sub "top", "tip"' *.html
Remarque, on peut faire la même chose en Perl :
% perl -i'.orig' -pe 's/top/tip/g' *html
Personnellement, j'ai un peu délaissé Perl pour Ruby. La seule raison, je n'ai pas vraiment besoin de beaucoup de performance lorsque je fais de petits scripts (niveau performance, Ruby est loin derrière Perl). Mis à part le fait que je trouve Ruby beaucoup plus classieux que Perl. Mais c'est un autre propos.
Un autre exemple en Ruby, supprimer les espaces à la fin des lignes d'un fichier:
% ruby -pe 'gsub(/\s+$/, $/)' < file.txt
On peut trouver des petits scripts one-liners très utiles pour résoudre de petites taches.
Vous trouverez de nombreux exemples sur cette pages : ruby1line
Dec/070
Dans la même lignée que Wufoo …
Un autre générateur de formulaires simples très intuitif...
à consulter : pForm
On regrettera tout de même l'absence de gestion de validation des entrées du formulaire.
Dec/070
Une fonction pour simuler la valeur de sûreté d’un mot de passe en Ruby
J'ai trouvé une astuce sur un site de Snippet, utile pour estimer la valeur de sûreté d'un mot de passe. C'est une simple extension de la classe String (ce qui veut dire que tout vos object string possèderons la méthode pwd_strength.
class String SETS = { /[a-z]/ => 26, /[A-Z]/ => 26, /[0-9]/ => 10, /[^\w]/ => 32 } def pwd_strength set_size = 0 SETS.each_pair {|k, v| set_size += v if self =~ k} cb = set_size ** length days = cb.to_f / 1000 / 86400 # 1000 entries per seconds days / 365 end end
Par contre, c'est une simple estimation basé sur les combinaisons possible induites par les caractères qui compose le mot de passe. Mais cela reste tout de même intéressant pour faire une évaluation indicative.
Dec/070
Modifier le groupe et l’utilisateur d’un fichier en Ruby
Ruby est très pratique pour développer des petits scripts d'administration.
Une commande simple en Ruby pour modifier le groupe et l'utilisateur d'un fichier :
require 'fileutils'
FileUtils.chown('user', 'group', 'myfile.txt')
C'est plus simple et plus propre que de faire un appel système via open pipe ...
Dec/070
phpBB 3, la Gold Release et là !
La première version bêta de phpBB 3 apparu vers le mois de juin 2006, La version finale est disponible un et demi plu tard !!!!!
phpBB3 est officiellement disponible en version stable après plus de 8 versions candidates.
Au programme, beaucoup de changement, la suite : phpBB

