Let there be rock le 27 février 2009
- Publié le 25 Octobre 2008 à 16:48
- 1 commentaire - 0 trackback
L'optimisation des images est une manière simple et peu coûteuse d'améliorer les performances d'affichage d'un site au premier chargement (avec le cache navigateur vide) sans trop de problèmes. Smush it! a remis ce sujet à la mode et permet de voir facilement les images à optimiser pour une page donnée. Le problème est qu'avec ce service, on peut récupérer une archive zip avec les images optimisées mais en perdant l'arborescence des images ce qui peut être un peu fastidieux, il est aussi fastidieux d'utiliser l'extension Firefox sur toutes les pages d'une application web pour passer en revue toutes les images et si en plus les images ne sont pas publiquement accessibles son utilisation ne sera tout simplement pas possible.
Pour pallier à cela, j'ai écrit le script shell suivant pour l'optimisation des fichiers GIF et PNG qui :
Il s'agit juste d'automatiser ces opérations. Selon les applications, le gain peut être sensible. La semaine dernière quand j'étais en déplacement avec une connectivité aléatoire j'aurai bien aimé que tous les sites aient fait cette opération et je ne suis pas le seul... Je l'ai d'ailleurs lancé sur le nouvel Online Editor de eZ Publish pour optimiser au maximum le futur éditeur WYSIWYG de ce CMS ce qui donne le bug #13751.
#! /bin/bash # Give hints and optimize images # # Try to convert GIF in PNG if the resulted PNG is smaller # Optimize PNG with pngcrush # Display PNG24 # # Need imagemagick and pngcrush print_usage() { echo "$1 [-w] [-d] -f dossier" echo "-w : optimise et modifie les fichiers" echo "-d : supprime les fichiers GIF transformés en PNG" echo "-f dossier : dossier où chercher des images" } # Display size in bytes size() { du -sb "$1" | sed "s/\t.*//g" } TMP=/tmp/optimize_img DEBUG=1 DELETE_GIF=0 DIRECTORY="" while getopts "dwf:" opt ; do case $opt in w ) DEBUG=0 ;; d ) DELETE_GIF=1 ;; f ) DIRECTORY=$OPTARG ;; h ) print_usage "$0" exit 0 ;; * ) print_usage "$0" exit 1 ;; esac done [ -z "$DIRECTORY" ] && print_usage "$0" && exit 1 [ ! -d "$DIRECTORY" ] && echo "$DIRECTORY n'existe pas" && exit 2 IMAGES_COUNT=`find "$DIRECTORY" -name \*.gif -o -name \*.png | wc -l` [ $IMAGES_COUNT -eq 0 ] && echo "Aucune image à traiter" && exit 0 [ ! -d $TMP ] && mkdir $TMP IFS=$'\n' echo "### Optimisation des PNG :" PNG_LIST=`find "$DIRECTORY" -iname \*.png` for p in $PNG_LIST ; do PNG=`basename $p` pngcrush -rem alla -reduce -brute "$p" "$TMP/$PNG" > /dev/null ORI_SIZE=`size "$p"` OPT_SIZE=`size "$TMP/$PNG"` if [ $OPT_SIZE -lt $ORI_SIZE ] ; then echo ">> $p pngcrush optimise ce fichier (${OPT_SIZE}o < ${ORI_SIZE}o)" [ $DEBUG -eq 0 ] && cp "$TMP/$PNG" "$p" fi rm -f "$TMP/$PNG" done echo "" echo "### PNG24 :" for p in $PNG_LIST ; do TYPE=`identify -verbose "$p" | grep 'Type: TrueColor'` [ ! -z "$TYPE" ] && echo "$p" done echo "" echo "### Optimisation des GIF en PNG :" GIF_LIST=`find "$DIRECTORY" -iname \*.gif` for g in $GIF_LIST ; do GIF=`basename $g` PNG=`echo $GIF | sed 's/.gif$/_not_opt.png/'` PNG_OPT=`echo $GIF | sed 's/.gif$/.png/'` convert "$g" "$TMP/$PNG" pngcrush -rem alla -reduce -brute "$TMP/$PNG" "$TMP/$PNG_OPT" > /dev/null if [ ! -f "$TMP/$PNG_OPT" ] ; then rm -f $TMP/* continue fi GIF_SIZE=`size "$g"` PNG_SIZE=`size "$TMP/$PNG_OPT"` if [ $PNG_SIZE -lt $GIF_SIZE ] ; then echo ">> $g : PNG plus petit (${PNG_SIZE}o < ${GIF_SIZE}o)" FINAL_PNG=`echo $g | sed 's/.gif$/.png/'` [ $DEBUG -eq 0 ] && cp "$TMP/$PNG_OPT" "$FINAL_PNG" [ $DELETE_GIF -eq 1 ] && rm "$g" fi rm -f "$TMP/$PNG" "$TMP/$PNG_OPT" done rm -rf "$TMP"
Ouéééé ! Le 27 février 2009 je serai à Bercy pour voir les rois du rock, que dis je les dieux du rock : AC/DC ! J'ai pas eu de chance ce matin en étant un peu trop lent à valider mon panier je n'ai jamais pu payer mes deux places pour le 25 février, forcément tout est parti en moins d'un quart d'heure ! Heureusement en réessayant cet après midi un peu au hasard je suis tombé pile avant le rush pour les places de la deuxième date sans savoir qu'elles seraient en vente ! Maintenant, il n'y a plus qu'à se jeter sur le nouvel album, Black Ice qui sort la semaine prochaine.
Un peu de déformation professionnelle en passant, le rush doit être vraiment impressionnant techniquement parlant, Les techniques mises en place pour lisser un peu le trafic sont amusantes. TicketNet et Gérard Drouot Production mettent en place une espèce de file d'attente façon rayon boucherie à Auchan alors que sur Fnacspectacles rien de particulier mais le site est tombé ou du moins était pas en très bonne forme aux alentours de 10h30.
Les agents immobiliers sont à l'image de leur site Internet : plein de promesses non tenues ! Avant de me lancer dans la recherche d'un appartement, j'ai entendu pas mal d'histoires sur les agents immobiliers, eh bien force est de constater qu'il y a pas mal de choses que j'ai pu vérifier. Il y aurait de quoi faire un site lesagentsimmobiliers.com sur le modèle du très drôle lesbanquiers.com tellement certains tentent de vous prendre pour un idiot... Morceaux choisis :
Vous savez cette résidence est très cotée, les appartements ici se vendent en quelques semaines voire quelques jours.
Pas de chance (pour lui), j'ai visité un appartement le jour même dans la même résidence qui est en vente depuis 6 mois ! Je précise que le dit appartement était tout à fait intéressant au niveau prix et prestations.
Alors effectivement, il y a un peu de circulation ici, mais en 2010 il y aura le tramway 3 de ce côté et donc il y aura moins de circulation des deux côtés.
Pour un agent immobilier, un peu de circulation c'est une route à double voie de chaque côté de la résidence mais c'est pas grave une ligne de tramway c'est magique, elle transforme 2 routes à double voie en chemins piétonniers ! Et c'est d'autant plus magique que la mise en service de la ligne 3 est prévue pour 2012, il sera en avance de 2 années !
Le plus marrant dans l'histoire, est qu'à la fin des visites, l'agent finit par me faire le laïus habituel sur la grande sincérité et le sérieux des agents immobiliers... Mais pourquoi ai je donc la désagréable impression qu'il me prend pour un c** ?
Vu dans 10 choses que vous ne savez pas sur Wikipédia, le classement des pages les plus vues sur Wikipedia Commons (la médiathèque des Wikipedia). Les premiers articles qui ne sont pas en relation avec le sexe et qui ne concernent pas un service du site (recherche, identification, ...) sont :
Le visiteur moyen de Commons Wikipedia est un obsédé tendance footeux / geek. étonnant :-)
Sauf mentions spécifiques, les billets et les photos publiés sur ce site sont placés sous la licence Creative Commons by-sa.
Pour toute utilisation dépassant le cadre de cette licence, merci de me contacter par e-mail.