<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom">

  <title>paulrouget.com</title>
  <link href="http://paulrouget.com/"/>
  <link type="application/atom+xml" rel="self" href="http://paulrouget.com/index.xml"/>
  <updated>2012-05-15T22:03:31-07:00</updated>
  <id>http://paulrouget.com/</id>
  <author>
    <name>Paul Rouget</name>
    <email>foo@bar.com</email>
  </author>

  
  
  <entry>
    <id>http://paulrouget.come/fxandroid</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/fxandroid"/>
    <title>A brand new Firefox for Android</title>
    <updated>2012-05-15T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;A brand new Firefox for Android is available.&lt;/h1&gt;
&lt;a href=&quot;https://market.android.com/details?id=org.mozilla.firefox_beta&quot;&gt;&lt;img width=&quot;200&quot; class=&quot;float-right&quot; src=&quot;http://blog.mozilla.org/futurereleases/files/2012/05/betablogpostscreenshot.jpg&quot;&gt;&lt;/a&gt;
&lt;p&gt;And we need testers!&lt;/p&gt;

&lt;style&gt;ul{padding:0}&lt;/style&gt;

&lt;ul&gt;
  &lt;li&gt;It's muuuuch faster than the previous versions
  &lt;li&gt;Download it &lt;a href=&quot;https://market.android.com/details?id=org.mozilla.firefox_beta&quot;&gt;here (market link)&lt;/a&gt;
  &lt;li&gt;Report bugs &lt;a href=&quot;http://mzl.la/JHDMd9&quot;&gt;here&lt;/a&gt; (please :D)
  &lt;li&gt;More info &lt;a href=&quot;http://blog.mozilla.org/futurereleases/2012/05/15/new-firefox-for-android-beta-is-ready-for-testing/&quot;&gt;here (official announcement)&lt;/a&gt;
  &lt;li&gt;It's the same Gecko that you can find on Desktop
  &lt;li&gt;&lt;a href=&quot;http://blog.mozilla.org/ux/2012/05/visual-reboot-of-firefox-mobile-for-android/&quot;&gt;Screenshots and article&lt;/a&gt; about the User experience.
&lt;/ul&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/faenzagaia</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/faenzagaia"/>
    <title>Faenza + Gaia ?</title>
    <updated>2012-03-17T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;p&gt;I want a Faenza-based Gaia theme.&lt;/p&gt;

&lt;style&gt;
  img {
    float: right;
    margin: 0 10px;
    border: 2px dotted #F06;
    width: 150px;
    padding: 2px;
  }
&lt;/style&gt;

&lt;h2&gt;If you don't know Gaia…&lt;/h2&gt;
&lt;a href=&quot;http://joshcarpenter.ca/Boot-to-Gecko&quot;&gt;&lt;img src=&quot;http://imgur.com/3fTXK.png&quot;&gt;&lt;/a&gt;
&lt;p&gt;Mozilla is building an Mobile OS, &lt;a href=&quot;https://wiki.mozilla.org/B2G&quot;&gt;B2G&lt;/a&gt;.
On top of this OS, we are also building a User Interface,
named &lt;a href=&quot;https://wiki.mozilla.org/gaia&quot;&gt;Gaia&lt;/a&gt; (&lt;a href=&quot;http://joshcarpenter.ca/Boot-to-Gecko&quot;&gt;see some mockups&lt;/a&gt;).&lt;/p&gt;

&lt;h2&gt;If you don't know Faenza…&lt;/h2&gt;

&lt;a href=&quot;http://tiheum.deviantart.com/gallery/&quot;&gt;&lt;img src=&quot;http://i.imgur.com/WEedf.png&quot;&gt;&lt;/a&gt;
&lt;p&gt;&lt;a href=&quot;http://tiheum.deviantart.com/art/Faenza-Icons-173323228?q=gallery%3Atiheum%2F26053633&amp;qo=9&quot;&gt;Faenza&lt;/a&gt;
is a famous set of icons for Linux. His author, &lt;a href=&quot;http://tiheum.deviantart.com/&quot;&gt;Tiheum&lt;/a&gt; (Matthieu James), has
also built a theme for Gnome (&lt;a href=&quot;http://tiheum.deviantart.com/art/Gnome-Shell-Faience-255097456?q=gallery%3Atiheum%2F26053633&amp;qo=3&quot;&gt;Faience&lt;/a&gt;),
and made a lot of &lt;a href=&quot;http://tiheum.deviantart.com/gallery/&quot;&gt;other gorgeous things&lt;/a&gt;.

&lt;p&gt;I am a huge fan of &lt;a href=&quot;http://tiheum.deviantart.com/gallery/&quot;&gt;Tiheum's work&lt;/a&gt;. And I believe that a phone UI based
on his work would be a hit. I would love to work on that, but I don't have time. So I am
sharing the idea. It is quite easy to hack Gaia to build a prototype. It is 100%
made of HTML, CSS and JavaScript. So if you feel like working on that, please let me know,
I can help you to start :)&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/krapo</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/krapo"/>
    <title>Musiques de jeux vidéos et séries télé, par Krapo</title>
    <updated>2012-03-12T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;style&gt;
  article &gt; h2 {
    font-size: 20px;
  }
&lt;/style&gt;

&lt;h1&gt;Musiques de jeux vidéos et séries télé, par &lt;a href=&quot;http://krapo.wordpress.com/&quot;&gt;Krapo&lt;/a&gt;.&lt;/h1&gt;

&lt;p class=&quot;quote&quot;&gt;Un mauvais musicien avec de bonnes idées, cela semble être la meilleure façon de me décrire en quelques mots.&lt;/p&gt;

&lt;p&gt;Je ne sais pas si &lt;a href=&quot;http://krapo.wordpress.com/&quot;&gt;Krapo&lt;/a&gt; est un mauvais musicien, mais j'aime beaucoup ce qu'il fait. &quot;Accro à Nolife, Nintendo, musiques progressives, instruments de musique inhabituels&quot;. J'approuve!&lt;/p&gt;

&lt;p&gt;Son &lt;a href=&quot;http://krapo.wordpress.com/&quot;&gt;site&lt;/a&gt; (pleins de trucs à découvir), ces &lt;a href=&quot;http://krapo.wordpress.com/music-covers-reprises/&quot;&gt;reprises&lt;/a&gt; et
si vous voulez l'embauchez pour vos soirées geek, &lt;a href=&quot;http://krapo.wordpress.com/embauchez-moi/&quot;&gt;c'est là&lt;/a&gt;. Et &lt;a href=&quot;https://twitter.com/krapomusic&quot;&gt;son twitter&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Ma sélection:&lt;/p&gt;

  &lt;h2&gt;Portal 2 - Want You Gone - vocoder ukulele glockenspiel melodica &lt;/h2&gt;
  &lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;http://www.youtube.com/embed/3i_Igfsmlgs&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
  (&lt;a href=&quot;http://www.youtube.com/embed/zNAf8v47RaA&quot;&gt;Portal 1 / Still alive&lt;/a&gt; défonce aussi)

  &lt;h2&gt;Jayce et les Conquérants de la Lumière&lt;/h2&gt;
  &lt;iframe width=&quot;420&quot; height=&quot;315&quot; src=&quot;http://www.youtube.com/embed/0dkyIRxlwAg&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;

  &lt;h2&gt;Zelda Ocarina of Time - Lost Woods - Nintendo DSi + ocarina + guitar&lt;/h2&gt;
  &lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;http://www.youtube.com/embed/LopkX-V6q88&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;

&lt;hr&gt;

&lt;p&gt;Oh et, Krapo, si tu lis ça, le vrai générique d'Ulysse 31, &lt;a href=&quot;http://www.youtube.com/watch?v=M2ngOO8ON4M&quot;&gt;c'est ça&lt;/a&gt;. Donc si
tu sais pas quoi faire ce weekend… :)&lt;/p&gt;

</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/Dunning-Kruger-Effect</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/dunning-kruger"/>
    <title>Why do judgmental people usually have bad judgment?</title>
    <updated>2012-03-04T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;Why do judgmental people usually have bad judgment?&lt;/h1&gt;

&lt;p class=&quot;quote&quot;&gt;
It's part of the &lt;a href=&quot;http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect#Supporting_studies&quot;&gt;Dunning-Kruger&lt;/a&gt; effect.&lt;br&gt;
Or, as &lt;a href=&quot;http://en.wikiquote.org/wiki/Bertrand_Russell&quot;&gt;Bertrand Russell&lt;/a&gt; put it, &lt;strong&gt;“The trouble with the world is that the stupid are cocksure and the intelligent are full of doubt.”&lt;/strong&gt;
&lt;/p&gt;

&lt;em&gt;…stolen from &lt;a href=&quot;http://www.reddit.com/r/ask/comments/q5ik3/why_do_judgmental_people_usually_have_bad_judgment/&quot;&gt;reddit&lt;/a&gt;.&lt;/em&gt;

</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/b2gdemo</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/b2gdemo"/>
    <title>B2G demo, with some code inside and a live demo</title>
    <updated>2012-02-29T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;style&gt;
  article &gt; p {text-align: left}
&lt;/style&gt;

&lt;h2&gt;What is &lt;a href=&quot;https://wiki.mozilla.org/B2G&quot;&gt;Boot To Gecko&lt;/a&gt;:&lt;/h2&gt;
&lt;ul&gt;
  &lt;li&gt;An Operating System;
  &lt;li&gt;Linux Kernel + drivers from Android (so B2G can run on most of the phones that are capable of running Android). Works on ARMv7, will probably work on ARMv6;
  &lt;li&gt;Gecko on top of it. The same version you'll find on a regular Firefox;
  &lt;li&gt;Apps are written in HTML, JavaScript and CSS;
  &lt;li&gt;&lt;strong&gt;You don't need to be online to use the Apps&lt;/strong&gt;;
  &lt;li&gt;A set of new JavaScript APIs:
    &lt;ul&gt;
      &lt;li&gt;&lt;a href=&quot;http://wiki.mozilla.org/WebAPI&quot;&gt;WebAPIs&lt;/a&gt;, for bluetooth, sms, telephony, …
      &lt;li&gt;&lt;a href=&quot;http://www.webrtc.org/&quot;&gt;WebRTC&lt;/a&gt;, for streaming, webcam, P2P, …
    &lt;/ul&gt;
  &lt;li&gt;We are working on &lt;a href=&quot;http://brendaneich.com/2012/02/mobile-web-api-evolution/&quot;&gt;standardizing these APIs&lt;/a&gt;;
  &lt;li&gt;The homescreen/launcher is an HTML page. Mozilla's version is named &lt;a href=&quot;http://wiki.mozilla.org/gaia&quot;&gt;Gaia&lt;/a&gt;;
  &lt;li&gt;You can build your own homescreen/launcher;
  &lt;li&gt;The name of the project will probably change;
  &lt;li&gt;It's possible to implement Boot To Webkit too;
  &lt;li&gt;It's Open Source;
  &lt;li&gt;We (Mozilla) &lt;a href=&quot;http://blog.mozilla.com/blog/2012/02/22/mozilla-marketplace-opening-for-app-submissions-soon/&quot;&gt;are working on a MarketPlace&lt;/a&gt;.
&lt;/ul&gt;
&lt;/p&gt;

&lt;h2&gt;Live demo:&lt;/h2&gt;

