<?xml version="1.0" encoding="UTF-8"?>
<feed xml:lang="en-US" xmlns="http://www.w3.org/2005/Atom">
  <title>iMeuble - Home</title>
  <id>tag:imeuble.info,2008:mephisto/</id>
  <generator uri="http://mephistoblog.com" version="0.8.0">Mephisto Drax</generator>
  <link href="http://imeuble.info/feed/atom.xml" rel="self" type="application/atom+xml"/>
  <link href="http://imeuble.info/" rel="alternate" type="text/html"/>
  <updated>2008-09-13T00:00:35Z</updated>
  <entry xml:base="http://imeuble.info/">
    <author>
      <name>Meuble</name>
    </author>
    <id>tag:imeuble.info,2008-09-12:50</id>
    <published>2008-09-12T23:53:00Z</published>
    <updated>2008-09-13T00:00:35Z</updated>
    <category term="Partage"/>
    <category term="fac"/>
    <category term="rails"/>
    <category term="sociabliz"/>
    <link href="http://imeuble.info/2008/9/12/ping" rel="alternate" type="text/html"/>
    <title>Ping (uninteresting content inside)</title>
<content type="html">
            &lt;p&gt;Hey ! Ca fait 2 mois que je n'ai pas écrit ici !&lt;/p&gt;

&lt;p&gt;Pourtant des choses se sont passées...&lt;/p&gt;

&lt;h3&gt;Capri, c'est fini !&lt;/h3&gt;

&lt;p&gt;Heu, pardon. INSIA c'est fini. &lt;/p&gt;

&lt;p&gt;J'ai fini mon stage le 28 Août dernier, ceci clôturant définitivement mon parcours d'élève ingénieur de l'&lt;a href=&quot;http://www.insia.org&quot;&gt;INSIA&lt;/a&gt;. Il était temps, après 5 ans d'apprentissage dans cette école.&lt;/p&gt;

&lt;p&gt;Alors ayé, je suis ingénieur en informatique. Je peux me la péter grave et exiger des salaires mirobolants. Je ne sais pas ce que ça va m'apporter d'autre en fait, mais c'est déjà pas mal.&lt;/p&gt;

&lt;h3&gt;Capri, c'est fini ! (#2)&lt;/h3&gt;

&lt;p&gt;Heu, encore pardon. Dimelo c'est fini.&lt;/p&gt;

&lt;p&gt;Bah oui, j'ai fini mon stage et j'ai souhaité ne pas rester chez eux pour mon premier &quot;vrai travail&quot;, d'autres projets m'attendant au tournant.&lt;br /&gt;
N'empêche que ce fut un excellent stage, le meilleur que j'ai pu avoir sans doute. L'équipe de Dimelo a toute ma reconnaissance pour les bons moments passés et les enseignements que j'ai pu recevoir pendant ces 10 mois. &lt;/p&gt;

&lt;p&gt;J'espère qu'on se recroisera bientôt, hein...&lt;/p&gt;

&lt;h3&gt;Tenter l'aventure&lt;/h3&gt;

&lt;p&gt;Ca devrait faire l'objet d'un billet à part entière mais bon...
On n'est jamais trop jeune pour se lancer et essayer quelque chose de nouveau et d'ambitieux. C'est ce qu'on s'est dit avec Christophe Cholot et &lt;a href=&quot;http://jardinage20.blogspot.com/&quot;&gt;Patrice Bonfy&lt;/a&gt;. Alors autour d'une idée commune et la même envie d'entreprendre, nous avons monté &lt;a href=&quot;http://www.sociabliz.com&quot; title=&quot;Sociabliz, the social marketing web agency !&quot;&gt;Sociabliz&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Sociabliz est une Agence Web de &lt;strong&gt;social marketing&lt;/strong&gt;. Nous essayons d'intégrer les marques et les entreprises dans le graph social des internautes. En gros et pour faire vite, nous faisons des applications Facebook.&lt;/p&gt;

&lt;p&gt;Nous avons pour l'instant nos bureaux à Cergy, au sein de l'incubateur de l'ESSEC. Et pour tout dire, l'affaire fonctionne plutôt bien. Nous avons déjà 3 projets en cours, et quelques autres dans les tuyaux. Pour un début, ce n'est vraiment pas mal et nous avons presque la tête sous l'eau... Mais pas d'inquiétude, nous gérons cela en professionnels !&lt;/p&gt;

&lt;p&gt;Mon rôle dans l'histoire, c'est de faire le geek. Ca tombe bien, j'aime bien faire ça et il paraît que je le fais bien. Alors je gère l'hébergement, je fais de l'admin sys, je fais le conseil technique lorsque des questions pointues arrivent, je fais de la veille sur les dernières technos des réseaux sociaux et je code. En rails bien sûr ;-)&lt;/p&gt;

&lt;p&gt;Pour plus d'infos, &lt;a href=&quot;http://www.sociabliz.com&quot; title=&quot;Sociabliz, the social marketing web agency!&quot;&gt;visitez le site de sociabliz&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;Étudier, encore ?!&lt;/h3&gt;

&lt;p&gt;Je me suis inscrit à la fac pour faire un master. Comme à Paris VI (Université Pierre et Marie Curie), ils ne prennent personne en deuxième année qui n'a pas fait la première année, me voilà en M1, parti pour 2 ans.&lt;/p&gt;

