<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://ljouanneau.com/blog/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>Jy[B]log</title>
  <link>http://ljouanneau.com/blog/</link>
  <atom:link href="http://www.ljouanneau.com/blog/feed/rss2" rel="self" type="application/rss+xml"/>
  <description></description>
  <language>fr</language>
  <pubDate>Fri, 27 Jan 2012 13:25:14 +0100</pubDate>
  <copyright>@copyright Laurent Jouanneau. Contenu sous licence CC Paternité-Pas d'Utilisation Commerciale-Pas de Modification 1.0</copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Jelix 1.3 et au delà</title>
    <link>http://ljouanneau.com/blog/post/2011/10/20/Jelix-1.3-et-au-dela</link>
    <guid isPermaLink="false">urn:md5:09d3bf2f29742a9d783c75f18c1d76d3</guid>
    <pubDate>Thu, 20 Oct 2011 11:44:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Projets</category>
        <category>jelix</category>    
    <description>    &lt;p&gt;10 mois après la version 1.2, voici &lt;a href=&quot;http://jelix.org/fr/news/post/jelix-1.3-disponible&quot;&gt;la version 1.3&lt;/a&gt;, avec son lot de nouvelles fonctionnalités. J'ai pu amélioré et stabiliser cette version 1.3 sur des projets clients, dont un gros projet de plusieurs mois (application B2B), et qui tourne maintenant en production.&lt;/p&gt;


&lt;p&gt;Pour ceux qui n'ont pas suivi l'actu Jelix ces dernières semaines ou mois, sachez que ça a pas mal bougé avec l'aide des contributeurs&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;migration des sources de bitbucket vers &lt;a href=&quot;https://github.com/jelix/jelix/&quot;&gt;github&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;migration des services jelix.org sur un nouveau serveur plus puissant&lt;/li&gt;
&lt;li&gt;nouveau site, &lt;a href=&quot;http://booster.jelix.org&quot;&gt;booster.jelix.org&lt;/a&gt;, qui référence les modules et plugins existants pour jelix, réalisés par des utilisateurs et contributeurs.&lt;/li&gt;
&lt;li&gt;une nouvelle charte graphique du portail est en préparation, avec une toute nouvelle et belle page d'accueil. Le forum sera aussi migré vers la version 1.5pre de &lt;a href=&quot;http://www.havefnubb.org/&quot;&gt;havefnubb&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Et puis je réfléchi en ce moment à la version suivante. J'ai bien sûr des tonnes d'idées d'améliorations, dont pas mal dorment dans le bug tracker depuis des lustres. Reste qu'il faut les prioriser, et puis décider si c'est le moment ou pas de casser des choses pour mieux les refaire. Voir de casser des choses pour profiter de ce qui est déjà fait ailleurs (comprendre, réutiliser des composants existants).&lt;/p&gt;


&lt;p&gt;La mode est au 2.0 en ce moment&amp;nbsp;: Symfony 2.0, CakePHP 2.0, et bientôt Zend 2.0. La concurrence est rude et soutient un rythme plutôt soutenu :-). Jelix était en avance sur certains points. Il va falloir garder cette avance, et rattraper certains retards. Un challenge continuel.&lt;/p&gt;


&lt;p&gt;Par exemple, Symfony 2 vient d'intégrer le concept de &quot;bundles&quot;, qu'on appelle &quot;modules&quot; ici dans Jelix. Jelix a ce principe de module&lt;sup&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2011/10/20/Jelix-1.3-et-au-dela#pnote-908-1&quot; id=&quot;rev-pnote-908-1&quot;&gt;1&lt;/a&gt;]&lt;/sup&gt; depuis sa naissance en 2006, et on peut même dire que ça date depuis 2002 si je me souviens bien, puisque je l'avais implémenté pour la première fois dans &lt;a href=&quot;http://copix.org&quot;&gt;Copix&lt;/a&gt;, l'ancêtre de Jelix. Symfony 2 et CakePHP 2 mettent aussi plus en avant l’interaction avec des objets représentant la requête et la réponse HTTP, un concept dominant dans Jelix depuis ses débuts. Mais Jelix a perdu du terrain par exemple sur les problématiques de cache. Ainsi il n'y a pas encore de prise en charge du mécanisme de cache de HTTP. Même si il est tout à fait possible de le faire actuellement &quot;à la main&quot;. C'est quelque chose que l'on va améliorer (un patch est en review ;-)), entre autres choses (par exemple la couche ORM mériterait qu'on la rénove)..&lt;/p&gt;


&lt;p&gt;Certaines améliorations vont pouvoir être faites sans casser les applis existantes, donc qui auront leur place dans une version 1.4 ou 1.5. Mais d'autres devront être faite dans une version 2.0 qui cassera quelques compatibilités. Cependant, pour le moment, la vision que j'ai d'un Jelix 2.0, ne remettra pas en cause fondamentalement les principes du framework. Je pense qu'il y aura moyen de faire des profondes modifications dans le noyau, sans rendre totalement incompatibles les modules existants. En effet, l'organisation des sources dans les modules Jelix est suffisamment structurée et éprouvée pour pouvoir ajouter d'autres types de fichiers sans bouleverser le reste. D'ailleurs, une des tendances des frameworks, d'après ce que je vois, est de structurer assez fortement l'organisation des sources, et de le faire de manière à ce que ce soit modulaire, extensible. Ce que fait Jelix depuis 6 ans maintenant  ;-).&lt;/p&gt;


&lt;p&gt;Bref, proposer toujours plus de fonctionnalités, en évitant de trop casser l'existant :-)&lt;/p&gt;


&lt;p&gt;Une dernière chose, Jelix est un projet encore à &quot;taille humaine&quot;. Tout contributeur potentiel peut y trouver sa place facilement&lt;sup&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2011/10/20/Jelix-1.3-et-au-dela#pnote-908-2&quot; id=&quot;rev-pnote-908-2&quot;&gt;2&lt;/a&gt;]&lt;/sup&gt;, et il y a de quoi faire ;-). Et nous, les contributeurs actuels et moi, sommes ouvert à toute discussion, pour permettre aux développeurs de construire leurs projets de manière toujours plus efficace et plus robuste.&lt;/p&gt;


&lt;p&gt;Venez imaginer avec nous le framework du futur&lt;sup&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2011/10/20/Jelix-1.3-et-au-dela#pnote-908-3&quot; id=&quot;rev-pnote-908-3&quot;&gt;3&lt;/a&gt;]&lt;/sup&gt;!&lt;/p&gt;
&lt;div class=&quot;footnotes&quot;&gt;&lt;h4&gt;Notes&lt;/h4&gt;
&lt;p&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2011/10/20/Jelix-1.3-et-au-dela#rev-pnote-908-1&quot; id=&quot;pnote-908-1&quot;&gt;1&lt;/a&gt;] Je dois reconnaître que Symfony pousse le concept un peu plus loin, mais il va suffire de peu de chose dans Jelix pour être &quot;à niveau&quot;&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2011/10/20/Jelix-1.3-et-au-dela#rev-pnote-908-2&quot; id=&quot;pnote-908-2&quot;&gt;2&lt;/a&gt;] ce qui est plus difficile dans un projet à plusieurs centaines de contributeurs&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2011/10/20/Jelix-1.3-et-au-dela#rev-pnote-908-3&quot; id=&quot;pnote-908-3&quot;&gt;3&lt;/a&gt;] en PHP bien sûr ;-)&lt;/p&gt;&lt;/div&gt;
</description>
    
    
    
      </item>
    
  <item>
    <title>Adieu Mr Ritchie</title>
    <link>http://ljouanneau.com/blog/post/2011/10/14/Adieu-Mr-Ritchie</link>
    <guid isPermaLink="false">urn:md5:b982c05c65b265eeac6e66f36f2e5a7b</guid>
    <pubDate>Fri, 14 Oct 2011 00:20:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Geek-log</category>
        <category>linux</category><category>unix</category>    
    <description>    &lt;p&gt;L'inventeur du langage C et co-créateur d'Unix, &lt;a href=&quot;http://en.wikipedia.org/wiki/Dennis_Ritchie&quot;&gt;Dennis MacAlistair Ritchie&lt;/a&gt;, est mort. Malgré sa relative anonymie (vis à vis du grand public en tout cas), ses travaux ont énormément bouleversé l'informatique et continue d'influencer l'informatique d'aujourd'hui. Linux, les systèmes BSD (dont MacOS) et donc tout ce qui motorise les équipements les plus modernes comme les tablettes et les smartphones (Android, iOS), dérivent des créations de Dennis.&lt;/p&gt;


&lt;p&gt;Le langage C et Unix sont les technologies qui ont marqués mes années d'études. J'ai découvert le C et le C++ au début de l'année 91 pendant mes années lycées, avec mon premier PC, équipé de Borland C++.  J'ai tout de suite adoré (faut dire que ça me changeait du Basic 128 du TO9). Tellement adoré que les matières sur le C/C++ et Unix en IUT m'ont permis d'avoir des notes très élevées, moi qui était un élève moyen en général.&lt;/p&gt;


&lt;p&gt;Je peux vous dire que quand j'ai pu enfin utiliser linux sur mon PC, puis quelques temps après, reléguer définitivement Windows sur une partition secondaire de mon disque dur, ce fut jour de fête.&lt;/p&gt;


