Benj's tavern

LifeHacking, ne pas oublier l'aspect physique

Cet article a pour but de présenter un court lifehack que j'utilise désormais quotidiennement. D'abord, c'est quoi un lifehack ? D'après la définition de Wikipédia, un lifehack est une manière élégante ou non usuelle de résoudre un problème, généralement de productivité.

Le problème

Ceux qui me connaissent bien savent mon inorganisation dès qu'il s'agit de prendre des notes et de conserver les idées qui me passent pas la tête. C'est à vrai dire sans doute un travers assez répandu, qui consiste à faire confiance à sa mémoire alors qu'elle n'est pas faite pour se rappeler de détails.

J'ai déjà tenté à plusieurs reprises d'acheter un petit carnet et d'y noter ce qui est important, mais à chaque fois les tentatives se sont soldées par des échecs et par deux pages griffonnées suivies d'un carnet vide et moisi par le séjour prolongé dans une poche.

La solution

Ceux qui me connaissent très bien savent qu'une de mes perversions est la papeteriephilie. La visite d'une papeterie me fait instantanément saliver et aller dans un magasin de beaux-arts me fait le même effet qu'un(e) accroc de la mode dans une magasin de chaussures le jour de l'ouverture des soldes. L'odeur de l'encre fraîche ou le contact avec un beau papier ou une toile enduite me procurent un plaisir sensuel non dissimulé et c'est sans doute pour cela que mes techniques picturales préférées sont le pastel et l'aquarelle, où le contact avec le support est essentiel.

