mercredi 21 avril 2010

ces titres qui enterrent un genre musical

Quelques titres sont pour moi significatifs de la fin d'une période musicale, à moins qu'ils n'illustrent leur apogée. Je vais vous en donner deux maigres illustrations, j'en trouverai probablement d'autres plus tard, ce qui sera l'occasion de revenir sur cet article.


Commençons tout d'abord par le thrash metal. Datant de la fin des années 1970, ce mouvement a été mené par un carré de groupes : Slayer, Megadeth, Anthrax et Metallica. En 1992, Metallica sort le titre Nothing Else Matters qui arrive n°11 du billboard "Mainstream Rock", le groupe est pour la première fois placé dans les tops de divers pays, ses futurs albums ne quitteront plus les charts mondiaux au grand désespoir des premiers fans. Ce single n'est pas du thrash metal.

Fin d'une époque.


Décalé de quelques années, le mouvement grunge débute lui au milieu des années 1980 à Seattle. Ce mouvement a été mené par Melvins puis Nirvana, Pearl Jam et Soundgarden. Très underground au départ, ce mouvement est justement connu pour avoir un impact inattendu sur la scène mondiale. Soundgarden enregistre en 1993 son quatrième album (Superunknown) qui marque déjà un léger décalage par rapport aux trois précédents. En 1994, Soundgarden sort en single le titre le moins grunge de son album Black Hole Sun.

Fin d'une époque.


Si d'autres exemples vous viennent en tête, n'hésitez pas à me les faire partager. Quelques idées de types musicaux sur lesquels enquêter : l'époque yéyé, le Reggae ou encore la trance goa (ce dernier étant peut être trop underground pour subir le même phénomène).

Fin d'un article.

vendredi 16 avril 2010

... des commandes MacPorts les plus utiles

Le projet MacPorts est un projet de la communauté open-source pour compiler, installer et mettre à jour facilement un large panel de logiciels open source. On peut le rapprocher d'un dépot Debian pour Mac OS X. Ce billet présente les commandes les plus utiles ce qui me servira de référence dans le futur.

-d : option permettant un affichage plus verbeux.
  • port selfupdate : mise à jour du dépot
  • port list outdated : liste ensuite les paquets à mettre à jour
  • port upgrade outdated : mise à jour de ces paquets
Par défaut, lorsqu'on met à jour un paquet, port ne le supprime pas mais le marque inactif. Le pseudo paquet "inactive" permet de s'en occuper :
  • port list inactive : liste ces paquets inactifs
  • port uninstall inactive : désinstalle les paquets inactifs
Pour éviter cette manipulation, on peut mettre à jour un paquet avec le switch -u afin d'éliminer les anciennes versions :
  • port -u upgrade
Et bien sur port search pour voir ce que l'on peut ensuite installer avec port install .

Enfin, mac port ne supprime pas les anciennes versions : il se contente de les désactiver. De même, la compilation des paquets laisse des traces. On veillera donc à faire régulièrement le ménage :
  • port clean --all installed
  • port uninstall inactive
Simple non ? :)


Sinon, il existe des GUI permettant de tout gérer à la souris : Porticus et Pallet.

lundi 8 mars 2010

Quel est donc ce point dans le ciel ?

Prendre des photos du ciel est un passe temps prenant : l'un guettera une forme parmi les nuages, un autre patientera jusqu'à saisir LE coucher de soleil, certains cherchent même à figer la foudre ! L'astronomie nous a offert ces dernières années des clichés époustouflant, j'ai en tête ceux du télescope spatial Hubble. Les rendus générés grâce à cet outil m'ont toujours émerveillés. D'un petit point perdu, invisible pour l'oeil humain, les astronomes tirent des images dignes des plus grands musées.

Quand bien même vous auriez une tante travaillant à l'ESA, son neveu favori n'obtiendrais pas d'envoyer son télescope en orbite. Du matériel amateur quelques filtres et un peu de traitement permettent déjà des rendus très appréciables. Vous en trouverez très probablement de nombreux exemples sur flickr.

Aux moyens plus modestes, je me contente de contempler ce que le ciel a à m'offrir. La nuit, par exemple, les étoiles sont propices à diverses interrogations : quelle est le nom de cette constellation ? Est-ce là une planète ? Vers où peuvent bien voguer ces points clignotant ? Mes réflexions sont brusquement interrompue : un point lumineux vient d'apparaître et s'élève paisiblement quoi que rapidement. Après quelques minutes, il passe les toits et disparaît irrémédiablement de mon champ de vision. Je rentre aussitôt et mène mon enquête.

mardi 9 février 2010

PHP serialize() et json_encode

En réponse à Julien sur twitter.
Voici un comparatif rapide des fonctions PHP5 permettant de coder un objet en phrase. Cette pratique est utile lorsque l'on souhaite conserver une structure longue à initialiser pour la recharger ensuite très rapidement.

J'ai utilisé en source un tableau unidimensionnel provenant du logiciel MediaWiki. Il s'agit d'une liste de références à des messages en anglais et traduits en français. Le fichier est codé en UTF-8.

Le script sous PHP 5.2.11:


<?php
# Load a one dimension array named $messages
include "mediawiki/languages/messages/MessagesFr.php";

function code_time_for( $function, $on, $iter ) {
    $start = microtime(true);
    for( $i=0;$i<$iter;$i++) {
        call_user_func( $function, $on );
    }
    $end = microtime(true);
    return
        sprintf("Ran $iter x %-11s in: %9.3f ms", $function, 1000*($end - $start));
}

$msg_ser  = serialize( $messages );
$msg_json = serialize( $messages );
$times = 777;

# Lets have a look at encoding:
print code_time_for( 'serialize'  , $messages, $times ) . "\n";
print code_time_for( 'json_encode', $messages, $times ) . "\n";
# And then compare decoding functions:
print code_time_for( 'unserialize', $msg_ser , $times ) . "\n";
print code_time_for( 'json_decode', $msg_json, $times ) . "\n";


Le résultat avec 777 occurrences :

Ran 777 x serialize   in:  1211.259 ms
Ran 777 x json_encode in:  3897.529 ms
Ran 777 x unserialize in:  1359.995 ms
Ran 777 x json_decode in:  1888.151 ms


Les fonctions PHP restent plus performantes. En tout cas pour ce tableau.

dimanche 7 février 2010

La méthode SCRUM en quelques vidéos

Ce billet vise à regrouper quelques vidéos en anglais concernant SCRUM, une méthode agile de développement logiciel. Cette méthode est en opposition avec les méthodes plus connues de l'élève ingénieur telles que Cycle en V, Merise ou le modèle Waterfall. Notamment, la méthode étonne par sa réactivité, l'absence de cahier des charges et son processus itératif.

Plus qu'un long discours (vous en trouverez un en fin de billet), je pense que vous aurez un meilleur aperçu en visionnant les quelques vidéos que je vous propose. Je les ai volontairement classée par ordre d'intérêt et de durée croissante.