&lt;p&gt;Sale période en ce moment pour les figures de l'informatique, pour ceux qui ont marqué mes débuts en informatique. Même si pour moi Dennis a fait bien plus que Steve Jobs pour l'informatique.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Jelix : de Mercurial à Git</title>
    <link>http://ljouanneau.com/blog/post/2011/09/01/Jelix-de-Mercurial-a-Git</link>
    <guid isPermaLink="false">urn:md5:42988e1b64dd8471c7f639ab6b7d4a2e</guid>
    <pubDate>Thu, 01 Sep 2011 08:57:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Logiciels</category>
        <category>bitbucket</category><category>git</category><category>github</category><category>jelix</category><category>mercurial</category>    
    <description>&lt;p&gt;&lt;a href=&quot;http://ljouanneau.com/blog/post/2009/07/20/En-plein-dans-le-Mercure&quot;&gt;Depuis deux ans déjà&lt;/a&gt;, j'ai complètement abandonné subversion et utilisé Mercurial pour gérer le code source de mes projets. J'avais choisi Mercurial au départ parce que je devais l'utiliser pour contribuer à Firefox. J'avais alors apprécié le produit et l'avais adopté pour mes autres projets personnels. Pour les projets professionnels comme chez Zoomorama, et ou pour Jelix, nous (moi et mes collègues ou les contributeurs) avions étudié bien sûr Git avant de choisir Mercurial. À l'époque, Mercurial paraissait plus simple d'utilisation&amp;nbsp;: des commandes plus claires, plus concises, moins verbeuse. Il avait aussi un meilleur support multi-plateforme en particulier sous windows. Ce dernier critère me paraissait essentiel par exemple pour Jelix, car j'avais des contributeurs sous Windows.&lt;/p&gt;    &lt;p&gt;Au fil du temps, en particulier dans le projet Jelix, la gestion des branches de Mercurial me paraissait de plus en plus limitante. Une branche ne pouvant être supprimée, il est préférable de cloner le dépôt pour développer une nouvelle fonctionnalité, de manière d'une part à garder une branche &quot;officielle&quot; relativement stable, et d'autre part pour ne pas se retrouver au bout d'un moment avec 50 branches qui ne servent à plus rien. En fait, dans Mercurial, il est tout à fait naturel et normal de cloner un dépôt, un clone devenant implicitement une branche.&lt;/p&gt;


&lt;p&gt;Mais à la longue, cette manière de faire devient assez lourde, on se retrouve avec de multiples clones sur son disque, même si on peut les supprimer quand on n'en a plus besoin.&lt;/p&gt;


&lt;p&gt;L'alternative alors dans Mercurial est d'utiliser les &quot;queues&quot; de Mercurial, alias mq. C'est un système qui permet de gérer une pile de patchs. C'est quelque chose que j'apprécie particulièrement, et très utile pour les projets où le mode de collaboration impose la soumission de patchs pour être revues, avant de les committer dans le dépôt du projet. C'est ainsi que fonctionne le projet Mozilla et Jelix jusqu'à maintenant. L'autre avantage de mq est que cela évite d'avoir de multiples commits dans l'historique&amp;nbsp;: on a au final un seul commit correspondant à un patch complet&lt;sup&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2011/09/01/Jelix-de-Mercurial-a-Git#pnote-906-1&quot; id=&quot;rev-pnote-906-1&quot;&gt;1&lt;/a&gt;]&lt;/sup&gt; qui fonctionne, puisqu'il a normalement été revue par une personne tierce.&lt;/p&gt;


&lt;p&gt;Cependant cela n'élimine pas un autre souci qui m'agaçait de plus en plus dans la gestion du projet, et qui est lié à la revue de code&amp;nbsp;: il est compliqué de commenter les patchs. Que ce soit &lt;a href=&quot;http://developer.jelix.org&quot;&gt;dans le Trac de Jelix&lt;/a&gt; ou &lt;a href=&quot;http://bitbucket.org/jelix/&quot;&gt;sur Bitbucket&lt;/a&gt;, site sur lequel est hébergé le code source de Jelix, il n'y a pas la possibilité de commenter ligne à ligne. Ça alourdi la revue de code. Ça alourdi le processus de contribution.&lt;/p&gt;


&lt;p&gt;À propos de Bitbucket, le site n'est pas trop mal. Mais les fonctionnalités ne sont pas aussi évoluées que son concurrent principal, Github. Il évolue, mais pas aussi vite que Github, et j'ai même l'impression que depuis son rachat par Atlassian, le projet est un peu moins actif. Des fonctionnalités comme la revue de code sont attendues depuis des lustres par beaucoup d'utilisateurs, mais on ne voit toujours rien venir.&lt;/p&gt;


&lt;p&gt;Autre point, le couple Git/Github semble maintenant avoir une popularité qui surpasse celle des autres systèmes de &quot;versionning&quot;.&lt;/p&gt;


&lt;p&gt;J'ai donc décidé, pour Jelix, après en avoir discuté avec mes contributeurs, de passer à Git, et d’héberger le projet sur &lt;a href=&quot;http://github.com&quot;&gt;Github&lt;/a&gt;. J'ai été convaincu par la gestion des branches de Git, beaucoup plus souple. En effet, pour les utilisateurs de Mercurial, sachez qu'une branche dans Github s'apparente à &lt;a href=&quot;http://mercurial.selenic.com/wiki/BookmarksExtension&quot;&gt;un bookmark dans Mercurial&lt;/a&gt; (mais Bitbucket ne prend pas en charge les bookmarks). De plus, Github est fonctionnellement beaucoup plus puissant, avec un système de revue de code bien conçu. Cela va nous permettre d'avoir un &quot;workflow&quot; plus fluide pour les contributions, plus simple.&lt;/p&gt;


&lt;p&gt;Bref, un nouveau chapitre se tourne dans l'histoire du projet Jelix, qui est de plus marqué par &lt;a href=&quot;http://jelix.org/fr/news/post/sortie-de-jelix-1.3rc1&quot;&gt;la sortie de la première version candidate de Jelix 1.3&lt;/a&gt; ;-).&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;https://github.com/jelix/jelix&quot;&gt;&quot;Forkez&quot; Jelix !&lt;/a&gt;&lt;/p&gt;
&lt;div class=&quot;footnotes&quot;&gt;&lt;h4&gt;Notes&lt;/h4&gt;
&lt;p&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2011/09/01/Jelix-de-Mercurial-a-Git#rev-pnote-906-1&quot; id=&quot;pnote-906-1&quot;&gt;1&lt;/a&gt;] pour les grosses contributions, on peut avoir plusieurs commits correspondant à plusieurs étapes de la modification, mais l'historique reste tout de même clair&lt;/p&gt;&lt;/div&gt;
</description>
    
    
    
      </item>
    
  <item>
    <title>Testez la beta de Jelix 1.3</title>
    <link>http://ljouanneau.com/blog/post/2011/06/07/Testez-la-beta-de-Jelix-1.3</link>
    <guid isPermaLink="false">urn:md5:df16503b7a1e6d4d232a8041b4a13433</guid>
    <pubDate>Tue, 07 Jun 2011 18:51:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Projets</category>
        <category>framework</category><category>jelix</category><category>php</category>    
    <description>    &lt;p&gt;J'ai sorti ce week-end dernier &lt;a href=&quot;http://jelix.org/fr/news/post/testez-la-beta-de-jelix-1.3&quot;&gt;la beta du framework PHP Jelix 1.3&lt;/a&gt;. Pas mal de nouveautés sont disponibles.&lt;/p&gt;


&lt;p&gt;Tout d'abord, quelques allègements dans la structure d'une application&amp;nbsp;: il y a maintenant qu'un seul boostrap application.init.php pour tous les points d'entrées, et un seul répertoire temporaire. Ensuite, le script jelix.php pour lancer des commandes d'aide au développement, a été remplacé par un script cmd.php qui est placé &lt;strong&gt;dans&lt;/strong&gt; l'application. Son utilisation est alors facilitée puisqu'on n'a plus le nom de l'application à indiquer en argument.&lt;/p&gt;


&lt;p&gt;Il y a une nouvelle gestion des erreurs et des exceptions, plus puissante, mais aussi plus conviviale. Les messages d'erreurs sont en effet maintenant pris en charge par le système de log de Jelix, qui a lui aussi connu des évolutions (il a maintenant un système de plugin). On peut aussi  fournir sa propre page d'erreur, permettant d'afficher un message &quot;convivial&quot; à l'utilisateur, avec le look de l'appli, plutôt qu'un message technique barbare sur une page blanche.&lt;/p&gt;


&lt;p&gt;Deuxième grosse nouveauté&amp;nbsp;: le développeur peut activer la toute nouvelle barre de debug pour avoir un affichage détaillé des erreurs, mais aussi des logs, de la liste des requêtes SQL, des messages SOAP, du contenu de la session etc. Et comme la barre est extensible, on peut développer/ajouter des plugins pour afficher d'autres informations.&lt;/p&gt;


&lt;p&gt;Du travail a aussi été fait pour faciliter le développement de tests PHPUnit pour une appli Jelix. L'intégration de
Simpletest, bien que toujours disponible, est considérée maintenant comme obsolète. D'ailleurs la migration des tests de Jelix vers PHPUnit a commencé.&lt;/p&gt;


&lt;p&gt;Enfin le système de droits jAcl2 a vu quelques améliorations techniques, mais aussi au niveau de l'interface de gestion de droits. Et puis bien sûr, &lt;a href=&quot;http://jelix.org/articles/en/changelog/1.3&quot; title=&quot;changelog jelix 1.3&quot;&gt;une tonne de petites améliorations ont été faite ici et là&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Pour la migration d'une application jelix 1.2, c'est une affaire de quelques minutes, grâce au système de mise à jour de Jelix, mais aussi parce que les API n'ont que très peu changé.&lt;/p&gt;


&lt;p&gt;Cette beta a été développée et largement éprouvée lors de la réalisation d'un gros projet d'un de mes clients (et par des contributeurs bien sûr). Vous pouvez donc l'utiliser à priori sans soucis particulier :-). Et d'ici la version finale dans quelques semaines, je ne pense pas qu'il y aura de gros changements.&lt;/p&gt;


&lt;p&gt;À propos de clients et de l'avenir de Jelix, il faut savoir qu'une bonne partie des contrats que j'ai eu au cours de ces 12 derniers mois, concernait des projets relatifs à Jelix (consulting, formations, développement d'appli...), et ce n'était pas que pour des petites boites (BNP Paribas, Transatel..). Ce framework ne cesse donc de se déployer en entreprise. Et je compte faire en sorte que pour les prochains mois, le mouvement s’accélère&amp;nbsp;!&lt;/p&gt;


&lt;p&gt;Bien souvent on me posait la question de la pérennité du framework. Après 5 ans d'existence, motorisant des gros sites comme &lt;a href=&quot;http://www.over-blog.com/&quot;&gt;Overblog&lt;/a&gt;, tout un tas d'intranets et de sites publiques divers et variés, j’espère que cette question se posera moins souvent :-) Merci à ceux qui ont fait confiance au projet, et à ceux qui contribuent, que ce soit au niveau du code ou au niveau communauté.&lt;/p&gt;


