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

 <title>Minni Blog</title>
 <link href="http://blog.minni.im/atom.xml" rel="self"/>
 <link href="http://blog.minni.im/"/>
 <updated>2026-04-03T19:49:12+00:00</updated>
 <id>http://blog.minni.im</id>
 <author>
   <name>Benoit Charbonnier</name>
 </author>

 
 <entry>
   <title>I am not dead</title>
   <link href="http://blog.minni.im/2014/04/i-am-not-dead"/>
   <updated>2014-04-10T00:00:00+00:00</updated>
   <id>http://blog.minni.im/2014/04/i-am-not-dead</id>
   <content type="html">
   
&lt;p&gt;Hello there !&lt;/p&gt;

&lt;p&gt;It’s been a while since I posted something here, so I, first, would apologize for that.
&lt;/p&gt;

&lt;h3 id=&quot;youre-not-dead-are-you-sure-&quot;&gt;You’re not dead. Are you sure ?&lt;/h3&gt;

&lt;p&gt;Having the motivation to write is not simple. Having an idea of what to talk about is even harder,
and finally, being able to write it down using simple words is out of range!
Especially for me, as I am not a native english writer. I am french, but I mostly speak english at work on a daily basis.&lt;/p&gt;

&lt;p&gt;But I am motivated, so let’s try to have a few words about tech topics related to the development of roulotte.
That should be doable.&lt;/p&gt;

&lt;h3 id=&quot;good-news--upcoming-changes&quot;&gt;Good news &amp;amp; upcoming changes&lt;/h3&gt;

&lt;p&gt;I have been working for a while on a UI redesign. I am not at all a designer,
but I usually kinda like to play a bit with pixels and colors (even if I am colorblind).
So every single visual stuff in roulotte has been patiently crafted by myself.&lt;/p&gt;

&lt;p&gt;Lately, I tought I should concentrate on finding a proper branding instead of fixing &lt;a href=&quot;https://bitbucket.org/bcharbonnier/roulotte/issues&quot;&gt;bugs&lt;/a&gt;. It always had been some kind of false priority to me.
So I tried, retried, erased it, retried again, and finally I got something. It was there, right in front of me.&lt;/p&gt;

&lt;p&gt;&lt;img style=&quot;width: 90px;&quot; src=&quot;/images/2014/04/first-draft.jpg&quot; /&gt;&lt;/p&gt;

&lt;p&gt;The blog is the first one to benefit from this new style and branding. I spent some time scracthing my head to find a
nice logo for roulotte.  Nevertheless I must admit that I am really happy and proud of the outcome.&lt;/p&gt;

&lt;p&gt;Here is the (let’s hope) final version of the new brand logos I produced&lt;/p&gt;

&lt;p&gt;&lt;img style=&quot;with: 158px;height: 158px;vertical-align:middle&quot; src=&quot;/images/2014/04/roulotte-logo.svg&quot; /&gt;
&lt;img style=&quot;with: 78px;height: 78px;vertical-align:middle&quot; src=&quot;/images/2014/04/roulotte-hexa-logo.svg&quot; /&gt;&lt;/p&gt;


   </content>
 </entry>
 
 <entry>
   <title>Print screen on Mac OS X</title>
   <link href="http://blog.minni.im/2013/06/print-screen-on-mac-osx"/>
   <updated>2013-06-07T00:00:00+00:00</updated>
   <id>http://blog.minni.im/2013/06/print-screen-on-mac-osx</id>
   <content type="html">
   &lt;p&gt;There is something super simple that irritates me on Mac OS X since I switched: What about the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Print Screen&lt;/code&gt; key !&lt;/p&gt;

&lt;p&gt;It’s not that I absolutely want to have a physical key on the keyboard, but it is so stupidly easy to capture the screen or just an application on Windows.
You just need this feature all day long, especially with an intensive chat usage.&lt;/p&gt;

