<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>Cocoa, Music and other cool stuffs


  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-12128492-1']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement(‘script’); ga.type = ‘text/javascript’; ga.async = true;
    ga.src = (‘https:’ == document.location.protocol ? ‘https://ssl’ : ‘http://www’) + ‘.google-analytics.com/ga.js’;
    var s = document.getElementsByTagName(‘script’)[0]; s.parentNode.insertBefore(ga, s);
  })();</description><title>Thibaut LE LEVIER</title><generator>Tumblr (3.0; @tiboll)</generator><link>http://blog.lelevier.com/</link><item><title>RSSParser: AFNetworkingXMLRequestOperation based RSS parser</title><description>&lt;a href="https://github.com/tiboll/BlockRSSParser"&gt;RSSParser: AFNetworkingXMLRequestOperation based RSS parser&lt;/a&gt;</description><link>http://blog.lelevier.com/post/17569321540</link><guid>http://blog.lelevier.com/post/17569321540</guid><pubDate>Mon, 13 Feb 2012 16:56:00 -0500</pubDate></item><item><title>Feedbacks from iOS to Redmine</title><description>&lt;p&gt;I just push on Github a very simple code which allows your App users to send feedback directly to your Redmine tracker using a MessageUI-like view.&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://dl.dropbox.com/u/2044697/StaticFiles/redminefeedback/iphone.png"&gt;&lt;img height="200" width="106" alt="iPhone Interface" src="http://dl.dropbox.com/u/2044697/StaticFiles/redminefeedback/iphone-min.png"/&gt;&lt;/a&gt;&lt;a target="_blank" href="http://dl.dropbox.com/u/2044697/StaticFiles/redminefeedback/redmine.png"&gt;&lt;img height="200" width="312" alt="Redmine result" src="http://dl.dropbox.com/u/2044697/StaticFiles/redminefeedback/redmine-min.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Feel free to suggest any feature or to fork it!&lt;/p&gt;