&lt;p&gt;PS: j'ai oublié de dire que le manuel pour cette version 1.3b est disponible, complet, en français et en anglais, en ligne ou en PDF&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Un an après</title>
    <link>http://ljouanneau.com/blog/post/2011/06/04/Un-an-apr%C3%A8s</link>
    <guid isPermaLink="false">urn:md5:41339a4cf8ec2e2c227303ff52265c4f</guid>
    <pubDate>Sat, 04 Jun 2011 11:12:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Entreprise</category>
        <category>entreprise</category><category>innophi</category>    
    <description>    &lt;p&gt;Cela fait grosso modo un an que j'ai commencé l'aventure de l'entrepreneuriat. Fin avril 2010, &lt;a href=&quot;http://ljouanneau.com/blog/post/2010/04/30/Zoomorama-the-end&quot; title=&quot;La fin de Zoomorama&quot;&gt;Zoomorama fermait ses portes&lt;/a&gt;. Quelques semaines de paperasserie plus tard, j'étais créateur d'entreprise, avec 4 autres anciens de Zoomorama dont un qui ne participe qu'au capital, étant parti vivre des aventures ailleurs.&lt;/p&gt;


&lt;p&gt;Avec David Marteau, Olivier Gambier et Emmanuel Tabard, nous avons donc monté &lt;a href=&quot;http://innophi.com&quot;&gt;la société Innophi&lt;/a&gt;, qui propose du service dans le développement logiciels et applications web. Et depuis, nous ne sommes pas croisé les bras (d'ailleurs l'activité de ce blog s'en ait ressenti :-) ).  Par le biais de nos réseaux respectifs de connaissances dans le milieu, nous avons pu trouver nos premiers contrats.&lt;/p&gt;


&lt;p&gt;Après un an, les résultats sont encourageants, nous continuons donc l'aventure :-)&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>BlueGriffon 1.0</title>
    <link>http://ljouanneau.com/blog/post/2011/05/10/BlueGriffon-1.0</link>
    <guid isPermaLink="false">urn:md5:91c0800a1d06b6b074d53984b4ec3c1c</guid>
    <pubDate>Tue, 10 May 2011 10:28:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Logiciels</category>
        <category>bluegriffon</category>    
    <description>    &lt;p&gt;Septembre 2008, &lt;a href=&quot;http://glazman.org/&quot;&gt;Daniel&lt;/a&gt; écrivait les premières lignes de code d'un nouvel éditeur HTML wysiwyg, BlueGriffon. L'idée du projet germait déjà depuis plusieurs mois dans le bureau (j'étais alors salarié de &lt;a href=&quot;http://disruptive-innovations.com&quot;&gt;Disruptive Innovations&lt;/a&gt;), après l'arrêt du développement de Nvu. Nvu était le premier éditeur HTML  de D.I, téléchargé à plusieurs millions d'exemplaires. Cependant l’impossibilité de poursuivre le développement de Nvu&lt;sup&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2011/05/10/BlueGriffon-1.0#pnote-903-1&quot; id=&quot;rev-pnote-903-1&quot;&gt;1&lt;/a&gt;]&lt;/sup&gt; et la volonté de repartir sur des bases neuves et saines&lt;sup&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2011/05/10/BlueGriffon-1.0#pnote-903-2&quot; id=&quot;rev-pnote-903-2&quot;&gt;2&lt;/a&gt;]&lt;/sup&gt;, ont fait naître BlueGriffon.&lt;/p&gt;


&lt;p&gt;Développer un tel logiciel n'est pas chose aisée. Cela demande du temps, du financement. Je me rappelle que les débuts n'étaient pas simple. Mais Daniel y est finalement arrivé&amp;nbsp;! Bravo Daniel&amp;nbsp;!&lt;/p&gt;


&lt;p&gt;Deux et demi après, voici enfin &lt;a href=&quot;http://bluegriffon.org/post/2011/05/09/BlueGriffon-1.0&quot;&gt;la première version stable de BlueGriffon&lt;/a&gt;, disponible gratuitement. Support de HTML5, de CSS3, basé sur le moteur de rendu de Firefox 4. Tout y est&amp;nbsp;!&lt;/p&gt;


&lt;p&gt;Il y a aussi &lt;a href=&quot;http://www.bluegriffon.com/&quot;&gt;plusieurs extensions disponibles&lt;/a&gt; pour ajouter des fonctionnalités évoluées. Elles sont pour la plupart payantes mais pas chères. N'hésitez pas, ça aidera à faire vivre le projet.&lt;/p&gt;
&lt;div class=&quot;footnotes&quot;&gt;&lt;h4&gt;Notes&lt;/h4&gt;
&lt;p&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2011/05/10/BlueGriffon-1.0#rev-pnote-903-1&quot; id=&quot;pnote-903-1&quot;&gt;1&lt;/a&gt;] pour diverses raisons, dont des raisons juridiques&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2011/05/10/BlueGriffon-1.0#rev-pnote-903-2&quot; id=&quot;pnote-903-2&quot;&gt;2&lt;/a&gt;] Nvu était basé sur le code de Mozilla Composer, datant du début de la fin des années 90, avec donc un long passif et utilisant une vieille version de Gecko&lt;/p&gt;&lt;/div&gt;
</description>
    
    
    
      </item>
    
  <item>
    <title>Jelix 1.2 et la suite</title>
    <link>http://ljouanneau.com/blog/post/2011/01/19/Jelix-1.2-et-la-suite</link>
    <guid isPermaLink="false">urn:md5:4bedc2a7d00dc34d8c0693bedada092a</guid>
    <pubDate>Wed, 19 Jan 2011 01:22:00 +0100</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Projets</category>
        <category>jelix</category>    
    <description>    &lt;p&gt;Le temps passe vite&amp;nbsp;: presque &lt;a href=&quot;http://jelix.org/fr/news/post/jelix-1.2-est-disponible&quot;&gt;un mois que j'ai sorti Jelix 1.2&lt;/a&gt;. Ça fait donc un mois que je me dis qu'il faudrait que j'en parle sur mon blog :-)&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://jelix.org/articles/fr/changelog/1.2&quot;&gt;La liste des changements est assez conséquente&lt;/a&gt;. Pour faire rapide, elle comporte&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;un nouveau système d'installation automatique des modules, ce qui est très agréable dés lors il faut installer un module tiers, ou pour mettre à jour une application en production, puisque ce système d'installation permet les mises à jour incrémentales.&lt;/li&gt;
&lt;li&gt;le support de bases de données NOSQL, avec une API abstraite d'accès à ces bases&lt;/li&gt;
&lt;li&gt;des améliorations dans jForms, le système de formulaire&lt;/li&gt;
&lt;li&gt;le support de tout les noms des types natifs des bases SQL dans jDao (l'ORM)&lt;/li&gt;
&lt;li&gt;enfin un composant de gestion de cache de donnée&lt;/li&gt;
&lt;li&gt;et des dizaines d'autres petites améliorations&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sitôt la 1.2 sortie, sitôt le développement de la 1.3 commencé. Déjà fait&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;nouvelle gestion des erreurs et des exceptions. Le logger jLog est utilisé pour les stocker. On peut maintenant fournir sa propre page d'erreur, et les erreurs ne s'affichent plus dans une div pas très jolie, mais dans une toute nouvelle debugbar, désactivable.&lt;/li&gt;
&lt;li&gt;jLog, justement, accepte maintenant des plugins, pour étendre ses possibilités&lt;/li&gt;
&lt;li&gt;Tout comme l'objet jResponseHtml (la &quot;vue&quot;). Ainsi les fonctions de &quot;minification&quot; des fichiers CSS/JS, reposant sur Minify, ont été migrées dans un plugin. Et la nouvelle debugbar est également un plugin.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Et il est prévu&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;polissage de la debugbar et des plugins pour la debugbar&lt;/li&gt;
&lt;li&gt;une petite refonte de la partie routage&lt;/li&gt;
&lt;li&gt;des simplifications ici et là, du nettoyage de code&lt;/li&gt;
&lt;li&gt;le début de la migration de Simpletest à PHPUnit pour les tests unitaires&lt;/li&gt;
&lt;li&gt;et plein d'autres petites choses&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Je vais essayer de sortir cette prochaine version assez rapidement, même si tout ce que j'ai prévu n'est pas développé à temps. Je veux en effet accélérer le rythme des releases. Le système de mise à jour de Jelix permettant des migrations plus douces. Et bien sûr, les mises à jour correctives pour les deux branches actives, 1.1 et 1.2, vont continuer à sortir. La 1.2.1 ne va pas trop tarder ;-)&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Plus de H264 dans Chrome</title>
    <link>http://ljouanneau.com/blog/post/2011/01/12/Plus-de-H264-dans-Chrome</link>
    <guid isPermaLink="false">urn:md5:4baa85b903a6f9f8bccfb6e984430fb0</guid>
    <pubDate>Wed, 12 Jan 2011 11:25:00 +0100</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Technologies Web</category>
        <category>chrome</category><category>h264</category><category>html5</category><category>video</category><category>webm</category>    
    <description>    &lt;p&gt;Google vient de l'annoncer&amp;nbsp;: &lt;a href=&quot;http://blog.chromium.org/2011/01/html-video-codec-support-in-chrome.html&quot;&gt;le support du format video H264 va être retiré de Chrome&lt;/a&gt; (sachant que dans Chromium, la version opensource du navigateur, il n'y en avait déjà pas). Ce qui veut dire que Google va commencer à pousser fortement à l'utilisation de son propre format vidéo, &lt;a href=&quot;http://www.webmproject.org/&quot;&gt;WebM&lt;/a&gt;, déjà supporté par Firefox, Opera et d'autres navigateurs libres.&lt;/p&gt;


&lt;p&gt;C'est une excellente nouvelle pour le web, et pour la balise video, que d'avoir un format, WebM, de qualité et non encombré de brevets logiciels connus. &lt;a href=&quot;http://ljouanneau.com/blog/post/2010/05/19/WebM%2C-le-nouveau-format-video-du-web&quot;&gt;J'en avais déjà parlé il y a quelques mois&lt;/a&gt;, quand Google libérait ce format. Depuis, cette époque, même s'il n'a pas trop fait parlé de lui publiquement, WebM a progressé, tant au niveau logiciel qu'au niveau hardware, puisque &lt;a href=&quot;http://blog.webmproject.org/2011/01/availability-of-webm-vp8-video-hardware.html&quot;&gt;des puces vont bientôt être disponibles&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Il ne reste &quot;que&quot; Internet Explorer et Safari (sur Macbook ou iphone) à ne pas supporter nativement WebM. Toutefois, avec IE9, il suffira d'installer le codec au niveau du système.&lt;/p&gt;