&lt;p&gt;It's all HTML so it works on a Firefox. Try it now: &lt;a href=&quot;http://paulrouget.com/gaia/&quot;&gt;http://paulrouget.com/gaia/&lt;/a&gt;,
(better to use &lt;a href=&quot;http://nightly.mozilla.org&quot;&gt;Firefox Nightly&lt;/a&gt;).&lt;/p&gt;

&lt;h2&gt;Videos:&lt;/h2&gt;

&lt;p&gt;Myself showing how to hack the inner HTML (sorry for the quality of the video):&lt;/p&gt;
&lt;iframe width=&quot;420&quot; height=&quot;315&quot; src=&quot;http://www.youtube.com/embed/XuPG3jtgefA&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;

&lt;p&gt;Interview with the developers (in English, German, French and Chinese):&lt;/p&gt;
&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;http://www.youtube.com/embed/1pPuWEgKerY&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;

&lt;p&gt;Here is a video of an alternative UI built by Telephonica:&lt;/p&gt;
&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;http://www.youtube.com/embed/OAaH5vikEOM&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;

&lt;h2&gt;Contribute:&lt;/h2&gt;

&lt;p&gt;&lt;a href=&quot;https://developer.mozilla.org/en/Mozilla/Boot_to_Gecko/Building_B2G_for_Samsung_Galaxy_S2&quot;&gt;How to build B2G for Samsung Galaxy S2&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If you want to get involved in the development of Boot2Gecko, take a look at the wiki pages: the UI code (gaia)
&lt;a href=&quot;http://wiki.mozilla.org/Gaia&quot;&gt;wiki.mozilla.org/Gaia&lt;/a&gt; the system code: &lt;a href=&quot;http://wiki.mozilla.org/B2G&quot;&gt;wiki.mozilla.org/B2G&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;And here are some mockups: &lt;a href=&quot;http://joshcarpenter.ca/Boot-to-Gecko&quot;&gt;http://joshcarpenter.ca/Boot-to-Gecko&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Fork the code! &lt;a href=&quot;http://github.com/andreasgal/gaia&quot;&gt;It's on github&lt;/a&gt;.&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/ctxfs</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/ctxfs"/>
    <title>HTML5 Context Menu and FullScreen</title>
    <updated>2012-02-16T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;HTML5 Context Menu and FullScreen API.&lt;/h1&gt;


&lt;p&gt;Do you know you can change the native context menu of an HTML element with the HTML5 &lt;a href=&quot;http://www.whatwg.org/specs/web-apps/current-work/multipage/interactive-elements.html#context-menus&quot;&gt;&lt;code&gt;&amp;lt;menu&gt;&lt;/code&gt; tag&lt;/a&gt;? Do you know you can make any element of your page go fullscreen with the HTML5 &lt;a href=&quot;https://developer.mozilla.org/en/DOM/Using_full-screen_mode&quot;&gt;Fullscreen API&lt;/a&gt;?&lt;/p&gt;
&lt;p&gt;Adding a &quot;fullscreen&quot; entry in the context menu is really simple (&lt;a href=&quot;http://paulrouget.com/runfield/&quot;&gt;demo&lt;/a&gt;):&lt;/p&gt;
&lt;em&gt;(Firefox needed. Webkit does support the Fullscreen API, but not &lt;code&gt;contextmenu&lt;/code&gt; yet.)&lt;/em&gt;

&lt;script src=&quot;https://gist.github.com/1844865.js?file=example.html&quot;&gt;&lt;/script&gt;
&lt;noscript&gt;
  &lt;pre&gt;
  &amp;lt;canvas contextmenu=&quot;fullscreenmenu&quot;&gt;&amp;lt;/canvas&gt;
  &amp;lt;!-- can be a div if you prefer --&gt;

  &amp;lt;menu id=&quot;fullscreenmenu&quot; type=&quot;context&quot;&gt;
    &amp;lt;menuitem label=&quot;fullscreen&quot;
              onclick=&quot;document.querySelector('canvas').requestFullScreen()&quot;&gt;
    &amp;lt;/menuitem&gt;
  &amp;lt;/menu&gt;

  &amp;lt;script&gt;
    HTMLElement.prototype.requestFullScreen =
      HTMLElement.prototype.requestFullScreen ||
      HTMLElement.prototype.webkitRequestFullScreen ||
      HTMLElement.prototype.mozRequestFullScreen ||
      HTMLElement.prototype.oRequestFullScreen ||
      HTMLElement.prototype.msRequestFullScreen;
  &amp;lt;/script&gt;
  &lt;/pre&gt;
&lt;/noscript&gt;

</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/vimdarkroom</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/vimdarkroom"/>
    <title>Darkroom for Vim</title>
    <updated>2012-02-14T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1 class=&quot;quote&quot;&gt;A full-screen writing program or distraction-free editor is a text editor that occupies the full display with the purpose of isolating the writer from the operating system (OS) and other applications. &lt;em style=&quot;font-size:0.5em&quot;&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Distraction-free_editor&quot;&gt;Wikipedia&lt;/a&gt;&lt;/em&gt;&lt;/h1&gt;

&lt;p&gt;I wanted that with Vim. There are ways to do it. You can play with &lt;code&gt;:winpos&lt;/code&gt;, &lt;code&gt;lines&lt;/code&gt; and &lt;code&gt;columns&lt;/code&gt; to achieve this (see &lt;a href=&quot;http://groups.google.com/group/vim_use/browse_thread/thread/72e12e59f0ebd6fd&quot;&gt;here&lt;/a&gt;). There are scripts (&lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=2246&quot;&gt;1&lt;/a&gt;, &lt;a href=&quot;http://projects.mikewest.org/vimroom/&quot;&gt;2&lt;/a&gt;). But all of these seemed complicated.&lt;/p&gt;

&lt;p&gt;Here is a simple-but-not-perfect way to achieve this. This script just hide a couple of things and add a big margin on the left:&lt;/p&gt;

&lt;script src=&quot;https://gist.github.com/1824502.js&quot;&gt; &lt;/script&gt;
&lt;noscript&gt;
  &lt;pre&gt;
&quot;&quot;&quot; FocusMode
function! ToggleFocusMode()
  if (&amp;amp;foldcolumn != 12)
    set laststatus=0
    set numberwidth=10
    set foldcolumn=12
    set noruler
    hi FoldColumn ctermbg=none
    hi LineNr ctermfg=0 ctermbg=none
    hi NonText ctermfg=0
  else
    set laststatus=2
    set numberwidth=4
    set foldcolumn=0
    set ruler
    colorscheme molokai &quot;re-call your colorscheme
  endif
endfunc
nnoremap &lt;F1&gt; :call ToggleFocusMode()&lt;cr&gt;
&lt;/pre&gt;
&lt;/noscript&gt;

&lt;p&gt;Go fullscreen with your terminal, and enjoy:&lt;/p&gt;

&lt;img src=&quot;http://i.imgur.com/F2pjk.gif&quot;&gt;

&lt;p&gt;This is quite dumb, but it works very well for me. Let me know if you find ways to improve this.&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/mdnddg</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/mdnddg"/>
    <title>MDN &amp; DuckDuckGo</title>
    <updated>2012-02-13T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;p&gt;With &lt;a href=&quot;http://duckduckgo.com&quot;&gt;DuckDuckGo&lt;/a&gt;, you can add &lt;code&gt;!js&lt;/code&gt; to your
JavaScript related queries, it will redirect you automatically
to &lt;a href=&quot;https://developer.mozilla.org&quot;&gt;MDN&lt;/a&gt;.&lt;/p&gt;

&lt;a href=&quot;http://duckduckgo.com&quot;&gt;
&lt;img class=&quot;postimg noborder&quot; src=&quot;http://i.imgur.com/yK7yY.png&quot;&gt;
&lt;/a&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/fx2012</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/fx2012"/>
    <title>Firefox 2012 Roadmap and Meeting</title>
    <updated>2012-02-13T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;p&gt;The Firefox roadmap for 2012 has been published: &lt;a href=&quot;https://wiki.mozilla.org/Firefox/Roadmap&quot;&gt;https://wiki.mozilla.org/Firefox/Roadmap&lt;/a&gt;
(see &lt;a href=&quot;http://weblogs.mozillazine.org/asa/archives/2012/02/firefox_in_2012_1.html&quot;&gt;Asa's blog&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;We will talk about this roadmap Tomorrow, Tuesday Feb 14, at 11am Pacific. The call is public. Come if you're interested.
&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-14&quot;&gt;Information here&lt;/a&gt;.&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/disapproval-look</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/disapproval-look"/>
    <title>Disapproval look and Linux</title>
    <updated>2012-02-13T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;ಠ_ಠ&lt;/h1&gt;

&lt;p&gt;Do you see 2 squares instead of the famous &lt;a href=&quot;http://knowyourmeme.com/memes/%E0%B2%A0%E0%B2%A0-look-of-disapproval&quot;&gt;Disapproval Look&lt;/a&gt;?
Install the  Indic Opentype Fonts collection. On archlinux:&lt;/p&gt;
&lt;code&gt;pacman -S extra/ttf-indic-otf&lt;/code&gt;

</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/bzreport</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/bzreport"/>
    <title>Bugzilla Activity Report</title>
    <updated>2012-02-07T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;p&gt;Bugzilla has an interesting feature: &lt;a href=&quot;https://bugzilla.mozilla.org/page.cgi?id=user_activity.html&quot;&gt;User Activity Report&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I didn't know about it until someone mentioned it on IRC yesterday. It's quite useful if you keep track of your daily/weekly
work.&lt;/p&gt;

&lt;p&gt;Also, if you want a prettier output, here is a script that will help. Run it in Scratchpad (Shift-F4):&lt;/p&gt;

&lt;script src=&quot;https://gist.github.com/1758942.js?file=bzprettify.js&quot;&gt;&lt;/script&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/fx7to10</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/fx7to10"/>
    <title>What happened between Firefox 7 and Firefox 10</title>
    <updated>2012-02-02T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;What happened between Firefox 7 and Firefox 10&lt;/h1&gt;

&lt;p&gt;Found &lt;a href=&quot;http://www.reddit.com/r/firefox/comments/p4t9u/firefox_10_has_arrived/c3mmv0i&quot;&gt;this gem&lt;/a&gt; by &lt;a href=&quot;http://www.0xdeadbeef.com/weblog/&quot;&gt;Chris Blizzard on&lt;/a&gt; reddit:&lt;/p&gt;

&lt;style&gt;
  .quote &gt; p {
    text-align: left;
  }
&lt;/style&gt;

&lt;div class=&quot;quote&quot;&gt;
  &lt;p&gt;In between Firefox 7 and Firefox 10 we improved performance, shrunk memory usage, killed leaks, vastly improved hardware accelerated rendering for the canvas element, improved Firefox Sync's setup &amp;amp; reliability, vastly improved the way that add-on compatibility is handled, added the ability to load tabs on demand during a restore, added Twitter search, made the audio and video elements far more reliable, improved our theme integration on OSX Lion, we hide the forward button when it's not useful, fixed a ton of security and crasher bugs. The browser actually looks, feels and acts differently from 7.&lt;/p&gt;

  &lt;p&gt;For developers we added text-overflow-ellipsis, WebSockets, web timing, improved MathML, added support for displaying images in WebGL (via CORS), HTML5 context menus, added support for insertAdjacentHTML, added support for hyphens in CSS to support more than just English, shipped our new TI JS engine (much much faster!), added hooks so you can read DNT state from JS, added support for font-stretch, added support for anti-aliasing in WebGL, CSS 3D transforms and Mozilla's HTML5-based full screen API. We made IndexedDB much faster, shipped a bunch of new web developer tools and a huuuuuuuge pile of things that I haven't listed here.&lt;/p&gt;

  &lt;p&gt;So we've been busy and we like rolling those positive changes out to users as fast as possible. That's why we're doing new releases and bumping the version number quickly. It's not just for marketing. It reflects real change over time.&lt;/p&gt;
&lt;/div&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/myconf</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/myconf"/>
    <title>My Linux Configuration</title>
    <updated>2012-01-27T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;style&gt;
  img {
    padding: 5px;
    border: 1px dashed grey;
  }
&lt;/style&gt;

&lt;p&gt;To follow up on &lt;a href=&quot;http://www.reddit.com/r/archlinux/comments/ow4xu/i_know_its_arch_linux_but_what_skin_and_wm_are/&quot;&gt;this reddit&lt;/a&gt; discussion,&lt;/p&gt;

&lt;a href=&quot;http://i.imgur.com/9wTFO.png&quot;&gt;&lt;img width=&quot;600&quot; src=&quot;http://i.imgur.com/9wTFOh.png&quot;&gt;&lt;/a&gt;

&lt;p&gt;… this is what my desktop look like. Screenshot + configurations files:&lt;/p&gt;

&lt;a href=&quot;http://i.imgur.com/k8am8.png&quot;&gt;&lt;img width=&quot;600&quot; src=&quot;http://i.imgur.com/k8am8h.png&quot;&gt;&lt;/a&gt;

&lt;ul&gt;
  &lt;li&gt;GNU/Linux - Archlinux
  &lt;li&gt;MacBook Air 11&quot;
  &lt;li&gt;XFCE (default panel)
&lt;/ul&gt;

&lt;a href=&quot;http://i.imgur.com/21hhz.png&quot;&gt;&lt;img width=&quot;600&quot; src=&quot;http://i.imgur.com/21hhzh.png&quot;&gt;&lt;/a&gt;

&lt;ul&gt;
  &lt;li&gt;GTK2 theme: &lt;a href=&quot;https://wiki.ubuntu.com/Artwork/Incoming/DustTheme&quot;&gt;Dust&lt;/a&gt; (aur/gtk2-theme-dust)
  &lt;li&gt;Icons: &lt;a href=&quot;http://tiheum.deviantart.com/art/Faenza-Icons-173323228&quot;&gt;Faenza&lt;/a&gt; (aur/faenza-icon-theme)
  &lt;li&gt;Window decorations: &lt;a href=&quot;http://xfce-look.org/content/show.php/Darksun?content=87476&quot;&gt;Darksun&lt;/a&gt;
  &lt;li&gt;&lt;a href=&quot;http://nightly.mozilla.org/&quot;&gt;Firefox Nightly&lt;/a&gt;: default Linux theme
  &lt;li&gt;Pager: &lt;a href=&quot;http://code.google.com/p/neap/&quot;&gt;neap&lt;/a&gt;
&lt;/ul&gt;

&lt;a href=&quot;http://i.imgur.com/bEQGX.png&quot;&gt;&lt;img width=&quot;600&quot; src=&quot;http://i.imgur.com/bEQGXh.png&quot;&gt;&lt;/a&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://gist.github.com/1689941#file_.vimrc&quot;&gt;Vimrc&lt;/a&gt;
  &lt;li&gt;I use a patched version of the Monaco font (&lt;a href=&quot;http://dl.dropbox.com/u/129604/Monaco_Linux-Powerline.otf&quot;&gt;here&lt;/a&gt;)
  &lt;li&gt;&lt;a href=&quot;https://github.com/Lokaltog/vim-powerline&quot;&gt;Vim Powerline&lt;/a&gt; (arrows in statusline - patched font needed)
  &lt;li&gt;&lt;a href=&quot;https://wincent.com/products/command-t&quot;&gt;Command-T&lt;/a&gt;
&lt;/ul&gt;

&lt;a href=&quot;http://i.imgur.com/msvsN.png&quot;&gt;&lt;img width=&quot;600&quot; src=&quot;http://i.imgur.com/msvsNh.png&quot;&gt;&lt;/a&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://tmux.sourceforge.net/&quot;&gt;Tmux&lt;/a&gt; - &lt;a href=&quot;https://gist.github.com/1689941#file_.tmux.conf&quot;&gt;tmux.conf&lt;/a&gt; (patched font needed)
  &lt;li&gt;&lt;a href=&quot;https://github.com/trapd00r/ls--&quot;&gt;ls++&lt;/a&gt;
  &lt;li&gt;To dump my qqueues (mercurial), I wrote an (ugly) node script: &lt;a href=&quot;https://gist.github.com/1689941#file_qqq.js&quot;&gt;qqq.js&lt;/a&gt;
&lt;/ul&gt;

&lt;a href=&quot;http://i.imgur.com/eY2XW.png&quot;&gt;&lt;img width=&quot;600&quot; src=&quot;http://i.imgur.com/eY2XWh.png&quot;&gt;&lt;/a&gt;

&lt;ul&gt;
  &lt;li&gt;I read my emails with Mutt
  &lt;li&gt;Emails are downloaded via &lt;a href=&quot;http://offlineimap.org/&quot;&gt;offlineimap&lt;/a&gt;
  &lt;li&gt;I use 3 instances of Mutt: Inbox, Bugmails, Mailing-lists&lt;/a&gt;
&lt;/ul&gt;

&lt;a href=&quot;http://i.imgur.com/oA9uD.png&quot;&gt;&lt;img width=&quot;600&quot; src=&quot;http://i.imgur.com/oA9uDh.png&quot;&gt;&lt;/a&gt;

&lt;p&gt;If you have questions, please ask on &lt;a href=&quot;http://www.reddit.com/r/archlinux/comments/ozh5a/my_archlinux_desktop_followup/&quot;&gt;reddit&lt;/a&gt; or ping me on &lt;a href=&quot;http://twitter.com/paulrouget&quot;&gt;@paulrouget&lt;/a&gt;&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/myvimrc</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/myvimrc"/>
    <title>My .vimrc</title>
    <updated>2012-01-11T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;my .vimrc&lt;/h1&gt;

&lt;p&gt;Sounds like some people are insterested in my vimrc.
This is the current version of it. Pretty simple these days.&lt;/p&gt;
&lt;p&gt;(sorry, it's not commented. Use &lt;code&gt;:help [cmd]&lt;/code&gt; if
you don't know a command.)&lt;/p&gt;

&lt;script src=&quot;https://gist.github.com/1689941.js?file=.vimrc&quot;&gt;&lt;/script&gt;
&lt;noscript&gt;
&lt;pre&gt;
&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot; PLUGINS
filetype off

set rtp+=~/.vim/bundle/vundle/
call vundle#rc()

Bundle 'gmarik/vundle'
Bundle 'matchit.zip'
Bundle 'The-NERD-Commenter'
Bundle 'The-NERD-tree'
Bundle 'vim-powerline'
Bundle 'Command-T'

&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot; GLOBAL
let mapleader=&quot;,&quot;
colorscheme molokai
set gfn=terminus
set go=

syntax on
filetype plugin indent on
set encoding=utf-8
set hidden
set showcmd
set nowrap
set backspace=indent,eol,start
set autoindent
set copyindent
set number
set shiftround
set ignorecase
set smartcase
set hlsearch
set incsearch
set history=1000
set undolevels=1000
set title
set visualbell
set noerrorbells
set list
set listchars=tab:&gt;.,trail:.,extends:#,nbsp:.
set ttyfast
set mouse=
set nocompatible
set backup
set backupdir=~/.vim_backup
set noswapfile
set fileformats=unix,dos,mac
set laststatus=2
set expandtab
set softtabstop=2 tabstop=2 shiftwidth=2
set ruler
set wildignore=*.swp,*.bak
set wildmode=longest,list

&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot; KEYBINDINGS

map cc &lt;leader&gt;c&lt;space&gt;
map # {v}! par 72&lt;CR&gt;
map &amp; {v}! par 72j&lt;CR&gt;
map &lt;F6&gt; :setlocal spell! spelllang=en&lt;CR&gt;
map &lt;F12&gt; :set invhls&lt;CR&gt;
cmap &lt;C-g&gt; &lt;C-u&gt;&lt;ESC&gt;
command! -bang W w&lt;bang&gt;

&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot; PLUGINS

&quot;let g:Powerline_symbols = 'fancy'
let g:CommandTMaxFiles=5000
let g:CommandTMaxHeight=12
map &lt;C-o&gt; :CommandT&lt;CR&gt;
let g:CommandTAcceptSelectionMap = '&lt;CR&gt;'
let g:CommandTCancelMap = '&lt;C-g&gt;'

let NERDChristmasTree = 1
let NERDTreeSortOrder = ['\/$', '\.js*', '\.cpp$', '\.h$', '*']
nmap &lt;c-b&gt; :NERDTreeToggle&lt;cr&gt;
nmap &lt;C-n&gt; &lt;c-w&gt;&lt;left&gt;&lt;down&gt;&lt;c-w&gt;&lt;c-w&gt;
nmap &lt;C-p&gt; &lt;c-w&gt;&lt;left&gt;&lt;up&gt;&lt;c-w&gt;&lt;c-w&gt;
nmap &lt;C-o&gt; &lt;c-w&gt;&lt;left&gt;&lt;CR&gt;

&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot; FILES SPECIFIC
au BufRead mutt-* set ft=mail
au BufRead mutt-* set invhls
au BufNewFile *.html 0r ~/.vim/templates/html.txt
au BufRead,BufNewFile *.jsm setfiletype javascript
au BufRead,BufNewFile *.xul setfiletype xml
au filetype html,xml set listchars-=tab:&gt;.

&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot; CUSTOM FUNCTIONS

&quot;&quot;&quot; Toggle relative/absolute numbering
function! NumberToggle()
  if(&amp;relativenumber == 1)
    set number
  else
    set relativenumber
  endif
endfunc

nnoremap &lt;F10&gt; :call NumberToggle()&lt;cr&gt;

&quot;&quot;&quot; FocusMode
function! ToggleFocusMode()
  if (&amp;foldcolumn != 12)
    set laststatus=0
    set numberwidth=10
    set foldcolumn=12
    set noruler
    hi FoldColumn ctermbg=none
    hi LineNr ctermfg=0 ctermbg=none
    hi NonText ctermfg=0
  else
    set laststatus=2
    set numberwidth=4
    set foldcolumn=0
    set ruler
    execute 'colorscheme ' . g:colors_name
  endif
endfunc
nnoremap &lt;F1&gt; :call ToggleFocusMode()&lt;cr&gt;
&lt;/pre&gt;
&lt;/noscript&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/books</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/books"/>
    <title>Books I read</title>
    <updated>2012-01-10T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;Books I read.&lt;/h1&gt;

&lt;p class=&quot;tldr&quot;&gt;Want to learn more about modern science, physical cosmology and quantum mechanics?
If, like me, you are a beginner in these fields, I recommend you to read: &quot;A Brief History of Time&quot; (Stephen Hawking),
&quot;Relativity: The Special and General Theory&quot; (Albert Einstein),
and &quot;In Search of Schrödinger's Cat: Quantum Physics And Reality&quot; (John Gribbin).
Hawkin's &quot;The Universe in a Nutshell&quot; is not awesome.&lt;/p&gt;

&lt;p&gt;Recently, we have heard a lot about the &lt;a href=&quot;http://en.wikipedia.org/wiki/Higgs_boson&quot;&gt;Higgs boson particle&lt;/a&gt;. I didn't know much about it, so I started reading (thank you &lt;a href=&quot;http://www.reddit.com/r/askscience/comments/naxmk/the_everything_you_need_to_know_about_the_higgs/&quot;&gt;reddit&lt;/a&gt; for that!). And Oh man, this is hard! I just don't understand most of these things.&lt;/p&gt;
&lt;p&gt;So I am now reading books about physics. I want to understand these things better. I am not a physicist or a mathematician. I don't believe I will ever understand correctly these theories (as you need to have a serious math background), but I feel the need to have a better understanding of how our world works.&lt;/p&gt;
&lt;p&gt;Here are couple of books I've been reading lately. They mostly talk about relativity, quantum mechanic and particle physics&lt;/p&gt;

&lt;h2&gt;The Universe in a Nutshell&lt;/h2&gt;
&lt;p&gt;ISBN 0-553-80202-X - By &lt;a href=&quot;http://en.wikipedia.org/wiki/Stephen_Hawking&quot;&gt;Stephen Hawking&lt;/a&gt;.
This is a pretty book (lot of images). Very famous and recommended as a good introduction to understand physics.
I found it kind of hard to understand. Especially the cosmology explanations. Hawking tries to simplify his explanations,
but I feel like he was mostly explaining the simple things, and skipping the explanations of the complex problems.&lt;/p&gt;
&lt;p&gt;If you want to read this book, and if you already have a basic knowledge of modern physics, I think you should read his first popular-science book first:&lt;em&gt;A Brief History of Time&lt;/em&gt;.&lt;/p&gt;

&lt;h2&gt;A Brief History of Time&lt;/h2&gt;
&lt;p&gt;ISBN 9780553109535 - By &lt;a href=&quot;http://en.wikipedia.org/wiki/Stephen_Hawking&quot;&gt;Stephen Hawking&lt;/a&gt;.
He wrote this book before &lt;em&gt;The Universe in a Nutshell&lt;/em&gt;. But this one is muuuch better. For me, a total revelation.
Seriously. I now understand quantum mechanic better. His cosmology explanations are deeper (black holes everywhere!).
You read the book like a story. He is also talking a bit about him and other physicists.&lt;/p&gt;

&lt;h2&gt;Relativity: The Special and General Theory&lt;/h2&gt;
&lt;p&gt;ISBN-10: 0517884410 &amp;amp; ISBN-13: 978-0517884416 - By &lt;a href=&quot;http://en.wikipedia.org/wiki/Albert_Einstein&quot;&gt;Albert Einstein&lt;/a&gt;.
With this book, you'll have a good understanding of the Special Relativity theory. You will actually understand it,
and will be able to explain it later. The way Einstein makes you ask question to yourself is awesome. You can &quot;feel&quot;
how these things work.&lt;/p&gt;
&lt;p&gt;The General Relativity part is much harder to understand. You basically have to accept it, or have to dig into some
mathematical explanations (not in the book).
Gravity doesn't really exist as a force but is a geometry &quot;trick&quot;? Stick with it!&lt;/p&gt;

&lt;h2&gt;In Search of Schrödinger's Cat: Quantum Physics And Reality&lt;/h2&gt;
&lt;p&gt;ISBN 0-5533-4253-3 - By &lt;a href=&quot;http://en.wikipedia.org/wiki/John_Gribbin&quot;&gt;John Gribbin&lt;/a&gt;.
Woooow! So this is a book about Quantum mechanic. And a damn good one! Gribbin is doing
an amazing job at making his explanations clear, understandable and enjoyable. And he doesn't take you for an idiot.
He is a scientist, and also a very talented writer. Like Hawking in &lt;em&gt;A Brief History Time&lt;/em&gt;, his book also relates science history.
You learn about scientists. About their mistakes (Plank's mathematic mistake that lead him to suggest a &quot;quanta&quot; of
energy). About how they were seeing the world 120 years ago (the &quot;watermelon atom&quot;). And he is very careful with his
abstractions. He tells you when his explanations are just &quot;tricks&quot; to make you understand mathematical equations,
or if things actually look like he says.&lt;/p&gt;
&lt;p&gt;I totally recommend this book.&lt;/p&gt;

&lt;strong&gt;Any recommendation for my next book? (I also love geophysics and biology!)&lt;/strong&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/torontomeetup</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/torontomeetup"/>
    <title>Mozilla Web Meetup (Toronto)</title>
    <updated>2012-01-09T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;Mozilla Web Meetup&lt;br&gt;(Toronto, this Friday, ~4pm)&lt;/h1&gt;

&lt;p&gt;
You are a web developer and in Toronto this Friday? We need you!
We would like to gather some feedback about our new Firefox Developer Tools. We will use you as our guinea pigs. :) We need feedback, and we  are sure you can get us some terrific ideas of how we can improve our tools.
We might have a little party after the (good) work.
&lt;/p&gt;

&lt;p&gt;Feel like coming? To get an invitation, send me an email:&lt;/p&gt;

&lt;pre&gt;To: paul+torontomeetup@mozilla.com
Subject: toronto-moz-meetup

Your name
your email
&lt;/pre&gt;

&lt;p&gt;I'll reply with more details as soon as possible!&lt;/p&gt;
&lt;p&gt;Thanks!&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/new-years-resolutions</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/newyear2012"/>
    <title>New Year's Resolutions</title>
    <updated>2012-01-04T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;blockquote&gt;2012 Resolution: fix more bugs.&lt;/blockquote&gt;
&lt;style&gt;blockquote { margin: 150px 0; }#meta {display: none;}&lt;/style&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/firefoxnightly</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/FirefoxNightly"/>
    <title>Follow @FirefoxNightly</title>
    <updated>2012-01-04T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;p&gt;Follow &lt;a href=&quot;http://twitter.com/firefoxnightly&quot;&gt;@FirefoxNighty&lt;/a&gt;. We talk about the latest Firefox developments, live from Bugzilla!
Oh, and we have a blog: &lt;a href=&quot;http://firefoxnightly.tumblr.com/&quot;&gt;firefoxnightly.tumblr.com&lt;/a&gt;.
Ping me on twitter (@paulrouget) if we are missing anything!&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/b2gdemo</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/b2gdemo"/>
    <title>[video] B2G demo</title>
    <updated>2012-01-04T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;Mozilla's Boot to Gecko (B2G) Demo at MozCamp Asia 2011.&lt;/h1&gt;
&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;http://www.youtube.com/embed/Km9yVHlFkMc&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;Totally WIP - the whole UI is a web page (HTML + JS + CSS), wait for the view-source. Video by
&lt;a href=&quot;http://twitter.com/mozillatunisia&quot;&gt;@mozillatunisia&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;More mockups &lt;a href=&quot;http://pivanov.com/mozilla/gaia/&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/learnbugzilla</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/learnbugzilla"/>
    <title>videos: Learn Bugzilla</title>
    <updated>2011-12-21T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;p&gt;&lt;a href=&quot;http://bugzilla.mozilla.org&quot;&gt;Bugzilla&lt;/a&gt; is far from being perfect for beginners. This giant form is kind of scary. Here are 2 videos
that will help you to demystify most of it:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://blog.johnath.com/&quot;&gt;Johnathan&lt;/a&gt; about filing bugs:&lt;/p&gt;
&lt;video width=&quot;500&quot; controls src=&quot;http://people.mozilla.org/~johnath/bugzilla/BugzillaForHumans.ogv&quot;&gt; &lt;object width=&quot;600&quot; height=&quot;375&quot;&gt;&lt;param name=&quot;allowfullscreen&quot; value=&quot;true&quot; /&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot; /&gt;&lt;param name=&quot;movie&quot; value=&quot;http://vimeo.com/moogaloop.swf?clip_id=9205730&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=00ADEF&amp;amp;fullscreen=1&quot;/&gt;&lt;/object&gt; &lt;/video&gt;

&lt;p&gt;&lt;a href=&quot;https://twitter.com/#!/beltzner&quot;&gt;Beltzner&lt;/a&gt; about searching bugs:&lt;/p&gt;
&lt;iframe width=&quot;420&quot; height=&quot;315&quot; src=&quot;http://www.youtube.com/embed/14W-XguG--U&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;

&lt;h1&gt;Learn bugzilla&lt;/h1&gt;

&lt;p&gt;When people find a bug, I encourage them to open the bug themselves.
You know, the &lt;a href=&quot;http://en.wiktionary.org/wiki/give_a_man_a_fish_and_you_feed_him_for_a_day._Teach_a_man_to_fish_and_you_feed_him_for_a_lifetime&quot;&gt;fish story&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;What usually stops people from filing bugs is the fear to do it wrong. Let me be clear
here: &lt;strong&gt;Yes, you will do something wrong. And this is totally normal!&lt;/strong&gt;
Wrong product (Firefox instead of Core), wrong component, unclear description, etc. It's ok, we will
fix that for you and ask you more questions if needed. And you will learn.&lt;/p&gt;
&lt;p&gt;People are also afraid of reporting a bug that has already been reported earlier. Again, this
is ok. We will &quot;DUPE&quot; it (mark it as duplicate). And your bug report might come with more details,
and give us another angle to look at the issue.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Open a Gecko bug: &lt;a href=&quot;http://is.gd/report_gecko_bug_cc_paul&quot;&gt;http://is.gd/report_gecko_bug_cc_paul&lt;/a&gt;
  &lt;li&gt;Open a Firefox bug: &lt;a href=&quot;http://is.gd/report_firefox_bug_cc_paul&quot;&gt;http://is.gd/report_firefox_bug_cc_paul&lt;/a&gt;
&lt;/ul&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/colorssurvey</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/colorssurvey"/>
    <title>Writing code - Light or dark color scheme?</title>
    <updated>2011-12-20T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;Light or dark color scheme?&lt;/h1&gt;

&lt;p&gt;tl;dr: &lt;em&gt;dark background: 63%, light background: 37%&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;(There are a lot of interesting &lt;a href=&quot;http://news.ycombinator.com/item?id=3373018&quot;&gt;comments on hackernews&lt;/a&gt; about this survey)&lt;/p&gt;

&lt;p&gt;So we are working on a Code Editor for the Firefox DevTools (to edit your CSS files,
or to write some JavaScript code). These days, I have been working on implementing the design of this
tool. In Firefox 11, it will come with a light color scheme.&lt;/p&gt;
&lt;img src=&quot;http://i.imgur.com/ur555.png&quot; alt=&quot;Style Editor mockup&quot;&gt;
&lt;p&gt;In the future, we will probably add a way to choose your own color scheme. Solarized, monokai, desert, ...&lt;/p&gt;
&lt;p&gt;But I was thinking &lt;q&gt;why a light theme by default?&lt;/q&gt;? Are we sure that most of the people people
prefer having a light theme? So &quot;OMG SURVEY!&quot;, got ~1600 answers in 2 hours, which is quite
amazing, and here are the results:&lt;/p&gt;

&lt;dl&gt;&lt;canvas&gt;&lt;pre&gt;
White on black  (dark background) 1015 63%
Black on white (light background) 594 37%
&lt;/pre&gt;&lt;/canvas&gt;&lt;/dl&gt;

&lt;p&gt;Conclusion? &lt;em&gt;Apparently, people prefer dark themes.&lt;/em&gt;
I am not saying we will use a dark theme by default, but for sure,
the option has to be present.
So not sure what we are going to do now, we need to talk with our UX team.
But this will be easier to take a decision with actual data :)&lt;/p&gt;

&lt;p&gt;Thank you all for answering the survey :)&lt;/p&gt;

&lt;p&gt;PS: &lt;em&gt;I think it's just awesome that I can setup such survey in a couple of minutes,
publish it, and get such strong results 2 hours after. Wow!&lt;/em&gt;&lt;/p&gt;

&lt;script&gt;
  var values = {
    dark: {value: 1015, label: &quot;White on black  (dark background)&quot;, color: &quot;#555&quot;},
    light: {value: 594, label: &quot;Black on white (light background)&quot;, color: &quot;#DDD&quot;},
  };

  var total = 0;
  for (var e in values) {
    total += values[e].value;
  }
  console.log(total);

  function drawPi(canvas, width, height) {
    canvas.width = width;
    canvas.height = height;

    var ctx = canvas.getContext(&quot;2d&quot;);
    ctx.strokeStyle = &quot;white&quot;;
    ctx.lineWidth = &quot;2&quot;;

    var lastA = -Math.PI / 2;
    var dl = document.querySelector(&quot;dl&quot;);
    for (var e in values) {

      ctx.fillStyle = values[e].color;

      var a = values[e].value / total;
      a *= 2 * Math.PI;
      a += lastA;

      var dt = document.createElement(&quot;dt&quot;);
      dt.innerHTML = values[e].label
      var dd = document.createElement(&quot;dd&quot;);
      dd.innerHTML = Math.round(100 * (values[e].value / total)) + &quot;% (&quot; + values[e].value + &quot;)&quot;;

      dl.appendChild(dt);
      dl.appendChild(dd);

      dt.style.borderColor = ctx.fillStyle;


      ctx.beginPath();
      ctx.moveTo(width / 2, height / 2);
      ctx.arc(width / 2, height / 2, width / 2 * 0.9, lastA, a, false);
      ctx.closePath();
      ctx.fill();
      ctx.stroke();
      lastA = a;
    }

    ctx.beginPath();
    ctx.arc(width / 2, height / 2, width / 2 * 0.9, 0, Math.PI * 2, false);
    ctx.closePath();
    ctx.stroke();
  }

  drawPi(document.querySelector(&quot;canvas&quot;), 150, 150);

&lt;/script&gt;

&lt;style&gt;
  dl {
    padding: 10px;
    background-color: #261C21;
    color: white;
  }
  dt {
    border-style: solid;
    border-width: 0 0 0 10px;
    margin-top: 10px;
    padding-left: 10px;
  }
  dd {
    display: inline-block;
    width: 30%;
  }
&lt;/style&gt;

</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/bugsfromtwitterfixed</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/bugsfromtwitterfixed"/>
    <title>2 firefox bugs fixed, thanks to good reports on twitter</title>
    <updated>2011-12-16T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;script src=&quot;http://embedtweet.com/javascripts/embed_v2.js&quot;&gt;&lt;/script&gt;

&lt;p&gt;A couple of days ago, &lt;a href=&quot;http://paulrouget.com/e/reportFxBugOnTwitter/&quot;&gt;I wrote about how important it is to be accurate when you report
bugs on Twitter&lt;/a&gt;. I also encouraged my followers to report bugs directly on bugzilla.
Since then, we manage to fix 2 bugs. And that was just pain-free. Let's look at what happened:&lt;/p&gt;

&lt;h2&gt;First bug, wrong label when bookmarking a link that includes nested spans:&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;@manchurian, 7:31 PM - 14 Dec 11&lt;/strong&gt;, reports a bookmark bug:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://twitter.com/#!/manchurian/status/147020827332837376&quot;&gt;Tiny obscure bug when bookmarking links with nested text nodes jsfiddle.net/paa2004/gh8xN/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;@paulrouget, 10:18 PM - 14 Dec 11&lt;/strong&gt;, I isolate the faulty function in another jsfiddle, and ask on twitter if anyone feels like finding what's wrong:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://twitter.com/#!/paulrouget/status/147062974073409536&quot;&gt;HELP! You know JavaScript? Here is a Firefox bug you can probably fix (no need to compile): jsfiddle.net/gh8xN/11/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;@DvdBng, 10:25 PM - 14 Dec 11&lt;/strong&gt;, David Bengoa (Firefox spanish volunteer) finds the bug:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://twitter.com/#!/DvdBng/status/147064784263708672&quot;&gt;something like this? jsfiddle.net/gh8xN/12/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;At, 10:53 PM - 14 Dec 11&lt;/strong&gt;, I open a bug (&lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=710878&quot;&gt;bug 710878&lt;/a&gt;) and attach the fix.&lt;p&gt;

&lt;p&gt;One day after, I add a test, the patch is reviewed by @dietrich. &lt;strong&gt;And done!&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;Second bug, Drag'n droping a file from dribbble.com to the Finder (Mac) creates a corrupted file:&lt;/h2&gt;

&lt;p&gt;This report is interesting because it comes with &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=707600&quot;&gt;a bug&lt;/a&gt; report on bugzilla, by &lt;a href=&quot;http://twitter.com/maxart&quot;&gt;@maxart&lt;/a&gt;.
Once @maxart opened the bug, he pinged me on Twitter, and cc'ed me in the bug. It took me an hour to
figure out what was going on (with the help of @maxart). Then a week pass (got some emails problems). Then I ping a couple of
people on IRC, Gavin found what the problem is (duplicate of an existing bug). 2 hours later, Gavin
posts a patch. &lt;strong&gt;And done!&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Thank you @manchurian, @DvdBng, @maxart and @dietrich!&lt;/strong&gt;&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/reportbugontwitter</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/reportFxBugOnTwitter"/>
    <title>How to report a Firefox bug on Twitter</title>
    <updated>2011-12-09T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;How to report a Firefox bug on Twitter (to me)&lt;/h1&gt;

&lt;p&gt;I have several &lt;a href=&quot;http://twitter.com/paulrouget&quot;&gt;thousands followers on Twitter&lt;/a&gt;. As a Firefox developer,
it's an invaluable way to get inputs from advanced users. I get ideas, I get complains, I get praises, I get bugs.
And believe me, this has a real influence on the quality of Firefox. &lt;strong&gt;Yeah! Thank you all!&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;About bug reports…&lt;/h2&gt;

&lt;p&gt;I get a lot of them. And often, it is too fuzzy to understand what the problem is.
Let me give you an example:&lt;/p&gt;
&lt;blockquote&gt;&quot;Ouch, mediocre rendering of xxx.org/demo.html by Firefox 8 compared to Chrome 17 ! @paulrouget, will this be fixed in Aurora ?&quot;&lt;/blockquote&gt;
&lt;p&gt;Everything is wrong in this tweet:
  &lt;ol&gt;
    &lt;li&gt;You don't tell what is actually wrong. I have to open the page, look, and assume that you might be referring to
    this background being stretched. Don't expect me to &quot;guess&quot; what is wrong with your web page. &lt;strong&gt;Tell me precisely what is wrong!&lt;/strong&gt;
    &lt;li&gt;There are hundred of lines of code. Do you expect me to go through the whole thing? &lt;strong&gt;Please isolate the bug in &lt;a href=&quot;http://jsfiddle.net&quot;&gt;jsfiddle.net&lt;/a&gt;.&lt;/strong&gt;
    &lt;li&gt;&lt;strong&gt;Don't assume it's a Firefox bug because the result is different from Chrome.&lt;/strong&gt; Webkit is not the reference.
    Webkit includes non-standard features. Webkit has bugs, too. Webkit can behave differently because the spec
    has changed. In the case of this tweet, it was a bug in the CSS code of the demo, not in Firefox.
    &lt;li&gt;&lt;em&gt;&quot;Will this be fixed in Aurora?&quot;&lt;/em&gt; You can test it yourself. &lt;strong&gt;Test with the latest development version of Firefox (&lt;a href=&quot;http://firefox.com/nightly&quot;&gt;firefox.com/nightly&lt;/a&gt;)&lt;/strong&gt; to know if it's fixed or not.
  &lt;/ol&gt;
&lt;/p&gt;

&lt;h2&gt;Did you consider opening a bug on &lt;a href=&quot;https://bugzilla.mozilla.org/enter_bug.cgi&quot;&gt;bugzilla.mozilla.org?&lt;/a&gt;?&lt;/h2&gt;

&lt;p&gt;Try to open a bug. It is not that hard. If you're not confident, it's ok. Try to open a bug,
cc me (just type &lt;em&gt;:paul&lt;/em&gt; in the CC field), and I will update the bug if there's anything wrong.
I will also make sure that the concerned developer will look at the bug.&lt;/p&gt;

&lt;p&gt;You probably want to use these links:
&lt;ul&gt;
  &lt;li&gt;Open a Gecko bug: &lt;a href=&quot;http://is.gd/report_gecko_bug_cc_paul&quot;&gt;http://is.gd/report_gecko_bug_cc_paul&lt;/a&gt;
  &lt;li&gt;Open a Firefox bug: &lt;a href=&quot;http://is.gd/report_firefox_bug_cc_paul&quot;&gt;http://is.gd/report_firefox_bug_cc_paul&lt;/a&gt;
&lt;/ul&gt;

&lt;h2&gt;One more thing…&lt;/h2&gt;
&lt;p&gt;Being rude doesn't help. That doesn't happen often, but it happens. As someone else said: &lt;em&gt;&quot;That question would be easier to answer without the personal attacks.&quot;&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Thank you!&lt;/strong&gt;&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/htmltreedesign</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/htmltree"/>
    <title>HTML Tree Design</title>
    <updated>2011-10-04T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;script src=&quot;http://embedtweet.com/javascripts/embed_v2.js&quot;&gt;&lt;/script&gt;
&lt;a href=&quot;http://twitter.com/#!/paulrouget/status/121196368256708609&quot;&gt;Designers, help us to improve the look of the Firefox HTML Tree. See: http://twitter.com/#!/paulrouget/status/121196368256708609&lt;/a&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/workspace</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/workspace"/>
    <title>My workspace is a terminal.</title>
    <updated>2011-09-28T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;My workspace is a terminal.&lt;/h1&gt;

&lt;div id=&quot;slidemypics_788693&quot; style=&quot;float: left; margin-right: 5px&quot;&gt;&lt;/div&gt;&lt;script type=&quot;text/javascript&quot; src=&quot;http://files.slidemypics.com/app/js/embedGenerate.js&quot;&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt;generate(&quot;slidemypics_788693&quot;,&quot;icon&quot;,&quot;http://files.slidemypics.com/app/js/iframe.html?bg_color=1f1f1f&amp;amp;hash=3d0da8aea9a40b32d22188415a256983&amp;amp;r=0.07687836610100374&quot;,&quot;1200&quot;,&quot;660&quot;,&quot;http://farm7.static.flickr.com/6023/6191728138_bcbfdcf7c1_s.jpg&quot;,&quot;http://files.slidemypics.com/app/js/share_icon.png&quot;,&quot;View slideshow&quot;);&lt;/script&gt;&lt;noscript&gt;&lt;a href=&quot;http://www.flickr.com//photos/paulrouget/sets/72157627771384450/&quot;&gt;Flickr set&lt;/a&gt;&lt;/noscript&gt;

&lt;p&gt;This is my setup. You can see:
&lt;a href=&quot;http://tmux.sourceforge.net/&quot;&gt;&lt;em&gt;tmux&lt;/em&gt;&lt;/a&gt; (a &lt;em&gt;screen&lt;/em&gt; equivalent)
&lt;em&gt;Vim&lt;/em&gt;,
&lt;em&gt;zsh&lt;/em&gt;,
&lt;em&gt;Mutt&lt;/em&gt;,
&lt;em&gt;irssi&lt;/em&gt; (running in a &lt;em&gt;dtach&lt;/em&gt; on a server).
(&lt;a href=&quot;http://www.flickr.com//photos/paulrouget/sets/72157627771384450/&quot;&gt;Flickr set&lt;/a&gt;).&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/mozilla-openness</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/openness"/>
    <title>Mozilla Openness facts</title>
    <updated>2011-09-08T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;!-- video-js --&gt;
&lt;link rel=&quot;stylesheet&quot; href=&quot;/video-js/video-js.css&quot; type=&quot;text/css&quot; media=&quot;screen&quot; title=&quot;Video JS&quot; charset=&quot;utf-8&quot;&gt;
&lt;script src=&quot;/video-js/video.js&quot;&gt;&lt;/script&gt;
&lt;script&gt;VideoJS.setupAllWhenReady();&lt;/script&gt;
&lt;!-- /video-js --&gt;

&lt;h1&gt;Mozilla Openness Facts&lt;/h1&gt;

&lt;div class=&quot;video-js-box&quot;&gt;
  &lt;video width=&quot;640&quot; height=&quot;360&quot; class=&quot;video-js&quot; poster=&quot;http://i.imgur.com/KJCZS.png&quot;&gt;
    &lt;source src=&quot;http://videos-cdn.mozilla.net/serv/webmademovies/Moz_Doc_0329_GetInvolved_ST.webm&quot; type=&quot;video/webm&quot;&gt;&lt;/source&gt;
    &lt;source src=&quot;http://videos-cdn.mozilla.net/serv/webmademovies/Moz_Doc_0329_GetInvolved_ST.ogv&quot; type=&quot;video/ogg&quot;&gt;&lt;/source&gt;
    &lt;source src=&quot;http://videos-cdn.mozilla.net/serv/webmademovies/Moz_Doc_0329_GetInvolved_ST.mp4&quot; type=&quot;video/mp4&quot;&gt;&lt;/source&gt;
    &lt;object class=&quot;vjs-flash-fallback&quot; type=&quot;application/x-shockwave-flash&quot; style=&quot;width: 640px; height: 360px;&quot; data=&quot;http://www.mozilla.com/includes/flash/playerWithControls.swf?flv=/serv/webmademovies/Moz_Doc_0329_GetInvolved_ST.mp4&amp;amp;autoplay=false&amp;amp;msg=Play%20Video&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.mozilla.com/includes/flash/playerWithControls.swf?flv=/serv/webmademovies/Moz_Doc_0329_GetInvolved_ST.mp4&amp;amp;autoplay=false&amp;amp;msg=Play%20Video&quot;&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/object&gt;
  &lt;/video&gt;
  &lt;figcaption&gt;[video] What is Mozilla - &lt;a href=&quot;http://www.mozilla.org/contribute&quot;&gt;http://www.mozilla.org/contribute&lt;/a&gt;&lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;So I was planning to publish a long article about what we call &lt;em&gt;Openness&lt;/em&gt; at Mozilla. The article
was very boring. Here are some facts instead:&lt;/p&gt;

&lt;p class=&quot;fact&quot;&gt;
  The Mozilla products are &lt;strong&gt;all&lt;/strong&gt; Free &amp;amp; Open Source, even our websites.
  Check out our &lt;a href=&quot;http://hg.mozilla.org&quot;&gt;Mercurial repository (Firefox &amp;amp; co)&lt;/a&gt;,
  our &lt;a href=&quot;http://svn.mozilla.org/&quot;&gt;SVN repository (our websites)&lt;/a&gt;,
  our &lt;a href=&quot;https://github.com/mozilla/&quot;&gt;Github repository (labs projects and some websites)&lt;/a&gt;.
&lt;/p&gt;

&lt;p class=&quot;fact&quot;&gt;
  If you're part of the Free Software community or the Open Web community, you're welcome to come to the Mozilla offices,
  take a seat, and talk to us. You'll probably find some Mozilla volunteers hanging around.
&lt;/p&gt;

&lt;figure&gt; &lt;img src=&quot;http://farm7.static.flickr.com/6027/5918343958_c56428075f.jpg&quot;&gt;&lt;figcaption&gt;Paris office - Photo by Viking Karwur.&lt;/figcaption&gt; &lt;/figure&gt;

&lt;p class=&quot;fact&quot;&gt;
  You probably know &lt;a href=&quot;http://blog.mozilla.com/blog/2010/10/14/introducing-our-new-ceo-gary-kovacs/&quot;&gt;Gary Kovacs&lt;/a&gt;,
  our CEO. I remember the first time I met him. He came to the Paris Office to discuss the future of Firefox.
  As said before, the office is open to any community member. One of them
  was there to part in the meeting (hello Julia!).
&lt;/p&gt;

&lt;p class=&quot;fact&quot;&gt;
  You can report bugs, participate in the technical discussions, see what we are working on,
  on &lt;a href=&quot;http://bugzilla.mozilla.org&quot;&gt;bugzilla.mozilla.org&lt;/a&gt; and &lt;a href=&quot;https://lists.mozilla.org/listinfo&quot;&gt;our mailing lists&lt;/a&gt;.
  There are only 2 things you won't see in there: important security related bugs, and stupid internal stuff like &lt;q&gt;Hey, I need a new computer.&lt;/q&gt;.
&lt;/p&gt;

&lt;div class=&quot;video-js-box&quot;&gt;
  &lt;video width=&quot;640&quot; height=&quot;360&quot; class=&quot;video-js&quot; poster=&quot;http://www.mozilla.org//images/about/poster.jpg&quot;&gt;
    &lt;source src=&quot;http://videos-cdn.mozilla.net/brand/Mozilla_Firefox_Manifesto_v0.2_640.webm&quot; type=&quot;video/webm&quot;&gt;&lt;/source&gt;
    &lt;source src=&quot;http://videos-cdn.mozilla.net/brand/Mozilla_Firefox_Manifesto_v0.2_640.theora.ogv&quot; type=&quot;video/ogg&quot;&gt;&lt;/source&gt;
    &lt;source src=&quot;http://videos-cdn.mozilla.net/brand/Mozilla_Firefox_Manifesto_v0.2_640.mp4&quot; type=&quot;video/mp4&quot;&gt;&lt;/source&gt;
    &lt;object type=&quot;application/x-shockwave-flash&quot; class=&quot;vjs-flash-fallback&quot; style=&quot;width: 640px; height: 360px;&quot; data=&quot;http://www.mozilla.com/includes/flash/playerWithControls.swf?flv=/serv/brand/Mozilla_Firefox_Manifesto_v0.2_640.mp4&amp;amp;autoplay=false&amp;amp;msg=Play%20Video&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.mozilla.com/includes/flash/playerWithControls.swf?flv=/serv/brand/Mozilla_Firefox_Manifesto_v0.2_640.mp4&amp;amp;autoplay=false&amp;amp;msg=Play%20Video&quot;/&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/object&gt;
  &lt;/video&gt;
  &lt;figcaption&gt;Video from &lt;a href=&quot;http://www.mozilla.org/about/&quot;&gt;http://www.mozilla.org/about/&lt;/a&gt;&lt;/figcaption&gt;
&lt;/div&gt;

&lt;p class=&quot;fact&quot;&gt;
  A lot of our meetings are broadcasted live on &lt;a href=&quot;http://air.mozilla.org&quot;&gt;air.mozilla.org&lt;/a&gt;.
&lt;/p&gt;

&lt;p class=&quot;fact&quot;&gt;
  You want to know about our revenue? Ok, go &lt;a href=&quot;http://www.mozilla.org/foundation/annualreport/2009/sustainability.html&quot;&gt;there&lt;/a&gt; (2009 report, written end of 2010).
&lt;/p&gt;

&lt;p class=&quot;fact&quot;&gt;
  We are publishing every day our performance test results, comparing ourself to other people, shamelessly: &lt;a href=&quot;http://arewefastyet.com/&quot;&gt;arewefastyet.com&lt;/a&gt;. You can find more performance measurements &lt;a href=&quot;http://graphs-new.mozilla.org&quot;&gt;here&lt;/a&gt; (explanation &lt;a href=&quot;http://roberthelmer.com/blog/?p=178&quot;&gt;there&lt;/a&gt;).
&lt;/p&gt;

&lt;figure&gt;&lt;img src=&quot;http://i.imgur.com/cyyvX.png&quot;&gt;&lt;/figure&gt;

&lt;p class=&quot;fact&quot;&gt;
  Same thing for the results of our User Experience research project. Look at this &lt;a href=&quot;https://heatmap.mozillalabs.com/&quot;&gt;heatmap&lt;/a&gt;.
&lt;/p&gt;

&lt;figure&gt;&lt;img src=&quot;http://i.imgur.com/NkhmY.png&quot;&gt;&lt;/figure&gt;

&lt;p class=&quot;fact&quot;&gt;
  You know the little &quot;feedback&quot; button in Firefox Beta? You can see &lt;a href=&quot;http://input.mozilla.com&quot;&gt;our analysis and results online&lt;/a&gt; (more details &lt;a href=&quot;http://aakash.doesthings.com/2011/01/17/firefox-input-dashboard-basic-feature-walkthrough/&quot;&gt;here&lt;/a&gt;).
&lt;/p&gt;

&lt;p class=&quot;fact&quot;&gt;
  You can see the advancement of our work on the Firefox design here: &lt;a href=&quot;http://areweprettyyet.com&quot;&gt;areweprettyyet.com&lt;/a&gt;. You can see what are our priorities, you can comment in the bugs. Same for the addons manager: &lt;a href=&quot;http://www.donotlick.com/&quot;&gt;www.donotlick.com&lt;/a&gt;. (That was for Firefox 4, &lt;a href=&quot;http://newdefault.tumblr.com/&quot;&gt;here&lt;/a&gt; is more designs for the future versions of Firefox).
&lt;/p&gt;

&lt;figure&gt; &lt;img src=&quot;http://i.imgur.com/tDiEi.png&quot;&gt;&lt;/figure&gt;

&lt;p class=&quot;fact&quot;&gt;
  Remember the little dialog when Firefox crashes, sending (anonymous) information about the crash to our server? Well, you can
  see the results here: &lt;a href=&quot;http://crash-stats.mozilla.com&quot;&gt;crash-stats.mozilla.com&lt;/a&gt;. Also, you can see your own crashes if you go to &lt;em&gt;about:crashes&lt;/em&gt;.
&lt;/p&gt;

&lt;p class=&quot;fact&quot;&gt;
  Did I mention we are a family? Shipping a product is hard. See how Damon Sicore (VP of Engineering) &lt;a href=&quot;https://groups.google.com/group/mozilla.dev.planning/browse_thread/thread/edeea49d5339d7e7?pli=1&quot;&gt;talks publicly&lt;/a&gt; to all the developers:
  &lt;q&gt;I know you're all tired and stressed. You all do incredible work every day, and you've built an amazing product. Stay focused. Be nice to each other. Firefox 4 is gonna kick ass, and you should be fiercely proud of it.&lt;/q&gt;
&lt;/p&gt;

&lt;figure&gt;&lt;img src=&quot;http://i.imgur.com/hATtq.jpg&quot;&gt;&lt;figcaption&gt;Damon Sicore&lt;/figcaption&gt;&lt;/figure&gt;

&lt;p class=&quot;fact&quot;&gt;
  Want to follow closely the development of Firefox? No secret, go there: &lt;a href=&quot;https://lists.mozilla.org/listinfo/dev-planning&quot;&gt;dev-planning mailing list&lt;/a&gt;.
&lt;/p&gt;

&lt;p class=&quot;fact&quot;&gt;
  At Mozilla, we have meetings (phone calls). A lot of them are open to anybody from the
  community. Want to be part of the Marketing Community call? &lt;a href=&quot;http://guides.mozilla.org/Marketing&quot;&gt;The number is here&lt;/a&gt;. Want to join the Firefox/Gecko Delivery Meeting? You'll find the phone number &lt;a href=&quot;https://wiki.mozilla.org/Firefox/Planning&quot;&gt;here&lt;/a&gt; (even the video conference URL). Check out the &lt;a href=&quot;http://wiki.mozilla.org&quot;&gt;wiki&lt;/a&gt; for all the calls (better
  to check &lt;a href=&quot;https://lists.mozilla.org/listinfo/dev-planning&quot;&gt;dev-planning&lt;/a&gt; list for the call announcements).
&lt;/p&gt;

&lt;p class=&quot;fact&quot;&gt;
  The roadmap of the Mozilla products? Sure, it's on &lt;a href=&quot;https://wiki.mozilla.org/Roadmaps&quot;&gt;the wiki&lt;/a&gt;. Want to see the features we are working on? Check &lt;a href=&quot;https://wiki.mozilla.org/Features/Firefox&quot;&gt;this&lt;/a&gt; out.
&lt;/p&gt;

&lt;p class=&quot;fact&quot;&gt;
  You can find all our meeting notes online on &lt;a href=&quot;http://blog.mozilla.com/meeting-notes/&quot;&gt;this blog&lt;/a&gt;. Also we have a &lt;a href=&quot;http://blog.mozilla.com/engineeringnews/&quot;&gt;Mozilla Engineering Newsletter&lt;/a&gt;.
&lt;/p&gt;

&lt;p class=&quot;fact&quot;&gt;
  A lot of employees push their weekly status report online, like &lt;a href=&quot;http://www.bitstampede.com/2011/01/17/the-sheppy-report-week-of-january-10/&quot;&gt;Sheppy&lt;/a&gt; or &lt;a href=&quot;http://www.oxymoronical.com/blog/2011/01/Mossop-Status-Update-2011-01-21&quot;&gt;Mossop&lt;/a&gt;.
&lt;/p&gt;

&lt;p class=&quot;fact&quot;&gt;
  How do you think the team synchronises their work? Mailing lists, blogs, IRC, ... all public.
  Here is &lt;a href=&quot;http://limi.net/articles/help-us-finish-firefox-4&quot;&gt;Limi's message&lt;/a&gt; to the volunteers and employees about &lt;q&gt;where to focus their efforts&lt;/q&gt;,
  and &lt;a href=&quot;http://christian.legnitto.com/blog/2011/01/25/updated-firefox-4-beta-plan/&quot;&gt;here&lt;/a&gt; the status update of his team.
  &lt;a href=&quot;http://christian.legnitto.com/blog/2011/01/25/updated-firefox-4-beta-plan/&quot;&gt;Another example&lt;/a&gt;, Christian Legnitto, Firefox Release Manager, giving an update of the Firefox 4 Beta plan.
  We share our stories. Here 2 other examples from John O'Duinn talking about our &lt;a href=&quot;http://oduinn.com/blog/2011/02/23/1797-makefiles/&quot;&gt;Makefiles&lt;/a&gt; and &lt;a href=&quot;http://oduinn.com/blog/2011/02/23/1797-makefiles/&quot;&gt;Branches&lt;/a&gt;.
&lt;/p&gt;

&lt;figure&gt;&lt;img src=&quot;http://i.imgur.com/ijcBr.png&quot;&gt;&lt;/figure&gt;

&lt;p class=&quot;fact&quot;&gt;
  Also, we organize huge parties all together (employees, volunteers). I don't know if
  it means we are open, but at least, it means that we know how to have fun :)
&lt;/p&gt;

&lt;figure&gt;&lt;img src=&quot;http://i.imgur.com/UyjsA.jpg&quot;&gt;&lt;figcaption&gt;Mozilla Summit 2010&lt;/figcaption&gt;&lt;/figure&gt;

&lt;p class=&quot;fact&quot;&gt;
  I have been a Mozillian for 8 years now (5 years as a volunteer). This is a fantastic experience.
  Want to join us? &lt;a href=&quot;http://www.mozilla.org/contribute/areas.html&quot;&gt;Here&lt;/a&gt; are areas where you can can help.
&lt;/p&gt;


&lt;p&gt;&lt;em&gt;Note: This list has been built during the last 6 months. Some links can be outdated.&lt;/em&gt;&lt;/p&gt;

&lt;style&gt;
  body &gt; article &gt; .fact {
    margin: 20px;
    max-width: 400px;
    position: relative;
    text-align: left;
  }
  body &gt; article &gt; .fact:first-letter {
    font-size: 150%;
  }
  body &gt; article &gt; .fact &gt; q {
    color: grey;
    font-style: italic;
  }
  figure img {
    max-width: 400px;
  }

  body &gt; article figcaption {
    display: block;
    color: grey;
    font-style: italic;
    font-size: 70%;
    margin-top: 10px;
  }

&lt;/style&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/taiwan-opera-webos</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/mobilewebapps"/>
    <title>Mobile Web: Taiwan, Opera and WebOS</title>
    <updated>2011-09-05T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1 class=&quot;quote&quot;&gt;I bought a WebOS device and went to Taiwan.
Now I understand why the Web on Mobile is a pretty big deal.&lt;/h1&gt;

&lt;p class=&quot;tldr&quot;&gt;This is a pretty naïve talk about me being stuck
with a phone with no (good) Apps, and observing people in Taïwan
using their phones in a different way that Western people do.
I don't know much about the Asian market and these observations are
from a very short experience with a small group of people. Excuse
the non-scientific analysis.&lt;/p&gt;

&lt;p&gt;I bought a HP Veer (WebOS inside) two weeks ago.
Why? Because I was curious. I wanted to know more about WebOS.
I love the hardware and the &quot;cards&quot; system is awesome.&lt;/p&gt;

&lt;p&gt;Just after that, I went to Taiwan to give a &lt;a href=&quot;http://blog.mozilla.com/gen/2011/09/05/mozilla-meets-opera-%e2%80%94-beyond-html5-dialogue-between-web-developers-and-browser-experts/&quot;&gt;couple of talks&lt;/a&gt; about HTML5.
My talks went well. But I have to admit I learned much more than the audience did.&lt;/p&gt;

&lt;p&gt;How are these events related? Let me tell you.&lt;/p&gt;

&lt;h2&gt;1) I bought a WebOS device&lt;/h2&gt;

&lt;p&gt;
So I got my new phone. Didn't really take the time to play with it. Took the plane.
Landed in Taiwan. Switched on my computer and got this email:
&lt;/p&gt;

&lt;p class=&quot;quote&quot;&gt;HP dropped WebOS. lol !&lt;/p&gt;
&lt;p&gt;Fuck.&lt;/p&gt;
&lt;img class=&quot;float-right&quot; width=&quot;150&quot; src=&quot;http://i.imgur.com/fs6aT.jpg&quot;&gt;

&lt;p&gt;Whatever, I wanted to test the device and WebOS. Time to test/install the Apps I need the most, which are:
&lt;ul&gt;
  &lt;li&gt;Twitter
  &lt;li&gt;eMails
  &lt;li&gt;RSS Reader
  &lt;li&gt;Hackernews
  &lt;li&gt;Reddit
  &lt;li&gt;TripAdvisor
&lt;/ul&gt;
&lt;/p&gt;

&lt;p&gt;The Twitter Apps suck. There is no RSS reader synced with Google Reader. The Hackernews App crashes,
the UIs of Reddit Apps are buggy. And no TripAdvisor App.
&lt;strong&gt;And I knew it will not get better. HP dropped WebOS&lt;/strong&gt;.
&lt;/p&gt;

&lt;p&gt;So what? Did I buy this phone for nothing?&lt;/p&gt;

&lt;h2&gt;2) I went to Taiwan&lt;/h2&gt;

&lt;p&gt;In the mean time, I was in Taiwan, my very first time there.&lt;/p&gt;

&lt;img class=&quot;postimg&quot; width=&quot;200&quot; src=&quot;http://i.imgur.com/obaMk.jpg&quot; title=&quot;I know. I had to try that.&quot;&gt;

&lt;h3&gt;Devices,&lt;/h3&gt;

&lt;p&gt;One of the very first thing you can notice (after the crazy weather) is that they all use phones and tablets.
More than us? I can't really tell. But my impression is that there was no computers anymore. Only tablets and phones.
The main difference was about the diversity.&lt;/p&gt;


&lt;p&gt;Some Apple devices, but not that much. Most of the smartphones are Samsung and HTC phones (no surprise here),
but also a *lot* of feature phones and not-that-smart-phones (old smart phones).
And also tablets. Everywhere. Some iPads, some well-know Android tablets, and a lot of tablets I never heard about.&lt;/p&gt;

&lt;img class=&quot;postimg&quot; width=&quot;200&quot; src=&quot;http://i.imgur.com/BbmYy.jpg&quot; title=&quot;In Taipei, we sell Tablets like we sell Pizza here.&quot;&gt;


&lt;h3&gt;Opera,&lt;/h3&gt;
&lt;p&gt;Opera Mini everywhere!
&lt;img class=&quot;float-right&quot; src=&quot;http://i.imgur.com/suct0.png&quot;&gt;
While Opera Mobile is a normal mobile web browser, Opera Mini is just a small client that connects
to the Opera's server and asks for an URL. Then, the Opera's servers compute the web page, and send
the already rendered web page to the device. All the browsing logic happens in Opera's servers.&lt;/p&gt;

&lt;p&gt;Opera is big there.&lt;/p&gt;


&lt;p&gt;I saw this girl using Opera Mini on an iPad. While I totally understand why you would use Opera on a feature phone, using Opera on an iPad looked weird to me. The stock browser is very good, why would you bother installing another browser? Well, I asked her. She didn't really manage to give me a well-argued answer. Sounded like it was a normal thing. She was surprised I was surprised.&lt;/p&gt;

&lt;p&gt;I understand now that Opera is a risk-free browsing experience over there.&lt;/p&gt;

&lt;p&gt;Opera is big because,
&lt;ul&gt;
  &lt;li&gt;Chinese websites work on Opera. Opera is a safe way to browse the web when you are in Asia.
  Opera works for any websites, on any phones;
  &lt;li&gt;they are present on feature phones;
  &lt;li&gt;they are in &quot;the places to be&quot;, talking to OEMs, and being actively present at all the web-related events. They were giving talks at COSCUP (an Open Source conference. Opera is not Open Source at all);
  &lt;li&gt;Android devices are sold with Opera.
&lt;/ul&gt;

&lt;h3&gt;Apps,&lt;/h3&gt;

&lt;p&gt;What about Apps? I really can't tell. Smartphones and tablets use Android 2.3 and Honeycomb. I saw people using Apps for games and Instant Messaging on modern smartphones. But all these feature phones, they don't really have Apps.&lt;/p&gt;
&lt;p&gt;Native Apps are not the only way to use web services. It's just an option.&lt;/p&gt;

&lt;img class=&quot;float-right&quot; src=&quot;http://i.imgur.com/nszKy.png&quot;&gt;
&lt;p&gt;Look at &lt;a href=&quot;http://plurk.com&quot;&gt;Plurk&lt;/a&gt;. It's a famous Asian social network. I saw people using Native Apps, but also
a lot of people using the &lt;a href=&quot;http://m.plurk.com&quot;&gt;Web App&lt;/a&gt;. Do you use the Web Twitter client on your phone?&lt;/p&gt;
&lt;p&gt;For sure, they use a web browser much more than I do, and they don't have this &quot;App reflex&quot;.&lt;/p&gt;

&lt;p class=&quot;quote&quot;&gt;Western people all use the same kind of smartphones. Android phones or iPhones. We also use
the same kind of services. Twitter, Facebook, Google. The lack of diversity in the Operating Systems
and in the Services we use made us forget that Web Browsers on phones are a crucial thing.&lt;/p&gt;

&lt;h2&gt;3) What I've learned&lt;/h2&gt;

&lt;p&gt;I realize now that I don't really use a web browser on my phone.
Really. On my Android phone, I use mostly Native Apps, and I use the browser
when I have to. I have this &quot;App reflex&quot;:&lt;/p&gt;

&lt;p class=&quot;quote&quot;&gt;I don't really use a browser anymore. Once I know what service I need, I download an
App and use it.&lt;/p&gt;

&lt;p&gt;Some people can't or don't want to use Native Apps. Because their phones don't have Apps, or because there is just
no good Apps for what they want to do, or because, well, because they don't need to.&lt;/p&gt;

&lt;p&gt;And they don't need to because the browsers have always been good enough. Thank Opera for that.&lt;/p&gt;

&lt;p class=&quot;quote&quot;&gt;While in the Western world we were looking at Apple bringing pretty Apps in an expensive device, in the Eastern world, Opera was bringing a working web browser to all the existing devices.&lt;/p&gt;

&lt;p&gt;
Two different stories, two different behaviors. I don't say that one is better than the other.
Native Apps are easier to use and look better. Web Apps are available everywhere and can't be blocked.
&lt;/p&gt;

&lt;h2&gt;4) What do I do with my WebOS phone then?&lt;/h2&gt;

&lt;p&gt;I use Web Apps now. Only Web Apps. The web browser is decent, based on Webkit.
It's been 2 weeks now, and I like it so far.&lt;/p&gt;

&lt;p&gt;Here are some examples:&lt;/p&gt;

&lt;p&gt;Have you heard about &lt;a href=&quot;http://hahlo.com&quot;&gt;Hahlo&lt;/a&gt;? It's a web client for Twitter. It's damn good.
This is my new twitter client:&lt;/p&gt;
&lt;a href=&quot;http://hahlo.com&quot;&gt;&lt;img class=&quot;postimg&quot; src=&quot;http://i.imgur.com/6reCN.png&quot;&gt;&lt;/a&gt;

&lt;p&gt;The original hackernews website doesn't look good on a mobile phone.
But someone created &lt;a href=&quot;http://ihackernews.com&quot;&gt;a mobile version&lt;/a&gt; of this page:&lt;/p&gt;
&lt;a href=&quot;http://ihackernews.com&quot;&gt;&lt;img class=&quot;postimg&quot; src=&quot;http://i.imgur.com/AMXB5.png&quot;&gt;&lt;/a&gt;

&lt;p&gt;Here is my App Launcher:&lt;/p&gt;

&lt;img style=&quot;width:180px; border: 2px solid black;&quot; src=&quot;http://i.imgur.com/m6GaQ.png&quot;&gt;
&lt;img style=&quot;width:180px; border: 2px solid black;&quot; src=&quot;http://i.imgur.com/ZNkrD.png&quot;&gt;

&lt;h3&gt;What I miss,&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;I don't really like the web Reddit client. On Android, I still use the Native App;
  &lt;li&gt;And I didn't find any good web &quot;Clock&quot; App;
  &lt;li&gt;At Mozilla, we use Zimbra for our webmail, but I don't really like it;
  &lt;li&gt;The native Google Maps is better than the web one (on WebOS).
&lt;/ul&gt;

&lt;h2&gt;5) Web Apps, is it working? What can we improve?&lt;/h2&gt;

&lt;p&gt;It is working. The best example is probably Hahlo. But web developers
need to use the &lt;a href=&quot;https://developer.mozilla.org/en/mobile&quot;&gt;right technologies&lt;/a&gt;
(viewport, geolocation, Media Queries, localStorage, App Cache, …).&lt;/p&gt;

&lt;p&gt;HTML5 (and CSS3, and the different APIs coming with HTML5) is pretty powerful.
But still behind Native features. Here is a couple of features I would really love to see:&lt;/p&gt;

&lt;h3&gt;Notifications&lt;/h3&gt;
&lt;p&gt;I want Hahlo (my Web Twitter client) to notify me when I have a new @mention.
Firefox for mobile &lt;a href=&quot;https://developer.mozilla.org/en/DOM/Displaying_notifications&quot;&gt;supports notifications&lt;/a&gt;
on Android. Not sure about Webkit.&lt;/p&gt;

&lt;h3&gt;Big icons&lt;/h3&gt;
&lt;p&gt;Favicons are not big enough. The iPod touch icons (present in a lot of websites)
are served when you use an iPhone or an iPod. People should start using bigger icons.
See &lt;a href=&quot;http://blog.margaretleibovic.com/post/8099813509/larger-site-icons&quot;&gt; Margaret's blog post about this&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Look at the Hahlo icon here for example:&lt;/p&gt;
&lt;img class=&quot;postimg&quot; src=&quot;http://i.imgur.com/wXvuS.png&quot;&gt;

&lt;h3&gt;Register as content-handler&lt;/h3&gt;
&lt;p&gt;I want Web Apps to be able to declare themselves as being able to handle a type of content. Images for example. Or music. Then I would be able to have a Music player or a Gallery App that uses my local files.&lt;/p&gt;
&lt;p&gt;And I want them to be able to be present in the &quot;share&quot; menu.&lt;/p&gt;
&lt;h3&gt;Custom CSS / JS&lt;/h3&gt;
&lt;p&gt;A lot of web pages are not mobile-ready yet. Or have some minor bugs that make
them unusable on my device. I want to be able to fix them, and to share these fixes.
Like for hackernews for example. Right now, I have to use another website that just
fixes the CSS.&lt;/p&gt;
&lt;p&gt;I want something like Stylish and GreaseMonkey. &lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://developer.mozilla.org/en/Jetpack&quot;&gt;JetPack&lt;/a&gt; allows that for Firefox Mobile.&lt;/p&gt;

&lt;h3&gt;More!&lt;/h3&gt;

&lt;p&gt;And I won't be against more APIs :)
At Mozilla, we are already working on a set of APIs that woud make Web Apps really
really powerful. With Google and Opera, we are also working on WebRTC to bring
Real-Time Video and P2P connections to the web.&lt;/p&gt;

&lt;h3&gt;As for Mozilla,&lt;/h3&gt;
&lt;p&gt;The Mozilla Mobile team didn't wait for me to address these issues.
After this experience, I understand better what we are doing at Mozilla:
&lt;ul&gt;
  &lt;li&gt;Building &lt;a href=&quot;http://hacks.mozilla.org/2011/08/introducing-webapi/&quot;&gt;new APIs&lt;/a&gt; for the Web;
  &lt;li&gt;Bringing a Web-App-to-Native-App mechanism in Firefox Mobile (try Firefox Aurora on Android);
  &lt;li&gt;&lt;a href=&quot;http://blog.margaretleibovic.com/post/8099813509/larger-site-icons&quot;&gt;Working&lt;/a&gt; on this big icon issue;
  &lt;li&gt;And bringing more competition with Firefox Mobile, because diversity is a good way
  to make sure the web is evolving, and not getting stuck in a not-that-healthy
  state, like Native Apps could be (think about the WebOS experience).
&lt;/ul&gt;

&lt;p style=&quot;font-size: 1.5em&quot; class=&quot;quote&quot;&gt;As long as you have a good browser, your device won't become a brick.&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/firefoxlinks</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/fxlinks"/>
    <title>Firefox links</title>
    <updated>2011-08-15T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;link rel=&quot;stylesheet&quot; href=&quot;/css/syntax.css&quot;&gt;

&lt;p&gt;Back from holidays! … and lot happened in the Firefox world while I was offline. Here are some interesting links.&lt;/p&gt;

&lt;article&gt;
  &lt;h3&gt;JavaScript: experimenting with DOM Joystick Events - &lt;a href=&quot;http://weblog.bocoup.com/javascript-firefox-nightly-introduces-dom-joystick-events&quot;&gt;LINK&lt;/a&gt;&lt;/h3&gt;
  &lt;em&gt;This is an experimental patch. Not in Firefox yet.&lt;/em&gt;
  &lt;iframe width=&quot;425&quot; height=&quot;349&quot; src=&quot;http://www.youtube.com/embed/xy17eyjnxsk&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
&lt;/article&gt;

&lt;article&gt;
  &lt;h3&gt;Firefox 7 uses less memory than Firefox 6 (and 5 and 4): often 20% to 30% less, and sometimes as much as &lt;strong style=&quot;color:#F06;background-color:#000;padding:0 4px;&quot;&gt;50%&lt;/strong&gt; less. - &lt;a href=&quot;http://blog.mozilla.com/nnethercote/2011/08/09/firefox-7-is-lean-and-fast-2/&quot;&gt;LINK&lt;/a&gt;&lt;/h3&gt;
  &lt;img class=&quot;postimg&quot; src=&quot;http://blog.mozilla.com/nnethercote/files/2011/08/average2.png&quot;&gt;
&lt;/article&gt;

&lt;article&gt;
  &lt;h3&gt;Brendan Eich about ES6 - &lt;a href=&quot;http://www.aminutewithbrendan.com/pages/20110805&quot;&gt;LINK&lt;/a&gt;&lt;/h3&gt;
  &lt;audio controls src=&quot;http://minutewith.s3.amazonaws.com/amwb-20110805.ogg&quot;&gt;&lt;/audio&gt;
&lt;/article&gt;

&lt;article&gt;
  &lt;h3&gt;How do Firefox users use Tabs? - &lt;a href=&quot;http://blog.mozilla.com/userresearch/2011/08/test-pilot-new-tab-study-results/&quot;&gt;LINK&lt;/a&gt;&lt;/h3&gt;
  &lt;img class=&quot;postimg&quot; src=&quot;http://blog.mozilla.com/userresearch/files/2011/08/temp.png&quot;&gt;
&lt;/article&gt;

&lt;article&gt;
  &lt;h3&gt;The New Firefox Permissions Manager - &lt;a href=&quot;http://www.ghacks.net/2011/08/14/the-new-firefox-permissions-manager/&quot;&gt;LINK&lt;/a&gt;&lt;/h3&gt;
  &lt;img class=&quot;postimg&quot; src=&quot;http://i.imgur.com/6i6Tq.png&quot;&gt;
&lt;/article&gt;

&lt;article&gt;
  &lt;h3&gt;DevTools update. Test the higlighter - &lt;a href=&quot;http://antennasoft.net/robcee/2011/08/08/highlighter-integration-build-august-7-2011/&quot;&gt;LINK&lt;/a&gt;&lt;/h3&gt;
  &lt;img class=&quot;postimg&quot; src=&quot;http://i.imgur.com/Swi22.jpg&quot;&gt;
&lt;/article&gt;

&lt;article&gt;
  &lt;h3&gt;Rainbow and WebRTC - &lt;a href=&quot;http://mozillalabs.com/rainbow/2011/08/04/whats-next-rainbow-and-webrtc/&quot;&gt;LINK&lt;/a&gt;&lt;/h3&gt;
  &lt;img class=&quot;postimg&quot; style=&quot;border:none&quot; src=&quot;http://mozillalabs.com/wp-content/themes/labs_project/img/rainbow-header.png&quot;&gt;
&lt;/article&gt;

&lt;article&gt;
  &lt;h3&gt;Strengthening User Control of Add-ons - &lt;a href=&quot;https://blog.mozilla.com/addons/2011/08/11/strengthening-user-control-of-add-ons/&quot;&gt;LINK&lt;/a&gt;&lt;/h3&gt;
  &lt;img class=&quot;postimg&quot; src=&quot;http://blog.mozilla.com/addons/files/2011/08/3rdparty-install-small.png&quot;&gt;
&lt;/article&gt;


&lt;style&gt;
  body &gt; article &gt; article  {
    border-left: 3px solid black;
    padding-left: 30px;
  }
&lt;/style&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/qqueues</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/qqueues"/>
    <title>mercurial, mq and multiple patch queues</title>
    <updated>2011-08-02T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;p&gt;I haven't heard about &lt;code&gt;hg qqueue&lt;/code&gt; until today (thank you &lt;a ahref=&quot;http://twitter.com/#!/robodesign&quot;&gt;Mihai&lt;/a&gt;!). It allows you to
manage several patch queues. More info: &lt;code&gt;hg help qqueue&lt;/code&gt; or &lt;a href=&quot;http://stevelosh.com/blog/2010/08/a-git-users-guide-to-mercurial-queues/#multiple-patch-queues&quot;&gt;here&lt;/a&gt;. I realize I'm not the only one to do not know that, so I'm sharing :)&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/firefox.next</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/2011.firefox.next"/>
    <title>Firefox.next</title>
    <updated>2011-06-27T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;The future of Firefox&lt;/h1&gt;
&lt;p&gt;Some people are saying that &quot;browsers are done&quot;. I'm happy these people are not working for Mozilla :)&lt;/p&gt;
&lt;p&gt;So just in case you didn't know, Firefox roadmap is open to anyone. Just take a look at these &lt;strong&gt;~100&lt;/strong&gt; features
we are working on for Firefox (&lt;a href=&quot;https://wiki.mozilla.org/Features/Firefox&quot;&gt;link&lt;/a&gt;), these &lt;strong&gt;~70&lt;/strong&gt; features
we are working on for Firefox Mobile (&lt;a href=&quot;https://wiki.mozilla.org/Features/Mobile&quot;&gt;link&lt;/a&gt;) or these &lt;strong&gt;~70&lt;/strong&gt; features we are working on for the
web platform (&lt;a href=&quot;https://wiki.mozilla.org/Features/Platform&quot;&gt;link&lt;/a&gt;).
&lt;p&gt;Things I can't wait for:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Crypto client side (&lt;a href=&quot;https://wiki.mozilla.org/DOMCryptAPI&quot;&gt;link&lt;/a&gt;)
  &lt;li&gt;Media Processing: Capture and recording Webcam &amp;amp; P2P streaming in the browser(&lt;a href=&quot;http://weblogs.mozillazine.org/roc/archives/2011/06/media_processin.html&quot;&gt;link&lt;/a&gt;)
  &lt;li&gt;Identity &amp;amp; Verified Email Service (&lt;a href=&quot;https://wiki.mozilla.org/Identity/Features/Verified_Email_Service&quot;&gt;link&lt;/a&gt;) - &lt;a href=&quot;http://people.mozilla.com/~faaborg/files/projects/firefoxAccount/&quot;&gt;Interactive mockup&lt;/a&gt;
  &lt;li&gt;Home &amp;amp; new tab pages (&lt;a href=&quot;http://blog.mozilla.com/faaborg/2011/06/10/home-tab-and-new-tab-conceptual-mockups/&quot;&gt;link&lt;/a&gt;)
  &lt;li&gt;Social/Sharing mechanism (&lt;a href=&quot;http://f1.mozillamessaging.com/&quot;&gt;link&lt;/a&gt;)
  &lt;li&gt;Web Apps (&lt;a href=&quot;http://apps.mozillalabs.com&quot;&gt;link&lt;/a&gt;)
&lt;/ul&gt;
&lt;img class=&quot;postimg&quot; style=&quot;border:none&quot; src=&quot;/assets/posts/firefox-256-noshadow.png&quot;&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/mqpatch_vim</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/mqpatch_vim"/>
    <title>mq-patch &amp; vim</title>
    <updated>2011-06-26T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;link rel=&quot;stylesheet&quot; href=&quot;/css/syntax.css&quot;&gt;

&lt;h1&gt;mq-patch &amp;amp; Vim&lt;/h1&gt;

&lt;p&gt;&lt;em&gt;Update: I forgot about the &quot;len &gt; 0&quot; test. Thx @padenot for the quick fix.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Update2: Thanks to @hoaproject, now it works even if Vim is not open in the Root directory.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;If you use the &lt;a href=&quot;https://developer.mozilla.org/en/Mercurial_queues&quot;&gt;Mercurial Queues&lt;/a&gt; (and you should!)
and &lt;a href=&quot;http://vim.org&quot;&gt;Vim&lt;/a&gt;, you may want to know which patch you are working on.&lt;/p&gt;
&lt;p&gt;Here is how I managed to put the name of the current patch in my status bar:&lt;p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;vim&quot;&gt;&lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; g:mqStatusPath &lt;span class=&quot;p&quot;&gt;=&lt;/span&gt; substitute&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;system&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;hg root --cwd &amp;quot;&lt;/span&gt; .
                     getcwd&lt;span class=&quot;p&quot;&gt;()),&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;\n&amp;quot;, &amp;quot;&amp;quot;, &amp;quot;g&amp;quot;) . &amp;quot;/.hg/patches/status&amp;quot;&lt;/span&gt;

&lt;span class=&quot;k&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;!&lt;/span&gt; GetCurrentMqPatch&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; filereadable&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;g:mqStatusPath&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
      &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; patchesList &lt;span class=&quot;p&quot;&gt;=&lt;/span&gt; readfile&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;g:mqStatusPath&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
      &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; len&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;patchesList&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;0&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; split&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;patchesList[&lt;span class=&quot;m&quot;&gt;-1&lt;/span&gt;]&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;:&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;[&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;]
      &lt;span class=&quot;k&quot;&gt;endif&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;endif&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;endfunction&lt;/span&gt;

&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;%{GetCurrentMqPatch&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;}\ %F%&lt;span class=&quot;k&quot;&gt;m&lt;/span&gt;%&lt;span class=&quot;k&quot;&gt;r&lt;/span&gt;%&lt;span class=&quot;k&quot;&gt;h&lt;/span&gt;%&lt;span class=&quot;k&quot;&gt;w&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Screenshot:&lt;/p&gt;
&lt;img class=&quot;frame&quot; src=&quot;/assets/posts/mqpatch_vim.png&quot;&gt;

&lt;p&gt;Here is the full code for my status bar (part of this code is from &lt;a href=&quot;http://www.reddit.com/r/vim/comments/gexi6/a_smarter_statusline_code_in_comments/&quot;&gt;this guy&lt;/a&gt;):&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;vim&quot;&gt;&lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; g:mqStatusPath &lt;span class=&quot;p&quot;&gt;=&lt;/span&gt; substitute&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;system&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;hg root --cwd &amp;quot;&lt;/span&gt; .
                     getcwd&lt;span class=&quot;p&quot;&gt;()),&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;\n&amp;quot;, &amp;quot;&amp;quot;, &amp;quot;g&amp;quot;) . &amp;quot;/.hg/patches/status&amp;quot;&lt;/span&gt;

&lt;span class=&quot;k&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;!&lt;/span&gt; GetCurrentMqPatch&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; filereadable&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;g:mqStatusPath&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
      &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; patchesList &lt;span class=&quot;p&quot;&gt;=&lt;/span&gt; readfile&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;g:mqStatusPath&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
      &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; len&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;patchesList&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;0&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; split&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;patchesList[&lt;span class=&quot;m&quot;&gt;-1&lt;/span&gt;]&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;:&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;[&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;]
      &lt;span class=&quot;k&quot;&gt;endif&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;endif&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;endfunction&lt;/span&gt;

&lt;span class=&quot;c&quot;&gt;&amp;quot;set statusline=%{GetCurrentMqPatch()}\ %F%m%r%h%w&lt;/span&gt;

&lt;span class=&quot;k&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;!&lt;/span&gt; MyStatusLine&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;mode&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;

    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; filereadable&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;g:mqStatusPath&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
      &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt; .&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;%#PatchColor#&amp;quot;&lt;/span&gt; . GetCurrentMqPatch&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt; . &lt;span class=&quot;s2&quot;&gt;&amp;quot;%*&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;endif&lt;/span&gt;

    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; a:&lt;span class=&quot;k&quot;&gt;mode&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;Enter&amp;#39;&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt;.&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;%#StatColor#&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;endif&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt;.&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;\(%n\)\ %f\ &amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; a:&lt;span class=&quot;k&quot;&gt;mode&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;Enter&amp;#39;&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt;.&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;%*&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;endif&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt;.&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;%#Modified#%m&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; a:&lt;span class=&quot;k&quot;&gt;mode&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;Leave&amp;#39;&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt;.&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;%*%r&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;elseif&lt;/span&gt; a:&lt;span class=&quot;k&quot;&gt;mode&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;Enter&amp;#39;&lt;/span&gt;
        &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt;.&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;%r%*&amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;endif&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;let&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt; .&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;c&quot;&gt;&amp;quot;\ (%l/%L,\ %c)\ %P%=%h%w\ %y\ [%{&amp;amp;encoding}:%{&amp;amp;fileformat}]\ \ &amp;quot;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;endfunction&lt;/span&gt;

au &lt;span class=&quot;nb&quot;&gt;WinEnter&lt;/span&gt; * &lt;span class=&quot;k&quot;&gt;setlocal&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;%&lt;span class=&quot;p&quot;&gt;!&lt;/span&gt;MyStatusLine&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;Enter&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
au &lt;span class=&quot;nb&quot;&gt;WinLeave&lt;/span&gt; * &lt;span class=&quot;k&quot;&gt;setlocal&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;%&lt;span class=&quot;p&quot;&gt;!&lt;/span&gt;MyStatusLine&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;Leave&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;set&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;statusline&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;%&lt;span class=&quot;p&quot;&gt;!&lt;/span&gt;MyStatusLine&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;Enter&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

&lt;span class=&quot;k&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;!&lt;/span&gt; InsertStatuslineColor&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;mode&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
  &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; a:&lt;span class=&quot;k&quot;&gt;mode&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;i&amp;#39;&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;hi&lt;/span&gt; StatColor guibg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;orange ctermbg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;lightred
  &lt;span class=&quot;k&quot;&gt;elseif&lt;/span&gt; a:&lt;span class=&quot;k&quot;&gt;mode&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;r&amp;#39;&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;hi&lt;/span&gt; StatColor guibg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;mh&quot;&gt;#e454ba&lt;/span&gt; ctermbg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;magenta
  &lt;span class=&quot;k&quot;&gt;elseif&lt;/span&gt; a:&lt;span class=&quot;k&quot;&gt;mode&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&amp;#39;v&amp;#39;&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;hi&lt;/span&gt; StatColor guibg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;mh&quot;&gt;#e454ba&lt;/span&gt; ctermbg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;magenta
  &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;
    &lt;span class=&quot;nb&quot;&gt;hi&lt;/span&gt; StatColor guibg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;red&lt;/span&gt; ctermbg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;red&lt;/span&gt;
  &lt;span class=&quot;k&quot;&gt;endif&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;endfunction&lt;/span&gt; 

au &lt;span class=&quot;nb&quot;&gt;InsertEnter&lt;/span&gt; * &lt;span class=&quot;k&quot;&gt;call&lt;/span&gt; InsertStatuslineColor&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;v:&lt;span class=&quot;nb&quot;&gt;insertmode&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
au &lt;span class=&quot;nb&quot;&gt;InsertLeave&lt;/span&gt; * &lt;span class=&quot;nb&quot;&gt;hi&lt;/span&gt; StatColor guibg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;mh&quot;&gt;#95e454&lt;/span&gt; guifg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;black ctermbg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;lightgreen ctermfg&lt;span class=&quot;p&quot;&gt;=&lt;/span&gt;black
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;



</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/designinspiration</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/designinspiration"/>
    <title>Design inspiration</title>
    <updated>2011-05-19T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;bookmarks/inspiration/design&lt;/h1&gt;

&lt;p&gt;For pixel lovers:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://dribbble.com/&quot;&gt;dribbble.com&lt;/a&gt; (excellent!)
  &lt;li&gt;&lt;a href=&quot;http://forrst.com/snaps&quot;&gt;forrst.com&lt;/a&gt;
  &lt;li&gt;&lt;a href=&quot;http://emberapp.com&quot;&gt;emberapp.com&lt;/a&gt;
  &lt;li&gt;&lt;a href=&quot;http://mycolorscreen.com/&quot;&gt;mycolorscreen.com&lt;/a&gt; (mobile)
  &lt;li&gt;&lt;a href=&quot;http://pttrns.com/recent&quot;&gt;pttrns.com&lt;/a&gt; (mobile)
  &lt;li&gt;&lt;a href=&quot;http://noteandpoint.com/&quot;&gt;noteandpoint.com&lt;/a&gt; (great presentations)
  &lt;li&gt;&lt;a href=&quot;http://ffffound.com/&quot;&gt;ffffound.com&lt;/a&gt; beyond pixels
  &lt;li&gt;&lt;a href=&quot;http://patterntap.com/collections&quot;&gt;patterntap.com&lt;/a&gt; collections of UI patterns
  &lt;li&gt;&lt;a href=&quot;http://ui-patterns.com/&quot;&gt;ui-patterns.com&lt;/a&gt;
&lt;/ul&gt;

</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/emulators</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/emulators"/>
    <title>Emulators in Javascript</title>
    <updated>2011-05-18T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;This is getting crazy :)&lt;/h1&gt;

&lt;p&gt;&lt;a href=&quot;http://bellard.org/&quot;&gt;Fabrice Bellard&lt;/a&gt; (mister ffmpeg, qemu &amp;amp; co) wrote 
&lt;a href=&quot;http://bellard.org/jslinux/tech.html&quot;&gt;a CPU (x86 32-bits) emulator&lt;/a&gt;
in pure JavaScript. &lt;a href=&quot;http://www.grantgalitz.org&quot;&gt;Grant Galitz&lt;/a&gt;, as for him, wrote
&lt;a href=&quot;http://www.grantgalitz.org/gameboy/&quot;&gt;a GameBoy color&lt;/a&gt; emulator.&lt;/p&gt;

&lt;p&gt;These emulators are possible because of fast JS engines and new appropriate objects:
&lt;a href=&quot;https://developer.mozilla.org/en/JavaScript_typed_arrays&quot;&gt;Typed Arrays&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Here is a screencast of these emulators:&lt;/p&gt;

&lt;iframe class=&quot;frame&quot;  width=&quot;720&quot; height=&quot;500&quot; src=&quot;http://www.youtube.com/embed/Ri5r037YIn0&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
&lt;em&gt;If you want to see the commands I'm typing, switch to 720p.&lt;/em&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/editors</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/editors"/>
    <title>What code editor do you use?</title>
    <updated>2011-05-18T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;link rel=&quot;stylesheet&quot; href=&quot;/css/syntax.css&quot;&gt;

&lt;h1&gt;What code editor do you use?&lt;/h1&gt;
&lt;p&gt;That's the question I asked to &lt;a href=&quot;http://twitter.com/paulrouget&quot;&gt;my twitter followers&lt;/a&gt; (mostly web developers,
and FLOSS people. Yes, it's biased). And this is the result (around 140 results):&lt;/p&gt;

&lt;dl&gt;&lt;canvas&gt;Your browser doesn't support canvas.&lt;/canvas&gt;&lt;/dl&gt;

&lt;em&gt;Unknown means &quot;one single answer for an editor, and I never heard about it&quot; :)&lt;/em&gt;

&lt;style&gt;
  dl {
    font-size: 10px;
    -moz-column-count:2;
    -webkit-column-count:2;
    -o-column-count:2;
    -ms-column-count:2;
    column-count:2;
    background-color: #261C21;
    padding: 20px;
    color: white;
  }
  dt {
    border-style: solid;
    border-width: 0 0 0 10px;
    display: inline-block;
    width: 30%;
    margin-top: 10px;
    padding-left: 10px;
  }
  dd {
    display: inline-block;
    width: 30%;
  }
&lt;/style&gt;

&lt;script&gt;
  var editors = {
    &quot;textmate&quot;: 25.33,
    &quot;vim&quot;: 20.83,
    &quot;notepad++&quot;: 15,
    &quot;unknown&quot;: 11,
    &quot;emacs &quot;: 9.83,
    &quot;coda &quot;: 8.83,
    &quot;komodoedit&quot;: 7,
    &quot;aptana&quot;: 6.33,
    &quot;geany&quot;: 5,
    &quot;gedit&quot;: 4.83,
    &quot;komodo&quot;: 4.33,
    &quot;eclipse&quot;: 4.5,
    &quot;sublimetext&quot;: 4,
    &quot;bbedit&quot;: 3.83,
    &quot;etexteditor&quot;: 3.5,
    &quot;espresso&quot;: 2.5,
    &quot;intellij&quot;: 2,
    &quot;dreamweaver&quot;: 2,
    &quot;netbeans&quot;: 1.83,
    &quot;jedit&quot;: 1.5
  }


  var total = 0;
  for (var e in editors) {
    total += editors[e];
  }
  console.log(total);

  function drawPi(canvas, width, height) {
    canvas.width = width;
    canvas.height = height;

    var ctx = canvas.getContext(&quot;2d&quot;);
    ctx.strokeStyle = &quot;white&quot;;
    ctx.lineWidth = &quot;2&quot;;

    var lastA = -Math.PI / 2;
    var dl = document.querySelector(&quot;dl&quot;);
    for (var e in editors) {

      var r = Math.random() * 255;
      var g = Math.random() * 255;
      var b = Math.random() * 255;
      ctx.fillStyle = &quot;rgb(&quot; + ~~r + &quot;, &quot; + ~~g + &quot;, &quot; + ~~b + &quot;)&quot;;

      var a = editors[e] / total;
      a *= 2 * Math.PI;
      a += lastA;

      var dt = document.createElement(&quot;dt&quot;);
      dt.innerHTML = e;
      var dd = document.createElement(&quot;dd&quot;);
      dd.innerHTML = ~~(100 * (editors[e] / total)) + &quot;%&quot;;

      dl.appendChild(dt);
      dl.appendChild(dd);

      dt.style.borderColor = ctx.fillStyle;


      ctx.beginPath();
      ctx.moveTo(width / 2, height / 2);
      ctx.arc(width / 2, height / 2, width / 2 * 0.9, lastA, a, false);
      ctx.closePath();
      ctx.fill();
      ctx.stroke();
      lastA = a;
    }

    ctx.beginPath();
    ctx.arc(width / 2, height / 2, width / 2 * 0.9, 0, Math.PI * 2, false);
    ctx.closePath();
    ctx.stroke();
  }

  drawPi(document.querySelector(&quot;canvas&quot;), 150, 150);

&lt;/script&gt;

&lt;p&gt;The data:&lt;/p&gt;
&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;javascript&quot;&gt;&lt;span class=&quot;cm&quot;&gt;/* Some people answered &amp;quot;gedit and emacs&amp;quot;&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;   or &amp;quot;vim and eclipse and notepad++&amp;quot;.&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;   Then I count such results as &amp;quot;0.5 + 0.5&amp;quot;&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt;   and &amp;quot;0.33 + 0.33 + 0.33&amp;quot; */&lt;/span&gt;

  &lt;span class=&quot;kd&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;editors&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;textmate&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;25.33&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;vim&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;20.83&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;notepad++&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;15&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;unknown&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;11&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;emacs &amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;9.83&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;coda &amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;8.83&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;komodoedit&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;7&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;aptana&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;6.33&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;geany&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;5&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;gedit&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;4.83&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;komodo&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;4.33&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;eclipse&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;4.5&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;sublimetext&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;4&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;bbedit&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;3.83&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;etexteditor&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;3.5&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;espresso&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;2.5&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;intellij&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;dreamweaver&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;netbeans&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;1.83&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;s2&quot;&gt;&amp;quot;jedit&amp;quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;mf&quot;&gt;1.5&lt;/span&gt;
  &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;



</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/progressmetter</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/progressmeter"/>
    <title>&lt;progress> in Firefox nightlies</title>
    <updated>2011-05-14T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;p&gt;&amp;lt;progress&gt;, a new HTML5 tag, is now available in &lt;a href=&quot;http://firefox.com/nightly&quot;&gt;Firefox Nightlies&lt;/a&gt;
. Thank &lt;a href=&quot;http://blog.oldworld.fr&quot;&gt;Mounir Lamouri&lt;/a&gt; for the hard work :)&lt;/p&gt;

&lt;video class=&quot;postimg&quot; src=&quot;http://pmo.paulrouget.com/~prouget/data/progressmeter.webm&quot; controls&gt;&lt;/video&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/html5inthewild</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/html5inthewild"/>
    <title>HTML5 in the wild</title>
    <updated>2011-05-13T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;HTML5 in the wild&lt;/h1&gt;

&lt;p&gt;These are not demos, but actual web pages, using HTML5 &amp;amp; friends.
Less &quot;crazy&quot;, more useful.&lt;/p&gt;

&lt;iframe class=&quot;frame&quot; width=&quot;700&quot; height=&quot;600&quot; src=&quot;/slides/embedder.html#html5inthewild/slides.html&quot;&gt;
  &lt;a href=&quot;/slides/html5inthewild/slides.html&quot;&gt;link to the presentation&lt;/a&gt;
&lt;/iframe&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/dzslides2-beta</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/dzslides2beta"/>
    <title>DZSlides 2.0 beta</title>
    <updated>2011-05-13T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;q&gt;Oyez! Oyez! Braves gens.&lt;/q&gt;
&lt;h1&gt;DZSlides 2 Beta is here&lt;/h1&gt;

&lt;p&gt;And I need testers :)&lt;/p&gt;

&lt;iframe class=&quot;frame&quot; width=&quot;560&quot; height=&quot;349&quot; src=&quot;http://www.youtube.com/embed/YEbwGoL-fTI&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;

&lt;p&gt;See &lt;a href=&quot;http://paulrouget.com/dzslides/&quot;&gt;paulrouget.com/dzslides&lt;/a&gt;. Any bug report/feedback would be really appreciated. Especially about the comprehension
of the project. It's quite simple, but I'm not sure it's pretty straight forward to understand.&lt;/p&gt;

&lt;p&gt;Also, I just can't make it work for Opera. There's a lot of gfx glishes (on Linux at least). It should work, more or less, on IE9.&lt;/p&gt;

&lt;p&gt;Here are 3 presentations I made with DZSlides. Hope it's gonna make you feel excited by this tool :)&lt;/p&gt;

&lt;p&gt;Enjoy:&lt;/p&gt;

&lt;h2&gt;Why you should fear the Ninja Turtles.&lt;/h2&gt;

&lt;iframe class=&quot;frame&quot; width=&quot;700&quot; height=&quot;600&quot; src=&quot;/slides/embedder.html#tmnt/slides.html&quot;&gt;
  &lt;a href=&quot;/slides/tmnt/slides.html&quot;&gt;link to the presentation&lt;/a&gt;
&lt;/iframe&gt;

&lt;h2&gt;What is DZSlides?&lt;/h2&gt;

&lt;iframe class=&quot;frame&quot; width=&quot;700&quot; height=&quot;600&quot; src=&quot;/slides/embedder.html#dzslides-introduction.html&quot;&gt;
  &lt;a href=&quot;/slides/dzslides-introduction.html&quot;&gt;link to the presentation&lt;/a&gt;
&lt;/iframe&gt;

&lt;h2&gt;HTML5 in the wild&lt;/h2&gt;

&lt;iframe class=&quot;frame&quot; width=&quot;700&quot; height=&quot;600&quot; src=&quot;/slides/embedder.html#html5inthewild/slides.html&quot;&gt;
  &lt;a href=&quot;/slides/html5inthewild/slides.html&quot;&gt;link to the presentation&lt;/a&gt;
&lt;/iframe&gt;
</content>
  </entry>
  
  
  
  
  
  <entry>
    <id>http://paulrouget.come/simpsonsCSS</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/simpsons"/>
    <title>CSS Simpsons</title>
    <updated>2011-04-30T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;link rel=&quot;stylesheet&quot; href=&quot;/css/syntax.css&quot;&gt;

&lt;style&gt;
  #simpsons {
    background-color: #2B2B2B;
    width: 600px;
    height: 300px;
    text-align: center;
  }
  #simpsons p {
    width: 40px;
    height: 40px;
    display: inline-block;
    margin-left: 18px;
    margin-right: 18px;
    -moz-transition: 0.1s;
    -webkit-transition: 0.1s;
    -o-transition: 0.1s;
    -ms-transition: 0.1s;
    transition: 0.1s;
  }
  #simpsons p:hover {
    -moz-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
  }
  #maggie {
    background-color: #FFC60A;
  }
  #homer {
    border-top: 40px solid #FFC60A;
    background-color: white;
    border-bottom: 40px solid #008BAA;
  }
  #marge {
    border-top: 40px solid #008BAA;
    background-color: #FFC60A;
    border-bottom: 80px solid #AEC774;
  }
  #bart {
    border-top: 40px solid #FFC60A;
    background-color: #008BAA;
  }
  #lisa {
    border-top: 40px solid #FFC60A;
    background-color: #F25822;
  }
  h1 {
    color: white!important;
    background-color: transparent!important;
    border: none!important;
    display: block!important;
    text-align: center;
  }