&lt;p&gt;Of course you can also do it on Mac OS X, but who the hell is mentally sane enough to remember this %&amp;amp;*#@!$$ keyboard shorcut!!
So I finally found a &lt;a href=&quot;http://guides.macrumors.com/Taking_Screenshots_in_Mac_OS_X&quot;&gt;guide&lt;/a&gt; referencing all theses shortcuts, even the most interresting ones, those who paste directly into the clipboard (as &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Print Screen&lt;/code&gt; would have done)&lt;/p&gt;

&lt;p&gt;If you want to generate an image file&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;⌘ + shift + 3&lt;/strong&gt;: Take a screenshot of the screen, and save it as a file on the desktop&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;⌘ + shift + 4, then select an area&lt;/strong&gt;: Take a screenshot of an area and save it as a file on the desktop&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;⌘ + shift + 4, then space, then click a window&lt;/strong&gt;: Take a screenshot of a window and save it as a file on the desktop&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you are more into the clipboard&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;⌘ + control + shift + 3&lt;/strong&gt;: Take a screenshot of the screen, and save it to the clipboard&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;⌘ + control + shift + 4, then select an area&lt;/strong&gt;: Take a screenshot of an area and save it to the clipboard&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;⌘ + control + shift + 4, then space, then click a window&lt;/strong&gt;: Take a screenshot of a window and save it to the clipboard&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By the way, if you are more a Windows guy, I suggest you have a look at &lt;a href=&quot;http://getgreenshot.org/&quot;&gt;greenshot&lt;/a&gt;, it’s absolutely fantastic !&lt;/p&gt;

   </content>
 </entry>
 
 <entry>
   <title>Playing with SVG</title>
   <link href="http://blog.minni.im/2013/05/playing-with-svg"/>
   <updated>2013-05-16T00:00:00+00:00</updated>
   <id>http://blog.minni.im/2013/05/playing-with-svg</id>
   <content type="html">
   
&lt;p&gt;Lately I was playing a bit with SVG.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://twitter.com/patrickbrosset&quot;&gt;Patrick&lt;/a&gt;, a friend of mine, recently bought a Macbook Pro Retina
and suddenly I had to face the truth:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Pictograms and images suck on Retina enabled devices !&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;So I took the opportunity to try SVG. I thought it would be great to try to reproduce
the left sidebar icons for the Lobby and the type of rooms.
&lt;/p&gt;

&lt;p&gt;So I ended up with this:&lt;/p&gt;

&lt;h3 id=&quot;lobby-icon&quot;&gt;Lobby icon&lt;/h3&gt;

&lt;p&gt;On the left, the original image, on the right the SVG one&lt;/p&gt;

&lt;p style=&quot;background: url(/images/2013/05/background-sidebar-left.jpg) top left repeat; padding: 5px; text-align: center;&quot;&gt;
    &lt;style type=&quot;text/css&quot;&gt; .lobby {width: 32px; height: 32px; } &lt;/style&gt;
	&lt;img src=&quot;/images/2013/05/lobby.png&quot; /&gt;
	&lt;svg class=&quot;lobby&quot;&gt;
		&lt;line stroke-dasharray=&quot;4,2,28&quot; x1=&quot;6&quot; y1=&quot;10&quot; x2=&quot;26&quot; y2=&quot;10&quot; stroke=&quot;#f9f9f9&quot; stroke-width=&quot;4&quot; /&gt;
    	&lt;line stroke-dasharray=&quot;4,2,28&quot; x1=&quot;6&quot; y1=&quot;16&quot; x2=&quot;26&quot; y2=&quot;16&quot; stroke=&quot;#f9f9f9&quot; stroke-width=&quot;4&quot; /&gt;
    	&lt;line stroke-dasharray=&quot;4,2,28&quot; x1=&quot;6&quot; y1=&quot;22&quot; x2=&quot;26&quot; y2=&quot;22&quot; stroke=&quot;#f9f9f9&quot; stroke-width=&quot;4&quot; /&gt;
	&lt;/svg&gt;
&lt;/p&gt;

