Il y a deux semaines se tenait à Bingen, en Allemagne, la sixième édition de la Breakpoint, la demoparty la plus célèbre ces dernières années. Ca a, comme chaque année, donné lieu a de bien belles démos, dont je vous propose ici une petite sélection.
On commence avec Masagin, une démo co-réalisée par les groupes farbrausch et neuro. Ca fait plaisir de voir autre chose que des clips techno/trance, surtout venant de farbrausch, d'autant que là c'est fait avec leur maitrise habituelle.
Vous pouvez la télécharger si vous avez une bonne machine, ou télécharger la vidéo, ou encore la regarder en ligne en HD. Pour les plus feignants, vous pouvez également la voir en YouTube ToutPourri ci-dessous :
farbrausch & neuro - Masagin
On enchaine avec Metamorphosis du groupe ASD, dont je vous avais déjà parlé lors la sortie de leur démo Lifeforce.
C'est beaucoup moins la débauche que d'habitude, mais le résultat n'en est pas moins bon, loin de là. Vous pouvez la télécharger si vous avez une bonne machine, ou télécharger la vidéo. Pour les plus feignants, vous pouvez également la voir en YouTube ToutPourri ci-dessous :
ASD - Metamorphosis
On continue avec Pimp My Spectrum, une intro 64k du groupe ate bit, que vous n'avez qu'à télécharger parce qu'il n'y a pas de vidéo et que ce ne sont que 64ko. Elle devrait tourner convenablement chez tout le monde, mais ça ne l'empêche d'être assez technique : en 64k, vous avez un émulateur (allégé) de Spectrum pour PC et une démo (Spectrum, donc). Le tout est fait avec beaucoup d'humour, bref c'est un régal (astuce : il vaut mieux avoir vu un épisode de Pimp My Ride (ou au moins connaitre le principe) pour bien comprendre).
ate bit - Pimp My Spectrum
On termine avec Linger In Shadows, une démo si j'ai bien compris pas encore terminée du groupe Plastic sur... PlayStation 3 !
Vous pouvez télécharger la vidéo, ou encore la regarder en ligne en HD. Pour les plus feignants, vous pouvez également la voir en YouTube ToutPourri ci-dessous :
Plastic - Linger In Shadows
Voilà pour ma sélection rapide des démos de la Breakpoint. Il y en a plein d'autres très bien (notamment Falling Down des ukscene allstars), donc n'hésitez pas à aller en regarder la liste, et bon visionnage !
D'après Slashdot, la version 11 de DirectX, qui pourrait arriver à la fin de cette année, supportera le rendu en mode raytracing en plus de l'habituelle rasterization.
Truc de ouf, j'trouve (ou serait-ce un poisson d'avril ?).
Mixtape, ça vous dit quelque chose ?
Si la réponse est non, il s'agit tout simplement du terme utilisé par nos amis anglophones pour désigner les compilations musicales "maison" (qui se faisaient au départ sur cassette, d'où le tape de mixtape).
Maintenant que c'est l'an 3000, évidemment, tout cela est dématérialisé au possible, exit donc les cassettes et les CDs, et bonjour aux mp3. Mais comme ça reste casse-pieds de se trimballer des mp3 chez les copains, on a trouvé plus simple : créer et héberger ses mixtapes sur internet.
C'est ce que permettent des services comme radio.blog.club (bon, en ce moment, pas trop, je vous l'accorde :) ) ou Deezer.
Dans le même esprit, le site muxtape.com propose de créer et partager ses mixtapes.
Contrairement aux autres sites que j'ai cité, muxtape est vraiment spécialisé mixtapes, on ne peut rien y faire d'autre. Cela a l'avantage de permettre une simplification drastique de l'interface, qui est un régal à utiliser tellement elle est simple.
Une page pour uploader des morceaux, une autre pour décider de l'ordre dans lequel ils seront joués, et voilà pour la partie administration. Ah si, on peut aussi faire un peu de personnalisation en choisissant la couleur de fond de l'entête de la page qui affiche votre mixtape.
Côté consultation, on se rend à l'adresse d'une mixtape, par exemple nop.muxtape.com, et il suffit de cliquer sur un morceau pour démarrer sa lecture (note : j'ai eu quelques soucis hier, que je n'ai pu régler qu'en redémarrant mon navigateur). Un second clic le met en pause. Si on ne touche à rien, les morceaux sont lus en boucle, dans l'ordre de la liste.
Côté limitations, une mixtape ne peut pas dépasser 12 morceaux, et chaque morceaux est limité à 10mo. Ca me parait raisonnable, dans le sens où on n'est pas là pour faire un encyclopédie de la musique, mais juste faire partager des morceaux qu'on aime bien aux copains.
Bref, j'aime bien ce service, j'apprécie sa simplicité, et je vous invite à l'essayer et à laisser l'adresse de vos mixtapes dans les commentaires !
17:32 » Tests de site web avec Internet Explorer 6 - programmation
Comment faire pour tester un site web sous Internet Explorer 6 lorsqu'on a la version 7 d'installée ?
J'ai bien croisé une solution pour installer plusieurs versions du navigateur sur la même machine, mais elle ne me tentait guère, et surtout elle ne fonctionne pas sous Vista (OS sous lequel j'ai la joie et l'honneur de travailler chaque jour au bureau).
Heureusement, mère virtualisation vient à la rescousse des développeurs désespérés que nous sommes : en effet, Microsoft a mis à notre disposition des images de Windows XP SP2 et Vista avec au choix Internet Explorer 6, 7 ou 8 d'installé.
Vous aurez également besoin de Virtual PC (qui est gratuit) pour faire fonctionner les bestioles.
Attention, les images expirent le 3 juillet de cette année (pas de panique, elles seront remplacées par d'autres avant cette date, mais il faudra penser à les mettre à jour).
J'ai été très surpris de découvrir que la chaine anglaise Sky One diffusait une adaptation de The colour of magic, le premier roman de la célèbre série du Disque-Monde, du non moins célèbre Terry Pratchett.
Autre surprise, ils avaient en fait déjà diffusé une adaptation de roman de cet univers (il s'agit en l'occurrence de Hogfather, ou Le Père Porcher par chez nous) qui a également été diffusée par M6 à Noyel 2007 (!).
Bref, je ne les ai pas encore regardé, mais si ça vous intéresse, sachez qu'on les trouve très facilement sur les intertubes, par exemple par là.
Sinon, sur une note toujours surprenante mais moins réjouissante, Terry Pratchett a annoncé en décembre dernier qu'il était malheureusement atteint d'une forme rare de maladie d'Alzheimer, et qu'il était près à bouffer de la fesse de taupe morte si ça pouvait aider ("Personally, I'd eat the arse out of a dead mole if it offered a fighting chance"). Histoire de mettre toutes les chances de son côté (et parce qu'en Angleterre, à nombre de malades égaux, le financement de la recherche contre la maladie d'Alzheimer représente 3% de celui de la recherche contre le cancer), il a également donné dans les 494000 livres à la recherche contre cette maladie (des pounds hein, pas des bouquins, c'est pas parce qu'il est écrivain qu'il paye tout en livres (ça c'est parce qu'il est anglais)).
Son don semble d'ailleurs avoir lancé un mouvement de donations chez ses fans, c'est ça de pris pour la recherche !
15:37 » Le code dont VOUS êtes le coupable - programmation
Je suis assez d'accord avec ce que raconte Jeff Atwood dans un de ses derniers posts.
Pour les anglophobes et ceux qui n'ont pas envie de le lire, voici un résumé : quand vous butez sur un problème de programmation, aussi tordu soit-il, n'oubliez jamais que c'est toujours de votre faute. Toujours (ou presque). Ce n'est pas la faute du compilateur, ni celle de votre IDE, encore moins celle de l'OS et probablement pas non plus celle des bibliothèques que vous utilisez. Non non, dans l'écrasante majorité des cas, c'est vous qui avez fait une bêtise.
Et c'est d'ailleurs un peu pour ça que je ne vois pas forcément d'un très bon oeil la mise à disposition des sources du framework .NET. Ce n'est pas une mauvaise chose en soi (en bon écureuil, si on me tends une noisette, je la prends), mais mal utilisé ça peut faire perdre beaucoup plus de temps que ça en fait gagner. On peut gagner du temps car jusqu'ici, lorsqu'on voulait savoir comment une partie du framework était faite, on devait dégainer Reflector et regarder. C'est vrai qu'en ayant les sources sous la main et en permettant de faire du pas-à-pas dedans, ça fera gagner du temps. Bon, pour ma part j'utilise toujours Reflector, mais admettons ^_^ Ce qui me fait peur, en revanche, c'est le développeur mal informé mais plein de certitudes. Vous en avez forcément au moins un dans votre entourage, vous savez, le genre de personne qui est toujours prompte à imputer les problèmes de ses programmes à "la gestion mémoire foireuse de .NET" ou à "ce satané framework qui fait n'importe quoi" (alors qu'il n'a, bien sûr, jamais cherché à se renseigner sur le sujet, mais ça ne l'empêche pas d'en parler). Lui va perdre beaucoup de temps avec ça, car il va pouvoir faire du pas-à-pas dans les sources du framework, perdre une demie-journée à valider que non, la méthode String.Replace n'a pas de problème, et finalement découvrir que le problème venait de son propre code.
Attention cependant à ne pas tomber dans l'excès inverse. Une fois que vous êtes absolument certains que votre code est irréprochable, il n'y a rien de mal à remettre en question les bases sur lesquelles vous avez construit votre programme. L'OS, le framework et les bibliothèques que vous utilisez sont développées par des humains comme vous à qui il arrive de se tromper, ils ne sont donc pas exempts de bugs. Mais c'est vraiment, vraiment, vraiment rare. En ce qui concerne le code de l'OS et du framework, ils sont utilisés quotidiennement par des milliers et des milliers de personnes, la probabilité que soyez le découvreur d'un bug est donc très proche de zéro. En ce qui concerne les bibliothèques, la probabilité est déjà plus élevée, mais toujours assez faible (c'est aussi très dépendant de la maturité de la bibliothèque, vous aurez naturellement plus de chances de trouver des bugs dans une version 2 que dans une version 10). Pour vous donner une idée, sur les quatre dernières années, j'ai trouvé un bug dans un composant de reporting de DevExpress, et c'est tout.
Alors s'il vous plait, n'oubliez pas, quand vous êtes confrontés à un problème qui semble insoluble : vérifiez bien votre code avant de rejeter la faute sur celui des autres.
Arthur C. Clarke s'est éteint hier à 90 ans.
C'est dommage parce qu'il n'écrira plus, mais on va pas en faire un fromage (l'impermanence des choses, les enfants) et surtout ça fait une bonne occase de lui faire de la pub. Parce que même s'il ne risque plus d'écrire de nouveautés, il nous laisse un joli paquet de lectures passionnantes.
Le lecteur curieux pourra donc commencer par les odyssées (au moins l'indémodable 2001, et 2010, 2061 et 3001 si affinités), et enchainer avec la série des Base Vénus, pour voir comment ça fait quand il écrit pas tout seul.
Ensuite, je suppose que la série des Rama serait un bon choix (on m'en a fait la réclame, mais je ne l'ai pas encore lu).
Voilà, et à mon avis quand vous aurez lu tout ça, vous serez assez conquis pour dévorer tout ce qu'il a écrit, je vous souhaite donc à vous une bonne lecture, et à Arthur C. Clarke un bon repos :-)
Si vous aussi vous développez des sites web et qu'on vous impose des exigences déraisonnables du genre "le site doit se charger rapidement" ou "le site doit être identique sous Internet Explorer et Firefox", ce post est fait pour vous.
J'ai remarqué ces derniers mois que le développeur web moyen, malgré un travail pas toujours facile, est rarement bien outillé. Pourtant, chercher une balise dans une soupe HTML de 400ko, tester une modification de CSS, débugger du Javascript, bref, toutes ces tâches qui vous font souffler un grand coup avant de vous y mettre, deviennent triviales pour peu qu'on soit bien outillé.
Voici donc la liste des outils que j'utilise quotidiennement pour me faciliter la vie.
Ceux que vous *devez* avoir : Firebug : l'arme ultime du développeur web, sous forme d'extension pour Firefox. Vous chercher à voir le code html d'une cellule perdue au milieu d'un tableau dans un tableau dans un tableau dans un tableau ? Faites un clic droit sur cette cellule puis choisissez "Inspect element", et Firebug vous montrera tout. Vous voulez tester un changement de CSS ? Pas de problème, Firebug permet d'éditer les styles à la volée. Un développement Javascript à débugger ? Facile, vous pouvez mettre des points d'arrêt et faire du pas-à-pas dans le code. YSlow : cette extension Firefox, qui peut s'intégrer à Firebug, permet de faciliter la mise en pratique des bonnes pratiques professées par Steve Souders et son équipe. Rien à ajouter, si ce n'est que si vous ne connaissez pas ces règles, allez les lire, ça vaut franchement le coup. Web Developer Toolbar : encore une extension Firefox, plus orientée graphisme, puisqu'elle permet par exemple de redimensionner la fenêtre de votre navigateur de façon à simuler une certaine résolution d'écran, de désactiver le Javascript et/ou les CSS, de valider votre code auprès du W3C, d'afficher les bordures des tableaux/cellules, etc. Je pense n'utiliser que 10% des possibilités de cette extension, mais ces 10% suffisent largement à la faire figurer dans cette liste. IETab : cette extension permet de tester vos créations sous Internet Explorer sans quitter Firefox. Le changement de moteur de rendu se fait en cliquant tout bêtement sur une icone, on ne fait pas plus simple. IE Developer Toolbar : un semblant de Web Developer Toolbar dédiée à Internet Explorer. Rien d'aussi impressionnant que sa consoeure sous Firefox, mais c'est déjà un bel effort qui fait gagner beaucoup de temps.
Ceux dont on n'a pas besoin tous les jours mais qu'on est bien contents de trouver : Ruler : une règle, qui vous permet facilement de mesurer des choses à l'écran (en pixels). Fiddler : Cet outil permet de suivre toutes les échanges HTTP entre votre navigateur et l'internesque qui clique. Très pratique pour par exemple vérifier que la compression, le cache et les dates d'expirations fonctionnent bien. L'outil fonctionne tout seul avec Internet Explorer, mais avec Firefox il faudra modifier la configuration du proxy pour que ça fonctionne (mettre le proxy à localhost sur le port 8888). SwitchProxy Tool : une extension Firefox qui permet de changer de réglages du proxy en un clic (je vous laisse deviner à quoi il est particulièrement utile) (indice : ça a un rapport avec Fiddler :-]). TcpView : un des nombreux utilitaires des extraordinaires Mark Russinovich et Bryce Cogswell, qui permet de voir les connexions réseaux ouvertes sur une machine. C'est donc une espèce de netstat graphique, parce que de temps en temps c'est bien de pouvoir vérifier que "attends, je serai pas connecté au mauvais serveur de base de données, là ?".
Voilà, avec tout ça vous n'avez plus d'excuses, il faut faire des sites qui déchirent, maintenant :-)
Vous l'avez probablement lu partout, Super Mario Galaxy est un excellent jeu. Je suis bien d'accord (c'est le seul jeu de plate-forme en 3D qui n'est pas sur rails (type Crash Bandicoot) auquel je prends du plaisir à jouer), et je rajouterais une mention spéciale pour les musiques, qui sont vraiment de très bonne qualité.
Dommage alors que Nintendo ait décidé de réserver les CDs de la bande originale aux seuls membres du club Nintendo... Fort heureusement, ebay est venu à ma rescousse, et je suis à présent l'heureux détenteur et écouteur de cette OST \0/
Chroniques Birmanes est une bande dessinée de Guy Delisle qui raconte, à travers de courtes histoires de quelques pages, la vie d'un jeune papa qui s'installe avec sa compagne en Birmanie (celle-ci y est envoyée dans le cadre de son travail au sein de MSF).
Le dessin est clair : en peu de lignes et sans fioritures, l'auteur nous transporte à Rangoon, ne gardant que l'essentiel de l'architecture locale. Ce n'est pas de la fainéantise, bien au contraire, je pense qu'il a dû falloir de longues séances d'observation pour réussir à bien représenter l'environnement sans pour autant surcharger le dessin.
Mais la force de cette oeuvre réside à mon sens dans les histoires. Sans jamais lasser le lecteur, l'auteur lui fait découvrir sa vie là-bas : l'air conditionné, la politique, le réseau électrique, les insectes, les missions de MSF, les couches, les expatriés, tout y passe, et c'est un régal à lire.
Dessin efficace et histoires intéressantes, je vous recommande chaudement cette bande dessinée si la vie ailleurs vous intrigue.
Cet après-midi se tenait mon procès au tribunal de Genève. Seul face à 6 représentants de la justice suisse dans cette grande salle d'audience, je me sentais vraiment tout petit, et le manque de clémence de la juge n'a rien fait pour arranger les choses. Après quelques minutes de discussion, j'ai compris que c'était sans espoir et ai accepté la proposition de la juge : retirer ma contestation et payer l'amende initiale (360 francs suisses) plutôt que de m'entêter et au final payer le double en frais de justice (il m'a été clairement signifié qu'au mieux, tout ce que j'obtiendrai serait une réduction de l'amende initiale, assortie de frais assez conséquents).
Si, sur le fond, je ne peux pas contester l'attitude de la juge (après tout, j'ai commis une infraction), je regrette que la justice soit rendue de manière si mathématique, sans prendre le moindre compte des intentions, de l'attitude et de la bonne volonté du contrevenant.
Je pensais que les gens honnêtes (et je me compte parmi eux) étaient protégés de ce genre de choses, mais j'avais tort : il semblerait que l'adage selon lequel la justice est aveugle soit vrai.
Dans un tout autre registre, ce voyage en Suisse aura également été l'occasion de visiter un couple d'amis et de rencontrer des gens charmants et très accueillants avec qui j'ai partagé un bon dîner et une journée de ski \0/
Symptome : vous disposez d'un hébergement MSDN chez Ikoula, et vous y avez installé un site en Asp.net qui utilise l'authentification Forms. Après vous être identifiés sur le site (quand ça fonctionne), votre session se termine brutalement après un temps aléatoire (mais compris dans les 5 minutes).
Vos logs vous indiquent :
Des erreurs de validation de viewstate (Validation of viewstate MAC failed...)
Des CryptographicException (Padding is invalid and cannot be removed...), en général sur WebResource.axd
Solution : renseigner vous-même dans le web.config les clés utilisées pour encrypter/décrypter les données qui transitent entre le client et le serveur. Voici une page qui génère le tag qui va bien (cette page provient d'un article sur la machine key), prêt à être copié/collé dans la balise <system.web> de votre fichier de configuration.
Par contre je ne comprends pas très bien pourquoi ça ne fonctionnait pas. Est-ce que le serveur décidait brusquement de changer de clé de cryptage entre deux aller-retour serveur ? Ca expliquerait pourquoi le viewstate était rejeté et les CryptographicException, mais ça me parait quand même bizarre...
Bienheureux l'homme qui a fait l'acquisition sur ebay d'un Apple //c tout neuf, jamais déballé depuis tout ce temps (!).
Personnellement, je ne saurais pas quoi en faire (enfin, je saurais quoi en faire pendant quelques semaines, mais après...), mais la gallerie photo du déballage de la bête m'a rappelé de très bons souvenirs.
Amis nostalgiques, tous à vos glandes lacrymales.