Je viens tout juste de terminer le déménagement du site vers un autre serveur (je reste chez ovh, mais je me suis offert un serveur dédié à la place du 300gp :) ).
Tout semble fonctionner, mais si vous voyez quelque chose de louche, n'hésitez pas à laisser un commentaire ici !
Depuis le framework 3.5, Visual Basic dispose (enfin) d'un vrai opérateur ternaire ! \0/
Pour rappel, jusqu'à présent, ce qu'on avait de plus approchant était la méthode Iif provenant de VB6 Microsoft.VisualBasic.DLL. Le problème avec ça, c'est que comme il s'agit d'un appel de méthode, tous les paramètres sont évalués avant l'exécution du code. Autrement dit, si j'écris :
Je vais avoir droit à une belle NullReferenceException dans la figure : l'appel à pouet.Trim() étant évalué lors de l'appel à Iif, comme pouet n'est pas initialisé, l'exception est levée.
Aujourd'hui, tout cela est terminé, et on écrira le code précédent de la façon suivante :
La syntaxe est donc exactement la même, si ce n'est qu'on utilise if à la place iif et qu'on ne provoque pas d'exception :-)
Au passage, notez que si l'opérateur est utilisé avec seulement deux arguments, il agit comme le ?? du C#, autrement dit : "si le premier paramètre est à null, retourner le second paramètre, sinon retourner le premier. Exemple :
Dim pouet asstringDim pinpon asstring
pinpon = If(pouet, String.Empty)
Muxtape sera indisponible pour une brève période le temps de régler un problème avec la RIAA, proclame le texte qui orne depuis le 18 août le site de partage de musique.
"Une brève période" ? L'expérience tendrait à prouver qu'il faut plutôt lire "indéfiniment" :-/
Dommage, j'aimais beaucoup ce service...
15:35 » Cruise Control .NET : interroger plusieurs emplacements SourceSafe pour le même projet - programmation, informatique
Avant notre passage à Team Foundation Server, mon client utilisait SourceSafe pour versionner et stocker son code source. Du coup, j'avais monté un serveur d'intégration continue à l'aide de l'excellent Cruise Control .NET. Au cours de la configuration de CCNet, je me suis vite heurté à un problème : comment surveiller plusieurs emplacements du contrôleur de code source dans le même projet quand on ne peut mettre qu'une balise sourcecontrol dans le fichier de configuration ? Parce que gérer un emplacement c'est bien gentil, mais en général les applications qu'on développe s'appuient sur quelques autres composants maison, bien souvent hébergés à l'autre bout du contrôleur de code source.
J'avais probablement pas mal de caca dans les yeux ce jour-là, puisque je suis allègrement passé à côté de la page de la documentation de CCNet qui l'explique.
Mais comme je suis bien parti et qu'aujourd'hui je me sens d'humeur généreuse (qui ne le serait pas après une victoire acquise de haute lutte suite à trois jours d'âpres combats contre un IIS récalcitrant ?), je vous l'explique quand même.
L'astuce repose sur l'utilisation d'un type de sourcecontrol spécial portant le doux nom de multi. Dans ce type de sourcecontrol, on peut mettre une balise sourceControls, puis autant de balises liées à un contrôleur de code source que nécessaire.
Un petit exemple, parce qu'on dirait que vous ne comprenez rien à ce que je vous dis :
13:50 » Plus de souris sous Word 2007 ? Vérifiez vos plug-ins ! - informatique
Depuis deux semaines, j'étais bien embêté pour écrire des docs car Word 2007 refusait de me laisser sélectionner du texte avec la souris. De manière plus générale, la souris n'était tout simplement pas prise en compte dans la zone d'écriture, alors qu'elle l'était dans les divers menus.
Si ce n'est pas rédhibitoire, c'est tout de même super ch*ant, d'autant que certaines contraintes faisaient que je ne pouvais pas écrire mon document tranquillement sous vi.
Bref, après un peu de googling, la réponse est : désactive le plug-in pourri qu'a installé Power Designer 12, redémarre Word, et ça roule ! A moi les joies du clic clic ! \0/
Je remarque donc que comme avec Windows, les problèmes viennent plus souvent de programmes développés par des tierces parties que des produits eux-mêmes :-)
14:59 » Bons musiciens sur mauvais instruments - musique, haha
Dans cette vidéo, un Marcus Miller tout jeune, à l'époque dans le groupe de David Sanborn, explique en sosottant que leur groupe reçoit beaucoup de lettres, et que ça leur fait plaisir.
Cependant, une des lettres leur fait remarquer que oui, ils ont un super son, mais que ce n'est pas difficile pour eux de groover aussi fort vu qu'ils ont de très bons instruments.
Piqué au vif, le groupe a décidé de prouver le contraire en jouant avec des instruments en plastique, du genre de ceux qui envahissent les grandes surfaces en fin d'année.
Sinon, rien à voir, mais je ne peux pas m'empêcher tellement ça déchire : une vidéo de Stanley Clarke, Marcus Miller et Victor Wooten (presque) seuls sur scène.
Comme vous le savez (ou pas), CherryPy intègre un serveur web, ce qui lui permet de servir lui-même ses sites web sans avoir à recourir aux services d'un Apache ou d'un IIS. Cette fonctionnalité, qui ressemble au départ à un atout, se transforme en problème dès qu'on aborde la question de l'hébergement : sur un hébergement mutualisé, à moins que celui-ci ne soit dédié à l'hébergement de sites CherryPy, vous ne pourrez pas l'installer. Sur un serveur dédié, ça vous ennuiera probablement de sacrifier votre port 80 sur l'autel de CherryPy alors qu'un bon vieux Apache pourrait très bien s'occuper de ça, sans pour autant empêcher que des sites utilisant d'autres technologies soient hébergés sur la même machine.
Si, à ma connaissance, aucune solution n'existe pour l'hébergement mutualisé, on peut en revanche assez facilement héberger des sites CherryPy derrière Apache sur un serveur dédié. L'astuce consiste à utiliser les possibilités d'url rewriting d'Apache pour qu'il envoie les requêtes à CherryPy (il existe d'autres façons de le faire, mais celle-là me plait bien :) ).
Je vais vous décrire ici comment j'ai réalisé ça sur mon serveur sous Debian 4.0 (Etch).
1./ Installer Apache
apt-getinstall apache2
2./ Faire en sorte que mod_rewrite, mod_proxy et mod_proxy_http soient chargés au démarrage d'Apache
3./ Mettre les règles de redirection qui vont bien dans le fichier de configuration (ici, on redirige tout ce qui arrive sur /cherrypy/, /var/www/ étant le DocumentRoot du serveur)
(pour tester, vous pouvez mettre ça dans /etc/apache2/sites-available/default, juste avant le </VirtualHost>)
ProxyPreserveHost On
<Directory /var/www/cherrypy/>
RewriteEngine On
RewriteRule ^(.*)$ http://localhost:8080/$1[proxy]</Directory>
14:47 » Bootsy Collins Tribute To James Brown - musique, concert
Je suis très content pour les gens à qui ça a plu.
Je n'en fais malheureusement pas partie.
Ca avait pourtant l'air chouette : des musiciens expérimentés, une thématique plutôt sympa (James Brown, donc), une salle correcte (le Bataclan)...
Mais non, c'était, à mon sens, complètement raté : les mecs racontent leur vie au lieu de jouer, il y avait un type qui imitait James Brown (c'était bien fait, certes, mais je trouve ça assez morbide), pas de rappel, zéros performances musicales (il y avait un ou deux solos pas mal, mais c'est tout), le tout pour 50 euros, ça calme sévère.
Donc pour le coup, j'ai vraiment chopé des acouphènes pour rien.
Hop, j'enfile mon costume de corporate bitch pour vous présenter la « Winwise Solutions Conference 2008 » !
Comme je reste une feignasse, voici un copier-coller du site de l'évènement :
La « Winwise Solutions Conference 2008 » est un séminaire totalement gratuit, organisé le mercredi 10 septembre 2008 à Paris de 9h30 à 18h30, en partenariat avec Microsoft France dans le cadre du programme Regional Director.
Cet évènement, comprenant 15 sessions techniques d’une heure, sera animé à la fois par des intervenants Microsoft et par nos meilleurs experts, consultants, seniors et architectes expérimentés, sur les technologies Microsoft.
Ce dernier est destiné aux professionnels du développement et aux architectes ainsi qu’aux étudiants en informatique et à leurs professeurs.
Vu la speakers qui seront présents, ça devrait être de très bonne qualité, je vous engage donc à vous inscrire sur le site !
L'ami Mat s'est fendu de deux yeahs d'excellente facture (ils sont tous les deux compliant (!)), ce qui le fait passer en seconde position du classement (ou y était-il déjà ? je ne sais plus), et monte le nombre total de yeahs à 195 !
Merci à toi, Mat, que la Providence du Dieu du C fasse pleuvoir du code qui déchire sur tous tes serveurs mails.
Depuis hier matin, la ligne de métro parisien n°6, que j'emprunte pour aller au travail, est en travaux. Plus précisément, c'est une partie du trajet qui est aérienne, entre les stations Bercy et Place d'Italie, qui va bénéficier d'un petit lifting (d'un gros lifting même, vu que l'interruption de service entre ces stations va durer deux mois).
J'ai donc marché le long du viaduc pour rentrer chez moi hier soir, et ça fait plaisir de voir que les stations ne sont pas fermées pour rien ^_^
J'ai passé la semaine dernière à Callas (dans le sud-est de la France) en compagnie de Madame et de quelques amis. Si vous avez envie d'être peinards et de ne rien faire, je vous recommande chaudement l'endroit.
La vue est belle, les cigales font ksi-ksi et les grenouilles croa-croa, et c'est bien tout ce qu'on entend (jusqu'à l'arrivée de la nuit et de ces #@! de moustiques, mais passons).
Alors bien sûr, après tout ça, on n'a pas terriblement envie de rentrer, surtout quand on se mange les embouteillages à plusieurs reprises sur la route du retour.