&lt;p&gt;Attention cependant, ne crions pas victoire trop vite. Le retrait du support n'est pas encore fait, et l'annonce de ce retrait provoque une vague de mécontentement chez beaucoup d'utilisateurs et de développeurs, si on en croit &lt;a href=&quot;http://blog.chromium.org/2011/01/html-video-codec-support-in-chrome.html?commentPage=1&quot;&gt;les nombreux commentaires sur la news&lt;/a&gt; (les menaces de passer à un autre navigateur sont particulièrement risibles).&lt;/p&gt;


&lt;p&gt;Sans parler du fait que c'est philosophiquement un peu en contradiction avec une précédente décision&amp;nbsp;: celle d'inclure dans le navigateur, Flash, un produit propriétaire.&lt;/p&gt;


&lt;p&gt;Espérons que Google tiendra bon dans sa décision sur WebM. Cela fait de lui un allié de plus à Mozilla, dans la lutte pour garder un web ouvert, dans sa volonté de ne pas supporter de formats propriétaires.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Mercurial/Git : ne pas &quot;brancher&quot; est une erreur</title>
    <link>http://ljouanneau.com/blog/post/2010/11/07/Mercurial/Git-%3A-ne-pas-brancher-est-une-erreur</link>
    <guid isPermaLink="false">urn:md5:492908f4730d7e7af0e662b419214952</guid>
    <pubDate>Sun, 07 Nov 2010 14:07:00 +0100</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Projets</category>
        <category>développement</category><category>git</category><category>jelix</category><category>mercurial</category>    
    <description>&lt;p&gt;Et c'est une erreur que j'ai faite pour le développement de &lt;a href=&quot;http://jelix.org&quot;&gt;Jelix&lt;/a&gt; 1.2. Cela a conduit à un gros retard (presque 1 an !) sur la sortie de la version stable, avec toutes les conséquences qu'un retard de la sortie d'une version d'un projet peut avoir.&lt;/p&gt;    &lt;p&gt;Pour mon framework, depuis longtemps je voulais y intégrer un système d'installation automatique, qui permette d'installer, d'initialiser (mise à jour de la base de données, de la configuration de l'application...) un module, et aussi de le mettre à jour très facilement.&lt;/p&gt;


&lt;p&gt;Au début de l'été 2009, j'ai donc commencé à développer ce nouveau système d'installation de module. Quand j'ai commencé, je pensais que je n'en aurais pas pour longtemps. J'ai donc commencé à commiter les modifications... dans le trunk. Mais plus j'avançais, plus je découvrais des problèmes à résoudre. Et puis une fois qu'il était opérationnel, j'ai découvert à l'usage d'autres soucis, qu'il a fallu corriger. Tout ceci a pris au final beaucoup de temps. En ajoutant les longues périodes où j'étais trop occupé sur d'autres projets, le système d'installation a commencé à être stable qu'en juin dernier&amp;nbsp;!&lt;/p&gt;


&lt;p&gt;Parallèlement à ça, j'ai amélioré d'autres composants, des contributeurs ont proposé de nombreux patchs correctifs ou de nouvelles fonctionnalités, tout ça commité... aussi dans le trunk...&lt;/p&gt;


&lt;p&gt;Bref, le trunk contenait à la fois des nouveautés et corrections diverses et variées, &lt;strong&gt;mais aussi un composant expérimental&lt;/strong&gt;. Et ce composant impactant le fonctionnement interne du framework, il n'était pas possible de sortir des versions intermédiaires pour que les utilisateurs puissent profiter des nouveautés autre que ce système d'installation. Créer une branche à partir d'un &quot;changeset&quot; antérieur aux premiers commits du système d'installation, en y backportant les autres modifications, ou faire un &quot;backout&quot; de tous les changements apportés par le système d'installation, aurait demandé trop de travail, à l'époque où je me suis rendu compte de mon erreur.&lt;/p&gt;


&lt;p&gt;D'habitude, j'essaye toujours d'avoir un trunk &quot;stable&quot;, fonctionnel. Mais la sous-estimation du travail sur ce nouveau composant, l'envi de l'intégrer à la prochaine version, et certainement l'enthousiasme que j'avais à le développer, ont fait que je n'ai pas vraiment réfléchi à l'organisation de ce développement. Et au final le trunk a souvent été inutilisable durant cette période. Et je n'ai pas vraiment d'excuses, dans la mesure ou brancher et merger avec Mercurial (ou Git) ne pose en général peu de problèmes (ce n'est pas le cas avec subversion, ça n'a jamais vraiment fonctionner avec moi).&lt;/p&gt;


&lt;p&gt;J'aurais donc du développer ce système d'installation dans une branche à part, laissant sur le trunk que les corrections de bugs et améliorations sur les autres parties de jelix. Ça aurait permis de sortir des versions intermédiaires de Jelix à partir du trunk, qui soient opérationnelles (et sans le système d'installation) . Et j'aurais pu continuer le développement du système d'installation dans son coin, pour ensuite intégrer les modifications de cette branche dans le trunk une fois qu'il était utilisable.&lt;/p&gt;


&lt;p&gt;Les prochains gros chantiers sur Jelix seront donc développés dans des branches, afin de pouvoir sortir des versions stables de jelix plus régulièrement :-)&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Jelix 1.2RC2, forum PHP et Rarangi</title>
    <link>http://ljouanneau.com/blog/post/2010/11/07/Jelix-1.2RC2%2C-forum-PHP-et-Rarangi</link>
    <guid isPermaLink="false">urn:md5:3f1734c640e17e6acbde0b131619e88b</guid>
    <pubDate>Sun, 07 Nov 2010 13:57:00 +0100</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Projets</category>
        <category>forum php</category><category>framework</category><category>havefnubb</category><category>jelix</category><category>over-blog</category><category>php</category><category>rarangi</category>    
    <description>    &lt;p&gt;Ça fait quasiment un an que je n'ai pas parlé de &lt;a href=&quot;http://jelix.org&quot;&gt;Jelix&lt;/a&gt; sur mon blog (oups !).  Ce n'est pas pour autant que le projet n'a pas avancé, bien au contraire&amp;nbsp;!&lt;/p&gt;


&lt;p&gt;Bien qu'initialement, la version 1.2 du framework était prévue il y a plus d'un an, elle ne va sortir que ce mois-ci. J'expliquerai pourquoi dans un prochain billet. Une &quot;release candidate&quot; &lt;a href=&quot;http://jelix.org/articles/fr/telechargement/nightly#telechargement-jelix-1.2-rc2&quot;&gt;est donc disponible&lt;/a&gt;, avec &lt;a href=&quot;http://jelix.org/articles/fr/manuel-1.2&quot;&gt;son manuel en ligne&lt;/a&gt; et &lt;a href=&quot;http://jelix.org/articles/fr/telechargement/nightly#telechargement-jelix-1.2-rc2&quot;&gt;en version PDF&lt;/a&gt;, le tout bien sûr, en anglais et en français. Cette version comporte &lt;a href=&quot;http://jelix.org/articles/fr/changelog/1.2&quot;&gt;une tonne de nouveautés&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Cette version 1.2 à venir est particulièrement stable car déjà utilisée sur pas mal de projets, ce qui a permis de remonter pas mal de bugs et améliorations à faire. Ainsi des préversions de Jelix 1.2 sont utilisées&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Dans quelques un de mes projets clients, réalisés ces derniers mois :-)&lt;/li&gt;
&lt;li&gt;Dans des projets à venir d'&lt;a href=&quot;http://www.over-blog.com/&quot;&gt;Over-blog&lt;/a&gt;, réalisés donc par l'équipe d'Over-blog. Sachant que, pour ceux qui ne sont pas  au courant, qu'ils utilisent Jelix depuis plusieurs années pour motoriser les blogs d'Over-blog ;-) (l'une des plus grosses plateforme européenne de blog).&lt;/li&gt;
&lt;li&gt;Dans la future version 1.4 de  &lt;a href=&quot;http://havefnubb.org/&quot;&gt;HavefnuBB&lt;/a&gt;, un forum réalisé avec Jelix (et utilisé sur http://jelix.org ;-)) (la 1.3 utilise jelix 1.1)&lt;/li&gt;
&lt;li&gt;Dans &lt;a href=&quot;http://bitbucket.org/laurentj/rarangi/&quot;&gt;Rarangi&lt;/a&gt;, une alternative à phpdoc.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Bref, n'hésitez pas à tester et à utiliser cette RC2&amp;nbsp;!&lt;/p&gt;


&lt;p&gt;Si vous voulez en savoir plus sur les nouveautés, rendez-vous &lt;a href=&quot;http://www.afup.org/pages/forumphp2010/projets-php.php#505&quot;&gt;au stand jelix au forum php&lt;/a&gt;, mardi et mercredi prochain. J'y serais avec d'autres contributeurs, dont Olivier &quot;Foxmask&quot; Demah, l'auteur de HavefnuBB.&lt;/p&gt;


&lt;p&gt;Au sujet de Rarangi, c'est un autre projet qui me tiens à coeur et que j'avais commencé fin 2008, mais avec le manque de temps, ce n'est que maintenant qu'il commence à être opérationnel. PHPdoc commence à me gonfler sérieusement. Il est buggé de partout, compliqué à personnaliser, demande énormément de ressources. Et je n'accroche pas à doxygen. Bref, je compte m'en débarrasser définitivement sur jelix.org, en le remplaçant par Rarangi ces prochaines semaines, une fois que j'aurais finalisé les templates de détails des classes et fonctions, et amélioré la navigation. J'espère apporter une alternative sérieuse à phpdoc. Les futures versions embarqueront notamment un moteur de recherche et autres fonctionnalités inédites.&lt;/p&gt;