&lt;p&gt;&lt;a title="Redmine Feedbacks" target="_blank" href="https://github.com/tiboll/Redmine-Feedbacks"&gt;&lt;a href="https://github.com/tiboll/Redmine-Feedbacks" target="_blank"&gt;https://github.com/tiboll/Redmine-Feedbacks&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://blog.lelevier.com/post/4673880773</link><guid>http://blog.lelevier.com/post/4673880773</guid><pubDate>Sat, 16 Apr 2011 20:16:00 -0400</pubDate><category>github</category><category>ios</category><category>redmine</category><category>iphone</category><category>feedback</category></item><item><title>Migration de Wordpress à Tumblr</title><description>&lt;p&gt;Dernièrement, je me suis posé la question sur la réelle utilité de mon serveur &amp;#8220;dédié&amp;#8221; (actuellement un serveur virtuel VQ7 chez Hetzner)&lt;/p&gt;
&lt;p&gt;Suite aux problème de fiabilité rencontré sur mon précédent serveur (merci Ikoula et Maplateformeweb) je me suis arrangé pour externaliser au max l&amp;#8217;hébergement de quelques sites vers des mutualisés et au final, ce serveur n&amp;#8217;héberge plus grand chose: Mon blog, Redmine, SVN et quelques autres outils de dev, quelques Wiki,&amp;#8230; mais rien ne nécessitant ni performances, ni de réel besoins en uptime.&lt;/p&gt;
&lt;p&gt;Qui plus est, un serveur ça demande de l&amp;#8217;entretien, des mises à jour, des sauvegardes, de la configuration&amp;#8230; etc&amp;#8230;&lt;/p&gt;
&lt;p&gt;Résultat des courses, mon blog se retrouve ici sur Tumblr après une migration plus ou moins rapide depuis Wordpress.&lt;/p&gt;
&lt;p&gt;Ce dernier possède un outil d&amp;#8217;export au format XML permettant de récupérer l&amp;#8217;intégralité du contenu déjà publié. De son coté, Tumblr possède un API complet permettant de reposter le contenu qui nous intéresse.&lt;/p&gt;
&lt;p&gt;On trouve alors quelques scripts (certains mieux fait que d&amp;#8217;autres) sur le net, malheureusement très peu, permettant de réaliser cet import de manière plus ou moins automatique. &lt;/p&gt;
&lt;p&gt;Mon choix c&amp;#8217;est alors porté sur un petit script en ruby dispo sur Github qui c&amp;#8217;est occupé pour moi de reconstruire l&amp;#8217;intégralité de mon contenu, avec les bon hashtag et les bonnes dates.&lt;/p&gt;
&lt;script src="https://gist.github.com/332449.js"&gt; &lt;/script&gt;&lt;p&gt;Oubliez cependant la gestion des commentaires (je n&amp;#8217;ai trouvé aucun script capable de gérer cet aspect) ou encore la compatibilité des URL (les permaliens ne sont pas géré de la même manière entre Wordpress et Tumblr).&lt;/p&gt;
&lt;p&gt;Bienvenu donc sur cette nouvelle version de mon blog, opérationnel pour de nouveaux sujets très prochainement :-)&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3692828227</link><guid>http://blog.lelevier.com/post/3692828227</guid><pubDate>Sun, 06 Mar 2011 21:15:47 -0500</pubDate><category>migration</category><category>blog</category><category>tumblr</category><category>wordpress</category></item><item><title>Start Hudson or Jenkins with Launchd on Mac OS X</title><description>&lt;p&gt;&lt;script src="https://gist.github.com/813900.js"&gt; &lt;/script&gt;&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690588390</link><guid>http://blog.lelevier.com/post/3690588390</guid><pubDate>Mon, 07 Feb 2011 03:41:35 -0500</pubDate><category>Divers</category><category>Gestion de Projets</category><category>Hudson</category><category>Mac OS X</category></item><item><title>GeekTrip à San Francisco</title><description>&lt;p&gt;Il y a maintenant un peu plus d’un mois, &lt;a href="http://bcharp.fr" target="_blank"&gt;Boris&lt;/a&gt; et moi même revenions d’un voyage gagné grace au concours Smartphone organisé par la SNCF auquel nous avions participé durant l’été sur plateforme iPhone.&lt;/p&gt;
&lt;p&gt;Mieux vaut tard que jamais, voici donc le bilan d’un voyage plein de rencontres.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Samedi 20 Novembre 2010&lt;/strong&gt;: Après un peu plus de 10h de vol, nous arrivons à San Francisco et nous rencontrons notre guide pour la semaine: &lt;a href="http://philjeudy.com/" target="_blank"&gt;Philippe Jeudy&lt;/a&gt;, inventeur du &lt;a href="http://www.geektrip.org/" target="_blank"&gt;Geektrip&lt;/a&gt; que nous allons vivre pendant une semaine. Le temps de s’installer à l’hôtel est nous repartons nous promener pour la soirée&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Dimanche 21 Novembre 2010&lt;/strong&gt;: Pas de visite prévu, on en profite pour continuer de visiter la ville et aller faire un tour jusqu’au Golden Gates Bridge pour prendre quelques photos.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxouSHWJ1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Lundi 22 Novembre 2010&lt;/strong&gt;: les hostilité commencent! Notre première rencontre se déroule au Crown Plaza de Palo Alto avec un “&lt;a href="http://en.wikipedia.org/wiki/Venture_capital" target="_blank"&gt;venture capital&lt;/a&gt;” chargé de trouver des startup prometteuses dans lesquels son client, Panasonic, pourra investir en étant certain du résultat.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxraRitq1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;Suite de la matinée avec une visite chez &lt;a href="http://www.plugandplaytechcenter.com/" target="_blank"&gt;Plug And Play Tech Center&lt;/a&gt; à Sunnyvale une sorte d’incubateur à l’échelle américaine pour jeune entreprise innovante capable d’offrir un package tout complet pour aider les startup à se lancer: bureaux, datacenter, networking, conférences, partenaires d’investissements…&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxsbiUW01qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;Ensuite direction Okland de l’autre coté de la baie pour terminer la journée avec &lt;a href="http://www.bart.gov/" target="_blank"&gt;BART: Bay Area Rapid Transit&lt;/a&gt; où Melissa Jordan et son équipe nous ont présenté leur politique d’Open Data et l’évolution de leurs web services permettant à n’importe quel développeur de pouvoir utiliser les informations fournis par BART (trajets, perturbations, horaires en temps réel…) pour créer ses applications.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxssxHIL1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Mardi 23 Novembre 2010&lt;/strong&gt;: Nous débutons la journée par une visite dans les locaux de &lt;a href="http://www.twitter.com" target="_blank"&gt;Twitter&lt;/a&gt; accueilli par Marc et Arnaud, 2 développeurs français chez Twitter qui nous parlent de l’état actuel de leurs services: 175 Millions d’utilisateurs, 95 Millions de Tweets par jours, 370 000 nouveaux utilisateurs par jours, et 1 Milliard de requête sur l’API chaque jour.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxtsYpDT1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;Nous passons ensuite chez &lt;a href="http://rhomobile.com/" target="_blank"&gt;Rhomobile&lt;/a&gt; à San José où Adam Blum, CEO de Rhomobile nous a présenté sa solution de framework Rhodes de développement mobile multi-plateformes basé sur Ruby.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxu6MHsN1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;Ensuite direction le célèbre &lt;a href="http://fr.wikipedia.org/wiki/Googleplex" target="_blank"&gt;Google Plex&lt;/a&gt; à Mountain View pour une présentation sur la monétisation des applications mobiles par l’équipe &lt;a href="http://www.admob.com/" target="_blank"&gt;Google AdMob&lt;/a&gt; suivit ensuite d’un passage devant le bâtiment Android dans lequel nous n’avons malheureusement pas eu le droit d’entrer.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxv3XZLU1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxw3GaRH1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;Enfin, nous terminons la journée par un passage dans les sales office de Microsoft à San Francisco pour une présentation du programme &lt;a href="http://www.microsoft.com/bizspark/" target="_blank"&gt;Microsoft BizSpark&lt;/a&gt; par &lt;a href="http://about.me/jacobmullins" target="_blank"&gt;Jacob Mullins&lt;/a&gt; suivit d’une présentation du développement sur Windows Phone 7 par Kurt Brocket d’&lt;a href="http://www.identitymine.com/" target="_blank"&gt;IdentityMine&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Mercredi 24 Novembre 2010&lt;/strong&gt;: La journée commence par une visite chez &lt;a href="http://www.seesmic.com" target="_blank"&gt;Seesmic&lt;/a&gt;, la société crée par &lt;a href="http://loiclemeur.com/" target="_blank"&gt;Loic Le Meur&lt;/a&gt;. Bastien Vidal et Johann Romefort nous y explique le fonctionnement de l’entreprise ainsi que leur orientation B2B à venir suite à leur association avec SalesForces.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxwptYXB1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;Direction ensuite le Samovar tea lounge où nous rencontrons Holger Luedorf de chez &lt;a href="http://www.foursquare.com" target="_blank"&gt;Foursquare&lt;/a&gt; pour parler du taux d’utilisation des check-in et des projets de Foursquare en terme de publicité ciblée et localisée.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxx6LtCf1qgcouj.png"/&gt;&lt;/p&gt;
&lt;p&gt;Nous profitons ensuite d’un peu de temps libre pour faire les touristes du coté des locaux de Facebook, sur le campus de Sanford University et aux headquarters d’Apple. Malheureusement, veille de Thanksgiving la plupart des bureaux sont vides.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxxrgKcl1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;1 Infinite Loop&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxyf1QhD1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;Enfin dernière étape de la journée nous rencontrons Julien Decot de chez &lt;a href="http://www.skype.com" target="_blank"&gt;Skype&lt;/a&gt; dans les locaux d’eBay à San José. Il nous explique comment Skype vise maintenant à s’implanter dans les entreprises avec des solutions de gestions multi-compte centralisé et des solutions de couplage avec une installation téléphonique existante. Il nous parle aussi de la nouvelle cible de Skype en terme de plateforme: les télévisions et leur OS embarqué.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Jeudi 25 Novembre 2010&lt;/strong&gt;: Day off. Phil nous emmène passer Thanksgiving dans la &lt;a href="http://fr.wikipedia.org/wiki/Napa_Valley" target="_blank"&gt;Napa Valley&lt;/a&gt; pour visiter une Winerie et déguster du vin Californien. Comparé à ce qu’on peut trouver dans la région Bordelaise c’est… pas encore ça…&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxz4QFWS1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Vendredi 26 Novembre 2010&lt;/strong&gt;: Dernier jours de vadrouille avant de regagner l’aéroport, nous commençons donc cette dernier journée par nous rendre au Pier 38 pour rendre visite à un autre incubateur d’entreprise d’origine espagnole: &lt;a href="http://www.opinno.com/" target="_blank"&gt;Opinno&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnxzy8dVT1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;Enfin, nous terminons notre GeekTrip par une visite chez &lt;a href="http://placecast.net/" target="_blank"&gt;PlaceCast&lt;/a&gt; où Anne Bezancon nous présente sa solution de publicité géolocalisée disponible pour tous les téléphones portable en diffusant les publicité par SMS.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhny0mYWFq1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Remerciements&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;Plus qu’un bilan, cet article est l’occasion pour moi de remercier les personnes qui ont rendu ce projet possible: Daniel Jasmin, Explolab et la SNCF pour avoir organiser le concours et mis en jeux ce voyage fabuleux. Ingésup, notre école au nom de laquelle nous avons participé à ce concours et qui nous à apporté son soutien tout au long de nos travaux. Les entreprises Plug and Play Tech Center, BART, Twitter, Rhomobile, Google, Microsoft, Seesmic, Foursquare, Skype, Opinno, PlaceCast,… et celles que j’ai pu oublié pour leur accueil et leurs présentations. Et enfin l’excellent Philippe Jeudi, créateur du Geektrip qui nous a trimbalé tout au long de cette semaine pour nous faire rencontrer les acteurs de la Silicon Valley que nous n’aurions jamais pu rencontrer autrement! Merci Phil!&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.geektrip.com" target="_blank"&gt;&lt;a href="http://www.geektrip.com" target="_blank"&gt;http://www.geektrip.com&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690576380</link><guid>http://blog.lelevier.com/post/3690576380</guid><pubDate>Sun, 02 Jan 2011 20:55:00 -0500</pubDate><category>Concours</category></item><item><title>Concours Smartphone SNCF: Bilan final</title><description>&lt;p&gt;Mercredi dernier avait lieu l&amp;#8217;annonce officielle du classement final toutes plateformes confondues pour le concours SNCF auquel nous avons participé Boris et moi même.&lt;/p&gt;

&lt;p&gt;Et nous arrivons donc 3 ème derrière la société Cap Gemini et la société Mobile2You.&lt;/p&gt;

&lt;p&gt;Et pour ce qui est du voyage, nous décollons dans 2 jours.&lt;/p&gt;

&lt;p&gt;Sans doute des photos à venir bientôt :)&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690575341</link><guid>http://blog.lelevier.com/post/3690575341</guid><pubDate>Fri, 19 Nov 2010 01:41:30 -0500</pubDate><category>Non classé</category></item><item><title>Pompage et reprises</title><description>&lt;p&gt;Tout commence en 1952 (ou 1951 si on compte la date d’enregistrement) en Allemagne:&lt;/p&gt;
&lt;p&gt;
&lt;object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" height="385" width="480" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"&gt;
&lt;param value="true" name="allowFullScreen"&gt;&lt;param value="always" name="allowscriptaccess"&gt;&lt;param value="http://www.youtube.com/v/EcXiMQ0J2So?fs=1&amp;amp;hl=en_US" name="src"&gt;&lt;param value="true" name="allowfullscreen"&gt;&lt;embed allowfullscreen="true" allowscriptaccess="always" src="http://www.youtube.com/v/EcXiMQ0J2So?fs=1&amp;amp;hl=en_US" height="385" width="480" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;
&lt;/p&gt;
&lt;p&gt;Et puis forcement les années 80 (1979 en fait) passent par là:&lt;/p&gt;
&lt;p&gt;
&lt;object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" height="385" width="480" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"&gt;
&lt;param value="true" name="allowFullScreen"&gt;&lt;param value="always" name="allowscriptaccess"&gt;&lt;param value="http://www.youtube.com/v/0EjLWh2150I?fs=1&amp;amp;hl=en_US" name="src"&gt;&lt;param value="true" name="allowfullscreen"&gt;&lt;embed allowfullscreen="true" allowscriptaccess="always" src="http://www.youtube.com/v/0EjLWh2150I?fs=1&amp;amp;hl=en_US" height="385" width="480" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;
&lt;/p&gt;
&lt;p&gt;Et puis finalement, quand 2 DJ plutôt pas mauvais repassent dessus… ils remasterisent un peu le bouzin, et paf… la sauce de canard:&lt;/p&gt;
&lt;p&gt;
&lt;object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" height="385" width="480" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"&gt;
&lt;param value="true" name="allowFullScreen"&gt;&lt;param value="always" name="allowscriptaccess"&gt;&lt;param value="http://www.youtube.com/v/wWhtcU4-xAM?fs=1&amp;amp;hl=en_US" name="src"&gt;&lt;param value="true" name="allowfullscreen"&gt;&lt;embed allowfullscreen="true" allowscriptaccess="always" src="http://www.youtube.com/v/wWhtcU4-xAM?fs=1&amp;amp;hl=en_US" height="385" width="480" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;
&lt;/p&gt;
&lt;p&gt;C’était le post musique, ça faisait longtemps&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690574647</link><guid>http://blog.lelevier.com/post/3690574647</guid><pubDate>Wed, 10 Nov 2010 01:00:00 -0500</pubDate><category>atrak</category><category>barbara streisand</category><category>boney m</category><category>duck sauce</category><category>electro</category><category>Musique</category><category>reprises</category></item><item><title>Concours SNCF, les premiers résultats</title><description>&lt;p&gt;Les finalistes du concours SNCF viennent d&amp;#8217;être annoncés, et nous sommes de la partie!
&lt;a href="http://pro.01net.com/editorial/521684/concours-smartphone-sncf-voici-les-finalistes/%20" target="_blank"&gt; &lt;a href="http://pro.01net.com/editorial/521684/concours-smartphone-sncf-voici-les-finalistes/" target="_blank"&gt;http://pro.01net.com/editorial/521684/concours-smartphone-sncf-voici-les-finalistes/&lt;/a&gt;&lt;/a&gt;
Merci à tous ceux qui ont voté pour nous, on vous revaudra ça! :)&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690573730</link><guid>http://blog.lelevier.com/post/3690573730</guid><pubDate>Mon, 04 Oct 2010 17:39:42 -0400</pubDate><category>Apple</category><category>cocoa</category><category>Concours</category><category>sncf</category></item><item><title>Concours SNCF: votez pour nous!</title><description>&lt;p&gt;Comme vous le savez, nous participons depuis quelques mois au concours Smartphone SNCF sur plateforme iPhone.
C&amp;#8217;est maintenant que nous avons besoin de vous! votez pour nous à cette adresse:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://pro.01net.com/editorial/521454/concours-smartphone-sncf-cest-a-vous-de-voter/" target="_blank"&gt;&lt;a href="http://pro.01net.com/editorial/521454/concours-smartphone-sncf-cest-a-vous-de-voter/" target="_blank"&gt;http://pro.01net.com/editorial/521454/concours-smartphone-sncf-cest-a-vous-de-voter/&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Merci à tous!&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690573082</link><guid>http://blog.lelevier.com/post/3690573082</guid><pubDate>Tue, 28 Sep 2010 16:19:08 -0400</pubDate><category>cocoa</category><category>concours</category><category>Concours</category><category>iphone</category><category>sncf</category></item><item><title>L'astuce du jour: install des packets avec Gem sans documentation</title><description>&lt;p&gt;Pour gagner du temps, de la place, du débit&amp;#8230; et tout ce que vous voulez, il n&amp;#8217;est pas souvent utile d&amp;#8217;installer la documentation ri (documentation en ligne de commande) et/ou rdoc (documentation aux &amp;#8220;normes&amp;#8221; ruby) qui accompagne les packets gems déployé sur un serveur de prod.&lt;/p&gt;