Pour me motiver à prendre des notes, j'ai pensé à allier l'utile et l'agréable. J'ai donc craqué et opté pour un carnet Moleskine dont j'avais envie depuis des années. Pour ceux qui ne connaissent pas, c'est un petit carnet noir à couverture rigide, dont la mystique est savamment entretenue par le fabriquant (un des arguments de vente étant qu'Hemmingway ou Picasso utilisaient de tels carnets). La texture du papier est très agréable, la reliure impeccable et plusieurs petits détails en font un objet très pratique à utiliser. Tout cela a évidemment un coût, ce sont plutôt des carnets de luxe.

Pour écrire et pour rester dans la même logique, j'utilise un stylo Waterman dont mon camarade Luc m'a fait cadeau et une encre noire.

À l'usage, c'est jusqu'à présent la tentative la plus réussie de prise de notes, car la manipulation agréable de l'objet la facilite. Et à vrai dire, la réussite est telle que lors des transports, je ressors régulièrement le carnet en me demandant « qu'ais-je oublié de noter ? »

En conclusion, ne pas négliger d'introduire une part de plaisir physique, voir animal dans la prise d'une nouvelle habitude. Il y a gros à parier que la motivation sera plus forte qu'avec tous les raisonnements de la terre.

Mon autre camarade Fred a décrit les bénéfices des la prise de notes systématique sur son blog.

[15/Feb/2010] | [LifeHack] | Link


Le Pacte du Logiciel Libre

À l'occasion des élections européennes de juin 2009, l'April lance une nouvelle campagne sous la bannière de l'initiative Candidats.fr : tous les citoyens attachés au Logiciel Libre sont invités à proposer le Pacte du Logiciel Libre aux candidats. Le Parlement européen est effectivement le théâtre de débats majeurs pour le Logiciel Libre et les standards ouverts.

L'April souhaite par cette campagne prévenir le retour des brevets logiciels, les atteintes à la neutralité des réseaux, et favoriser l'interopérabilité et la libre concurrence sur le marché européen du logiciel. L'April souhaitant que cette campagne soit l'occasion de sensibiliser aussi largement que possible les futurs députés européens elle propose à tous les citoyens européens attachés au Logiciel Libre de se joindre à cette campagne. L'April propose donc, avec l'association italienne Associazione per il Software Libero, un portail européen.

[08/Apr/2009] | [APRIL] | Link


Single-sign-on avec WWS

Une problématique à laquelle j'ai été confronté pour l'April est l'interfaçage entre l'outil de gestion des adhérents et l'interface de gestion de listes de discussion sympa (wws) Ce dernier permet aux adhérents de gérer leurs abonnements aux listes de discussion sympa utilisé par l'April.

La problématique est la multiplication des mots de passe, ce qui introduit tous les soucis de gestion qu'on puisse imaginer.

La solution retenue pour partager l'authentification consiste à forger l'authentification de wws pour lui faire croire que le membre est déjà authentifié. Si on regarde le code source ainsi que le manuel de sympa, on se rend compte que wws utilise un cookie pour la gestion de session. Ce cookie, appelé sympauser contient l'adresse email de l'utilisateur authentifié, ainsi qu'une somme de contrôle MD5 utilisant un secret contenu dans la configuration de sympa.

Il ne reste donc à une application qui veut faire du SSO sur wws qu'à forger ce cookie. C'est donc ce que fait gDTC à chaque authentification. Ainsi, lorsque l'utilisateur s'authentifie, on lit le secret de wws (qui est placé dans /etc/sympa/cookie sous Debian GNU/Linux, ne pas oublier de corriger les permissions pour permettre à gDTC de pouvoir le lire).

La partie délicate est que le client autorise le cookie en question sur les deux applications. Il est donc nécessaire qu'elles soient placées sur le même serveur web ou à défaut dans le même domaine. gDTC positionne d'ailleurs le cookie de sympa pour tout le domaine configuré.

[05/Aug/2008] | [APRIL] | Link


ACPI for fun and profit

Une petite astuce qui utilise l'ACPI et qui me permet de gagner 2 secondes de temps de cerveau humain disponible : comment faire pour que mes applications de messagerie instantanée et d'IRC soient automatiquement mises en suspension lorsque mon portable est en veille (écran replié ?). C'est assez pénible de taper la commande idoine à chaque pause café alors autant que le système le fasse pour moi !

Pour ce faire, il suffit (sous Debian GNU/Linux) de créer un répertoire /etc/acpi/local et d'y placer deux scripts lid.sh.pre et lid.sh.post (qui doivent être exécutables) et qui seront exécutés à chaque mise en veille puis en mode normal du portable.

Voici le script lid.sh.post :

#!/bin/sh                                                                       
users=$(ps auxw | grep emacs | grep -v root | awk '{print $1}' | sort | uniq)
for user in $users ; do
    su $user -c "gnuclient -batch -eval '(erc-cmd-GAWAY \"\")(message \"Welcome back\")'"
done
users=$(ps auxw | grep gaim | grep -v root | awk '{print $1}' | sort | uniq)
for user in $users ; do
    su $user -c "gaim-remote 'setstatus?status=available&message='"
done

Et le script lid.sh.pre :

#!/bin/sh                                                                       
users=$(ps auxw | grep emacs | grep -v root | awk '{print $1}' | sort | uniq)
for user in $users ; do
    su $user -c "gnuclient -batch -eval '(erc-cmd-GAWAY \"Laptop suspended\")'"
done
users=$(ps auxw | grep gaim | grep -v root | awk '{print $1}' | sort | uniq)
for user in $users ; do
    su $user -c "gaim-remote 'setstatus?status=away&message=Laptop suspended'"
done

Ces deux scripts envoient les commandes idoines aux programmes Emacs et Gaim. Concernant Emacs, il utilise le programme gnuclient, donc gnuserv doit être lancé dans le fichier .emacs des utilisateurs:

(load-library "gnuserv")
(gnuserv-start)

Également, j'utilise la gaim-remote pour envoyer l'ordre à gaim. Ceci implique que python-dbus soit installé.

Bien évidemment, on peut adapter ces scripts pour son propre client de messagerie instantanée. Même, cette astuce peut être utilisée pour exécuter des tâches coûteuses en temps machine lors des pauses café.

[18/Mar/2008] | [APRIL] | Link


Où est-ce qu'on paye sa cotisation ?

Cette question, longtemps posée par les adhérents de l'APRIL, est enfin répondue : gDTC !

En effet, le SI de l'APRIL intègre désormais une fonction de paiement par carte bancaire directe. Plus besoin de passer par la boutique en ligne, qui était il faut l'avouer peu adaptée au paiement de cotisation en ligne.

Amis adhérents en retard de cotisation, pour payer votre cotisation par carte bancaire, rendez vous désormais sur http://adherents.april.org/my/ !

[18/Jan/2008] | [APRIL] | Link


Etags, ça poutre sévère

Dans la catégorie « l'outil ultime qui déchire, » il y a Etags.

Etags est, comme on peut le deviner, un outil d'Emacs qui gère les tags dans les codes sources. Les tags en question sont des pointeurs vers les fonctions, variables, defines et autres symboles qui permettent de savoir où ils sont placés dans le code source.

L'idée est de maintenir un fichier contenant ces positions (le fichier TAGS) puis de l'utiliser comme base de données pour tout travail ultérieur de recherche. Ce fichier est créé avec la commande suivante (exemple pour du code C, mais ça marche avec tous les langages majeurs) :

  $ etags *.c

En mode d'édition, si on désire savoir où est définie telle fonction, on déplace le curseur sur un appel à cette fonction et on appuie sur M-.. Emacs demande où se trouve le fichier TAGS si c'est la première utilisation (et fait une proposition de nom), il suffit ensuite de valider. Et là, magie!, Emacs ouvre tout seul comme un grand le fichier contenant la fonction appelée et positionne la marque au début de la fonction.

Il est également possible d'effectuer une recherche sur un symbole particulier. Par exemple, vous voulez savoir à quel endroit du code telle fonction est appelée et comment. Facile ! Tapez M-x tags-search puis le nom de votre fonction. Emacs déplacera le point vers la prochaine occurence de la définition ou de l'appel de votre fonction, tout en ignorant les commentaires. L'appui sur M-, permettra de passer à l'occurence suivante.

Finies les longues minutes à rechercher les fonctions d'un code à coups de grep ... encore une victoire de canard !

[18/Dec/2007] | [APRIL] | Link


Une sacrée Tramp

L'autre jour, j'ai appris avec horreur qu'il y a des emacsiens qui ne connaissent pas encore tramp, l'ultime évolution du système Emacs. C'est un tort !

Tramp, pour Transparent Remote (file) Access, Multiple Protocol, est comme son nom l'indique un module Emacs permettant d'accéder à distance à des fichiers, mais pas uniquement. Il supporte plusieurs protocoles, dont SCP/SSH, FTP, Telnet, rsync, smb, mais aussi sudo et su. Il est possible d'utiliser la plupart des commandes Emacs à travers Tramp, comme dired ou le gestionnaire de version. Oui monsieur !

Comment ça marche ? C'est très simple, il suffit d'installer tramp (apt-get install tramp sous les distributions modernes), puis de demander à Emacs d'ouvrir ou de sauvegarder un fichier en utilisant un nom de fichier de la forme:

/utilisateur@machine:/chemin/fichier.txt

Ensuite, Emacs se charge comme un grand du reste, il vous demande un mot de passe (sauf si ce n'est pas nécessaire, par exemple pour accéder à un serveur SSH dont l'authentification passe par une clef), puis télécharge le fichier et vous l'affiche comme s'il était en local. À chaque sauvegarde, il le met à jour sur le serveur, de manière transparente. C'est très pratique, par exemple si on a besoin de développer un applicatif web à distance sur un serveur sans environnement graphique mais que l'on souhaite conserver son environnement de travail habituel (Emacs bien sûr ;-)). À titre d'exemple, ce billet est rédigé en utilisant Tramp et le mode blogmax d'Emacs.