&lt;figure class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot; data-lang=&quot;html&quot;&gt;&lt;span class=&quot;nt&quot;&gt;&amp;lt;svg&amp;gt;&lt;/span&gt;
	&lt;span class=&quot;nt&quot;&gt;&amp;lt;line&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-dasharray=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4,2,28&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;6&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;10&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;26&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;10&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;#f9f9f9&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&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;line&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-dasharray=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4,2,28&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;6&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;16&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;26&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;16&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;#f9f9f9&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&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;line&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-dasharray=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4,2,28&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;6&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;22&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;26&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;22&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;#f9f9f9&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&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;/svg&amp;gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;

&lt;h3 id=&quot;public-room-icon&quot;&gt;Public room icon&lt;/h3&gt;

&lt;p style=&quot;background: url(/images/2013/05/background-sidebar-left.jpg) top left repeat; padding: 5px; text-align: center;&quot;&gt;
	&lt;style type=&quot;text/css&quot;&gt; .public_room { width: 24px; height: 24px; border: 4px solid #fff; border-radius: 6px; } &lt;/style&gt;
	&lt;img src=&quot;/images/2013/05/group-room.png&quot; /&gt;
	&lt;svg class=&quot;public_room&quot;&gt;
		&lt;line stroke-dasharray=&quot;4,2,4,2,4&quot; x1=&quot;4&quot; y1=&quot;6&quot; x2=&quot;20&quot; y2=&quot;6&quot; stroke=&quot;#f9f9f9&quot; stroke-width=&quot;4&quot; /&gt;
		&lt;line stroke-dasharray=&quot;4,2,4,2,4&quot; x1=&quot;4&quot; y1=&quot;12&quot; x2=&quot;20&quot; y2=&quot;12&quot; stroke=&quot;#f9f9f9&quot; stroke-width=&quot;4&quot; /&gt;
		&lt;line stroke-dasharray=&quot;4,2,4,2,4&quot; x1=&quot;4&quot; y1=&quot;18&quot; x2=&quot;20&quot; y2=&quot;18&quot; stroke=&quot;#f9f9f9&quot; stroke-width=&quot;4&quot; /&gt;
	&lt;/svg&gt;
&lt;/p&gt;

&lt;p&gt;For the border I decided to still use CSS, with a simple &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;border: 4px solid #fff&lt;/code&gt; and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;border-radius: 6px&lt;/code&gt;&lt;/p&gt;

&lt;figure class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot; data-lang=&quot;html&quot;&gt;&lt;span class=&quot;nt&quot;&gt;&amp;lt;svg&amp;gt;&lt;/span&gt;
	&lt;span class=&quot;nt&quot;&gt;&amp;lt;line&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-dasharray=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4,2,4,2,4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;6&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;20&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;6&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;#f9f9f9&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&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;line&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-dasharray=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4,2,4,2,4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;12&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;20&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;12&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;#f9f9f9&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&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;line&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-dasharray=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4,2,4,2,4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;18&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;20&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;18&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;#f9f9f9&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&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;/svg&amp;gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;

&lt;h3 id=&quot;private-room-icon&quot;&gt;Private room icon&lt;/h3&gt;

&lt;p&gt;For this one I created a new one, more relevant to me.&lt;/p&gt;

&lt;p style=&quot;background: url(/images/2013/05/background-sidebar-left.jpg) top left repeat; padding: 5px; text-align: center;&quot;&gt;
	&lt;style type=&quot;text/css&quot;&gt; .private_room { width: 24px; height: 24px; border: 4px solid #fff; border-radius: 6px; } &lt;/style&gt;
	&lt;img src=&quot;/images/2013/05/private-room.png&quot; /&gt;
	&lt;svg class=&quot;private_room&quot;&gt;
		&lt;g&gt;
			&lt;line stroke-dasharray=&quot;4,2,4,2,4&quot; x1=&quot;4&quot; y1=&quot;6&quot; x2=&quot;20&quot; y2=&quot;6&quot; stroke=&quot;#f9f9f9&quot; stroke-width=&quot;4&quot; /&gt;
			&lt;line stroke-dasharray=&quot;4,2,4,2,4&quot; x1=&quot;4&quot; y1=&quot;12&quot; x2=&quot;20&quot; y2=&quot;12&quot; stroke=&quot;#f9f9f9&quot; stroke-width=&quot;4&quot; stroke-opacity=&quot;0.5&quot; /&gt;
			&lt;line stroke-dasharray=&quot;4,2,4&quot; x1=&quot;4&quot; y1=&quot;18&quot; x2=&quot;16&quot; y2=&quot;18&quot; stroke=&quot;#f9f9f9&quot; stroke-width=&quot;4&quot; /&gt;
		&lt;/g&gt;
    	&lt;g opacity=&quot;0.5&quot;&gt;
	    	&lt;rect x=&quot;16&quot; y=&quot;16&quot; width=&quot;4&quot; height=&quot;4&quot; fill=&quot;#f9f9f9&quot; /&gt;
		&lt;/g&gt;
	&lt;/svg&gt;
&lt;/p&gt;

&lt;p&gt;Same story than above for the border.&lt;/p&gt;

&lt;figure class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot; data-lang=&quot;html&quot;&gt;&lt;span class=&quot;nt&quot;&gt;&amp;lt;svg&amp;gt;&lt;/span&gt;
	&lt;span class=&quot;nt&quot;&gt;&amp;lt;g&amp;gt;&lt;/span&gt;
		&lt;span class=&quot;nt&quot;&gt;&amp;lt;line&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-dasharray=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4,2,4,2,4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;6&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;20&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;6&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;#f9f9f9&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&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;line&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-dasharray=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4,2,4,2,4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;12&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;20&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;12&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;#f9f9f9&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-opacity=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;0.5&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;line&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-dasharray=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4,2,4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y1=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;18&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;16&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y2=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;18&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;#f9f9f9&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;stroke-width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&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;/g&amp;gt;&lt;/span&gt;
    &lt;span class=&quot;nt&quot;&gt;&amp;lt;g&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;opacity=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;0.5&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;rect&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;x=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;16&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;y=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;16&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;height=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;4&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;fill=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;#f9f9f9&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;/g&amp;gt;&lt;/span&gt;
&lt;span class=&quot;nt&quot;&gt;&amp;lt;/svg&amp;gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;

&lt;hr /&gt;

&lt;p&gt;The original playground source code for all this, is available &lt;a href=&quot;http://juliandescottes.github.io/instantat/#51934f39e4b051dece087679&quot;&gt;here&lt;/a&gt; on InstantAT.&lt;/p&gt;

   </content>
 </entry>
 
 <entry>
   <title>Dynamic Status</title>
   <link href="http://blog.minni.im/2013/05/dynamic-status"/>
   <updated>2013-05-15T00:00:00+00:00</updated>
   <id>http://blog.minni.im/2013/05/dynamic-status</id>
   <content type="html">
   &lt;p&gt;I have just pushed this morning a new feature: Dynamic status for everyone.&lt;/p&gt;

&lt;p&gt;Pretty simple, for now you can’t drive this status, it’s only automatic. You’ll go from &lt;em&gt;available&lt;/em&gt; to &lt;em&gt;idle&lt;/em&gt;
after 2 minutes of inactivity, and finaly switch to &lt;em&gt;away&lt;/em&gt; after 10 min.&lt;/p&gt;

&lt;p&gt;Next step associated to this feature is to introduce a &lt;em&gt;busy&lt;/em&gt; status, that would for example deactivate 
all notifications, and also add the ability for you to manually select the &lt;em&gt;away&lt;/em&gt; status.&lt;/p&gt;

&lt;p&gt;That’s it for today.&lt;/p&gt;

   </content>
 </entry>
 
 <entry>
   <title>Various enhancements Week 18</title>
   <link href="http://blog.minni.im/2013/04/various-enhancements-week18"/>
   <updated>2013-04-29T00:00:00+00:00</updated>
   <id>http://blog.minni.im/2013/04/various-enhancements-week18</id>
   <content type="html">
   &lt;p&gt;Here is a short status for week 18 bugs and new features.&lt;/p&gt;

&lt;h3 id=&quot;bugs&quot;&gt;Bugs&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://bitbucket.org/bcharbonnier/roulotte/issue/8/keep-state-of-the-scrolling-when-scrolled&quot;&gt;#8: Keep state of the scrolling when scrolled&lt;/a&gt;: See below for more information.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://bitbucket.org/bcharbonnier/roulotte/issue/10/proposal-to-add-day-separators&quot;&gt;#10: Proposal to add day separators&lt;/a&gt;: See below for more information.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://bitbucket.org/bcharbonnier/roulotte/issue/20/gipsy-bubble-separator-according-to-time&quot;&gt;#20: Gipsy bubble separator according to time range&lt;/a&gt; For a same user, if time between 2 consecutive messages is more than 3 minutes, a new chat bubble is created.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;features&quot;&gt;Features&lt;/h3&gt;

&lt;h4 id=&quot;ssl&quot;&gt;SSL&lt;/h4&gt;

&lt;p&gt;It has been a long run development, not so complex, but in the pipe since the beginning.
It’s now live, all your conversations are secured and encrypted all along the wire.&lt;/p&gt;

&lt;p&gt;I still have few bugs regarding mixed content, mainly because some images (actually a lot of animated gifs,
from &lt;a href=&quot;https://buukkit.appspot.com&quot;&gt;buukkit&lt;/a&gt; have not been pasted in chat using https urls.&lt;/p&gt;

&lt;h4 id=&quot;is-typing&quot;&gt;Is Typing&lt;/h4&gt;

&lt;p&gt;You now have the ability to see who is typing live.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.minni.im/images/2013/04/is_typing_1.png&quot; alt=&quot;Is typing&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.minni.im/images/2013/04/is_typing_2.png&quot; alt=&quot;People in the room &apos;is typing&apos;&quot; /&gt;&lt;/p&gt;

&lt;h4 id=&quot;history-navigation&quot;&gt;History navigation&lt;/h4&gt;

&lt;p&gt;One of the most annoying bug that was here since the first version, has always been the autoscroll feature.
As soon as a new message arrives, it automatically scrolls down the chat logs. Even if you manually scroll up
yourself to read the history.&lt;/p&gt;

&lt;p&gt;It’s now fixed. If you scroll up to read the history, the autoscroll will now be disabled, and you will get a
notification as soon as new messages are coming.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.minni.im/images/2013/04/new_messages.png&quot; alt=&quot;New messages while reading the history&quot; /&gt;&lt;/p&gt;

&lt;h4 id=&quot;days-separator&quot;&gt;Days separator&lt;/h4&gt;

&lt;p&gt;I changed the way messages are regrouped by days. It is now easier to see these separators.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.minni.im/images/2013/04/day_separator.png&quot; alt=&quot;New days separators&quot; /&gt;&lt;/p&gt;


   </content>
 </entry>
 
 <entry>
   <title>SSL nearly activated</title>
   <link href="http://blog.minni.im/2013/04/ssl-nearly-activated"/>
   <updated>2013-04-17T00:00:00+00:00</updated>
   <id>http://blog.minni.im/2013/04/ssl-nearly-activated</id>
   <content type="html">
   &lt;p&gt;I just bought this morning a SSL certificate.&lt;/p&gt;

&lt;p&gt;Main goal is to provide more privacy to my users, and also being able to use it for the websocket connection.&lt;/p&gt;

&lt;p&gt;PS: I recently heard weird stuffs regarding proxies and non-physical firewalls that 
were able to forbid TCP over HTTP which is exactly what websockets are based on…&lt;/p&gt;

&lt;p&gt;Edit: I mean on port 80. It works fine over 443.&lt;/p&gt;

   </content>
 </entry>
 
 <entry>
   <title>Various enhancements</title>
   <link href="http://blog.minni.im/2013/02/various-enhancements"/>
   <updated>2013-02-13T00:00:00+00:00</updated>
   <id>http://blog.minni.im/2013/02/various-enhancements</id>
   <content type="html">
   
&lt;p&gt;Several weeks have passed since the launch of the beta, and I haven’t given much news about what i was busy working.&lt;/p&gt;

&lt;p&gt;Here is a short status for bugs and new features.&lt;/p&gt;


&lt;h2 id=&quot;bugs&quot;&gt;Bugs&lt;/h2&gt;

&lt;p&gt;A lot of bugs have been fixed, here are the major ones:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://bitbucket.org/bcharbonnier/roulotte/issue/17/need-for-the-organization-name-inside-the&quot;&gt;#17: Need for the organization name inside the title bar&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://bitbucket.org/bcharbonnier/roulotte/issue/16/notify-the-user-when-a-full-disconnection&quot;&gt;#16: Notify the user when a full disconnection occurs&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://bitbucket.org/bcharbonnier/roulotte/issue/15/deactivate-text-input-when-fully&quot;&gt;#15: Deactivate text input when fully disconnected&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://bitbucket.org/bcharbonnier/roulotte/issue/14/gipsies-do-not-leave-connected-room-on&quot;&gt;#14: Gipsies do not leave connected room on browser close&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://bitbucket.org/bcharbonnier/roulotte/issue/3/html-stripping&quot;&gt;#3: Html stripping&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://bitbucket.org/bcharbonnier/roulotte/issue/4/new-gipsy-entering-a-roulotte&quot;&gt;#4: New gipsy entering a roulotte&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;features&quot;&gt;Features&lt;/h2&gt;

&lt;p&gt;Some cool features also have been introduced:&lt;/p&gt;

&lt;h3 id=&quot;room-presence&quot;&gt;Room presence&lt;/h3&gt;

&lt;p&gt;When connected to a specific room in an organisation roulotte, you can display the list of coworkers that are actually online and connected to it.&lt;/p&gt;

&lt;p&gt;By default the feature is available, but not activated. You have to click on the &lt;em&gt;people&lt;/em&gt; icon located in the right top corner of each room’s header. The icon is a toggle switch.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.minni.im/images/2013/02/people_in_the_room.png&quot; alt=&quot;Coworkers room presence&quot; /&gt;&lt;/p&gt;

&lt;p&gt;This settings can be set it differently for each room, and is persisted server-side in your user settings.&lt;/p&gt;

&lt;p&gt;If you don’t want to use it at all, it can be disabled globally for all rooms from your user settings dialog.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.minni.im/images/2013/02/people_in_the_room_setting.png&quot; alt=&quot;Room presence activation&quot; /&gt;&lt;/p&gt;

&lt;h3 id=&quot;new-roulottes-list-page&quot;&gt;New roulottes list page&lt;/h3&gt;

&lt;p&gt;Your default &lt;a href=&quot;http://roulotte.im/chat&quot;&gt;roulottes list page&lt;/a&gt; is now displaying a list of the coworkers associated to each of your organisations/roulottes. Take a closer look at each teammate avatar, it also shows you who is already connected and available to chat !&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.minni.im/images/2013/02/roulotte_list_offline.png&quot; alt=&quot;Available Roulottes list&quot; /&gt;&lt;/p&gt;

&lt;h3 id=&quot;user-profile-page&quot;&gt;User profile page&lt;/h3&gt;

&lt;p&gt;With this new &lt;a href=&quot;http://roulotte.im/profile&quot;&gt;profile page&lt;/a&gt;, you now have the ability to update few information associated to your user profile (firstname, lastname and your email) but you can also link your account to different oauth providers.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.minni.im/images/2013/02/user_profile_settings.png&quot; alt=&quot;User Profile page&quot; /&gt;
&lt;img src=&quot;http://blog.minni.im/images/2013/02/user_profile_connection.png&quot; alt=&quot;User Profile page&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Once attached, you’ll be able to login using any of these granted associated provider.&lt;/p&gt;


   </content>
 </entry>
 
 <entry>
   <title>Deal with it stupid cache</title>
   <link href="http://blog.minni.im/2013/01/deal-with-it-stupid-cache"/>
   <updated>2013-01-24T00:00:00+00:00</updated>
   <id>http://blog.minni.im/2013/01/deal-with-it-stupid-cache</id>
   <content type="html">
   &lt;p&gt;Cache issue should be over now, as I implemented the mecanism I was describing in my &lt;a href=&quot;http://blog.roulotte.im/2013/01/stupid-cache/&quot;&gt;previous post&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;All javascript files are now packaged (ie regrouping several files into a single one) with a hash in the filename to make them unique
(I basically append to the filename a &lt;a href=&quot;http://en.wikipedia.org/wiki/MD5&quot;&gt;md5 hash&lt;/a&gt; based on the file content).&lt;/p&gt;

&lt;p&gt;With that in place, any single change in any file will generate a new file! &lt;em&gt;Deal with it stupid cache&lt;/em&gt;!&lt;/p&gt;


   </content>
 </entry>
 
 <entry>
   <title>Stupid cache</title>
   <link href="http://blog.minni.im/2013/01/stupid-cache"/>
   <updated>2013-01-22T00:00:00+00:00</updated>
   <id>http://blog.minni.im/2013/01/stupid-cache</id>
   <content type="html">
   &lt;p&gt;The beta has been privately launched during last week-end.
For the luckiest of you that have access to this beta, &lt;em&gt;do not forget to refresh your webapp everyday&lt;/em&gt;,
paying extra attention to cleaning your browser cache.&lt;/p&gt;

&lt;p&gt;The client-side javascript is not yet optimized in a way i’m satisfied with.&lt;/p&gt;

&lt;p&gt;The goal to fix this stupid cache issue is to add a md5 hash in each javascript filename.
With this implemented, I’ll have the ability to set an infinite expiry date for those files in &lt;a href=&quot;http://nginx.org/en/&quot;&gt;Nginx&lt;/a&gt;.&lt;/p&gt;


   </content>
 </entry>
 
 <entry>
   <title>The beta is coming</title>
   <link href="http://blog.minni.im/2013/01/beta-is-coming"/>
   <updated>2013-01-16T00:00:00+00:00</updated>
   <id>http://blog.minni.im/2013/01/beta-is-coming</id>
   <content type="html">
   &lt;p&gt;Sometimes you need to setup challenges to yourself. Just to get things done.&lt;/p&gt;

&lt;p&gt;Beta is coming&lt;/p&gt;

&lt;p&gt;Launch date: this week end! Stay tuned.&lt;/p&gt;

   </content>
 </entry>
 
 <entry>
   <title>Daemonize your nodejs scripts</title>
   <link href="http://blog.minni.im/2013/01/daemonize-your-scripts"/>
   <updated>2013-01-14T00:00:00+00:00</updated>
   <id>http://blog.minni.im/2013/01/daemonize-your-scripts</id>
   <content type="html">
   
&lt;p&gt;The one that ever needed to run a &lt;a href=&quot;http://nodejs.org&quot;&gt;Nodejs&lt;/a&gt; application in a production environment,
perfectly know what I am talking about:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Welcome to the Jungle&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You have so many different choices. Especially on Linux. Let’s try to detail the most 2 relevant to me: Forever and Upstart&lt;/p&gt;


&lt;h2 id=&quot;forever&quot;&gt;Forever&lt;/h2&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/nodejitsu/forever&quot;&gt;Forever&lt;/a&gt; is a solution provided by &lt;a href=&quot;http://nodejitsu.com&quot;&gt;Nodejitsu&lt;/a&gt; written itself in JavaScript for Nodejs. It’s been describe as&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;A simple CLI tool for ensuring that a given script runs continuously (i.e. forever)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;As a lot of Nodejs libraries, you can install it globally via &lt;a href=&quot;http://npmjs.org&quot;&gt;Npm&lt;/a&gt;&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;$ npm install -g forever
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Then you can start your script to run forever:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;$ forever start myscript.js
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;You can actually check that it has been launched with the &lt;em&gt;list&lt;/em&gt; command&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;$ forever list
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;By default, it will used the default &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;stdout&lt;/code&gt; and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;stderr&lt;/code&gt;. If you want to redirect everything to dedicated file logs, you could use these options&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;$ forever -l /path/to/log/myscript.log -o /path/to/log/myscript_out.log -e /path/to/log/myscript_err.log myscript.js
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;upstart&quot;&gt;Upstart&lt;/h2&gt;

&lt;p&gt;&lt;a href=&quot;http://upstart.ubuntu.com/&quot;&gt;Upstart&lt;/a&gt; is considered to be the new &lt;em&gt;/etc/init.d/*&lt;/em&gt; service scripts on Ubuntu, or at least it is said to be its successor. It is installed by default.&lt;/p&gt;

&lt;p&gt;We want upstart to be able to manage our nodejs application as a standard service. Which means that we want to start, stop and monitor our script.&lt;/p&gt;

&lt;p&gt;First let’s create a job script, called &lt;em&gt;node3000&lt;/em&gt; (we give it as a name the port number on which it’ll start)&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;$ vim /etc/init/node3000.conf
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Then, we need to tell upstart what to do&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;#!upstart

description &quot;node3000&quot;
author &quot;benoit&quot;

start on (local-filesystems and net-device-up IFACE=eth0)
stop on shutdown

respawn				# restart when job dies
respawn limit 5 60	# give up restart after 5 retries in 60 sec

script
	exec sudo -u www-data /usr/local/bin/node /srv/nodejs/myapp/app.js &amp;gt;&amp;gt; /srv/nodejs/myapp/logs/myapp.log 2&amp;gt;&amp;amp;1
end script
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Before starting your job, make sure everything is ok on the logs side&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;$ touch /srv/nodejs/myapp/logs/myapp.log
$ chmod 755 /srv/nodejs/myapp/logs/myapp.log
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Finally you can ask upstart to start your daemon&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;$ start node3000
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;You application should now be running and available.&lt;/p&gt;


   </content>
 </entry>
 
 <entry>
   <title>Introducing Roulotte</title>
   <link href="http://blog.minni.im/2013/01/hello-world"/>
   <updated>2013-01-02T00:00:00+00:00</updated>
   <id>http://blog.minni.im/2013/01/hello-world</id>
   <content type="html">
   &lt;p&gt;roulotte.im is a private, hosted chat server. It’s a dedicated workplace for you and your coworkers.&lt;/p&gt;

&lt;h3 id=&quot;why-roulotteim&quot;&gt;Why roulotte.im&lt;/h3&gt;

&lt;p&gt;Email is slow. Meetings minutes are sidetracked. IM just does not work for groups.&lt;/p&gt;

&lt;p&gt;The goal behind roulotte.im is to help you share text, images, code and files for instant
decision making.
Your company/team/organistion deserve to be a more productive and funnier place.&lt;/p&gt;

&lt;p&gt;Here is a taste of some features:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Web client&lt;/strong&gt;
Nothing to install. Works everywhere. Just login and focus on collaborating with your coworkers.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Search and Archives&lt;/strong&gt;
All your chat logs are searchable. You decide which rooms should be archived, for one day, one week or forever.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Notifications&lt;/strong&gt;
Never miss a thing from your chat rooms. Benefit from desktop notifications, activate sound blips for each new messages.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Instant preview&lt;/strong&gt;
Anything that is an image, or an animated gif will be displayed right into your chat.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Access control&lt;/strong&gt;
Use rooms for your departments, teams, or projects. Make them open for anyone to join, or private for only people invited.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;team&quot;&gt;Team&lt;/h3&gt;

&lt;p&gt;Today, roulotte.im is a one guy story, my story.&lt;/p&gt;

&lt;p&gt;Stay tuned for the coming launch&lt;/p&gt;

   </content>
 </entry>
 

</feed>