&lt;/style&gt;


&lt;div id=&quot;simpsons&quot;&gt;
  &lt;p title=&quot;maggie&quot; id=&quot;maggie&quot;&gt;&lt;/p&gt;
  &lt;p title=&quot;homer&quot; id=&quot;homer&quot;&gt;&lt;/p&gt;
  &lt;p title=&quot;marge&quot; id=&quot;marge&quot;&gt;&lt;/p&gt;
  &lt;p title=&quot;bart&quot; id=&quot;bart&quot;&gt;&lt;/p&gt;
  &lt;p title=&quot;lisa&quot; id=&quot;lisa&quot;&gt;&lt;/p&gt;

  &lt;h1&gt;The Simpsons&lt;/h1&gt;
&lt;/div&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;html&quot;&gt;&lt;span class=&quot;nt&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;id=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;simpsons&amp;quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;
  &lt;span class=&quot;nt&quot;&gt;&amp;lt;p&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;title=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;maggie&amp;quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;id=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;maggie&amp;quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
  &lt;span class=&quot;nt&quot;&gt;&amp;lt;p&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;title=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;homer&amp;quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;id=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;homer&amp;quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
  &lt;span class=&quot;nt&quot;&gt;&amp;lt;p&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;title=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;marge&amp;quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;id=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;marge&amp;quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
  &lt;span class=&quot;nt&quot;&gt;&amp;lt;p&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;title=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;bart&amp;quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;id=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;bart&amp;quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
  &lt;span class=&quot;nt&quot;&gt;&amp;lt;p&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;title=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;lisa&amp;quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;id=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;quot;lisa&amp;quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