&lt;p&gt;Pour ce qui est de l'intitulé, c'est &quot;Intelligence Artificielle et Décision&quot;.&lt;/p&gt;

&lt;p&gt;J'ai pu arranger mon emploi du temps pour avoir 2 après-midi et le vendredi complet de libre pour les consacrer à Sociabliz. Je sais ce que tout le monde pense : je me disperse et ce n'est pas possible de faire plusieurs choses à la fois sérieusement. J'en suis conscient et si surcharge de travail il y a d'un côté ou de l'autre, c'est le master qui passe à la trappe. Je veux juste essayer.&lt;/p&gt;

&lt;h3&gt;Pas le temps pour autre chose ?&lt;/h3&gt;

&lt;p&gt;Bah nan. Enfin presque. Je suis allé faire de l'escalade en Allemagne pour le dernier week-end d'août. J'ai pu expérimenter mes premières grandes voies et c'est assez impressionnant. Ça fait peur, mais qu'est ce que c'est beau une fois en haut !&lt;br /&gt;
Je remercie Josselin, Emeline et Cécile pour tout ça !&lt;/p&gt;

&lt;p&gt;Et ce blog a subi un problème avec mod_rails ces dernier temps (depuis le 28 Août en fait). Je n'ai pas eu beaucoup de temps pour le réparer depuis et comme le cache statique fonctionnait bien, personne n'a rien remarqué (à par Manu, le coquin...).&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://imeuble.info/">
    <author>
      <name>Meuble</name>
    </author>
    <id>tag:imeuble.info,2008-07-04:43</id>
    <published>2008-07-04T08:18:00Z</published>
    <updated>2008-07-04T08:21:08Z</updated>
    <category term="Delirious"/>
    <category term="geek"/>
    <category term="twitter"/>
    <link href="http://imeuble.info/2008/7/4/save-twitter-save-a-while" rel="alternate" type="text/html"/>
    <title>Save twitter, save a while</title>
<content type="html">
            &lt;p&gt;Notre twitter est en panne régulièrement. Qui n'a jamais vu la baleine aux oiseaux ?&lt;/p&gt;

&lt;p&gt;Le twitter est une chose fragile, souvent malade. Je me demande toujours pourquoi il ne s'est pas encore fait manger par un autre, du même genre. Il y en a pourtant à foison : &lt;a href=&quot;http://identi.ca/&quot;&gt;Identi.ca&lt;/a&gt;, &lt;a href=&quot;http://www.gatsb.com/&quot;&gt;Gatsb&lt;/a&gt;, &lt;a href=&quot;http://pownce.com/&quot;&gt;Pownce&lt;/a&gt;, &lt;a href=&quot;http://www.jaiku.com/&quot;&gt;Jaiku&lt;/a&gt;, &lt;a href=&quot;http://www.jaiku.com/&quot;&gt;shopalize&lt;/a&gt;... &lt;a href=&quot;http://bleebot.com/blog/2007/07/08/twitter-likes-a-chacun-son-twitter/&quot;&gt;Liste non exhaustive par là&lt;/a&gt;.&lt;br /&gt;
Il doit y avoir une certaine inertie chez les social-geeks...&lt;/p&gt;

&lt;p&gt;Aussi, pensez à cela : nous serons bientôt 8 milliards de geek sur la planète. Imaginez un peu comment twitter va réagir à cela ? Il sera encore plus malade !&lt;/p&gt;

&lt;p&gt;Donc sauvez twitter, twittez avec intelligence et raison. &lt;/p&gt;

&lt;p&gt;A ce propos, je vous rappelle que &lt;a href=&quot;http://twitterisnotachat.com&quot;&gt;Twitter is not a chat&lt;/a&gt;&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://imeuble.info/">
    <author>
      <name>Meuble</name>
    </author>
    <id>tag:imeuble.info,2008-05-22:30</id>
    <published>2008-05-22T08:10:00Z</published>
    <updated>2008-05-22T08:32:37Z</updated>
    <category term="geek"/>
    <category term="facebook"/>
    <category term="pr&#233;sentation"/>
    <category term="railscamp"/>
    <link href="http://imeuble.info/2008/5/22/railscamp-paris-2008" rel="alternate" type="text/html"/>
    <title>RailsCamp Paris 2008</title>
<content type="html">
            &lt;p&gt;Bon je sais, je suis en retard.&lt;/p&gt;

&lt;p&gt;Je voulais juste revenir sur l'événement de samedi dernier, à savoir le RailsCamp qui a eu lieu à la Cantine à Paris. La journée était organisée par l'association RubyFrance, et surtout par Jean-François Tran. Il y avait plein de gens de partout, des bonnes présentations et de discussions intéressantes.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://imeuble.info/assets/2008/5/21/2501643580_61f9b4b147_o.jpg&quot;&gt;&lt;img class=&quot;il&quot; src=&quot;http://imeuble.info/assets/2008/5/21/stéphane-akkaoui-maxime-guilbot-discussion.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;J'ai notamment été heureux de parler avec Maxime Guilbot à propos de Merb, juste après son introduction sur le sujet.&lt;/p&gt;