[16/Oct/2007] | [APRIL] | Link


Planète APRIL powered by gDTC!

Ça y est, planète APRIL utilise le nouveau système de gestion des adhérents mis en place tout récemment. Ce système, gDTC (pour gestion Des Tâches Courantes) permet aux adhérents de mettre à jour directement leur blog dans planète APRIL sans intervention des admins. C'est un gain de temps appréciable. :-)

Plus d'info et le lancement officiel bientôt !

[30/Aug/2007] | [APRIL] | Link


1500 !

L'APRIL a lancé une campagne d' adhésion pour atteindre l'objectif des 1500 membres d'ici la fin de l'année.

Richard Stallman avait à cet occasion appelé à adhérer à l'APRIL et de nombreuses personnes ont répondu à cet appel et rejoint les rangs de l'interlocuteur de référence du logiciel libre en France.

L'objectif du 1500è membre a été atteint lors des Rencontres Mondiales du Logiciel Libre et c'est une très bonne chose !

Pour autant, l'objectif de l'association est de continuer à grandir et toutes les énergies sont les bienvenues. Nous avons déjà un poids plus important à 1500, mais nous serons encore mieux écoutés à 5000.

Alors si ce n'est pas déjà fait, j'adhère à l'APRIL

[14/Jul/2007] | [APRIL] | Link


Geek!

Ça y est, je suis devenu officiellement un geek, j'ai investi dans un portable (non pas un téléphone). Il me servira d'une part à pouvoir travailler dans le train que pour des trajets réguliers de 5 ou 6h et d'autre part à bosser plus efficacement quand dans les locaux de l'APRIL pour faire la trésorerie.

J'ai choisi un Acer 5613WLMI, car il répondait au cahier des charges suivants:

  • fonctionnel avec des drivers libres
  • autonomie d'au moins 2h30
  • au moins 512M de RAM
  • moins de 700 euros

L'installation d'une Debian Etch à partir du lecteur de DVD se passe sans problème. À vrai dire les temps glorieux de l'installation manuelle sont bien révolus, l'installeur Etch est d'une simplicité d'utilisation déroutante.

Un reboot plus loin, un joli bureau Gnome m'accueille ! Il reste cependant quelques réglages à effectuer, par exemple 915resolution doit être installé pour une résolution d'écran correcte.

Ce qui marche et ce qui ne marche pas :

OK Carte graphique (i950). Le DRI est détecté directement, aucune configuration à faire.
Non Webcam. Avec les versions SVN de linux-ucv la caméra est détectée mais pas ce qu'elle renvoie ... à suivre. En même temps je m'en moque un peu. :-)
OK Carte son. Le HP intégré crachote un peu mais ça marche.
OK Carte ethernet.
Non Wifi. Nécessite des drivers propriétaires ... mauvaise surprise, je me suis trompé sur ce composant.  Ça sera donc ethernet ou avec une carte wifi PCMCIA supplémentaire.
OK Lecteur de DVD
OK Hibernation sur disque
Non Hibernation sur RAM. Problème support ACPI sur mon kernel, à voir mais ça doit être juste de la configuration à faire.
À tester PCMCIA (ça devrait fonctionner).

Autre surprise, l'autonomie est plus importante que les 2h30 annoncée. Avec un peu de tuning, à voir...

Bref, mis à part la surprise du wifi (et la webcam) une bonne configuration qui marche avec des drivers libres.

[02/Jul/2007] | [APRIL] | Link