&lt;span class=&quot;nt&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;


&lt;span class=&quot;nt&quot;&gt;&amp;lt;style&amp;gt;&lt;/span&gt;
  &lt;span class=&quot;nf&quot;&gt;#simpsons&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;background-color&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;#2B2B2B&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;width&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;600px&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;height&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;300px&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;text-align&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;center&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
  &lt;span class=&quot;nf&quot;&gt;#simpsons&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;p&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;width&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;40px&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;height&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;40px&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;display&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;inline&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;block&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;margin-left&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;18px&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;margin-right&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;18px&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;transition&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;0.1s&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
  &lt;span class=&quot;nf&quot;&gt;#simpsons&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;p&lt;/span&gt;&lt;span class=&quot;nd&quot;&gt;:hover&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;transform&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;scale&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;m&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
  &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
  &lt;span class=&quot;nf&quot;&gt;#maggie&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;background-color&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;#FFC60A&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
  &lt;span class=&quot;nf&quot;&gt;#homer&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;border-top&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;40px&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;solid&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;#FFC60A&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;background-color&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;white&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;border-bottom&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;40px&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;solid&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;#008BAA&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
  &lt;span class=&quot;nf&quot;&gt;#marge&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;border-top&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;40px&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;solid&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;#008BAA&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;background-color&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;#FFC60A&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;border-bottom&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;80px&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;solid&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;#AEC774&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
  &lt;span class=&quot;nf&quot;&gt;#bart&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;border-top&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;40px&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;solid&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;#FFC60A&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;background-color&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;#008BAA&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
  &lt;span class=&quot;nf&quot;&gt;#lisa&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;border-top&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;40px&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;solid&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;#FFC60A&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;background-color&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;#F25822&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;nt&quot;&gt;&amp;lt;/style&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;