&lt;p&gt;Une &lt;a href=&quot;http://demorarangi.jelix.org/&quot;&gt;démo de Rarangi est visible en ligne&lt;/a&gt;. Il reste comme je l'ai dit, des améliorations de design et de lisibilité sur certains type de pages. N'hésitez pas à me faire part de vos impressions sur cette pre-0.1 :-) (et si quelqu'un veut bien se dévouer pour le design.. car comme vous le voyez, ce n'est pas ma spécialité :)&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Diantre ! Un billet !</title>
    <link>http://ljouanneau.com/blog/post/2010/10/14/Diantre-%21-Un-billet-%21</link>
    <guid isPermaLink="false">urn:md5:807aafe5cf9c989336d4e99a1e35e091</guid>
    <pubDate>Thu, 14 Oct 2010 16:02:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Geek-log</category>
            
    <description>    &lt;p&gt;Quatre mois presque, sans blogger&lt;sup&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2010/10/14/Diantre-%21-Un-billet-%21#pnote-897-1&quot; id=&quot;rev-pnote-897-1&quot;&gt;1&lt;/a&gt;]&lt;/sup&gt; . Et là, d'un seul coup, paf, &lt;a href=&quot;http://ljouanneau.com/blog/post/2010/10/14/Le-moteur-Javascript-de-Firefox-rattrape-son-retard&quot;&gt;je publie un billet&lt;/a&gt;  sans prévenir&amp;nbsp;!&lt;/p&gt;


&lt;p&gt;Désolé cher lecteur pour cette absence prolongée. Mais j'étais très très occupé ces derniers mois. La cause&amp;nbsp;: après mon licenciement économique de chez Zoomorama, je me suis lancé dans un projet fou, un truc qui me trottait dans la tête depuis des années&amp;nbsp;: créer une boîte. Et depuis, ça n'arrête pas, les journées sont plus que remplies. C'est du délire complet&amp;nbsp;! :-D&lt;/p&gt;


&lt;p&gt;Je vous en reparlerai plus longuement une autre fois :-)&lt;/p&gt;
&lt;div class=&quot;footnotes&quot;&gt;&lt;h4&gt;Notes&lt;/h4&gt;
&lt;p&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2010/10/14/Diantre-%21-Un-billet-%21#rev-pnote-897-1&quot; id=&quot;pnote-897-1&quot;&gt;1&lt;/a&gt;] Si on ne compte pas mes micro billets sur twitter :-)&lt;/p&gt;&lt;/div&gt;
</description>
    
    
    
      </item>
    
  <item>
    <title>Le moteur Javascript de Firefox rattrape son retard</title>
    <link>http://ljouanneau.com/blog/post/2010/10/14/Le-moteur-Javascript-de-Firefox-rattrape-son-retard</link>
    <guid isPermaLink="false">urn:md5:096c1f6ba7420db5cdae0576b66a4ba4</guid>
    <pubDate>Thu, 14 Oct 2010 15:30:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Logiciels</category>
        <category>firefox</category><category>javascript</category>    
    <description>    &lt;p&gt;Connaissez-vous &lt;a href=&quot;http://arewefastyet.com/&quot; title=&quot;http://arewefastyet.com/&quot;&gt;http://arewefastyet.com/&lt;/a&gt;&amp;nbsp;? C'est un site mis en place par l'équipe des développeurs du moteur javascript de Mozilla, SpiderMonkey. Il permet de suivre l'évolution des performances de ce moteur, en exécutant deux tests&amp;nbsp;: &lt;a href=&quot;http://www2.webkit.org/perf/sunspider-0.9.1/sunspider.html&quot;&gt;sunspider&lt;/a&gt; et &lt;a href=&quot;http://v8.googlecode.com/svn/data/benchmarks/current/&quot;&gt;v8bench&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Il y a quelques jours, SpiderMonkey avait dépassé Apple Nitro (le moteur js de webkit) sur v8bench. Depuis hier, il est sur le point de le dépasser sur sunspider&amp;nbsp;! Il reste maintenant à battre le moteur de Google, V8. (Ce sont les versions de développement de ces moteurs javascripts qui sont testés)&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://ljouanneau.com/var/blog/mozilla/_v8bench_20101013.png&quot;&gt;&lt;img src=&quot;http://ljouanneau.com/var/blog/mozilla/._v8bench_20101013_m.jpg&quot; alt=&quot;Arewefastyet&amp;nbsp;? v8bench 20101013&quot; title=&quot;Arewefastyet&amp;nbsp;? v8bench 20101013, oct. 2010&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;http://ljouanneau.com/var/blog/mozilla/sunspider_20101013.png&quot;&gt;&lt;img src=&quot;http://ljouanneau.com/var/blog/mozilla/.sunspider_20101013_m.jpg&quot; alt=&quot;arewefastyet&amp;nbsp;? sunspider 20101013&quot; title=&quot;arewefastyet&amp;nbsp;? sunspider 20101013, oct. 2010&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;Légende: courbe violette&amp;nbsp;: spidermonkey (Tracemonkey + JaëgerMonkey); courbe rouge&amp;nbsp;: apple nitro. courbe verte&amp;nbsp;: google v8. courbe noire&amp;nbsp;: spidermonkey (JaëgerMonkey seul)&lt;/p&gt;



&lt;p&gt;À noter que ces résultats sont obtenus en lançant les tests non pas dans un navigateur, mais avec les versions &quot;autonomes&quot; des moteurs javascripts (hors navigateur donc). On a donc ici des performances pures, qui ne sont pas impactées par d'autres choses comme un moteur de rendu ou des scripts d'autres sites etc. Il est évident donc que vous n'obtiendrez pas des résultats comparatifs du même ordre, en les lançant dans un navigateur.&lt;/p&gt;


&lt;p&gt;C'est ainsi que ce n'est pas encore parfait du coté Mozilla, puisqu'on obtient encore des écarts en lançant ces tests avec Firefox. Probablement que les tests dans Firefox sont biaisés à cause de l'exécution de code JS en dehors de la page de tests, puisque l'interface de Firefox est développée en partie en javascript.&lt;/p&gt;


&lt;p&gt;Cependant, les améliorations entre Firefox 3.6 et Firefox 4 sont énormes, et les performances des moteurs javascripts des principaux navigateurs (IE9, Chrome, Safari et Firefox 4) sont maintenant équivalentes. On arrive à des différences qui ne seront pas perceptibles par l'utilisateur.&lt;/p&gt;


&lt;p&gt;Je pense que d'ici quelques mois, on aura atteint les limites sur les améliorations dans les moteurs javascript.&lt;/p&gt;


&lt;p&gt;la bataille des navigateurs va pouvoir aller se focaliser sur d'autres sujets :-) (accélération matériel etc..)&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Pourquoi Firefox n'aura probablement jamais 100 au test acid 3</title>
    <link>http://ljouanneau.com/blog/post/2010/06/24/Pourquoi-Firefox-n-aura-probablement-jamais-100-au-test-acid-3</link>
    <guid isPermaLink="false">urn:md5:eb5cbbc343aa64056ead994db5254fb6</guid>
    <pubDate>Thu, 24 Jun 2010 11:42:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Technologies Web</category>
        <category>acid3</category><category>firefox</category><category>fontes</category><category>svg</category>    
    <description>    &lt;p&gt;Parce que. Je vous l'ai déjà dit, &lt;a href=&quot;http://ljouanneau.com/blog/post/2009/02/01/Relativisons-les-resultats-du-test-acid3&quot;&gt;ce test est débile&lt;/a&gt;&amp;nbsp;! :-)&lt;/p&gt;


&lt;p&gt;Ok, plus sérieusement, et ça fait un bon moment que je voulais en parler (je sais je lag), la raison est toute simple&amp;nbsp;: les trois derniers points à passer concernent le support des fontes SVG. Et Mozilla n'envisage pas de les implementer, au moins dans un avenir proche. Des développeurs, dont Roc, de Mozilla, en donne les raisons, &lt;a href=&quot;http://weblogs.mozillazine.org/roc/archives/2010/06/not_implementin.html&quot;&gt;sur son blog&lt;/a&gt; et &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=119490#c38&quot;&gt;dans les commentaires du bug&lt;/a&gt;. En gros&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Globalement les fontes SVG n'apportent techniquement rien par rapport aux fontes TTF ou WOFF&lt;/li&gt;
&lt;li&gt;On peut faire des glyphes multi coloré et animé avec les fontes SVG, mais en fait, la spécification sur ces points est un cauchemar. D'ailleurs Opera et Webkit n'implémentent pas ces choses, et ont apparement un support très minimal des fontes SVG (juste pour passer le test acid3&amp;nbsp;? ;-) )&lt;/li&gt;
&lt;li&gt;Les autres types de fontes ont plus d'avantages&amp;nbsp;:
&lt;ul&gt;
&lt;li&gt;techniquement plus riche (&quot;Hinting, rasterization with subpixel antialiasing, far richer support for glyph selection and text shaping&quot;) puisqu'elles permettre de créer des glyphes pour des caractères aussi complexes que les caractères arabes par exemple&lt;/li&gt;
&lt;li&gt;énormément plus de fontes déjà disponibles&lt;/li&gt;
&lt;li&gt;plus compacte&lt;/li&gt;
&lt;li&gt;support beaucoup plus large dans les logiciels (outils auteurs etc)&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;En conclusion, le support des fontes SVG ne leur semble pas très important pour le web, et pas très utile en fait.&lt;/p&gt;


&lt;p&gt;Bien entendu, les supporters des fontes SVG pensent le contraire, et ne sont pas d'accord avec les arguments de Roc et cie. Honnêtement, je ne suis pas assez calé en typographie et sur les formats de fontes pour vous dire qui a raison et qui a tord.&lt;/p&gt;


&lt;p&gt;Le fait est que Mozilla ne veut pas implémenter un truc qui leur semble peu utile et qui servirait juste pour avoir un meilleur score à un test. Ils préfèrent dépenser leur énergie à des choses plus importantes. Techniquement, je trouve que ça fait sens, très pragmatique, mais au niveau marketing, c'est sûr, c'est dommage.&lt;/p&gt;


&lt;p&gt;Cependant, rien n'interdit à quiconque de proposer un patch. Si il est bon, il n'y a pas de raison (à mon sens) qu'il soit rejeté. Qui veut faire passer Firefox à 100 au test acid3&amp;nbsp;?&lt;/p&gt;