&lt;p&gt;On va donc pouvoir installer notre packet de la manier suivante (ici rails en exemple):&lt;/p&gt;

&lt;p&gt;$ gem install rails &amp;#8212;no-rdoc &amp;#8212;no-ri&lt;/p&gt;

&lt;p&gt;my 2 cents&amp;#8230;&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690562612</link><guid>http://blog.lelevier.com/post/3690562612</guid><pubDate>Fri, 27 Aug 2010 02:31:58 -0400</pubDate><category>gem</category><category>redmine</category><category>Redmine</category><category>ruby</category><category>Ruby</category><category>ruby on rails</category></item><item><title>SVN: Gestion des dépendances externes</title><description>&lt;p&gt;Le versionning de vos projets de développement est une chose essentielle pour garantir la sécurité et la tenu à jour de vos sources entre développeurs.&lt;/p&gt;
&lt;p&gt;Si l’intégralité des sources de votre projet peut être place sur un seul et unique dépôt, il arrive souvent que votre application soit dépendante d’un framework ou de quelques librairies importé d’un autre projet et souvent d’un autre dépôt SVN.&lt;/p&gt;
&lt;p&gt;Il est donc relativement lourd est contraignant de devoir stocker et versionner les fichiers de ces sources externes qui ne seront de toute façon pas à jour par rapport au dépôt sur lequel vous l’aurez récupéré. Prenons l’exemple d’un projet PHP utilisant Zend Framework. Nous avons déjà mis en place la structure MVC du projet et nous l’avons importé vers notre dépôt SVN.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnya9C5591qgcouj.png"/&gt;&lt;/p&gt;
&lt;p&gt;Nous souhaitons ajouter le Framework à jour dans le dossier /library à partir du dépôt officiel: &lt;a href="http://framework.zend.com/svn/framework/standard/branches/release-1.9/library/" target="_blank"&gt;&lt;a href="http://framework.zend.com/svn/framework/standard/branches/release-1.9/library/" target="_blank"&gt;http://framework.zend.com/svn/framework/standard/branches/release-1.9/library/&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Commencez donc par vous placer dans le dossier /library en ligne de commande.&lt;/p&gt;
&lt;p&gt;Pour déclarer notre dépôt externe nous allons utiliser la propriété “externals”  à l’aide de la fonction “propset” de SVN.&lt;/p&gt;
&lt;blockquote&gt;svn propset svn:externals “http://framework.zend.com/svn/framework/standard/branches/release-1.9/library/Zend Zend” .&lt;/blockquote&gt;
&lt;p&gt;Le point passé en dernier argument précise que nous déclarons cette propriété dans le dossier courant, ne l’oubliez surtout pas!&lt;/p&gt;
&lt;p&gt;SVN nous répond alors: property ‘svn:externals’ set on ‘.’ Il ne nous reste plus qu’a faire un “svn up” pour mettre à jour la copie locale et récupérer ainsi une copie à jour du Framework sans que celui si soit stocké sur votre dépôt.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnyakN1Qg1qgcouj.png"/&gt;&lt;/p&gt;
&lt;p&gt;Votre projet sera maintenant à jour à chaque mise à jour et vous voilà affranchis de toute maintenance sur vos sources externes.&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690561463</link><guid>http://blog.lelevier.com/post/3690561463</guid><pubDate>Thu, 05 Aug 2010 19:13:00 -0400</pubDate><category>framework</category><category>gestion de projet</category><category>Gestion de Projets</category><category>ligne de commande</category><category>management</category><category>php</category><category>Svn</category><category>Svn</category><category>Web</category><category>zend framework</category></item><item><title>Mettre à jour son instance Redmine</title><description>&lt;p&gt;Aujourd&amp;#8217;hui est un grand jour pour le projet Redmine, la sortie de la première release candidate: Redmine version 1.0&lt;/p&gt;