&lt;em&gt;Inspired by &lt;a href=&quot;http://www.reddit.com/r/pics/comments/h0s21/the_simpsons/&quot;&gt;this&lt;/a&gt;&lt;/em&gt;.

</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/infographicsInHTML5</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/infographicsInHTML5"/>
    <title>[challenge] Build your infographics in HTML5 and CSS3</title>
    <updated>2011-04-29T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;p&gt;&lt;em&gt;I challenge you to create a beautiful CSS3/HTML5 infographic :) See at the end of the article for more infos.&lt;/em&gt;&lt;/p&gt;

&lt;h1&gt;Why you should build your infographics in HTML5 and CSS3.&lt;/h1&gt;

&lt;p&gt;I see a lot of infographics around here, and most of them could be built only with web technologies (HTML5 + CSS3 + SVG).&lt;/p&gt;

&lt;img class=&quot;postimg&quot; src=&quot;/assets/posts/infographics.jpg&quot;&gt;
&lt;em&gt;src: 
&lt;a href=&quot;http://www.flickr.com/photos/digitaltrip/5404675738/&quot;&gt;1&lt;/a&gt;
&lt;a href=&quot;http://www.flickr.com/photos/neobanksy/5220645831/sizes/s/&quot;&gt;2&lt;/a&gt;
&lt;a href=&quot;http://www.flickr.com/photos/inflicted/5582143032/sizes/s/&quot;&gt;3&lt;/a&gt;
&lt;a href=&quot;http://www.flickr.com/photos/soda-prop/5456469924/&quot;&gt;4&lt;/a&gt;
&lt;a href=&quot;http://holykaw.alltop.com/a-world-without-facebook-infographic&quot;&gt;5&lt;/a&gt;;
&lt;/em&gt;