&lt;p&gt;J'ai été fortement frappé par explication de Samuel Lebeau à propos d'&lt;em&gt;event delegation&lt;/em&gt; en javascript. Il nous a aussi parlé du fait qu'on était en train de retomber dans la soupe contenue sémantique/présentation dans le HTML, en mélangeant cette fois-ci le contenu sémantique avec le comportement. Il préconise donc de séparer la partie comportement des parties sémantique et présentation en mettant le javascript dans des fichiers à part et avec des syntaxes à la CSS.&lt;/p&gt;

&lt;p&gt;Aussi, j'ai apprécié les discussions autour des implémentations ruby de réseau social. Pour démarrer un projet autour de relations entre utilisateurs, il existe de multiples projets plus ou moins libre et plus ou moins exploitable pour réinventer la roue de liens d'amitié, des mini-feed, des gestions et partage d'information... &lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://imeuble.info/assets/2008/5/21/2501640874_586c23e9f1_o.jpg&quot;&gt;&lt;img class=&quot;ir&quot; src=&quot;http://imeuble.info/assets/2008/5/21/stephane-akkaoui-présentation.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Et puis je me suis moi aussi jeté à l'eau. J'y ai fait ma première vraie présentation devant plein de gens. C'est assez impressionnant et c'est pas mal plaisant. Sans doute que j'en referais d'autre si je trouve des sujets intéressants à partager. Le sujet de la présentation était improvisé sur le vif autour des &lt;a href=&quot;http://imeuble.info/assets/2008/5/21/facebooker-RailsCamp2008.pdf&quot; title=&quot;Slide des la présentation&quot;&gt;applications Facebook en Ruby On Rails&lt;/a&gt;. J'avais testé rapidement les bibliothèques rFacebook et Facebooker. Je suis aussi sur un projet d'une application avec &lt;a href=&quot;http://jardinage20.blogspot.com/&quot; title=&quot;Jardinage 2.0&quot;&gt;Patrice Bonfy&lt;/a&gt; et Christophe Cholot, ce qui me permet d'avoir un minimum d'expérience à partager.   &lt;/p&gt;

&lt;p&gt;Donner une présentation était un exercice que je voulais faire pour voir si j'étais capable d'affronter un auditoire et de soutenir un sujet que je ne connaissais pas à fond avec sérieux. C'était aussi une bonne chose pour faire me connaître et ouvrir de piste pour le futur. C'est chose faite, et avec succès.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Il y a &lt;a href=&quot;http://www.flickr.com/photos/tags/railscampparis/&quot;&gt;tout plein de photos sur flick&lt;/a&gt;, prises par Sunny, Mauriz et d'autres... Merci à eux.&lt;/em&gt;&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://imeuble.info/">
    <author>
      <name>Meuble</name>
    </author>
    <id>tag:imeuble.info,2008-04-20:24</id>
    <published>2008-04-20T22:34:00Z</published>
    <updated>2008-04-20T22:39:04Z</updated>
    <category term="geek"/>
    <category term="ruby"/>
    <link href="http://imeuble.info/2008/4/20/ils-m-ont-copi-s" rel="alternate" type="text/html"/>
    <title>Ils m'ont copi&#233;s ?</title>
<content type="html">
            &lt;p&gt;Quand on regarde le &lt;a href=&quot;http://svn.ruby-lang.org/repos/ruby/tags/v1_8_7_preview2/ChangeLog&quot; title=&quot;changelog de ruby 1.8.7_preview2&quot;&gt;changelog de ruby 1.8.7_preview2&lt;/a&gt;, on peu lire ceci : &lt;/p&gt;

&lt;pre&gt;&lt;code&gt;Mon Oct 15 21:57:07 2007  Akinori MUSHA  &amp;lt;knu@iDaemons.org&amp;gt;

* NEWS: Mention ipaddr enhancements.

* lib/ipaddr.rb (in_addr, in6_addr, addr_mask): Make some minor
  code optimization.

* lib/ipaddr.rb (&amp;lt;=&amp;gt;): Implement IPAddr#&amp;lt;=&amp;gt; and make IPAddr
  comparable.

* lib/ipaddr.rb (succ): Implement IPAddr#succ.  You can now create
  a range between two IPAddr's, which (Range) object is
  enumerable.

* lib/ipaddr.rb (to_range): A new method to create a Range object
  for the (network) address.

* lib/ipaddr.rb (coerce_other): Support type coercion and make &amp;amp;,
  |, == and include? accept a string or an integer instead of an
  IPAddr object as the argument.

* lib/ipaddr.rb (initialize): Give better error messages.

* lib/ipaddr.rb: Improve documentation.
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Ce que je voulais vous montrer là dedans, c'est l'ajout des méthodes &amp;lt;=&gt;, succ et to_range à la classe ruby IPAddr. Cela permet de rendre IPAddr comparable et énumérable. Cela permet aussi d'avoir un objet Range entre deux objets IPAddr. C'est tout neuf et ça vient de sortir. Ces méthodes n'étaient pas là avant.&lt;/p&gt;