&lt;p&gt;Depuis 6 semaines la priorité est aux corrections de bugs et les évolutions sont mises de coté.&lt;/p&gt;

&lt;p&gt;Voici donc l&amp;#8217;occasion de parler mise à jour!&lt;/p&gt;

&lt;p&gt;Partons donc du principe que nous avons une instance de Redmine fonctionnelle.&lt;/p&gt;

&lt;p&gt;La manière dont celle si a été installé importe peu puisque nous allons ici repartir sur une version propre fraichement récupérée sur le SVN officiel.&lt;/p&gt;

&lt;p&gt;Commencez donc par vous placer dans le dossier où vous souhaitez faire votre installation et faite un checkout sur le dépôt officiel: &lt;a href="http://redmine.rubyforge.org/svn/branches/1.0-stable/" target="_blank"&gt;http://redmine.rubyforge.org/svn/branches/1.0-stable/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Placez vous ensuite dans le dossier contenant votre nouvelle instance de redmine . Copiez les fichiers de configuration depuis votre ancienne instance (database.yml pour la configuration des bases de données, et email.yml pour les mails sortants) dans le dossier config/. Copiez également le dossier /files de votre instance d&amp;#8217;origine afin de conserver les fichiers joints à vos projets. Copiez vos plugins dans le dossier vendor/plugins/. Et enfin copiez votre thème dans le dossier public/themes/.&lt;/p&gt;

&lt;p&gt;Passons maintenance à l&amp;#8217;execution des script rake qui vont nous permettre de mettre à jour la base de données et la configuration de Redmine.&lt;/p&gt;

&lt;p&gt;Placez vous à nouveau à la racine de votre instance et commencez par recréer l&amp;#8217;espace de session:&lt;/p&gt;

&lt;blockquote&gt;rake generate_session_store&lt;/blockquote&gt;

&lt;p&gt;Effectuez ensuite la configuration des plugins que vous avez copié tout à l&amp;#8217;heure (note: production est le nom de notre instance de production):&lt;/p&gt;

&lt;blockquote&gt;rake db:migrate:upgrade_plugin_migrations RAILS_ENV=production&lt;/blockquote&gt;

&lt;p&gt;Et enfin, migrez la base de données vers cette nouvelle version de Redmine (encore une fois production est le nom de notre instance):&lt;/p&gt;

&lt;blockquote&gt;rake db:migrate_plugins RAILS_ENV=production&lt;/blockquote&gt;

&lt;p&gt;Voici donc votre instance à jour et, si vous avez suivi cet article à la lettre, en version stable.&lt;/p&gt;

&lt;p&gt;Quelques petites choses à vérifiez tout de même:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;Si vous ressentez des lenteurs à l&amp;#8217;exécution ou que vous remarquez des problèmes d&amp;#8217;affichage de l&amp;#8217;interface: nettoyez le cache
&lt;blockquote&gt;rake tmp:cache:clear&lt;/blockquote&gt;
&lt;/li&gt;
    &lt;li&gt;Si vos utilisateurs ne peuvent plus se logguer, ou accéder à certaines parties de Redmine: forcez la suppression des sessions en cours