&lt;p&gt;Most of the infographics we see are beautiful, but sooooo &lt;strong&gt;static&lt;/strong&gt;. 
You can make them much more &lt;strong&gt;alive&lt;/strong&gt; if you use the web technologies.&lt;/p&gt;

&lt;h2&gt;Interactive content&lt;/h2&gt;
&lt;p&gt;You can change the style/content of an element if the user interact with it: &lt;code&gt;:hover&lt;/code&gt; effects, fold/unfold on click, buttons to decide
what to draw and select options (select a country, choose how to sort, ...), etc.

&lt;h2&gt;Live data&lt;/h2&gt;
&lt;p&gt;With an image, you're just showing a &quot;snapshot&quot; of your data at a certain time. The web allows you to fetch data. Your infographic could
look completely different depending on &lt;strong&gt;when&lt;/strong&gt; it is viewed. Build your graph with
&lt;a href=&quot;https://developer.mozilla.org/en/SVG&quot;&gt;SVG&lt;/a&gt; or &lt;a href=&quot;https://developer.mozilla.org/en/Canvas_tutorial&quot;&gt;Canvas&lt;/a&gt; (here is an awesome library to do that: &lt;a href=&quot;http://g.raphaeljs.com/&quot;&gt;g.raphaeljs.com/&lt;/a&gt;) in real-time.&lt;/p&gt;