&lt;p&gt;Mise à jour 25/01/2011&amp;nbsp;: Alexander Limi, un des développeurs de Firefox, &lt;a href=&quot;http://limi.net/articles/firefox-acid3&quot;&gt;confirme le fait que Firefox n'aura pas 100%&lt;/a&gt;. Il rapport aussi, des propos de Boris Zbarsky (un des core-developers de Mozilla), expliquant que le support des fontes SVG dans les autres navigateurs est très minimes et tout juste suffisant pour afficher un score de 100% au test Acid3 (ce qui confirme les propos de Mitch 74 dans son commentaire plus bas).&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>IE9 a quasi rattrapé son retard</title>
    <link>http://ljouanneau.com/blog/post/2010/06/24/IE9-a-quasi-rattrap%C3%A9-son-retard</link>
    <guid isPermaLink="false">urn:md5:7d5cf64cefacaf922772c189e3391e33</guid>
    <pubDate>Thu, 24 Jun 2010 10:39:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Technologies Web</category>
        <category>browsers</category><category>html5</category><category>IE</category><category>standards web</category>    
    <description>    &lt;p&gt;&lt;a href=&quot;http://blogs.msdn.com/b/ie/archive/2010/06/23/html5-native-third-ie9-platform-preview-available-for-developers.aspx&quot;&gt;La troisième preview de IE9&lt;/a&gt; est sortie. J'avoue être plutôt impressionné par toutes les améliorations qu'ils ont encore apporté. IE9, une fois que la version finale sera sortie, sera vraiment dans la cour des grands et aura rattrapé tout son retard technologiquement parlant.&lt;/p&gt;


