Producing Open Source Software est un livre des éditions O'Reilly, qui est aussi disponible en téléchargement (licence Creative Commons Attribution-ShareAlike). Ce livre parle de l'aspect humain dans le développement de logiciels à code source ouvert. Il décrit la manière de procéder de projets réussis, les attentes des utilisateurs et des développeurs, ainsi que tous les écueils à éviter lorsque l'on distribue un logiciel libre.
vendredi, novembre 3 2006
Producing Open Source Software
Par Frederic Poeydomenge le vendredi, novembre 3 2006, 09:33 - Général
lundi, juillet 3 2006
Time breakdown of modern web design
Par Frederic Poeydomenge le lundi, juillet 3 2006, 13:12 - Général
Et voici, d'après des faits authentiquements réels (on sent vraiment le vécu !), la répartition du temps de travail dans un projet de site Web moderne :

Trouvé sur PoisonedMinds.
mardi, juin 27 2006
Mise en cache de paquets Debian avec apt-proxy
Par Frederic Poeydomenge le mardi, juin 27 2006, 12:35 - Debian
Samedi dernier, dans le cadre de l'install party à la bibliothèque municipale d'Anglet (64), nous avons été amenés à mettre en place un mandataire (proxy) apt-proxy.
Lorsque l'on a, sur un réseau, plusieurs machines avec la même version de Debian (par exemple Sarge), il est profitable de pouvoir centraliser la récupération des paquets, afin de ne les télécharger en local qu'une seule fois, et par là même, d'économiser de la bande passante sur les serveurs Debian.
Pour ce faire, le mandataire apt-proxy permet de mettre en cache les paquets Debian, et de construire un miroir partiel contenant tous les paquets utilisés par les machines du réseau. Seule la première machine qui installe un package donné provoque un téléchargement sur Internet, le mandataire fournissant lui même ensuite ce dont il dipose déjà aux autres machines qui le demandent. Cette méthode a l'avantage de réduire les accès à Internet depuis votre réseau interne, et surtout améliore grandement la rapidité de téléchargement coté client.
Coté serveur
Coté serveur, il nous suffit d'installer le paquet apt-proxy :
# apt-get install apt-proxy
puis d'éditer le fichier /etc/apt-proxy/apt-proxy-v2.conf afin d'y configurer le répertoire dans lequels seront stockés les paquets (par défaut : /var/cache/apt-proxy/), le port (par défaut : 9999), ainsi que les sources des dépots Debian, par exemple :
[debian] backends = http://ftp.fr.debian.org/debian [security] backends = http://security.debian.org/debian-security [backports] backends = http://backports.org/debian [dotdeb] backends = http://packages.dotdeb.org
Il ne faut pas oublier de redémarrer apt-proxy pour qu'il prenne bien en compte les changements :
# /etc/init.d/apt-proxy restart
Coté client
Coté client, il nous faut juste modifier le fichier /etc/apt/sources.list, afin de faire pointer les sources sur le serveur mandataire, en remplaçant le nom d'hôte par le nom du mandataire, auquel on rajoute les noms de sections ci-dessus en tant que répertoires, de la façon suivante :
# Stable deb http://SERVEUR:9999/debian/ stable main contrib deb http://SERVEUR:9999/debian/ stable-proposed-updates main contrib # Security deb http://SERVEUR:9999/security/ stable/updates main contrib # Dotdeb.org (LAMP Platform) deb http://SERVEUR:9999/dotdeb/ stable all # Backports Sarge deb http://SERVEUR:9999/backports/ sarge-backports main
Il ne faut pas oublier d'effectuer aussi cette manipulation sur la machine qui sert de mandataire (le serveur lui même), afin qu'APT n'outrepasse pas le système en place !
Pour peaufiner l'installation, on peut éventuellement rajouter une entrée dans la crontab, pour effacer tous les soirs les paquets récupérés en local à l'aide de la commande "apt-get clean"
Suite à l'install party, j'ai découvert qu'Aurélien en parlait dans son Mémento pour l'installation d'un mandataire apt, pour une configuration réseau à peu près identique.
jeudi, juin 15 2006
IEs 4 Linux - Internet Explorer (6.0, 5.5, 5.0) sous Linux
Par Frederic Poeydomenge le jeudi, juin 15 2006, 13:23 - Général
Lorsque l'on fait du développement web, il est parfois utile (voire nécessaire) de tester ses feuilles de style CSS avec tous les principaux navigateurs du marché. Or, lorsque l'on travaille sous Linux, il n'existe pas version native de IE, il va donc noux falloir ruser un peu pour l'installer.
IEs4linux est le moyen le plus simple de faire tourner IE sur Linux (ou FreeBSD, ou Solaris), le tout via un processus d'installation extrêmement simplifié, où il suffit de répondre à 2-3 questions pour installer sur sa machine IE 6.0, 5.5, 5.0, et le plugin Flash Player 8.
La procédure à suivre est très simple. Tout d'abord, il nous faut installer Wine et cabextract, par exemple sur Debian :
# apt-get -t sarge-backports install wine wine-utils # apt-get install cabextract
Sur Debian Sarge, il faut rajouter un lien symbolique pour que IEs4linux retrouve le programme wineserver :
# ln -s /usr/lib/wine/wineserver /usr/bin/wineserver
Ensuite, il nous suffit de télécharger IEs4linux, décompresser l'archive, et lancer la commande 'ies4linux' sous un nom d'utilisateur lambda (surtout pas root).
Le programme se charge alors de télécharger les fichiers Cabinet (.cab) nécessaires, et les installe dans le dossier choisi au lancement de la commande (par défaut : ~/.ies4linux). Et voila, c'est fini ! On se retrouve alors avec un dossier pesant dans les 130 Mo, et contenant 3 archaïques versions d'IE, ne respectant aucun des standards du W3C, complètement vétustes, mais néanmoins incontournables pour tous les développeurs web.
Pour les lancer, il suffit maintenant d'appeler une des commandes suivantes :
$ ~/bin/ie6 $ ~/bin/ie55 $ ~/bin/ie5
Pour terminer, il est possible de rajouter quelques polices (par exemple Arial). Pour cela il suffit de télécharger les polices voulues et de lancer la commande suivante :
$ WINEPREFIX="$HOME/.ies4linux/ie6" wine arial32.exe
Ils en parlent aussi :
- Flash Player 8 sous Linux avec ie4linux par Nicolas Perriault (NiKo)
- Internet Explorer (6.0,5.5,5.0), Opera 8.5 et Firefox 1.5 avec Ubuntu par David Larlet
- Internet Explorer sous Linux... par Yannig
mardi, juin 13 2006
Quelques clichés concernant internet
Par Frederic Poeydomenge le mardi, juin 13 2006, 19:33 - Usabilité
À partir d'études comportementales réalisées ces dernières années, et d'articles publiés sur le web, Bernard-Paul Eminet nous dresse une liste de quelques clichés concernant internet, et dissèque la façon d'agir/réagir des internautes actuels :
- Cliché 1 : Internet c'est facile et fun
- Cliché 2 : L'internaute cherche l'information maximale au plus vite
- Cliché 3 : l'internaute est attiré par le graphisme
- Cliché 4 : les internautes détestent scroller
- Cliché 5 : le temps est l'ennemi du succès
Comme le dit Jakob Nielsen dans sa loi sur l'expérience de l'utilisateur du web (Ten Good Deeds in Web Design) : " les utilisateurs passent la plus grande partie de leur temps sur d'autres sites que le vôtre, et c'est là qu'ils construisent leur expérience, et apprennent à se faire une idée du mode de fonctionnement du web "
Je terminerais en disant que un site, c'est d'abord du contenu, peu importe si ça ne s'affiche pas à l'identique au pixel près chez deux personnes différentes, le tout est d'avoir un contenu intéressant, et de bien le mettre en valeur, par le biais d'un désign propre et qui fonctionne dans n'importe quel navigateur Web (c'est à dire : conforme aux standards du Web)
vendredi, juin 9 2006
HTML Slidy du W3C
Par Frederic Poeydomenge le vendredi, juin 9 2006, 22:24 - Standards
Se basant en partie sur l'outil de slideshow S5 de Eric Meyer, qui utilise exclusivement des standards du web (XHTML, CSS et JavaScript), le W3C a mis au point, il y a quelques temps déjà, un outil équivalent : HTML Slidy.
Maintenant, avec tous ces outils disponibles pour générer des présentations accessibles et lisibles par tous, il n'y a vraiment plus aucune excuse à encore utiliser Powerpoint...
mercredi, juin 7 2006
Gecko 1.9 passe le test Acid2
Par Frederic Poeydomenge le mercredi, juin 7 2006, 08:47 - Général
La branche expérimentale Gecko 1.9 Reflow refactoring, dont les améliorations seront disponibles dans le futur Firefox 3, passe enfin le test Acid2. Pour rappel, le test Acid2 vise à tester la qualité de l'implémentation de certaines fonctionnalités de CSS 2, et autres standards du Web, dans un navigateur Web.
Signalé par Laurent Jouanneau.
lundi, mai 15 2006
Scanner sa distribution Linux à la recherche de Root Kits
Par Frederic Poeydomenge le lundi, mai 15 2006, 21:07 - Général
L'article How to scan your Linux-Distro for Root Kits sur HowtoForge nous présente une méthode sécurisée pour scanner sa distribution Linux à la recherche de Root Kits, à l'aide de l'utilitaire chkrootkit.
En résumé, il est carrément déconseillé d'installer chkrootkit sur son système, et de le lancer bêtement de temps en temps. En effet, si un attaquant prends le controle de la machine, il lui est très facile de modifier l'installation afin qu'elle ne détecte pas sa présence. Il faut donc compiler chkrootkit, et le copier sur un support extractible, ou en lecture seule.
Télécharger chkrootkit :
# wget http://ftp.bit.nl/mirror/chkrootkit/chkrootkit.tar.gz # wget http://ftp.bit.nl/mirror/chkrootkit/chkrootkit.md5 # md5sum -c chkrootkit.md5
Compiler chkrootkit :
# tar -xzf chkrootkit.tar.gz # cd chkrootkit-0.46a/ # make sense
Lancer chkrootkit :
# ./chkrootkit
Et ne pas oublier de copier le dossier ainsi créé sur un support inaltérable, depuis lequel on pourra lancer régulièrement le scan du système.
mardi, mai 9 2006
Swapper 2 variables, sans utiliser de variable intermédiaire
Par Frederic Poeydomenge le mardi, mai 9 2006, 21:39 - Général
Je viens de (re)découvrir sur Bit Twiddling Hacks une vielle méthode, toute bête, permettant d'échanger le contenu de 2 variables a et b, sans utiliser de variable intermédiaire, tout simplement en utilisant l'opérateur booléen "ou exclusif" (XOR)
Le code en C :
unsigned int a = 0xCDEF;
unsigned int b = 0x1234;
a ^= b;
b ^= a;
a ^= b;
printf("a=%x / b=%x", a, b);
Le même, en PHP :
$a = 0xCDEF; $b = 0x1234; $a ^= $b; $b ^= $a; $a ^= $b; echo 'a=' , dechex($a) , ' / b=' , dechex($b);
L'algorithme est aussi décrit sur Wikipédia (XOR swap algorithm).
vendredi, avril 21 2006
Moteur de stockage transactionnel Falcon pour MySQL
Par Frederic Poeydomenge le vendredi, avril 21 2006, 13:41 - MySQL
Pour faire suite à l'annonce, en début de semaine, d'un nouveau moteur de stockage transactionnel pour MySQL, SolidDB de la société Solid Information Technology.
Jim Starkey, créateur de la base de données InterBase, et embauché en début d'année chez MySQL, a annoncé qu'il parlerait du nouveau moteur de stockage transactionnel "maison" de chez MySQL, de nom de code "Falcon", lors de la prochaine User Conference, qui a lieu la semaine prochaine.
« billets précédents - page 1 de 4