&lt;h2&gt;Animations&lt;/h2&gt;
&lt;p&gt;Make it move! With &lt;a href=&quot;https://developer.mozilla.org/en/SVG/SVG_animation_with_SMIL&quot;&gt;SVG SMIL&lt;/a&gt;, &lt;a href=&quot;https://developer.mozilla.org/en/CSS/CSS_transitions&quot;&gt;CSS Transitions&lt;/a&gt;, Canvas (see &lt;a href=&quot;http://processingjs.org/&quot;&gt;ProcessingJS&lt;/a&gt;), &lt;a href=&quot;https://developer.mozilla.org/en/CSS/CSS_animations&quot;&gt;CSS Animations&lt;/a&gt;,
you can build beautiful animations. You can even embed a &lt;strong&gt;video&lt;/strong&gt;!&lt;/p&gt;

&lt;h2&gt;Make it sexy&lt;/h2&gt;
&lt;p&gt;Well, it's obvious, your infographic must be beautiful. With &lt;a href=&quot;https://developer.mozilla.org/en/CSS&quot;&gt;CSS3&lt;/a&gt;, you have infinite
ways to make things beautiful: &lt;a href=&quot;https://developer.mozilla.org/en/Using_gradients&quot;&gt;gradients&lt;/a&gt;, &lt;a href=&quot;https://developer.mozilla.org/en/css/@font-face&quot;&gt;font-faces&lt;/a&gt;, &lt;a href=&quot;https://developer.mozilla.org/en/css/multiple_backgrounds&quot;&gt;multiple background&lt;/a&gt;, &lt;a href=&quot;https://developer.mozilla.org/En/CSS/Using_CSS_transforms&quot;&gt;transforms&lt;/a&gt;, &lt;a href=&quot;https://developer.mozilla.org/en/CSS/background&quot;&gt;SVG background&lt;/a&gt;, ...&lt;/p&gt;

&lt;h2&gt;Side effects&lt;/h2&gt;
&lt;ul&gt;
    &lt;li&gt;Your infographic will be accessible (copy/paste!)
    &lt;li&gt;People will be able to enhance it (view source! Host it on &lt;a href=&quot;http://github.com&quot;&gt;github&lt;/a&gt;.)
    &lt;li&gt;You can have multiple layouts, like a mobile layout (mediaQueries)
&lt;/ul&gt;

&lt;h2&gt;Want to give it a try?&lt;/h2&gt;
&lt;p&gt;Here is a random list of free data sets. Take a look, build something
interactive/live/animated/sexy in CSS3/HTML5/SVG, share it here. I'll
publish the most interesting ones on the &lt;a href=&quot;http://hacks.mozilla.org&quot;&gt;Mozilla Hacks blog&lt;/a&gt; :) (probably in June).&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.infochimps.com/&quot;&gt;Twitter Data &amp;amp; more&lt;/a&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.reddit.com/r/datasets&quot;&gt;r/datasets on reddit&lt;/a&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.kdnuggets.com/2011/02/free-public-datasets.html&quot;&gt;Data Mining Community's Top Resource &lt;/a&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.guardian.co.uk/world-government-data&quot;&gt;World’s government data&lt;/a&gt;
    &lt;li&gt;&lt;a href=&quot;http://research.stlouisfed.org/fred2/&quot;&gt;FRED (Federal Reserve Economic Dataa)&lt;/a&gt;
    &lt;li&gt;&lt;a href=&quot;http://robjhyndman.com/TSDL/&quot;&gt;Time Series Data Library &lt;/a&gt;
    &lt;li&gt;&lt;a href=&quot;http://aws.amazon.com/datasets?_encoding=UTF8&amp;jiveRedirect=1&quot;&gt;Amazon Public Data Sets &lt;/a&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.google.com/publicdata/directory&quot;&gt;Google Dataset Directory&lt;/a&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.pachube.com/&quot;&gt;Pachube&lt;/a&gt;
&lt;/ul&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/mediaevents</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/mediaevents"/>
    <title>Firefox Experiment: Media Events?</title>
    <updated>2011-04-26T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;link rel=&quot;stylesheet&quot; href=&quot;/css/syntax.css&quot;&gt;

&lt;h1&gt;Better integration of online music players?&lt;/h1&gt;

&lt;img class=&quot;postimg&quot; src=&quot;/assets/posts/keys.jpg&quot;&gt;

&lt;p&gt;This is something I've been thinking a lot lately.
I use online music players like LastFM and GrooveShark.&lt;/p&gt;
&lt;p&gt;I want to be able to control such web apps
with the &lt;strong&gt;multimedia keys&lt;/strong&gt;, and I want
a &lt;strong&gt;visual feedback&lt;/strong&gt; to know which tab is generating sound.&lt;/p&gt;

&lt;h1&gt;&quot;media&quot; events&lt;/h1&gt;

&lt;p&gt;Here is an idea. What if we introduce a new kind of events. The
&quot;media&quot; events.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I wrote some code to test this idea, here is a screencast, see below for the source code.&lt;/em&gt;&lt;/p&gt;
&lt;iframe class=&quot;frame&quot; title=&quot;YouTube video player&quot; width=&quot;480&quot; height=&quot;390&quot; src=&quot;http://www.youtube.com/embed/M7XlTEDGe6o&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;&lt;em&gt;And since you can't see the Visual Feedback in the video,  here is a screenshot:&lt;/em&gt;&lt;/p&gt;
&lt;img class=&quot;postimg&quot; src=&quot;/assets/posts/soundfeedback.png&quot;&gt;

&lt;h2&gt;Multimedia keys&lt;/h2&gt;
&lt;p&gt;Some media events would be fired if the user uses
the media keys, even if the tab is on the background or your browser not
focused.&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;javascript&quot;&gt;  &lt;span class=&quot;nb&quot;&gt;window&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;addEventListener&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;media&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;e&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
      &lt;span class=&quot;c1&quot;&gt;// could be: play, pause, previous, next&lt;/span&gt;
      &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;e&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;data&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;play&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;nx&quot;&gt;myplayer&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;play&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;();&lt;/span&gt;
      &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
  &lt;span class=&quot;p&quot;&gt;},&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;


&lt;h2&gt;Visual feedback&lt;/h2&gt;
&lt;p&gt;The browser could automatically detect if sound is being
generated from the tab, and give a visual feedback.
But it's something quite tricky (especially because of the plugins, see 
&lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=486262&quot;&gt;bug 486262 &lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;So what about letting the web page notify the browser the some sound is being played, by
firing a media event (&quot;sound&quot;/&quot;nosound&quot;)?&lt;/p&gt;

&lt;h2&gt;What do you think&lt;/h2&gt;

&lt;p&gt;Does it make sense? What about the names of these events? Also, what
happens if the user has different web pages listening to the media events?&lt;/p&gt;

&lt;h2&gt;Source code&lt;/h2&gt;

&lt;p&gt;Find the source code of this addon &lt;a href=&quot;https://github.com/paulrouget/htmlmediakeys&quot;&gt;here&lt;/a&gt;.
Works only on Linux (any port to Windows/Mac would be appreciated).&lt;/p&gt;

&lt;h2&gt;Update&lt;/h2&gt;
&lt;ul&gt;
    &lt;li&gt;I've been told that DOM 3 Event specifies key events for things like this
    &lt;li&gt;I see some code for Windows and &quot;MozHotKey&quot; events &lt;a href=&quot;https://github.com/mozilla/openwebapps/blob/4502535fd7a6b41986228f632081f61eb2e11d93/addons/firefox/extension/components/HOTKEY.md&quot;&gt;here&lt;/a&gt;
    &lt;li&gt;&quot;We should me sure it works for remotes&quot;
&lt;/uL&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/css3animations</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/css3animations"/>
    <title>CSS3 Animations in Firefox Aurora</title>
    <updated>2011-04-20T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;CSS3 Animations in Firefox Aurora&lt;/h1&gt;

&lt;a href=&quot;http://firefox.com/channel&quot;&gt;&lt;img class=&quot;float-right&quot; src=&quot;/assets/aurora.png&quot;&gt;&lt;/a&gt;
&lt;p&gt;&lt;a href=&quot;http://dbaron.org/log/20110419-animations&quot;&gt;David Baron&lt;/a&gt; implemented CSS3 Animations in Firefox. &lt;strong&gt;Yeah!&lt;/strong&gt;.

You can test CSS3 Animations right now with &lt;a href=&quot;http://firefox.com/channel&quot;&gt;Firefox Aurora&lt;/a&gt; (don't know what Firefox Aurora is? &lt;a href=&quot;http://blog.mozilla.com/blog/2011/04/13/new-channels-for-firefox-rapid-releases/&quot;&gt;Check this out&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;If the implementation is good enough (&lt;a href=&quot;https://bugzilla.mozilla.org/enter_bug.cgi?product=Core&amp;component=Style System (CSS)&quot;&gt;please report bugs!!!&lt;/a&gt;), Animations will make it for Firefox 5.&lt;P&gt;
&lt;p&gt;I've hacked a bit the famous &lt;a href=&quot;http://blog.optimum7.com/anthony/website-design/pure-css3-animated-at-at-walker-from-star-wars-2.html&quot;&gt;CSS3 AT-AT&lt;/a&gt; demo (by &lt;a href=&quot;http://twitter.com/acalzadilla&quot;&gt;Anthony Calzadilla&lt;/a&gt;) to make it work with Firefox (just needed to add the &lt;code&gt;-moz-&lt;/code&gt; prefix) and here is the result:&lt;/p&gt;

&lt;em&gt;Works in &lt;a href=&quot;http://firefox.com/channel&quot;&gt;Firefox Aurora&lt;/a&gt; and Webkit browsers&lt;/em&gt;
&lt;iframe class=&quot;frame&quot; scrolling=&quot;no&quot; width=&quot;676&quot; height=&quot;519&quot; src=&quot;http://paulrouget.com/css3atat/&quot;&gt;&lt;/iframe&gt;

&lt;p&gt;Again, if you find any bug, please let us know:&lt;br&gt;&lt;a href=&quot;https://bugzilla.mozilla.org/enter_bug.cgi?product=Core&amp;component=Style System (CSS)&quot;&gt;Open a Core/Style System (CSS) bug&lt;/a&gt;&lt;/p&gt;

&lt;span class=&quot;wooot&quot;&gt;More information on &lt;a href=&quot;http://dbaron.org/log/20110419-animations&quot;&gt;David Baron's blog&lt;/a&gt;.&lt;/span&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/nativecontrols</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/nativecontrols"/>
    <title>Experimenting with HTML5 and native controls</title>
    <updated>2011-02-28T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;Experimenting with HTML5 and native controls&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;THIS IS AN EXPERIMENT.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Little screencast:&lt;/p&gt;
&lt;iframe class=&quot;frame&quot; title=&quot;YouTube video player&quot; width=&quot;500&quot; height=&quot;400&quot; src=&quot;http://www.youtube.com/embed/EXX8uZ1OnCQ&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;

&lt;em&gt;This video is hosted by YouTube and uses the &lt;a title=&quot;HTML5 video&quot; href=&quot;https://developer.mozilla.org/En/HTML/Element/Video&quot;&gt;HTML5 video&lt;/a&gt; tag if you have enabled it (&lt;a href=&quot;http://www.youtube.com/html5&quot;&gt;see here&lt;/a&gt;). YouTube video &lt;a href=&quot;http://www.youtube.com/watch?v=EXX8uZ1OnCQ&quot;&gt;here&lt;/a&gt;.&lt;/em&gt;