&lt;blockquote&gt;rake tmp:sessions:clear&lt;/blockquote&gt;
&lt;/li&gt;
    &lt;li&gt;Pensez également à faire un tour dans la partie &amp;#8220;rôles et permissions&amp;#8221; de Redmine pour vérifier les autorisations sur de nouvelles fonctionnalités qui pourraient ne pas être prise en compte dans les rôles que vous aviez créé&lt;/li&gt;
    &lt;li&gt;Et enfin, chose importante, pensez à vérifier les droit posix sur les fichiers de votre instance, sans quoi vous ne pourrez utiliser certaines fonctionnalités (l&amp;#8217;upload de fichier par exemple)&lt;/li&gt;
&lt;/ul&gt;</description><link>http://blog.lelevier.com/post/3690559226</link><guid>http://blog.lelevier.com/post/3690559226</guid><pubDate>Mon, 19 Jul 2010 03:11:46 -0400</pubDate><category>gestion de projet</category><category>Gestion de Projets</category><category>hebergement</category><category>management</category><category>mise à jour</category><category>redmine</category><category>Redmine</category><category>ruby</category><category>ruby on rails</category><category>update</category></item><item><title>Concours Smartphone SNCF</title><description>&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhny6von4Q1qgcouj.jpg"/&gt;&lt;/p&gt;
&lt;p&gt;Nous venons d’être sélectionnés pour le concours Smartphone SNCF sur la plateforme iPhone.&lt;/p&gt;
&lt;p&gt;Nous participons à ce projet dans le but de créer une application mobile axée sur l’ergonomie et la simplicité d’utilisation afin de faciliter la communication entre le contrôleur et les usagers tout en faisant face à des contraintes techniques liées aux conditions d’utilisations et de connectivités.&lt;/p&gt;
&lt;p&gt;Nous participons à ce projet avec le support et sous le nom de notre école, &lt;a target="_blank" href="http://www.ingesup.com"&gt;Ingésup&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Plus d’informations:&lt;/p&gt;
&lt;p&gt;-&lt;a target="_blank" href="http://www.01net.com/statiquesv6/sncf/pres.html"&gt;Les détails du concours&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;-&lt;a target="_blank" href="http://pro.01net.com/editorial/519496/concours-smartphone-sncf-voici-les-candidats/"&gt;Les différentes équipes&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;-&lt;a target="_blank" href="http://www.bcharp.fr"&gt;Le blog de Boris&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;-&lt;a target="_blank" href="http://blog.ingesup.com"&gt;Le blog d’Ingésup&lt;/a&gt;&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690558162</link><guid>http://blog.lelevier.com/post/3690558162</guid><pubDate>Thu, 01 Jul 2010 21:56:00 -0400</pubDate><category>cocoa</category><category>concours</category><category>Concours</category><category>ingesup</category><category>iphone</category><category>smartphone</category><category>sncf</category></item><item><title>Administrer Apple Remote Desktop en ligne de commande</title><description>&lt;p&gt;Apple Remote Desktop (ou encore ARD) et l’outil de prédilection d’un administrateur Mac.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnycrj2Bd1qgcouj.png"/&gt;&lt;/p&gt;
&lt;p&gt;Cet outil permet non seulement d’observer et de prendre la main aussi bien sur des postes clients que sur les xserve de l’entreprise (même durant l’installation), mais aussi de déployer de manière centralisée des packets, des scripts, de lancer des commandes à distance, ou encore de générer des rapports sur l’état des machines. Sur un Mac OS X Server, l’installateur vous propose lui même d’activer ARD à la fin de l’installation.&lt;/p&gt;
&lt;p&gt;Sur un poste client, ARD se basant sur le partage decran, celui ci n’est pas forcement actif lorsque l’on peut en avoir besoin… Voici donc quelques commandes qui vont nous permettre de l’activer grâce à un accès SSH:&lt;/p&gt;
&lt;blockquote&gt;$ sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -restart -agent -privs -all&lt;/blockquote&gt;
&lt;p&gt;Cette ligne activera donc l’accès ARD pour n’importe quel compte autorisé à se loguer sur cette machine (les utilisateurs locaux et réseau).&lt;/p&gt;
&lt;p&gt;Vous pouvez également restreindre cette accès afin de n’autoriser que les utilisateurs possédant des droits d’administration sur la machine en question en lançant plutôt cette commande:&lt;/p&gt;
&lt;blockquote&gt;$ sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -users admin -privs -all -restart -agent -menu&lt;/blockquote&gt;
&lt;p&gt;Toujours via le terminal, vous pouvez également désactiver ARD et son démarrage automatique:&lt;/p&gt;
&lt;blockquote&gt;$ sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -deactivate -stop&lt;/blockquote&gt;
&lt;p&gt;Les utilisateurs déjà habitués à ARD auront certainement déjà remarqué qu’il arrive que le service se retrouve indisponible selon la version d’ARD et de Mac OS, vous pouvez très facilement redémarrer ARD, toujours en ligne de commande:&lt;/p&gt;
&lt;blockquote&gt;$ sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -restart -agent&lt;/blockquote&gt;</description><link>http://blog.lelevier.com/post/3690557160</link><guid>http://blog.lelevier.com/post/3690557160</guid><pubDate>Sat, 12 Jun 2010 04:33:00 -0400</pubDate><category>administration</category><category>Apple</category><category>apple remote desktop</category><category>ard</category><category>Mac OS X</category><category>Mac OS X</category><category>reseau</category><category>restart ard</category><category>vnc</category></item><item><title>Coloration syntaxique dans Redmine</title><description>&lt;p&gt;De base, Redmine propose déjà une coloration syntaxique pour la navigation dans les sources du dépôt via un quelconque SCM.&lt;/p&gt;
&lt;p&gt;Malheureusement cette coloration se limite à quelques langages les plus connus, PHP ou C par exemple sont déjà pris en charge.&lt;/p&gt;
&lt;p&gt;Viennent ensuite les langages moins courants comme Objective-C qui, avec lequel le moteur de coloration d’origine va rester noir sur blanc.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnym9f3bs1qgcouj.png"/&gt;&lt;/p&gt;
&lt;p&gt;Il existe donc un plugin qui va nous permettre de résoudre ce problème en intégrant un moteur de coloration syntaxique nommé Ultraviolet déjà utilisé dans de nombreux projets dont l’IDE TextMate.&lt;/p&gt;
&lt;p&gt;Pour l’installer rien de plus simple. Commencez par installer libonig-dev (pour la reconnaissance d’expressions régulières) avec aptitude et utilisez Gem pour installer le moteur de coloration syntaxique:&lt;/p&gt;
&lt;blockquote&gt;# aptitude install libonig-dev  # gem install ultraviolet&lt;/blockquote&gt;
&lt;p&gt;Rendez-vous ensuite sur &lt;a target="_blank" href="http://github.com/epitron/redmine_ultraviolet"&gt;Github&lt;/a&gt; pour récupérer la dernière version et placer le plugin dans le dossier vendor/plugins de votre Redmine.&lt;/p&gt;
&lt;p&gt;Placez vous ensuite dans le dossier contenant votre installation de Redmine et lancez un petit coup de rake sur vos plugins:&lt;/p&gt;
&lt;h1&gt;rake db:migrate_plugins RAILS_ENV=production&lt;/h1&gt;
&lt;p&gt;et enfin relancer votre instance de Redmine ou directement votre serveur Rails (Mongrel, ou Apache si vous utilisez passenger)&lt;/p&gt;
&lt;p&gt;Voilà le résultat sur le même fichier:&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnyn34nUK1qgcouj.png"/&gt;&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690545611</link><guid>http://blog.lelevier.com/post/3690545611</guid><pubDate>Sun, 14 Mar 2010 04:35:00 -0400</pubDate><category>Gestion de Projets</category><category>objective-c</category><category>plugins</category><category>redmine</category><category>Redmine</category></item><item><title>Redmine: Quelques plugins</title><description>&lt;p&gt;Comme dit lors de l&amp;#8217;un de mes derniers articles, Redmine est un outil de gestion de projet puissant, libre et de par son écriture en Ruby, massivement extensible par divers plugins!&lt;/p&gt;

&lt;p&gt;Voici donc ici les quelques plugins que j&amp;#8217;ai pu repérer et tester, liste biensur non exhaustive!&lt;/p&gt;

&lt;p&gt;Tout d&amp;#8217;abord commençons par fédérer un peu la communauté qui contribue à votre projet par des fonctions un peu plus sociales afin que ces derniers soient le plus au courant possible de l&amp;#8217;état du projet.&lt;/p&gt;

&lt;p&gt;Commençons donc par un petit plugin de blog qui permettra à vos utilisateurs de poster des annonces, des informations ou encore des réflexions de manière centrale et interne. Ce plugin reste cependant limité quand a une éventuelle utilisation pour une façade d&amp;#8217;annonce  publique.&lt;/p&gt;

&lt;p style="text-align: center;"&gt;&lt;a href="http://www.redmine.org/attachments/1980/redmine_blogs_main.png" target="_blank"&gt;&lt;img class="aligncenter" title="Blog" src="http://www.redmine.org/attachments/1980/redmine_blogs_main.png" alt="Blog" width="436" height="264"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(&lt;a href="http://www.redmine.org/boards/3/topics/5782" target="_blank"&gt;&lt;a href="http://www.redmine.org/boards/3/topics/5782" target="_blank"&gt;http://www.redmine.org/boards/3/topics/5782&lt;/a&gt;&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Viens ensuite une copie du réseau social le plus en vogue en ce moment, j&amp;#8217;ai nommé Twitter! Grâce au plugin &amp;#8220;status update&amp;#8221; vous pourrez mettre en place un moyen rapide de communiquer entre vos collaborateurs afin qu&amp;#8217;il puissent dire simplement ce qu&amp;#8217;ils sont en train de faire. Ce plugin aurait cependant peut-être besoin d&amp;#8217;une fonction de &amp;#8220;reply&amp;#8221; et/ou &amp;#8220;repost&amp;#8221; pour pouvoir réellement s&amp;#8217;apparenter à Twitter.&lt;/p&gt;

&lt;p style="text-align: center;"&gt;&lt;a href="http://www.redmine.org/attachments/698/Screenshot-eCookbook_-_Redmine_-_Mozilla_Firefox.png" target="_blank"&gt;&lt;img class="aligncenter" title="Status update" src="http://www.redmine.org/attachments/698/Screenshot-eCookbook_-_Redmine_-_Mozilla_Firefox.png" alt="Status update" width="431" height="267"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(&lt;a href="http://www.redmine.org/boards/1/topics/1483" target="_blank"&gt;&lt;a href="http://www.redmine.org/boards/1/topics/1483" target="_blank"&gt;http://www.redmine.org/boards/1/topics/1483&lt;/a&gt;&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Passons maintenant à un plugin plus élémentaire voir quasiment indispensable: la gestion des fameuses &amp;#8220;todo list&amp;#8221;. Grâce à ce plugin vous pourrez centraliser la gestion de ces dernières directement dans un nouvel onglet du projet et ainsi éviter à vos contributeurs de passer par un quelconque service web complémentaire ou encore par l&amp;#8217;éternel post-it. Cette fois rien à redire, les idées sont centralisées sur notre plateforme interne ce qui est en plus un gage de sécurité!  (&lt;a href="http://www.redmine.org/boards/3/topics/4070" target="_blank"&gt;&lt;a href="http://www.redmine.org/boards/3/topics/4070" target="_blank"&gt;http://www.redmine.org/boards/3/topics/4070&lt;/a&gt;&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Et si beaucoup de personnes interviennent sur votre projet? Comment gérer les interrogations des nouveaux venu? Par défaut, beaucoup serait tenté de tout centraliser sur une doc disponible sur le wiki du projet. C&amp;#8217;est une bonne pratique mais mal géré, cela peut vite tourner au bazar le plus complet. L&amp;#8217;idée du plugin &amp;#8220;question&amp;#8221; est de pouvoir gérer vos demandes et votre support en interne (par exemple les demandes formulées par de nouveaux développeurs ou par un utilisateur final). De plus, ce plugin permet d&amp;#8217;effectuer des recherches multi-critères sur les questions qui ont déjà été pausés, pourquoi pas réorienter la documentation en fonction des questions les plus récurantes?&lt;/p&gt;

&lt;p style="text-align: center;"&gt;&lt;a href="http://www.redmine.org/attachments/1535/question_on_issue.png" target="_blank"&gt;&lt;img class="aligncenter" title="Question " src="http://www.redmine.org/attachments/1535/question_on_issue.png" alt="Question" width="461" height="307"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(&lt;a href="http://www.redmine.org/wiki/redmine/PluginQuestion" target="_blank"&gt;&lt;a href="http://www.redmine.org/wiki/redmine/PluginQuestion" target="_blank"&gt;http://www.redmine.org/wiki/redmine/PluginQuestion&lt;/a&gt;&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Besoin de mieux évaluer les coûts de votre projet? Attention, le plugin &amp;#8220;budget&amp;#8221; dépend d&amp;#8217;un projet bien rodé afin d&amp;#8217;être réellement efficace. Vous pourrez ainsi prévoir le coût du projet en fonction du temps passé. Cela implique également l&amp;#8217;utilisation de la &amp;#8220;badgeuse&amp;#8221; intégrée au Redmine par vos développeurs et autres contributeurs afin qu&amp;#8217;il puisse faire état du temps passé sur les différentes taches du projet.&lt;/p&gt;

&lt;p style="text-align: center;"&gt;&lt;a href="http://www.redmine.org/attachments/download/924/budget_plugin-budget_screen.png" target="_blank"&gt;&lt;img class="aligncenter" title="Budget" src="http://www.redmine.org/attachments/download/924/budget_plugin-budget_screen.png" alt="Budget" width="461" height="443"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(&lt;a href="http://www.redmine.org/wiki/redmine/PluginBudget" target="_blank"&gt;&lt;a href="http://www.redmine.org/wiki/redmine/PluginBudget" target="_blank"&gt;http://www.redmine.org/wiki/redmine/PluginBudget&lt;/a&gt;&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Enfin, je terminerai avec un plugin relativement évolué. Avis aux amateurs de gestions de projets Agile, ce plugin vous permettra d&amp;#8217;intégrer les méthodes de gestion &lt;a href="http://fr.wikipedia.org/wiki/Scrum" target="_blank"&gt;Scrum&lt;/a&gt; à votre projet sous la forme d&amp;#8217;un dashboard complet:&lt;/p&gt;

&lt;p style="text-align: center;"&gt;&lt;a href="http://www.redmine.org/attachments/1986/scrumdashboard_1.png" target="_blank"&gt;&lt;img class="aligncenter" title="Scrum Dashboard" src="http://www.redmine.org/attachments/1986/scrumdashboard_1.png" alt="Scrum Dashboard" width="461" height="278"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;(&lt;a href="http://www.redmine.org/boards/3/topics/5808" target="_blank"&gt;&lt;a href="http://www.redmine.org/boards/3/topics/5808" target="_blank"&gt;http://www.redmine.org/boards/3/topics/5808&lt;/a&gt;&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Je ne détaillerai pas ici l&amp;#8217;installation de ces plugins et vous invite pour cela à vous rendre sur la page officiel du wiki de Redmine: &lt;a href="http://www.redmine.org/wiki/redmine/Plugins" target="_blank"&gt;&lt;a href="http://www.redmine.org/wiki/redmine/Plugins" target="_blank"&gt;http://www.redmine.org/wiki/redmine/Plugins&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690544383</link><guid>http://blog.lelevier.com/post/3690544383</guid><pubDate>Mon, 08 Feb 2010 04:10:15 -0500</pubDate><category>budget</category><category>gestion de projet</category><category>Gestion de Projets</category><category>management</category><category>redmine</category><category>Redmine</category><category>scrum</category></item><item><title>Disque de sauvegarde en réseau et compatibilité Mac</title><description>&lt;p&gt;Voilà quelques mois que je cherchais un petit nas réseau qui prendrai en charge l&amp;#8217;AFP et me permettrai de faire mes sauvegardes via le réseau pour ne pas avoir à brancher de disque USB tous les 4 matins.&lt;/p&gt;

&lt;p&gt;J&amp;#8217;avais bien un petit &lt;a href="http://www.linksysbycisco.com/EU/fr/products/NSLU2" target="_blank"&gt;Linksys NSLU2&lt;/a&gt; flashé sous Debian en rab mais cela m&amp;#8217;obligeais à ajouter des disques USB 2.0, donc double d&amp;#8217;alimentation, place, qui plus ai la bête à tendance à siffler, et le tout avec des performances (la machine n&amp;#8217;a qu&amp;#8217;un ARM bridé à 133mhz avec 32mo de mémoire), j&amp;#8217;ai vite laissé tombé l&amp;#8217;idée.&lt;/p&gt;

&lt;p&gt;En surveillant un peux les modèles disponibles je suis alors tombé sur le &lt;a href="http://www.netgear.com/Products/Storage/Stora/MS2110.aspx" target="_blank"&gt;Netgear Stora MS2110&lt;/a&gt;, petit frère du Readynas avec une orientation plus &amp;#8220;grand public&amp;#8221;, le tout pour moins de 200€ disque compris, accès en AFP, certifié TimeMachine, et finalement très décevant&amp;#8230;&lt;/p&gt;

&lt;p&gt;Malgré sa certification TimeMachine, le Netgear offre un utilisation &amp;#8220;multiple&amp;#8221; et permet de stocker de la musique, des photos, des vidéos, des documents&amp;#8230; De ce fait l&amp;#8217;espace de sauvegarde, non actif de base et accessible seulement en SMB, est bridé par un quota de 200go, et cette limite est sans appel&amp;#8230; Impossible donc de l&amp;#8217;utiliser pour sauvegarder toutes mes machines sur 200go! mon macbook à lui seul avec son disque de 250go dépassait déjà lors de la sauvegarde initiale&amp;#8230;&lt;/p&gt;

&lt;p&gt;Me voilà donc avec un disque à 200€ acheté pour un besoin auquel il ne répond pas&amp;#8230; et heureusement, je l&amp;#8217;avais prix chez &lt;a href="http://materiel.net" target="_blank"&gt;materiel.net&lt;/a&gt; qui encore une fois m&amp;#8217;a prouvé son sérieux et sa qualité! Contact direct avec Netgear de leur part, réponse sous 48h, les techniciens de Netgear n&amp;#8217;ont pour l&amp;#8217;instant pas prévu la modification, et pour gagner du temps Materiel.net à choisit de me reprendre le produit en question afin de ne pas bloquer mon problème de sauvegarde. J&amp;#8217;ai donc retourné le Netgear à son envoyeur qui m&amp;#8217;a alors fait un avoir (pas fou!), frais de retour compris. Comme d&amp;#8217;habitude, &lt;a href="http://materiel.net" target="_blank"&gt;Materiel.net&lt;/a&gt;, j&amp;#8217;en suis content et je le recommande!&lt;/p&gt;

&lt;p&gt;Bref revenons a nous moutons, après avoir hésité sur quelques modèles de chez Synology, je me suis dis que cela m&amp;#8217;aurai fait une sauvegarde finalement assez éloignée de ma machine à sauvegarder: macbook -&amp;gt; neufbox (54mbits) -&amp;gt; switch (100mb) -&amp;gt; nas (1gbits) et enfin les accès disques.&lt;/p&gt;

&lt;p&gt;J&amp;#8217;ai donc craquer et encore une fois j&amp;#8217;ai acheté chez Apple. Une petite TimeCapsule viens de rejoindre mon réseau, remplaçant ainsi le switch gigabyte et le wifi fourni par la neufbox, je sais que mon espace de sauvegarde se trouve juste derrière la borne et que le produit est prévu pour, bref aucun problème tout fonctionne!&lt;/p&gt;

&lt;p&gt;Note à mois même, ne plus essayer de bidouiller un système alternatif pour économiser 60€, ça marchera toujours moins bien&amp;#8230;&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690543460</link><guid>http://blog.lelevier.com/post/3690543460</guid><pubDate>Tue, 02 Feb 2010 00:23:34 -0500</pubDate><category>AFP</category><category>Apple</category><category>Backup</category><category>Mac OS X</category><category>Mac OS X</category><category>Nas</category><category>Sauvegardes</category><category>TimeMachine</category></item><item><title>Redmine sous Apache avec Passenger</title><description>&lt;p&gt;&lt;span&gt;Cet article est le premier d’une série d’article sur l’outil de gestion de projet Redmine.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Ce puissant outil disponible sous la forme d’une interface web permet de gérer les projets de développements en intégrant des roadmap, la gestion des bugs, des demandes dévolutions, un tracker de versionning, un wiki, le tout avec une gestion des droits complète.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Dans cet article nous verrons comment installer Redmine sur un serveur Linux (Debian dans notre cas) en utilisant Apache comme serveur d’application grâce au module “Passenger” qui permet à Apache d’interpréter Ruby on Rails.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Comme d’habitude cet article décrit une suite de manipulations liée à des versions précises. A vous d’adapter vos numéro de versions en fonction des évolutions à venir.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Pour Commencer nous allons installer Apache 2 MySQL 5.0 et d’autres paquets qui nous seront nécessaires.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;#aptitude install apache2 mysql-server apache2-prefork-dev libaprutil1-dev libaprutil1-dev libmysqlclient15-dev gcc make subversion&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Pensez également à activer le mod_rewrite d’Apache dès maintenant&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;#a2enmod rewrite&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Nous pouvons maintenant installé les près requis lié plus précisément à notre application à savoir Ruby, l’interpréteur, gems le gestionnaire de paquets et d’autres librairies nécessaire pour l’installation de Redmine. commençons donc par Ruby et les librairies disponibles par aptitude.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;#aptitude install ruby rdoc irb libyaml-ruby ruby1.8-dev libzlib-ruby ri libopenssl-ruby1.8&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Passons ensuite à l’installation de gems&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;#wget &lt;/span&gt;&lt;a href="http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz" target="_blank"&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;a href="http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz" target="_blank"&gt;&lt;a href="http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz" target="_blank"&gt;http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz&lt;/a&gt;&lt;/a&gt; &lt;span&gt;#tar xvf rubygems-1.3.5.tgz&lt;/span&gt; &lt;span&gt;#cd rubygems-1.3.5&lt;/span&gt; &lt;span&gt;#ruby setup.rb&lt;/span&gt; &lt;span&gt;#ln -s /usr/bin/gem1.8 /usr/bin/gem&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Pensez également à mettre à jour les paquets et les dépots de Gems&lt;/span&gt; &lt;span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;#gem update &amp;amp;&amp;amp; gem update —system&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Installons aussi le support de MySQL pour Ruby&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;#gem install mysql&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Et nous pouvons maintenant passer aux choses sérieuses et installer Rails en version 2.3.5 comme le recommande Redmine.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;#&lt;/span&gt;gem install rails -v=2.3.5&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Nous aurons également besoin du support imagemagick pour la génération des diagrammes de Gantt:&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;#aptitude install imagemagick libmagick9-dev librmagick-ruby1.8&lt;/span&gt; &lt;span&gt;#gem install rmagick&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Passons maintenant à l’installation de passenger et à la compilation du module passenger pour apache2&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;#gem install passenger&lt;/span&gt; &lt;span&gt;#/usr/lib/ruby/gems/1.8/gems/passenger-2.2.9/bin/passenger-install-apache2-module&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Ajoutons le à la configuration d’Apache: Créez un fichier /etc/apache2/mods-available/passenger.load et insérez-y la ligne:&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.9/ext/apache2/mod_passenger.so&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Créez également un fichier /etc/apache2/mods-available/passenger.conf et placez-y les deux lignes suivantes:&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.9&lt;/span&gt; &lt;span&gt;PassengerRuby /usr/bin/ruby1.8&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Enfin Activez le module:&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;#a2enmod passenger&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Maintenant que tous nos pré-requis sont en place, nous pouvons passez à Redmine&lt;/span&gt; &lt;span&gt;Commencez par créer un utilisateur et une base de donnée MySQL:&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;mysql -u root -p&lt;/span&gt; &lt;span&gt;mysql&amp;gt; create database redmine character set utf8;&lt;/span&gt; &lt;span&gt;mysql&amp;gt; create user ‘redmine’@’localhost’ identified by ‘my_password’;&lt;/span&gt; &lt;span&gt;mysql&amp;gt; grant all privileges on redmine.* to ‘redmine’@’localhost’;&lt;/span&gt; &lt;span&gt;mysql&amp;gt; exit&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Plaçons nous ensuite dans le dossier où nous voulons installer Redmine (/var dans mon cas) et récupérons la dernière version de Redmine depuis le dépôt officiel:&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;#cd /var&lt;/span&gt; &lt;br/&gt;&lt;span&gt;#svn co &lt;/span&gt;&lt;a href="http://redmine.rubyforge.org/svn/branches/0.9-stable/" target="_blank"&gt;&lt;a href="http://redmine.rubyforge.org/svn/branches/0.9-stable/" target="_blank"&gt;http://redmine.rubyforge.org/svn/branches/0.9-stable/&lt;/a&gt;&lt;/a&gt;&lt;span&gt; redmine&lt;/span&gt; &lt;br/&gt;&lt;span&gt;#cd redmine&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Il est temps maintenant de mettre en place la configuration de la base de donnée créez un fichier config/database.yml et entrez-y la configuration comme ceci en adaptant à ce que vous avez entrez lors de la création de l’utilisateur et de la base dans mysql:&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;production:&lt;/span&gt; &lt;br/&gt;&lt;span&gt;adapter: mysql&lt;/span&gt;&lt;br/&gt;&lt;span&gt;database: redmine&lt;/span&gt;&lt;br/&gt;&lt;span&gt;host: localhost&lt;/span&gt;&lt;br/&gt;&lt;span&gt;username: redmine&lt;/span&gt;&lt;br/&gt;&lt;span&gt;password: my_password&lt;/span&gt;&lt;br/&gt;&lt;span&gt;encoding: utf8&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt; &lt;span&gt;Profitons en également pour configurer le serveur d’envois de mails en créant le fichier config/email.yml (ici ma configuration tape directement en local par la commande  ”sendmail” sans passer par un socket):&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;production:&lt;/span&gt;&lt;br/&gt;&lt;span&gt;delivery_method: :sendmail&lt;/span&gt; &lt;br/&gt;&lt;span&gt;smtp_settings:&lt;/span&gt;&lt;br/&gt;&lt;span&gt;address: localhost&lt;/span&gt;&lt;br/&gt;&lt;span&gt;port: 25&lt;/span&gt;&lt;br/&gt;&lt;span&gt;domain: lelevier.fr&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;Nous pouvons enfin passer à l’installation de Redmine en générant l’espace de stockage des sessions, en créant la base de donnée, et enfin en installant la configuration par défaut (utilisateurs, rôles, trackers… recommandé par Redmine):&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;span&gt;#rake generate_session_store&lt;/span&gt; &lt;br/&gt;#RAILS_ENV=production rake db:migrate  &lt;br/&gt;#RAILS_ENV=production rake redmine:load_default_data&lt;/blockquote&gt;
&lt;p&gt;Il ne vous reste plus qu’a configurer votre VirtualHost Apache comme n’importe quel virtual host en faisant pointer votre DocumentRoot vers le dossier “public” de Redmine.&lt;/p&gt;
&lt;blockquote&gt;&amp;lt;VirtualHost *:80&amp;gt;   &lt;br/&gt; ServerAdmin thibaut@my-test.com    &lt;br/&gt; ServerName dev.my-test.com   &lt;br/&gt; DocumentRoot /var/www/redmine/public/   &lt;br/&gt; &amp;lt;/VirtualHost&amp;gt;&lt;/blockquote&gt;</description><link>http://blog.lelevier.com/post/3690542543</link><guid>http://blog.lelevier.com/post/3690542543</guid><pubDate>Sun, 24 Jan 2010 05:44:00 -0500</pubDate><category>Debian</category><category>gestion de projet</category><category>Gestion de Projets</category><category>Linux</category><category>management</category><category>rails</category><category>redmine</category><category>Redmine</category><category>ruby</category><category>ruby on rails</category><category>subversion</category><category>Svn</category><category>trac</category><category>tracker</category><category>versionning</category></item><item><title>Birdy Nam Nam, quelques vidéos sympa :)</title><description>&lt;p&gt;&lt;div style="text-align: center;"&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="src" value="http://www.youtube.com/v/dGi8nC_Aq0Y&amp;amp;hl=fr&amp;amp;fs=1&amp;amp;rel=0"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/dGi8nC_Aq0Y&amp;amp;hl=fr&amp;amp;fs=1&amp;amp;rel=0" allowscriptaccess="always" allowfullscreen="true"&gt;&lt;/embed&gt;&lt;/object&gt;

&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="src" value="http://www.youtube.com/v/RSkQikgtxEI&amp;amp;hl=fr&amp;amp;fs=1&amp;amp;rel=0"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/RSkQikgtxEI&amp;amp;hl=fr&amp;amp;fs=1&amp;amp;rel=0" allowscriptaccess="always" allowfullscreen="true"&gt;&lt;/embed&gt;&lt;/object&gt;

&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="src" value="http://www.youtube.com/v/LJIorXIjfq8&amp;amp;hl=fr&amp;amp;fs=1&amp;amp;rel=0"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/LJIorXIjfq8&amp;amp;hl=fr&amp;amp;fs=1&amp;amp;rel=0" allowscriptaccess="always" allowfullscreen="true"&gt;&lt;/embed&gt;&lt;/object&gt;

&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="src" value="http://www.youtube.com/v/B71DslhPAn4&amp;amp;hl=fr&amp;amp;fs=1&amp;amp;rel=0"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/B71DslhPAn4&amp;amp;hl=fr&amp;amp;fs=1&amp;amp;rel=0" allowscriptaccess="always" allowfullscreen="true"&gt;&lt;/embed&gt;&lt;/object&gt;

&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="src" value="http://www.youtube.com/v/sev0Z_W1I-I&amp;amp;hl=fr&amp;amp;fs=1&amp;amp;rel=0"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/sev0Z_W1I-I&amp;amp;hl=fr&amp;amp;fs=1&amp;amp;rel=0" allowscriptaccess="always" allowfullscreen="true"&gt;&lt;/embed&gt;&lt;/object&gt;

&lt;/div&gt;&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690530631</link><guid>http://blog.lelevier.com/post/3690530631</guid><pubDate>Sat, 07 Nov 2009 21:06:14 -0500</pubDate><category>Birdy Nam Nam</category><category>dj</category><category>electro</category><category>french touch</category><category>musique</category><category>Musique</category></item><item><title>If there's something strange in your neighborhood</title><description>&lt;p&gt;Who you gonna call? &lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lhnysgwAdE1qgcouj.jpg"/&gt;&lt;/p&gt;</description><link>http://blog.lelevier.com/post/3690529429</link><guid>http://blog.lelevier.com/post/3690529429</guid><pubDate>Thu, 15 Oct 2009 14:48:00 -0400</pubDate><category>Divers</category></item></channel></rss>