&lt;p&gt;Une partie &lt;a href=&quot;http://ljouanneau.com/blog/post/2009/11/19/Des-nouvelles-de-IE9&quot;&gt;des questions que je me posais il y a quelques mois&lt;/a&gt; ont maintenant une réponse&amp;nbsp;: c'est implémenté.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Support de SVG (en partie)&lt;/li&gt;
&lt;li&gt;éléments HTML5 &lt;code&gt;&amp;lt;video&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;audio&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;canvas&amp;gt;&lt;/code&gt;,&lt;/li&gt;
&lt;li&gt;support DOM largement amélioré: DOM traversal, DOM level3 core, DOM level3 events,&lt;/li&gt;
&lt;li&gt;fontes téléchargeable WOFF, support complet CSS 2.1, support des media queries CSS3, selecteurs CSS3, bordures CSS3, background CSS3&lt;/li&gt;
&lt;li&gt;un moteur javascript complet et aussi rapide que celui des autres navigateurs (je ne tiens pas compte des pouillèmes de milli secondes de différences entre chacun, à ce niveau, ce n'est plus tellement significatif)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Bref, &lt;a href=&quot;http://samples.msdn.microsoft.com/ietestcenter/&quot;&gt;tout plein de choses&lt;/a&gt; à se mettre sous la dent, avec un score acid3 qui grimpe à 83&lt;sup&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2010/06/24/IE9-a-quasi-rattrap%C3%A9-son-retard#pnote-893-1&quot; id=&quot;rev-pnote-893-1&quot;&gt;1&lt;/a&gt;]&lt;/sup&gt;. Sans parler d'un support très avancé de l'accélération graphique matérielle.&lt;/p&gt;


&lt;p&gt;Il lui manque toutefois encore des technologies qu'ont déjà les concurrents, comme&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;les WebWorkers&lt;/li&gt;
&lt;li&gt;les WebSockets&lt;/li&gt;
&lt;li&gt;formulaires HTML5, HTML5 File API,  et autres éléments de sections HTML5 probablement&lt;/li&gt;
&lt;li&gt;transitions CSS3, transformations CSS3, animations CSS3, gradients,&lt;/li&gt;
&lt;li&gt;WebGL&lt;/li&gt;
&lt;li&gt;SMIL&lt;/li&gt;
&lt;li&gt;Évènements DOM multi touch, support accéléromètre, support géolocalisation&lt;/li&gt;
&lt;li&gt;base IndexedDb&lt;/li&gt;
&lt;li&gt;API Drag and drop (à vérifier)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Et j'en oublie certainement&lt;sup&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2010/06/24/IE9-a-quasi-rattrap%C3%A9-son-retard#pnote-893-2&quot; id=&quot;rev-pnote-893-2&quot;&gt;2&lt;/a&gt;]&lt;/sup&gt;. Ils ont donc encore du chemin à rattraper, et je ne doute pas que certaines de ces technos seront implémentés dans la version finale de IE9.  Pour moi, on pourra qualifier IE9 de navigateur moderne. Car une chose est sûre, les développeurs web auront déjà suffisamment de technologies pour faire des sites modernes qui soient compatibles avec la majorité des navigateurs.&lt;/p&gt;


&lt;p&gt;Le rouleau compresseur Microsoft a mis du temps à se mettre en route. Il est maintenant en marche, et pas qu'un peu. Mozilla, Apple, et Google ne devront pas s'endormir sur leurs lauriers. Cette nouvelle guerre de navigateurs initiée par Mozilla devient vraiment intéressante.&lt;/p&gt;
&lt;div class=&quot;footnotes&quot;&gt;&lt;h4&gt;Notes&lt;/h4&gt;
&lt;p&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2010/06/24/IE9-a-quasi-rattrap%C3%A9-son-retard#rev-pnote-893-1&quot; id=&quot;pnote-893-1&quot;&gt;1&lt;/a&gt;] Même si, &lt;a href=&quot;http://ljouanneau.com/blog/post/2009/02/01/Relativisons-les-resultats-du-test-acid3&quot;&gt;comme je l'ai déjà dit&lt;/a&gt;, ce test n'est pas vraiment significatif&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2010/06/24/IE9-a-quasi-rattrap%C3%A9-son-retard#rev-pnote-893-2&quot; id=&quot;pnote-893-2&quot;&gt;2&lt;/a&gt;] je me suis en partie basé sur la liste des fonctionnalités qui sont implémentés dans Firefox &lt;a href=&quot;https://developer.mozilla.org/en/Firefox_3.6_for_developers&quot;&gt;3.6&lt;/a&gt; ou &lt;a href=&quot;https://developer.mozilla.org/en/Firefox_4_for_developers&quot;&gt;4&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;
</description>
    
    
    
      </item>
    
  <item>
    <title>WebM, le nouveau format video du web</title>
    <link>http://ljouanneau.com/blog/post/2010/05/19/WebM%2C-le-nouveau-format-video-du-web</link>
    <guid isPermaLink="false">urn:md5:1dadae6974da3fa0b3cda4d1d72e6067</guid>
    <pubDate>Wed, 19 May 2010 22:07:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Technologies Web</category>
        <category>h264</category><category>html5</category><category>planete-xulfr</category><category>theora</category><category>video</category><category>VP8</category><category>webm</category>    
    <description>&lt;p&gt;Le petit monde des formats videos, et le web sont en pleine ébullition, avec l'annonce du nouveau format WebM. Mais avant de voir ce que nous promet WebM, faisons d'abord un petit retour en arrière dans l'histoire des codecs pour la balise video de HTML5.&lt;/p&gt;    &lt;p&gt;Dans HTML5, un nouvel élément fait son apparition, l'élément &lt;code&gt;&amp;lt;video&amp;gt;&lt;/code&gt;. La spécification ne spécifie pas de format particulier pour les fichiers vidéos, tout comme la spécification pour la balise &lt;code&gt;img&lt;/code&gt;, bien que les premières versions de la spécification recommandait le format OGG/Theora. Cette recommandation a été retiré car les membres du consortium ne sont pas arrivés à se mettre d'accord à cause de soit disant doutes sur une possible violation de brevets logiciels dans Theora, et donc des procès planant au dessus de la date de ceux qui l'implémenteraient. Et puis certains voulaient plutôt imposer le format H264, plus performant.&lt;/p&gt;


&lt;p&gt;Le problème du H264, c'est qu'il est encombré de brevets logiciels. Il faut aussi passer à la caisse, car il est sujet aux royalties, perçu par le consortium qui l'a créé, MPEG/LA. Et la somme à s'acquitter n'est pas minime puisque ça peut se chiffrer en millions de dollars.&lt;/p&gt;


&lt;p&gt;Et comme je l'ai déjà dit dans des billets précédents, il est hors de question pour Mozilla d'intégrer le support de H264 dans Firefox, pour les deux raisons citées. C'est pourquoi Mozilla n'a intégré que le support de Theora, subissant alors nombreuses critiques et mauvaises prédictions, comme quoi Firefox allait mourir, que le web ne pourra se faire sans H264 parce que c'est le standard de l'industrie, parce qu'il existe des puces qui décodent le H264 (très utile dans les smartphones et autres mini ordinateurs). Mais Mozilla a tenu bon, car ils avaient un plan...&lt;/p&gt;


&lt;p&gt;Parallèlement, Google rachète il y a un an si je me souviens bien, une petite boîte, ON2, qui est à l'origine de Theora, et qui a développé une nouvelle version du format, VP8, qui a des performances bien meilleures que Theora, comparable à H264 selon Google.&lt;/p&gt;


&lt;p&gt;Ils avaient ensuite annoncé il y a quelques semaines &lt;a href=&quot;http://newteevee.com/2010/04/12/google-to-open-source-vp8-for-html5-video/&quot;&gt;qu'ils allaient libérer le format VP8&lt;/a&gt;, et qu'il n'y aurait pas de royalties dessus, et à priori, qu'il n'est pas encombré de brevets logiciels. Cette annonce ne fit pas énormément de bruit, car finalement, ils n'ont pas vraiment détaillé. En tout cas, rien ne présageait le coup d'éclat d'aujourd'hui.&lt;/p&gt;


&lt;p&gt;Ce coup d'éclat, c'est l'annonce de la libération de VP8. Mais pas seulement. &lt;a href=&quot;http://hacks.mozilla.org/2010/05/firefox-youtube-and-webm/&quot;&gt;Mozilla en a fait un billet&lt;/a&gt;. On peut dire que Google, Mozilla et beaucoup d'autres ont bien caché leur jeu depuis des semaines (aaah les &lt;acronym title=&quot;Non Disclosure Agreement&quot;&gt;NDA&lt;/acronym&gt;..). Jugez plutôt.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Il ne s'agit pas seulement d'un codec, mais d'&lt;strong&gt;un format complet, WebM&lt;/strong&gt;, étudié pour le web, avec un conteneur Matroska simplifié, un codec video VP8, un codec audio, Vorbis&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Les sources sont disponibles&lt;/strong&gt; sur &lt;a href=&quot;http://www.webmproject.org/&quot; title=&quot;http://www.webmproject.org/&quot;&gt;http://www.webmproject.org/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mozilla propose déjà en téléchargement&lt;/strong&gt; &lt;a href=&quot;http://nightly.mozilla.org/webm/&quot;&gt;une version experimentale de Firefox, ayant le support de WebM&lt;/a&gt;. Vous pouvez la tester avec &lt;a href=&quot;http://people.mozilla.com/~prouget/demos/vp8/&quot;&gt;une démo de Paul Rouget&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://blog.chromium.org/2010/05/webm-and-vp8-land-in-chromium.html&quot;&gt;Idem pour Chromium&lt;/a&gt;, dans les heures à venir&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.youtube.com/html5&quot;&gt;Youtube a commencé à convertir ses vidéos&lt;/a&gt;&amp;nbsp;!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Plus fort encore, une liste &lt;a href=&quot;http://www.webmproject.org/about/supporters/&quot;&gt;a été publiée&lt;/a&gt;, présentant des acteurs majeurs qui vont supporter WebM . On y trouve bien sûr des logiciels comme Chrome, Firefox, Opera, mais aussi des gens comme Skype ou encore &lt;strong&gt;Adobe&lt;/strong&gt;, &lt;a href=&quot;http://blogs.adobe.com/flashplatform/2010/05/adobe_support_for_vp8.html&quot;&gt;qui indique&lt;/a&gt; qu'ils vont supporter WebM dans Flash&amp;nbsp;! Il y a aussi &lt;a href=&quot;http://windowsteamblog.com/windows/b/bloggingwindows/archive/2010/05/19/another-follow-up-on-html5-video-in-ie9.aspx&quot;&gt;Microsoft qui a annoncé le support dans IE9&lt;/a&gt;, si on installe le codec dans windows.&lt;/p&gt;


&lt;p&gt;Et ce n'est pas tout, il y a aussi &lt;strong&gt;des fabricants de puces&lt;/strong&gt;, comme AMD, Texas Instrument ou NVidia, qui vont donc produire des puces de décodage VP8&amp;nbsp;! Du très lourd&amp;nbsp;!&lt;/p&gt;


&lt;p&gt;Google a donc frappé un grand coup, très fort et bien préparé. Il y a tous les ingrédients pour concurrencer H264 avec succés. Un coup dur je pense pour les supporteurs du H264 comme Apple (qui n'a toujours pas réagi à l'heure où j'écris ces lignes).&lt;/p&gt;


&lt;p&gt;Je pense aussi que, contrairement à Theora, et vu l'annonce, VP8 va rapidement percer. Même coté matériel. Si il y a déjà des supporteurs comme AMD ou NVidia, et qu'il y a des expérimentations sur Youtube, c'est que Google a commencé à traiter avec ces fabricants, pour avoir des puces d'encodage le plus rapidement possible, afin de convertir les millions de vidéo du site YouTube en WebM. Car je doute qu'ils le fassent uniquement de manière logiciel, ce serait trop lent. À coté de ça les navigateurs intègrent déjà WebM, donc il y a  fort à parier que ce sera disponible dans les prochaines versions stables de Firefox, Chrome et Opera.&lt;/p&gt;


&lt;p&gt;Bref, à la fin de l'année, on pourra je pense commencer à utiliser le format VP8 en lieu et place de Theora. Et de H264.&lt;/p&gt;


&lt;p&gt;Une très très bonne nouvelle donc pour le monde du web, que ce nouveau codec vidéo libre et performant.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Batterie de macbook morte</title>
    <link>http://ljouanneau.com/blog/post/2010/05/15/Batterie-de-macbook-morte</link>
    <guid isPermaLink="false">urn:md5:dcb6e8f5a58b027a037597887d1b7ed8</guid>
    <pubDate>Sat, 15 May 2010 12:42:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Geek-log</category>
        <category>batterie</category><category>macbook</category>    
    <description>    &lt;p&gt;Depuis quelques semaines, la batterie de mon macbook ne durait plus que 45 minutes environ, sachant que neuve, je pouvais facilement pianoter pendant 3 heures. En fait, la durée de fonctionnement a littéralement chuté en quelques semaines, puisqu'il n'y pas si longtemps, je pouvais encore tenir 2 heures.&lt;/p&gt;


&lt;p&gt;Cela m'étonnait, car la batterie aujourd'hui n'a que 16 mois. Sur twitter, &lt;a href=&quot;http://prendreuncafe.com/&quot;&gt;Nicolas&lt;/a&gt; m'avait suggéré de &lt;a href=&quot;http://support.apple.com/kb/HT3964?viewlocale=fr_FR&quot;&gt;faire un reset du SMC&lt;/a&gt; mais je n'ai pas vu d'amélioration perceptible.&lt;/p&gt;


&lt;p&gt;Et puis depuis ce matin, impossible de rester plus de 10 minutes avec la batterie. Bien que l'indicateur indique qu'elle est chargée à 75%, le macbook s'éteint au bout de 10 à 15 minutes, sans prévenir évidement.&lt;/p&gt;


&lt;p&gt;Il y a eu par le passé des problèmes de ce genre, avec des batteries quasi neuve, et &lt;a href=&quot;http://support.apple.com/kb/TS1599&quot;&gt;il fallait mettre à jour le firmware du SMC&lt;/a&gt; mais le mien est déjà à jour. On peut aussi &lt;a href=&quot;http://support.apple.com/kb/HT1490&quot;&gt;calibrer la batterie&lt;/a&gt; mais des charges et des décharges complètes, c'est ce que je fais quasi tout le temps (ce qui n'est pas bien, voir plus bas).&lt;/p&gt;


&lt;p&gt;Et puis j'ai découvert &lt;a href=&quot;http://www.interrupt19.com/2008/03/31/8-ways-to-help-your-macbook-battery-last-as-long-as-it-can/&quot;&gt;cette page&lt;/a&gt; qui donne des informations et conseils pour la durée de vie des batteries macbook.&lt;/p&gt;


&lt;p&gt;Les batteries récentes d'Apple sont en lithium-polymère, et donc ont des caractéristiques différentes des batteries classiques Lithium-Ion&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;elles n'aiment pas le chaud, ça réduit la durée de vie.&lt;/li&gt;
&lt;li&gt;la durée de vie chute rapidement quand elle approche de la fin de vie, contrairement aux autres types de batteries, qui faiblissent sur une plus longue periode.&lt;/li&gt;
&lt;li&gt;Apple considère qu'après 300 cycles de charges, la batterie est usagée et doit être remplacée. Même si à 300 cycles de charge, une batterie correctement entretenue devrait être à 80% de sa capacité de charge originelle, toujours selon Apple.&lt;/li&gt;
&lt;li&gt;Il faut éviter des cycles de charge et décharge complète, contrairement à ce qu'il faut faire pour des types de batteries plus anciennes. D'une part, cela est inutile car elles n'ont pas ces problèmes d'effet mémoire que l'on trouve souvent, et d'autre part, ça reduirait en fait leur durée de vie.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;J'ai installé le petit logiciel &lt;a href=&quot;http://www.coconut-flavour.com/coconutbattery/&quot;&gt;Coconut Battery&lt;/a&gt; pour avoir des informations sur l'état de ma batterie&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;304 cycles de charges (en 16 mois)&lt;/li&gt;
&lt;li&gt;capacité de charge&amp;nbsp;: 1662 mAh au lieu de 4100 mAh pour une batterie neuve, soit une capacité qui n'est plus que de 40% (au lieu de 80%)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;En tenant compte du fait que j'ai bien &quot;tabassé&quot; le macbook pendant 16 mois, avec des compilations à répétitions (donc fortes chaleurs), et un fonctionnement d'au moins 12h par jour (dans la semaine), que j'ai régulièrement fait des charges/décharges complètes (au moins 1 jour sur deux, parce que je bosse souvent dans le rer), ces chiffres ne m'étonnent finalement pas.&lt;/p&gt;


&lt;p&gt;Je dois me rendre à l'évidence&amp;nbsp;: ma batterie est morte.&lt;/p&gt;


&lt;p&gt;Je vais attendre un peu avant de la remplacer, car il n'est pas certain que je garde le macbook, il n'est en fait pas à moi mais à Zoomorama. Ça va dépendre du commissaire priseur qui est en charge de liquider le matériel et mobilier de Zoomorama, si il va accepter ou non qu'on lui rachète directement nos machines.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Zoomorama, the end</title>
    <link>http://ljouanneau.com/blog/post/2010/04/30/Zoomorama-the-end</link>
    <guid isPermaLink="false">urn:md5:0a67d2c57a6608a4277baa5b6445a8ad</guid>
    <pubDate>Fri, 30 Apr 2010 11:23:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Perso</category>
        <category>zoomorama</category>    
    <description>    &lt;p&gt;Depuis le courant de la semaine, Zoomorama est en liquidation. Nous n'avons pas su trouver le bon modèle économique à temps, et du coup, plus d'argent pour continuer l'aventure. C'est assez dommage car je suis intimement convaincu que la technologie était très bonne. Les développeurs web avaient à leur disposition une technologie de zooming, non pas sur une simple photo, mais sur un document entier, document en XML et CSS, et avaient accès au DOM du document pour le modifier dynamiquement, comme n'importe quel page web. David Marteau et Olivier Gambier avaient donc réussi le tour de force d'avoir une technologie de zooming proche de la philosophie des standards du web (ce que n'avaient pas nos concurrents).&lt;/p&gt;


&lt;p&gt;J'ai passé un peu plus d'un an et demi dans une équipe formidable, composées de véritables talents. Une dream team. Merci à eux. C'est donc avec un certain regret d'être obligé de s'arrêter là.&lt;/p&gt;


&lt;p&gt;Certains membres de l'équipe sont déjà dans les starting blocks pour enchaîner dans d'autres sociétés, comme Akamai. Et d'autres, comme moi, ont des projets plein la tête. Mais je vous en parlerai en temps utile ;-)&lt;/p&gt;


&lt;p&gt;Vous pouvez aller lire le &lt;a href=&quot;http://blog.zoomodev.com/post/2010/04/28/EOZ&quot;&gt;billet d'Olivier&lt;/a&gt; et &lt;a href=&quot;http://www.zoomoblog.com/zooming/2010/04/zoomorama-closes-down.html&quot;&gt;celui de Franklin&lt;/a&gt; pour en savoir un peu plus sur cette fermeture.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Modifier un fichier ini en php</title>
    <link>http://ljouanneau.com/blog/post/2010/03/29/Modifier-un-fichier-ini-en-php</link>
    <guid isPermaLink="false">urn:md5:c773a5f27353b86c44b4f05f98844b8e</guid>
    <pubDate>Mon, 29 Mar 2010 17:00:00 +0200</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Projets</category>
        <category>format ini</category><category>jelix</category><category>php</category>    
    <description>    &lt;p&gt;J'aime bien utiliser les fichiers ini pour tout ce qui est configuration. En php, c'est très rapide à charger avec la fonction &lt;code&gt;parse_ini_file&lt;/code&gt; (beaucoup plus rapide qu'un fichier de conf en php, avec un facteur 10 je crois), et puis c'est très simple à modifier, la syntaxe étant minimaliste.&lt;/p&gt;


&lt;p&gt;C'est pourquoi j'utilise des fichiers ini dans &lt;a href=&quot;http://jelix.org&quot;&gt;jelix&lt;/a&gt;, et pas des trucs du genre yaml, syntaxe que je trouve hyper compliquée &lt;sup&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2010/03/29/Modifier-un-fichier-ini-en-php#pnote-889-1&quot; id=&quot;rev-pnote-889-1&quot;&gt;1&lt;/a&gt;]&lt;/sup&gt;, en tout cas trop pour l'utiliser pour un fichier de conf &lt;sup&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2010/03/29/Modifier-un-fichier-ini-en-php#pnote-889-2&quot; id=&quot;rev-pnote-889-2&quot;&gt;2&lt;/a&gt;]&lt;/sup&gt;.&lt;/p&gt;


&lt;p&gt;Dans Jelix, il y a des outils pour le développeur pour l'aider à construire son appli, et il arrive donc que ces outils aient à modifier un fichier ini. J'avais fait une première implémentation naïve dans une classe, &lt;a href=&quot;http://bitbucket.org/jelix/jelix-trunk/src/tip/lib/jelix/utils/jIniFile.class.php&quot;&gt;jIniFile&lt;/a&gt; permettant d'enregistrer un fichier ini&amp;nbsp;:  une méthode pour lire (avec &lt;code&gt;parse_ini_file&lt;/code&gt;), une autre pour écrire en lui passant un tableau de clés/valeurs, et le nom du fichier.&lt;/p&gt;


&lt;p&gt;Problème de cette classe&amp;nbsp;: on perd tous les commentaires et les sauts de lignes à la lecture avec parse_ini_file. C'est assez fâcheux pour un fichier de configuration, où les commentaires peuvent être nécessaires.&lt;/p&gt;


&lt;p&gt;D'où une autre classe  &lt;a href=&quot;http://bitbucket.org/jelix/jelix-trunk/src/tip/lib/jelix/utils/jIniFileModifier.class.php&quot;&gt;jIniFileModifier&lt;/a&gt;, qui permet de charger, modifier et enregistrer un fichier ini, sans perdre les commentaires et les espacements. Elle permet même de supprimer une clé/valeur, avec le commentaire qui lui est associé (le commentaire qui la précède). Cette classe supporte les sections et les tableaux de valeurs. En fait, j'ai fait en sorte qu'elle soit compatible au maximum avec le format ini utilisé par &lt;code&gt;parse_ini_file&lt;/code&gt;&lt;sup&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2010/03/29/Modifier-un-fichier-ini-en-php#pnote-889-3&quot; id=&quot;rev-pnote-889-3&quot;&gt;3&lt;/a&gt;]&lt;/sup&gt;.&lt;/p&gt;


&lt;p&gt;Vous pouvez l'utiliser seule dans vos projets, elle est totalement indépendante de Jelix. Par contre, ne l'utilisez pas pour une simple lecture, ce n'est pas son objectif principal, &lt;code&gt;parse_ini_file&lt;/code&gt; est beaucoup plus performante pour ça.&lt;/p&gt;
&lt;div class=&quot;footnotes&quot;&gt;&lt;h4&gt;Notes&lt;/h4&gt;
&lt;p&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2010/03/29/Modifier-un-fichier-ini-en-php#rev-pnote-889-1&quot; id=&quot;pnote-889-1&quot;&gt;1&lt;/a&gt;] pour preuve : la spécification YAML : 77 pages A4, celle du XML : 30 pages...&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2010/03/29/Modifier-un-fichier-ini-en-php#rev-pnote-889-2&quot; id=&quot;pnote-889-2&quot;&gt;2&lt;/a&gt;] si j'avais à choisir un format pour stocker des options de manière arborescente, je choisirais json&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://ljouanneau.com/blog/post/2010/03/29/Modifier-un-fichier-ini-en-php#rev-pnote-889-3&quot; id=&quot;pnote-889-3&quot;&gt;3&lt;/a&gt;] il y a en effet &lt;a href=&quot;http://en.wikipedia.org/wiki/INI_file&quot;&gt;quelques variantes&lt;/a&gt;, suivant les logiciels&lt;/p&gt;&lt;/div&gt;
</description>
    
    
    
      </item>
    
  <item>
    <title>Surcouf, c'etait mieux avant...</title>
    <link>http://ljouanneau.com/blog/post/2010/03/19/Surcouf%2C-c-etait-mieux-avant...</link>
    <guid isPermaLink="false">urn:md5:aba30dbd95505e1edc442dabdb0dd60e</guid>
    <pubDate>Fri, 19 Mar 2010 15:03:00 +0100</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Geek-log</category>
        <category>surcouf</category>    
    <description>    &lt;p&gt;Hier, je me suis fait une petite balade au magasin Surcouf, avenue Daumesnil à Paris. Ça fait au moins un an que j'y suis pas allé. Et j'ai découvert un magasin refait à neuf, avec des beaux stands au design moderne. Et du vide.&lt;/p&gt;


&lt;p&gt;Qu'ont-ils fait de mon magasin préféré des années 90, avec ses allées étroites, ses stands et rayons bondés de gens, mais aussi rempli de matos&amp;nbsp;? Elle est où ma caverne d'ali-baba de centaines de m2 où j'étais sûr de trouver mon bonheur&amp;nbsp;? Il est passé où le royaume du geek, où j'écarquillais les yeux tous les deux mètres à la vue d'une nouveauté ou d'un truc dont j'ignorais l'existence&amp;nbsp;? Elle est où cette ambiance &quot;circus&quot;, totalement décalée, originale, qui existait auparavant&amp;nbsp;?&lt;/p&gt;


&lt;p&gt;Surcouf est devenu un magasin aussi aseptisé que ces autres magasins des chaînes d'électroniques grand public (boulanger, saturne ou autre, voir même la fnac). Je n'y vois plus trop grand d'intérêt d'y aller en fait. Mis à part le fait qu'ils ont peut être quand même encore un peu plus de choix que les grandes chaînes et qu'ils sont dans un quartier encore dédié aux geeks avec tout ces petit magasins d'informatiques autour.&lt;/p&gt;


&lt;p&gt;Fini la magie en tout cas.&lt;/p&gt;


&lt;p&gt;M'enfin ça ne m'a pas empêcher d'y faire une petite emplette...&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Open To Choice</title>
    <link>http://ljouanneau.com/blog/post/2010/03/07/Open-To-Choice</link>
    <guid isPermaLink="false">urn:md5:c33d6a4bedb62688cab3431241d36c7c</guid>
    <pubDate>Sun, 07 Mar 2010 13:43:00 +0100</pubDate>
    <dc:creator>Laurentj</dc:creator>
        <category>Logiciels</category>
        <category>browsers</category>    
    <description>    &lt;p&gt;Depuis quelques années, le web se démocratise énormément. Chaque jour des milliers de nouveaux internautes débarquent sur la toile. Bien entendu, la grande majorité d'entre eux ne sont absolument pas au fait des techniques. C'est ainsi que bon nombre d'entre eux ne savent pas qu'il y a autre chose que facebook sur la toile (&lt;a href=&quot;http://www.readwriteweb.com/archives/facebook_wants_to_be_your_one_true_login.php&quot;&gt;la preuve avec ce billet de readwriteweb&lt;/a&gt;, qui est apparu quelques heures en tête de la recherche &quot;facebook login&quot;, et des internautes débarquant alors sur ce site croyant à faire à une refonte du site facebook), ou encore &lt;a href=&quot;http://jonoscript.wordpress.com/2010/02/18/some-people-cant-read-urls/&quot;&gt;ne savent pas ce qu'est une URL&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Mais ce n'est pas tout, bon nombre d'entre eux ne savent pas ce qu'est un navigateur, ou ne savent pas qu'ils peuvent choisir leur navigateur.&lt;/p&gt;


&lt;p&gt;Depuis quelques jours, les utilisateurs européens de windows 7 se voient proposer &lt;a href=&quot;http://www.browserchoice.eu/BrowserChoice/browserchoice_fr.htm&quot;&gt;une page permettant de choisir leur navigateur web&lt;/a&gt;. C'est déjà un pas, mais peut être pas suffisant, puisque cela n'explique pas ce qu'est un navigateur, et comment faire le bon choix.&lt;/p&gt;


&lt;p&gt;Aussi Mozilla a lancé le site &lt;a href=&quot;http://opentochoice.org&quot; title=&quot;http://opentochoice.org&quot;&gt;http://opentochoice.org&lt;/a&gt;, afin de combler ce manque d'information, et tente de réponde aux questions, et explique notamment &lt;a href=&quot;http://opentochoice.org/fr/2010/02/choisir-son-navigateur-web-est-important/&quot;&gt;pourquoi choisir son navigateur est important&lt;/a&gt;.&lt;/p&gt;</description>
    
    
    
      </item>
    
</channel>
</rss>