&lt;p&gt;&lt;a href=&quot;http://blog.mozilla.com/faaborg/&quot;&gt;Alex Faaborg&lt;/a&gt; recently published some mockups for &quot;Site Specific Browsers&quot;:&lt;/p&gt;
&lt;img class=&quot;frame&quot; src=&quot;/assets/posts/ssb.png&quot;&gt;
&lt;p&gt;I thought it would be a good idea to extend this concept. So here is an idea:
&lt;ul&gt;

  &lt;li&gt;A webpage should be able to expose native controls to the UA
  &lt;li&gt;A webpage, if considered as a Web App, should be able to get rid of the URL / Back Forward Tool bar
  &lt;li&gt;A webpage should be able to expose controls to the context menu
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;And I think the &lt;a href=&quot;http://www.whatwg.org/specs/web-apps/current-work/multipage/interactive-elements.html#menus&quot;&gt;menu&lt;/a&gt; specification could help. I doesn't fit perfectly my needs. But here is a way to implement this idea:
&lt;ul&gt;
  &lt;li&gt;&lt;code&gt;&amp;lt;menu type=application&gt;&lt;/code&gt; is a menu accessible from the UA menu bar
  &lt;li&gt;A &lt;code&gt;&amp;lt;html&gt;&lt;/code&gt; attribute would hide the native toolbar. The page would be in charge of creating a menu.
  &lt;li&gt;&lt;code&gt;&amp;lt;menu type=context&gt;&lt;/code&gt; is menu that should be injected into the native context menu

&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;type=toolbar&lt;/code&gt; could be used to override the native toolbar, but website already have toolbars (think twitter, facebook).
I don't see any clean ways to use, in a progressive-enhancement manner, this toolbar. I prefer an attribute.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;type=application&lt;/code&gt; is not part of the specification.&lt;/p&gt;

&lt;p&gt;I wrote a &lt;a href=&quot;http://people.mozilla.com/~prouget/bugs/context-menu-test/nativemenu.v2.xpi&quot;&gt;little JetPack (restart-less) extension&lt;/a&gt; to experiment with this idea. You can test it with &lt;a href=&quot;http://people.mozilla.com/~prouget/bugs/context-menu-test/test.v2.html&quot;&gt;this&lt;/a&gt; web app.&lt;/p&gt;


&lt;p&gt;
This brings a lot of questions. What about security? What about type=toolbar? Should the app button be persistent? What if there several app buttons?
What about styling the menuitems? Should we do that only for app tabs? What about prism-like web apps?
&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/2demos</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/2demos"/>
    <title>Two little demos I made recently</title>
    <updated>2011-02-23T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;Two little demos I made recently&lt;/h1&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;a href=&quot;http://people.mozilla.com/~prouget/demos/woooot/index.html&quot;&gt;Woooot!&lt;/a&gt;
    &lt;li&gt;&lt;a href=&quot;http://people.mozilla.com/~prouget/demos/boomboom/index.html&quot;&gt;Boom Boom!&lt;/a&gt;
&lt;/ul&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/funwithwebm</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/funwithwebm"/>
    <title>WebM and ffmpeg: concatenate videos and add bumpers</title>
    <updated>2011-01-25T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;WebM and ffmpeg: concatenate videos and add bumpers&lt;/h1&gt;

&lt;p&gt;So I have this MP4 video. I want to:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;transcode it to WebM;
  &lt;li&gt;create a bumper: a little video to introduce the main video. Just a text;
  &lt;li&gt;concatenate my bumper with the WebM main video.

&lt;/ul&gt;

&lt;p&gt;The original video is named &lt;em&gt;girltalk.mp4&lt;/em&gt;.&lt;/p&gt;

&lt;h2&gt;Transcode to WebM with ffmpeg&lt;/h2&gt;
&lt;p&gt;Easy:&lt;/p&gt;
&lt;pre&gt;
$ ffmpeg -i girltalk.mp4 \
  -f webm -vcodec libvpx \
  -acodec libvorbis \
  -aq 90 -ac 2 \
  girltalk.webm
&lt;/pre&gt;
&lt;p&gt;(You need a version of ffmpeg &gt;= 0.6)&lt;/p&gt;

&lt;p&gt;Interesting extra options:&lt;/p&gt;
&lt;pre&gt;
If you want no audio:
-an : Disable audio

If you want just a subsection of the video
-ss &lt;timecode&gt; : Set start time offset in seconds or hh:mm:ss[.xxx] format.
-t &lt;timecode&gt; : Set recording time in seconds or hh:mm:ss[.xxx] format.

if you want to resize the video
-s &lt;string&gt; : Set frame size ( WidthxHeight)

if you want to crop the video
-cropbottom &lt;int&gt; : Set bottom crop band size ( in pixels ).
-cropleft &lt;int&gt; : Set left crop band size ( in pixels ).
-cropright &lt;int&gt; : Set right crop band size ( in pixels ).
-croptop &lt;int&gt; : Set top crop band size ( in pixels ).

&lt;/pre&gt;

&lt;h2&gt;Create the bumper&lt;/h2&gt;

&lt;h3&gt;Create one image&lt;/h3&gt;

First, you need the dimension of the video:
&lt;pre&gt;
$ ffmpeg -i girltalk.webm 2&gt;&amp;1 | grep &quot;Stream \#0.0&quot;


  Stream #0.0: Video: libvpx, yuv420p, 320x240,\
    PAR 1:1 DAR 4:3, 12 fps, \
    12 tbr, 1k tbn, 12 tbc
&lt;/pre&gt;
Got it: 320x240.

&lt;p&gt;Create the bumper with your prefered image editor (Gimp!). So far, it's just an image of the same size as the video.&lt;/p&gt;
&lt;p&gt;Here's mine:&lt;/p&gt;

&lt;img src=&quot;http://people.mozilla.com/~prouget/blog/funwithwebm/bumper.png&quot;&gt;

&lt;h3&gt;Create a video from the image&lt;/h3&gt;
&lt;p&gt;You need the framerate of your main video. From the previous command, we know it's &lt;strong&gt;12 fps&lt;/strong&gt; (the quality of this video is really poor, usually, it's 25). Also, you'll need to know the audio sampling frequency.&lt;/p&gt;

&lt;pre&gt;
$ ffmpeg -i girltalk.webm 2&gt;&amp;1 | grep &quot;Stream \#0.1&quot;



  Stream #0.0: Video: libvpx, yuv420p, 320x240,\
    PAR 1:1 DAR 4:3, 12 fps, \
    12 tbr, 1k tbn, 12 tbc
&lt;/pre&gt;

&lt;p&gt;22050 Hz here. Usually it's 44100 Hz.&lt;/p&gt;

&lt;p&gt;You also need to know how you long you want your bumper to last. Let's say 5 seconds:&lt;/p&gt;

&lt;pre&gt;
ffmpeg \
  -loop_input -f image2 -i bumper.jpg\
  -acodec pcm_s16le -f s16le -i /dev/zero \
  -r 12 -t 5 \
  -map 0:0 -map 1:0 \
  -f webm -vcodec libvpx \
  -ar 22050 -acodec libvorbis -aq 90 -ac 2 \
  bumper.webm
&lt;/pre&gt;

So here, I create a video which is just this bumper image repeated 12 times per second during 5 seconds, with a &lt;em&gt;silence&lt;/em&gt; track (important).

Result:

&lt;video src=&quot;http://people.mozilla.com/~prouget/blog/funwithwebm/bumper.webm&quot; controls&gt;&lt;/video&gt;

&lt;h2&gt;Concatenate WebM videos&lt;/h2&gt;
&lt;p&gt;Ok, so now, we have 2 videos. And we want to concatenate them.&lt;/p&gt;

&lt;p&gt;WebM is an interesting format. You can just put the 2 videos inside the same file, no need to reencode.
The only condition is to have the same bitrate and the same number of tracks.
That's why we create a &quot;silence&quot; track and we respected the main video bitrate for the bumper video.&lt;/p&gt;

&lt;p&gt;So to &quot;repackage&quot; the video with two videos inside (hmmm), you'll need &lt;em&gt;mkvmerge&lt;/em&gt;, from &lt;em&gt;mkvtoolnix&lt;/em&gt;:&lt;/p&gt;
&lt;pre&gt;
$ mkvmerge -o girltalk.final.webm bumper.webm +girltalk.webm
&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;If you have any problems with the last command, just check the 2 streams from the 2 videos (ffmpeg -i video.webm),
they have to have the exact same properties.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Enjoy the result:&lt;/p&gt;

&lt;video src=&quot;http://people.mozilla.com/~prouget/blog/funwithwebm/girltalk.final.webm&quot; controls&gt;&lt;/video&gt;

&lt;p&gt;&lt;strong&gt;Note: sounds like Chrome WebM decoder doesn't take into account the chained tracks in WebM. Works well in Firefox and Opera.&lt;/strong&gt;&lt;/p&gt;

</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/paulatparisweb</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/paulatparisweb"/>
    <title>Vidéo de mes démos à ParisWeb</title>
    <updated>2011-01-17T00:00:00-08:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;Vidéo de mes démos à ParisWeb&lt;/h1&gt;

&lt;p&gt;Ça se passe &lt;a href=&quot;http://www.dailymotion.com/video/xggtj7_html5-et-ses-amis-nouvelles-apis-paul-rouget_tech&quot;&gt;ici (vidéo)&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Je parle de WebSockets, File API, FormData, WebGL, Audio API, ...&lt;/p&gt;

&lt;p&gt;Tout plein de démos inside ;)&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/html5formsandhtml5test</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/html5formsandhtml5test"/>
    <title>HTML5 forms: more accurate tests for html5test.com</title>
    <updated>2010-08-23T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;link rel=&quot;stylesheet&quot; href=&quot;/css/syntax.css&quot;&gt;

&lt;h1&gt;HTML5 forms: more accurate tests for html5test.com&lt;/h1&gt;


&lt;p&gt;
&lt;a href=&quot;http://beta.html5test.com&quot;&gt;html5test&lt;/a&gt; is a good test.
It's easy to understand. Neils found a good way to rate HTML5 support.
It's not perfect, but I think a perfect test is not possible if you want
to keep it simple. But there's still room for improvements.
&lt;p&gt;

&lt;p&gt;
Look at the current &lt;a href=&quot;http://html5test.com&quot;&gt;version of html5test&lt;/a&gt;, the &lt;strong&gt;Forms&lt;/strong&gt; part.
Webkit has a good score (34/38, 89%), although their HTML5 forms support is incomplete (no UI, validity barely implemented, but they expose the &lt;code&gt;input type&lt;/code&gt;). The way forms are tested is not that accurate: 
just testing if the &lt;code&gt;input type&lt;/code&gt; is supported as a DOM property is not enough.
The good way is to check that the constraint is actually applied (&lt;code&gt;input.validity.valid&lt;/code&gt;).
&lt;/p&gt;
&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;js&quot;&gt;&lt;span class=&quot;c1&quot;&gt;//Exemple: testing &amp;lt;input type=email&amp;gt;&lt;/span&gt;

&lt;span class=&quot;cm&quot;&gt;/*&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt; * How it was tested&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt; */&lt;/span&gt;
&lt;span class=&quot;kd&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;valid&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;input&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;type&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;email&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;


&lt;span class=&quot;cm&quot;&gt;/*&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt; * A better way to test it&lt;/span&gt;
&lt;span class=&quot;cm&quot;&gt; */&lt;/span&gt;

&lt;span class=&quot;nx&quot;&gt;input&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;value&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;foo&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;kd&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;valid&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;!&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;input&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;validity&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;valid&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;nx&quot;&gt;input&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;value&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;foo@bar.org&amp;quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;input&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;validity&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;valid&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
      &lt;span class=&quot;nx&quot;&gt;valid&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;
I also added some tests for &lt;code&gt;input.form&lt;/code&gt;, &lt;code&gt;input.labels&lt;/code&gt; and &lt;code&gt;label.control&lt;/code&gt;. I'm also testing the forms related CSS selectors (&lt;code&gt;:required&lt;/code&gt;, &lt;code&gt;:optional&lt;/code&gt;, &lt;code&gt;:valid&lt;/code&gt; and &lt;code&gt;:invalid&lt;/code&gt;).

&lt;/p&gt;
&lt;p&gt;
I sent a patch to Neils. You can see the result here &lt;a href=&quot;http://beta.html5test.com&quot;&gt;beta.html5test.com&lt;/a&gt;. Basically, webkit score is less good now for the forms section (29/45, 64%), but still better than Firefox4 ;) (and still very good for Opera).
&lt;/p&gt;

&lt;em&gt; Firefox4 nightlies now support part of the HTML5 form specification (talk to &lt;a href=&quot;http://twitter.com/mounirlamouri&quot;&gt;Mounir&lt;/a&gt;, the main developer). The latest nightly's is 24/45 (53%), and it'going to get better :)&lt;/em&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/converttohtml5video</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/converttohtml5video"/>
    <title>Converting to WebM, OGG/Theora and MP4.</title>
    <updated>2010-08-23T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;link rel=&quot;stylesheet&quot; href=&quot;/css/syntax.css&quot;&gt;

&lt;h1&gt;Converting to WebM, OGG/Theora and MP4.&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;UPDATE:&lt;/strong&gt; Now that ffmpeg 0.6 is everywhere, and the preset are good enough, the easiest way to convert
a video to WebM is: &lt;/p&gt;
&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;sh&quot;&gt;&lt;span class=&quot;nv&quot;&gt;$ &lt;/span&gt;ffmpeg -i foo.avi foo.webm
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt;Of course, if you want to tweak the transcode options, RTFM ;)&lt;br&gt; ---&lt;/p&gt;

&lt;p&gt;If you want to use the &amp;lt;video&amp;gt; tag, you need to encode your video to 3 formats:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;WebM/VP8
  &lt;li&gt;OGG/Theora
  &lt;li&gt;MP4/h264

&lt;/ul&gt;
Here is a quick howto:&lt;/p&gt;
&lt;h2&gt;Building ffmpeg (version &amp;gt;= 0.6)&lt;/h2&gt;
&lt;p&gt;Create a directory, let's say &quot;myvideos&quot;. All the comming commands will
make sure that everything stays in this directory. Your system won't be
altered.&lt;/p&gt;

&lt;h3&gt;Downloads:&lt;/h3&gt;
&lt;ul&gt;
  &lt;li&gt;ffmpeg source code: &lt;a href=&quot;http://www.ffmpeg.org/releases/&quot;&gt;here&lt;/a&gt;.
&lt;/ul&gt;

&lt;p&gt;dependencies:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;vorbis: &lt;a href=&quot;http://downloads.xiph.org/releases/vorbis/&quot;&gt;here&lt;/a&gt; (the version of you distribution should be ok: libvorbis-dev);
  &lt;li&gt;x264: &lt;a href=&quot;ftp://ftp.videolan.org/pub/videolan/x264/snapshots/&quot;&gt;here&lt;/a&gt;;
  &lt;li&gt;faac: &lt;a href=&quot;http://downloads.sourceforge.net/faac/&quot;&gt;here&lt;/a&gt;;
  &lt;li&gt;theora: &lt;a href=&quot;http://downloads.xiph.org/releases/theora/&quot;&gt;here&lt;/a&gt;.
  &lt;li&gt;vpx:&lt;br&gt;&lt;pre&gt;git clone git://review.webmproject.org/libvpx.git&lt;/pre&gt;

&lt;/ul&gt;

&lt;h3&gt;Build:&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;mkdir ~/myvideos/dist&lt;/code&gt;&lt;/p&gt;
For these 5 dependencies:
&lt;ul&gt;
  &lt;li&gt;un-compress;
  &lt;li&gt;go to the source directory;
  &lt;li&gt;&lt;code&gt;./configure --prefix=~/myvideos/dist &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install&lt;/code&gt;

&lt;/ul&gt;
&lt;p&gt;Let's build ffmpeg:&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;sh&quot;&gt;&lt;span class=&quot;nv&quot;&gt;$ LDFLAGS&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;-L&lt;span class=&quot;nv&quot;&gt;$~&lt;/span&gt;/myvideos/dist/lib &lt;span class=&quot;se&quot;&gt;\&lt;/span&gt;
&lt;span class=&quot;nv&quot;&gt;CFLAGS&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;-I~/myvideos/dist/include &lt;span class=&quot;se&quot;&gt;\&lt;/span&gt;
./configure --prefix&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;~/myvideos/dist --enable-gpl&lt;span class=&quot;se&quot;&gt;\&lt;/span&gt;
--enable-nonfree --enable-libvpx --enable-libvorbis&lt;span class=&quot;se&quot;&gt;\&lt;/span&gt;
--enable-pthreads --enable-libx264 --enable-libfaac&lt;span class=&quot;se&quot;&gt;\&lt;/span&gt;
--enable-libtheora
&lt;span class=&quot;nv&quot;&gt;$ &lt;/span&gt;make &lt;span class=&quot;o&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; make install
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;




&lt;h3&gt;Convert&lt;/h3&gt;
To call ffmpeg:
&lt;p&gt;&lt;code&gt;~/myvideos/dist/bin/ffmeg&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;But first, you need to tell where to find libraries:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;export LD_LIBRARY_PATH=~/myvideos/dist/lib/&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Here are my 3 command lines to convert to WebM, OGG/Theora and mp4:
&lt;ul&gt;
&lt;li&gt;OGG/Theora
&lt;pre lang=&quot;shell&quot;&gt;
ffmpeg -i input.mov \
  -acodec libvorbis -ac 2 -ab 96k -ar 44100 \
  -b 345k -s 640x360 output.ogv
&lt;/pre&gt;

&lt;li&gt;WebM/vp8
&lt;pre lang=&quot;shell&quot;&gt;
ffmpeg -i input.mov \
  -acodec libvorbis -ac 2 -ab 96k -ar 44100 \
  -b 345k -s 640x360 output.webm
&lt;/pre&gt;

&lt;li&gt;MP4/h264
&lt;pre lang=&quot;shell&quot;&gt;
ffmpeg -i input.mov \
  -acodec libfaac -ab 96k \
  -vcodec libx264 -vpre slower -vpre main \
  -level 21 -refs 2 -b 345k -bt 345k \
  -threads 0 -s 640x360 output.mp4
&lt;/pre&gt;
&lt;/ul&gt;

&lt;em&gt;Video are resized to 640x360 with a bitrate of 345k.&lt;/em&gt;

&lt;p&gt;Hope it helps.&lt;/p&gt;
</content>
  </entry>
  
  
  
  <entry>
    <id>http://paulrouget.come/introdzslides</id>
    <link type="text/html" rel="alternate" href="http://paulrouget.com/e/introdzslides"/>
    <title>HTML5/CSS3 Slides: DZ Slides</title>
    <updated>2010-07-30T00:00:00-07:00</updated>
    <author>
      <name>Paul Rouget</name>
      <uri>http://paulrouget.com/</uri>
    </author>
    <content type="html">&lt;h1&gt;HTML5/CSS3 Slides: DZ&amp;nbsp;Slides&lt;/h1&gt;

&lt;p&gt;For the last few weeks, I've been using the same HTML template as
slides for my presentations. This template is now online.
It works great with Firefox 4 and I'm trying to make it work
with other browsers (need help here). Feel free to grab the
code and play with it: &lt;a href=&quot;http://paulrouget.com/dzslides/&quot;&gt;DZ Slides&lt;/a&gt;.&lt;/p&gt;

&lt;strong&gt;Update: &lt;/strong&gt; &lt;a href=&quot;http://paulrouget.com/e/dzslides2beta/&quot;&gt;Version 2 is coming&lt;/a&gt;.
</content>
  </entry>
  
  
 
</feed>