&lt;p&gt;Mon problème (enfin c'est pas un problème, ou alors ça ne regarde que moi), c'est que dans mon exercice fétiche de démo de ruby, &lt;a href=&quot;http://imeuble.info/assets/2008/4/20/ip_detector.rb&quot; title=&quot;ip_detector.rb, le script qui detecte les ips du reseau&quot;&gt;ip_detector.rb&lt;/a&gt;, je faisais implémenter aux stagiaires ces méthodes. C'était pratique parce que ça permettait de démontrer par l'exemple des conceptes présent dans ruby : &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;l'extension de classe : on ajoute simplement des méthodes à une classe ruby quand on en a besoin et sans (trop) se poser de questions&lt;/li&gt;
&lt;li&gt;le duke typing : juste en implémentant &amp;lt;=&gt; et succ. Un objet est énumérable s'il possède les méthodes &amp;lt;=&gt; et succ. On applique cela à IPAddr, alors IPAdrr est énumérable.&lt;/li&gt;
&lt;li&gt;l'objet Range : grace la méthode to_range, on peut créer des ensembles d'IP. Utiliser les ensembles (fermés ou ouverts) est une notion qu'il faut voir en pratique pour bien assimiler.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Maintenant que cela est de base dans ruby, il va falloir que je trouve un autre exercice... :'(&lt;/p&gt;

&lt;p&gt;Bon et puis il faut dire que Akinori MUSHA à bien implémenté ces méthodes puisqu'il prend bien en compte les familles d'adresses et qu'il retourne des clones des adresses en paramètre dans la méthode to_range. Ce que je ne faisais pas.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://imeuble.info/">
    <author>
      <name>Meuble</name>
    </author>
    <id>tag:imeuble.info,2008-04-15:21</id>
    <published>2008-04-15T00:11:00Z</published>
    <updated>2008-04-15T00:23:33Z</updated>
    <category term="Partage"/>
    <category term="film"/>
    <category term="liens"/>
    <link href="http://imeuble.info/2008/4/15/l-homme-qui-plantait-des-arbres" rel="alternate" type="text/html"/>
    <title>L'homme qui plantait des arbres</title>
<content type="html">
            &lt;p&gt;En suivant un marque page trouvé sur le &lt;a href=&quot;http://del.icio.us/negatif&quot; title=&quot;Les marques page de Sunny Ripert&quot;&gt;del.icio.us&lt;/a&gt; de &lt;a href=&quot;http://sunfox.org/&quot; title=&quot;Sunfox&quot;&gt;Sunny&lt;/a&gt; (un grand merci à lui), je viens de regarder un très joli film.&lt;/p&gt;

&lt;p&gt;&quot;L'homme qui plantait des arbres&quot; est un film d'animation illustrant une histoire de Jean Giono raconté par Philippe Noiret. Il date de 1987 et a été réalisé par des canadiens. Il dure environ 30 minutes, mais je vous assure que le temps passe très vite tant cette vidéo est agréable à regarder. &lt;/p&gt;

&lt;p&gt;Le film est disponible gratuitement (domaine public il paraît) sur &lt;a href=&quot;http://dotsub.com/films/lhommequi/&quot; title=&quot;L'homme qui plantait des arbres&quot;&gt;dotSub.com&lt;/a&gt;, et avec un large choix de sous titre, le français étant la version originale.&lt;/p&gt;

&amp;lt;iframe src=&quot;http://dotsub.com/api/player.php?filmid=2139&amp;amp;filminstance=2141&amp;amp;language=none&quot; height=&quot;392&quot; width=&quot;480&quot;&gt;&amp;lt;/iframe&gt;

&lt;p&gt;Je vous conseille de le regarder et de le partager. Encore merci, Sunny !&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://imeuble.info/">
    <author>
      <name>Meuble</name>
    </author>
    <id>tag:imeuble.info,2008-04-10:20</id>
    <published>2008-04-10T23:20:00Z</published>
    <updated>2008-04-15T15:23:56Z</updated>
    <category term="geek"/>
    <category term="armadeus"/>
    <category term="linux"/>
    <category term="sd card"/>
    <link href="http://imeuble.info/2008/4/10/micro-sd-et-linux-embarqu" rel="alternate" type="text/html"/>
    <title>Micro SD et Linux embarqu&#233;</title>
<content type="html">
            &lt;p&gt;A l'INSIA, les élèves de troisième année de la section TRSE participent au concours &lt;a href=&quot;http://www.eurobot.org/&quot;&gt;eurobot&lt;/a&gt;. Vous pourrez trouver plus d'information sur le site du &lt;a href=&quot;http://www.eurobot-insia-2008.com&quot;&gt;Projet ARES&lt;/a&gt;, page détaillant le parcours du projet au sein de l'INSIA.&lt;/p&gt;

&lt;p&gt;Pour construire leur robot, l'équipe ARES a décidé d'utiliser une carte &lt;a href=&quot;http://www.armadeus.com&quot;&gt;Armadeus&lt;/a&gt; APF9328. C'est une carte équipée d'un processeur ARM9 à 200MHz, de SDRAM, de FLASH, d'un port Ethernet 10/100Mbits et d'un FPGA. La carte est livrée avec &lt;a href=&quot;http://sourceforge.net/projects/u-boot&quot;&gt;U-Boot&lt;/a&gt; et Linux 2.6.1x préprogrammés.&lt;/p&gt;

&lt;p&gt;Seulement, pour suivre le dévellopement de leur application embarquée, l'équipe souhaiterais pouvoir journaliser l'activité du programme. Le fichier résultant étant de très grosse taille, il faut pouvoir le stocker ailleurs que sur la carte Armadeus.&lt;/p&gt;

&lt;p&gt;Deux solutions existent :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://fr.wikipedia.org/wiki/Syslog&quot;&gt;Syslog&lt;/a&gt;, journaliser à travers le réseau&lt;/li&gt;
&lt;li&gt;utiliser une carte Micro SD et y stocker les fichiers de journalisation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Parce que le robot n'est pas toujours connecté à un réseau, la deuxième solution est choisie.&lt;/p&gt;

&lt;p&gt;Et c'est là que j'intervient. Suite à quelques problèmes, &lt;a href=&quot;http://dawisplace.com/&quot;&gt;Dawi&lt;/a&gt; m'a demandé d'ajouter le support de la micro SD dans le noyau linux présent sur la carte Armadeus et de développer la classe de journalisation.&lt;/p&gt;

&lt;p&gt;J'ai donc lu quelques documentations sur le sujet (&lt;a href=&quot;http://www.armadeus.com/wiki/index.php?title=MultiMediaCard&quot;&gt;Carte Multimédia&lt;/a&gt;, &lt;a href=&quot;http://www.armadeus.com/wiki/index.php?title=Linux_Debug&quot;&gt;Lunix sur l'APF&lt;/a&gt;, &lt;a href=&quot;http://www.armadeus.com/wiki/index.php?title=MMC/SD&quot;&gt;les MMC&lt;/a&gt;, ...), j'ai téléchargé les sources des applications Armadeus (avec le noyau linux : &lt;a href=&quot;http://sourceforge.net/projects/armadeus&quot;&gt;projet sourceforge&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Et sur la page concernant &lt;a href=&quot;http://www.armadeus.com/wiki/index.php?title=MultiMediaCard&quot;&gt;l'installation du module MMC&lt;/a&gt;, je lis : &lt;/p&gt;

&lt;pre&gt;&lt;code&gt;Installation (obsolete now because driver is included in default Armadeus kernel)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Oki, sauf que là non. Je ne sais pas ce qui a été fait avant moi, mais le noyau n'accepte pas la carte SD, et aucun module mmc n'est présent. Je vais donc voir à la main.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;# mount -t vfat -o sync /dev/mmcblk0p1 /mnt/mmc 
mount: Mounting /dev/mmcblk0p1 on /mnt/mmc failed: No such device
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;A oui. Etrange. Je vais charger les modules dans le noyau moi même, alors... Après un coup d'aptitude pour télécharger tout les paquets requis pour la compilation, j'ai donc fait un &lt;code&gt;make menuconfig &amp;amp;&amp;amp; make&lt;/code&gt;. &lt;/p&gt;

&lt;p&gt;Pour ajouter la gestion des carte multimedia, je lance ensuite un &lt;code&gt;make linux-menuconfig &amp;amp;&amp;amp; make linux&lt;/code&gt;, en ajoutant le support en temps que module des driver mmc. La compilation se passe bien, et j'optient correctement mes trois modules : mmc_core.ko, imxmmc.ko et mmc_block.ko. Je les télécharge sur la carte APF, et j'essaye de les charger dans le noyau à coup de &lt;code&gt;modprobe&lt;/code&gt;. Et il me dit qu'il ne trouve pas les modules. Curieux, ils sont pourtant bien dans &lt;code&gt;/lib/module/2.6.23/&lt;/code&gt; (version du noyau garantie par un &lt;code&gt;uname -r&lt;/code&gt;). J'arrive bien à charger et décharger d'autres module présents au même endroit...&lt;/p&gt;

&lt;p&gt;Ok, si ça ne fonctionne pas, j'essaye la méthode fichier de configuration. Je change le &lt;code&gt;/etc/modprobe.conf&lt;/code&gt;, et recharge tout les modules. Encore une fois rien n'y fait. Je rebémare la carte et j'observe les messages système via un &lt;code&gt;dmesg&lt;/code&gt;. Et là miracle : &lt;code&gt;imx-mmc imx-mmc.0: card inserted&lt;/code&gt;. Après quelques essai en enlevant et remettant la carte SD, je vois que le système prend en compte et detecte qu'il y a des choses qui se passent. Seulement :&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;# mount -t vfat -o sync /dev/mmcblk0p1 /mnt/mmc 
mount: Mounting /dev/mmcblk0p1 on /mnt/mmc failed: No such device
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Raté. Ca ne fonctionne toujours pas. Je commence à soupçonner la carte de ne pas être compatible, puisque &lt;a href=&quot;http://lkml.org/lkml/2007/7/3/63&quot;&gt;ce monsieur&lt;/a&gt; à le même problème et on lui a conseillé de changer de carte...&lt;/p&gt;

&lt;p&gt;Je verais ça demain, je n'ai pas de carte SD sous la main.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://imeuble.info/">
    <author>
      <name>Meuble</name>
    </author>
    <id>tag:imeuble.info,2008-03-18:19</id>
    <published>2008-03-18T22:51:00Z</published>
    <updated>2008-03-18T22:55:40Z</updated>
    <category term="geek"/>
    <category term="max_allowed_packet"/>
    <category term="mysql"/>
    <link href="http://imeuble.info/2008/3/18/max_allowed_packet-dans-ta-face" rel="alternate" type="text/html"/>
    <title>max_allowed_packet dans ta face</title>
<content type="html">
            &lt;p&gt;Voilà : quand on a un gros dump d'une base de donnée, on est embêter. &lt;/p&gt;

&lt;p&gt;Déjà, c'est lourd à trimballer partout : faut faire du scp entre le serveur mysql et la gateway, puis de la gateway à chez toi; et puis 200Mo c'est pas rien.&lt;br /&gt;
Ensuite quand il faut modifier un truc dedans, faut trouver un editeur de texte qui gère bien les fichier de 200Mo. Et autant vous dire que ni vim ni TextMate ne sont à la hauteur.&lt;/p&gt;

&lt;p&gt;Et ensuite, quand tu veux l'importer sur ta machine pour y faire des teste, en plus de prendre des heures, ça te lève une exception du genre : &lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ mysql -u root test_database &amp;lt; dump.sql
ERROR 1153 (08S01) at line 21786: Got a packet bigger than 'max_allowed_packet' bytes
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Et là, la galère commence. &lt;/p&gt;

&lt;p&gt;On regarde d'abord si on ne peut pas passer un paramètre au client mysql. Si ! &lt;a href=&quot;http://dev.mysql.com/doc/refman/5.0/en/packet-too-large.html&quot;&gt;la documentation de mysql&lt;/a&gt; propose un truc du genre : &lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ mysql --max_allowed_packet=300M -u root test_database &amp;lt; dump.sql
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Mais cela ne fonctionne pas. &lt;/p&gt;

&lt;p&gt;La &lt;a href=&quot;http://dev.mysql.com/doc/refman/5.0/en/packet-too-large.html&quot;&gt;même documentation&lt;/a&gt; dit aussi qu'on peut mettre dans le fichier de configuration de mysqld un paramètre du même genre : &lt;/p&gt;

&lt;pre&gt;&lt;code&gt;[mysqld]
max_allowed_packet=16M
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;On redémarre le serveur, et toujours la même exception.&lt;/p&gt;

&lt;p&gt;Je dis ça, c'est pour un mysqld 5.051a tournant sous Mac OS X (PPC). Je ne sais pas pour les autres configurations, hein...&lt;/p&gt;

&lt;p&gt;Plein de rage, j'ai trouvé une feinte. C'est du sale, du pas scriptable et pas répétable. Dites jamais que je vous ai dit ça, ou je mourrais de honte.&lt;br /&gt;
La feinte consiste à ouvrir un client mysql et à forcer les valeurs de max_allowed_packet et de net_buffer_length&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ mysql -u root
mysql&amp;gt; set global max_allowed_packet=1000000000;
mysql&amp;gt; set global net_buffer_length=1000000;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Puis tout &lt;strong&gt;en gardant le client mysql ouvert&lt;/strong&gt;, dans un autre shell du coup, vous pouvez importez votre gros dump sans inquiétude.&lt;/p&gt;

&lt;p&gt;C'est un peu étrange, le client mysql agit comme un singleton et le variables qui y sont paramètrées le sont pour l'ensemble des clients utilisés au même moment. &lt;/p&gt;

&lt;p&gt;Je n'ai pas cherché plus loin, je n'avais pas le temps. Je le ferais peut être à l'occasion, ou alors une bonne âme parmi vous le fera à ma place. Et peut être que quelqu'un possède une réponse ?&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://imeuble.info/">
    <author>
      <name>Meuble</name>
    </author>
    <id>tag:imeuble.info,2008-03-10:11</id>
    <published>2008-03-10T20:29:00Z</published>
    <updated>2008-04-15T15:25:39Z</updated>
    <category term="Delirious"/>
    <category term="geek"/>
    <link href="http://imeuble.info/2008/3/10/google-owned" rel="alternate" type="text/html"/>
    <title>Google owned</title>
<content type="html">
            &lt;p&gt;Notre &lt;a href=&quot;http://www.lapajarou.fr/poste_mortem/&quot;&gt;RouX&lt;/a&gt; aurait-il hacké Google ? &lt;/p&gt;

&lt;p&gt;Nous n'en savons rien, mais il est clair qu'un de ses copains du club des cheveux de feu (&lt;a href=&quot;http://sunfox.org&quot;&gt;Sunny&lt;/a&gt;, c'est toi ?) est passé par là pour faire les écrans du tutorial de Google :&lt;/p&gt;

&lt;p&gt;&lt;img title=&quot;RouX Rulez Google&quot; src=&quot;http://imeuble.info/assets/2008/3/10/roux_rulez_google.png&quot; alt=&quot;RouX Rulez Google&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Vous pouvez obtenir le même résultat en allant voir &lt;a href=&quot;http://mail.google.com/support/bin/answer.py?answer=77662&quot;&gt;La page d'aide pour Gmail et Thunderbird 2.0&lt;/a&gt;.&lt;br /&gt;
L'écran en question est français, vérifiez la langue. Sinon, l'image est &lt;a href=&quot;http://www.google.com/help/hc/images/gmail_77662b_fr.gif&quot;&gt;là&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Grace à &lt;a href=&quot;http://lrdjv.com&quot; title=&quot;Un nombre ça ne sert à rien&quot;&gt;lrdjv&lt;/a&gt;.&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://imeuble.info/">
    <author>
      <name>Meuble</name>
    </author>
    <id>tag:imeuble.info,2008-03-09:10</id>
    <published>2008-03-09T19:06:00Z</published>
    <updated>2008-03-09T19:08:35Z</updated>
    <category term="geek"/>
    <category term="imeuble.info"/>
    <category term="coloration syntaxique"/>
    <category term="date"/>
    <category term="mephisto"/>
    <category term="rails"/>
    <link href="http://imeuble.info/2008/3/9/du-nouveau" rel="alternate" type="text/html"/>
    <title>Du nouveau</title>
<content type="html">
            &lt;p&gt;Cet après midi, je voulais aller faire de l'escalade. A cause d'élections, de mauvais temps et de manque de copain grimpeur, je me suit résolu (à regret, vous imaginez bien) à faire le geek.&lt;/p&gt;

&lt;p&gt;Alors du coup j'ai fais quelques modifications à ce site.&lt;/p&gt;

&lt;h4&gt;Passage à Mephisto edge&lt;/h4&gt;

&lt;p&gt;Le truc, c'est que je voulais utiliser certains plugins de mephisto. Et les plugins que je voulais ne fonctionnent qu'avec la dernière verison de Mephisto.&lt;/p&gt;

&lt;pre&gt;&lt;code class=&quot;&quot;&gt;svn export http://svn.techno-weenie.net/projects/mephisto/trunk&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Seulement ce n'est pas si facile. Cette dernière version de mephisto fonctionne avec Rails 2.0.2, mais a besoin de rake 0.8.1.&lt;br /&gt;
Et Mon hebergeur (Dreamhost) ne possède que la version 0.7.3. &lt;/p&gt;

&lt;p&gt;J'ai donc un peu triché et installé le gem rake 0.8.1 sur mon compte Dreamhost.&lt;/p&gt;

&lt;p&gt;D'abord, mettre à jours les variables d'environement pour nos futures gems perso (terminer le cat par un ctrl+D) :&lt;/p&gt;

&lt;pre&gt;&lt;code class=&quot;&quot;&gt;$ mkdir ~/.gems
$ cat &amp;gt;&amp;gt; ~/.bash_profile
export GEM_HOME=$HOME/.gems
export GEM_PATH=$GEM_HOME:/usr/lib/ruby/gems/1.8&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Ensuite mettre à jour les variable de gem pour qu'il aille chercher dans nos gems perso (terminer le cat par un ctrl+D):&lt;/p&gt;

&lt;pre&gt;&lt;code class=&quot;&quot;&gt;$ cat &amp;gt;&amp;gt; ~/.gmrc
gemhome: ~/.gems
gempath:
  - ~/.gems
  - /usr/lib/ruby/gems/1.8&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Dire à l'application Rails qu'il y a d'autres gems dans la vie : ajouter au fichier RAILS_ROOT/config/environment.rb&lt;/p&gt;

&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;ENV['GEM_PATH'] = File.expand_path('~/.gems') + ':/usr/lib/ruby/gems/1.8'&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Installer ses gem :&lt;/p&gt;

&lt;pre&gt;&lt;code class=&quot;&quot;&gt;$ gem install rake&lt;/code&gt;&lt;/pre&gt;

&lt;h4&gt;Des dates en français&lt;/h4&gt;

&lt;p&gt;J'en avais marre des &quot;march, 9th 2008&quot;. C'est pas très cohérent avec le reste. Et comme dirais mon maître de stage : &lt;/p&gt;

&lt;pre&gt;&lt;code&gt;&quot;Consitency is the key&quot;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Donc un petit ajout pour avoir les dates en français dans rails. J'ai créé un fichier french_dates.rb dans RAILS_ROOT/lib/ que j'ai remplis avec mes modifications aux classes Date et Time : &lt;/p&gt;

&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;class Date
  alias :strftime_nolocale :strftime

    FR_ABBR_DAYNAMES = %w(Dim Lun Mar Mer Jeu Ven Sam)
    FR_MONTHNAMES =  [
      nil, &amp;quot;janvier&amp;quot;, &amp;quot;février&amp;quot;, &amp;quot;mars&amp;quot;, &amp;quot;avril&amp;quot;, &amp;quot;mai&amp;quot;, &amp;quot;juin&amp;quot;, &amp;quot;juillet&amp;quot;, &amp;quot;août&amp;quot;, &amp;quot;septembre&amp;quot;, &amp;quot;octobre&amp;quot;, &amp;quot;novembre&amp;quot;, &amp;quot;décembre&amp;quot;]
    FR_ABBR_MONTHNAMES =  [
      nil, &amp;quot;jan&amp;quot;, &amp;quot;fév&amp;quot;, &amp;quot;mar&amp;quot;, &amp;quot;avr&amp;quot;, &amp;quot;mai&amp;quot;, &amp;quot;jun&amp;quot;, &amp;quot;jui&amp;quot;, &amp;quot;aoû&amp;quot;, &amp;quot;sep&amp;quot;, &amp;quot;oct&amp;quot;, &amp;quot;nov&amp;quot;, &amp;quot;déc&amp;quot;]
    FR_DAYNAMES = %w(Dimanche Lundi Mardi Mercredi Jeudi Vendredi Samedi)    

  def strftime(format)
    format = format.dup
    format.gsub!(/%a/, Date::FR_ABBR_DAYNAMES[self.wday])
    format.gsub!(/%A/, Date::FR_DAYNAMES[self.wday])
    format.gsub!(/%b/, Date::FR_ABBR_MONTHNAMES[self.mon])
    format.gsub!(/%B/, Date::FR_MONTHNAMES[self.mon])
    self.strftime_nolocale(format)
  end
end

class Time
  alias :strftime_nolocale :strftime

  def strftime(format)
    format = format.dup
    format.gsub!(/%a/, Date::FR_ABBR_DAYNAMES[self.wday])
    format.gsub!(/%A/, Date::FR_DAYNAMES[self.wday])
    format.gsub!(/%b/, Date::FR_ABBR_MONTHNAMES[self.mon])
    format.gsub!(/%B/, Date::FR_MONTHNAMES[self.mon])
    self.strftime_nolocale(format)
  end
end&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;J'ai ensuite dit à mon application Rails de charger ces additions à partir du fichier RAILS_ROOT/config/environment.rb&lt;/p&gt;

&lt;p&gt;J'ai eu un bug avec DreamHost (finalement, on peut leur reprocher des choses, hein), que je n'ai pu contourner qu'en déplaçant  mon code dans un fichier lib déjà créé dans mon application Mephisto et en n'utilisant pas le fichier nouvellement créé. Sans cela, fastcgi n'arrive pas a démarrer proprement (erreur 500, application error, toussa)... Faudra que je fouille cela plus tard.&lt;/p&gt;

&lt;h4&gt;Un peu de routing&lt;/h4&gt;

&lt;p&gt;En regardant mes logs, je me suis aperçu que des gens suivaient mon flux RSS. Oui, mais l'ancien (&lt;a href=&quot;http://imeuble.info/blog/rss.php&quot;&gt;http://imeuble.info/blog/rss.php&lt;/a&gt;). J'ai donc ajouté une route pour rediriger cette url vers la nouvelle (&lt;a href=&quot;http://imeuble.info/feed/atom.xml&quot;&gt;http://imeuble.info/feed/atom.xml&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;La prochaine étape sera de rediriger les pages des anciens articles vers les nouvelles url (donc d'importer les anciens article sur la plate-forme Mephisto).&lt;/p&gt;

&lt;h4&gt;Coloration Syntaxique&lt;/h4&gt;

&lt;p&gt;J'ai aussi ajouté de la coloration syntaxique dans les bout de code qui seront mis sur ce blog. Je me suis inspiré pour cela du plugin de &lt;a href=&quot;http://www.danwebb.net/&quot;&gt;Dan Webb&lt;/a&gt;, &lt;a href=&quot;http://svn.danwebb.net/external/rails/plugins/filtered_column_code_highlighter/&quot;&gt;filtered_column_code_highlighter&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Il s'agit d'un code javascript qui parse un text suivant une certaine grammaire (à l'aide de regex) et ajoute des span de bonne classe aux éléments trouvés. Le classe correspondent ensuite à une CSS donnée.  &lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://imeuble.info/">
    <author>
      <name>Meuble</name>
    </author>
    <id>tag:imeuble.info,2008-03-01:4</id>
    <published>2008-03-01T11:07:00Z</published>
    <updated>2008-03-01T13:09:02Z</updated>
    <category term="imeuble.info"/>
    <link href="http://imeuble.info/2008/3/1/en-root" rel="alternate" type="text/html"/>
    <title>En root !</title>
<content type="html">
            &lt;p&gt;Ouai, il est pourri mon jeu de mot. Juste pour dire que tout est opérationnel. &lt;/p&gt;

&lt;p&gt;C'est le renouveau officiel de imeuble.info ! Ce site se relève de sa tombe, avec une peau neuve (dans les mêmes tons, mais un poil plus sobre), un nouveau squelette (plus de php cancéreux, mais du beau rails brillant) et donc plein de nouveau contenus à jour.&lt;/p&gt;

&lt;p&gt;Comme d'habitude, je ne sais pas de quoi je parlerais ici, mais ça tournera sans doute plus autour de truc de geek que d'autre choses. Lisez qui veut !&lt;/p&gt;
          </content>  </entry>
  <entry xml:base="http://imeuble.info/">
    <author>
      <name>Meuble</name>
    </author>
    <id>tag:imeuble.info,2008-02-29:1</id>
    <published>2008-02-29T23:16:00Z</published>
    <updated>2008-03-01T10:46:44Z</updated>
    <category term="imeuble.info"/>
    <category term="beta"/>
    <link href="http://imeuble.info/2008/2/29/version-beta" rel="alternate" type="text/html"/>
    <title>Version beta</title>
<content type="html">
            &lt;p&gt;C'est un version beta que vous voyez ici.&lt;br /&gt;
Sont attendus très prochainement : &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Traduction : tous en français.&lt;/li&gt;
&lt;li&gt;Des corrections de css&lt;/li&gt;
&lt;li&gt;Des vrais lien pour les profils communautaires&lt;/li&gt;
&lt;li&gt;Du contenu (A propos, contact, cv ....)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A bientôt !&lt;/p&gt;
          </content>  </entry>
</feed>
