<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>

<channel>
	<title>Marco Barisione's Weblog</title>
	<atom:link href="http://blog.barisione.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.barisione.org</link>
	<description></description>
	<pubDate>Wed, 03 Feb 2010 08:37:00 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>jid-to-email</title>
		<link>http://blog.barisione.org/2010-02/jid-to-email/</link>
		<comments>http://blog.barisione.org/2010-02/jid-to-email/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 08:37:00 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
		
		<category><![CDATA[collabora]]></category>

		<category><![CDATA[maemo]]></category>

		<category><![CDATA[address book]]></category>

		<category><![CDATA[contacts]]></category>

		<category><![CDATA[email]]></category>

		<category><![CDATA[jabber]]></category>

		<category><![CDATA[jid-to-email]]></category>

		<category><![CDATA[msn]]></category>

		<category><![CDATA[n900]]></category>

		<category><![CDATA[telepathy]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=238</guid>
		<description><![CDATA[During the Christmas holidays I managed to find some time to write a couple of small programs related to the address book on the N900; they are nothing too fancy (no UI, no proper packaging, not the best code quality, etc.) as I wrote them for my personal use, but I still think it could [...]]]></description>
			<content:encoded><![CDATA[<p>During the Christmas holidays I managed to find some time to write a couple of small programs related to the address book on the N900; they are nothing too fancy (no UI, no proper packaging, not the best code quality, etc.) as I wrote them for my personal use, but I still think it could be useful to share them with other people.</p>
<p>The one I&#8217;m talking about today is a simple command-line utility that adds an email address to your contacts based on the Jabber ID (or on the ID of other protocols). This is very useful to me as in Collabora we all have a roster automatically filled with the other Collaborans, this way I can automatically have their email addresses in my address book.</p>
<p>This cannot be done automatically for all the contact as, usually, it&#8217;s not true that a Jabber ID is also a valid email address (for instance it&#8217;s not true for jabber.org users), but it&#8217;s true at least for the GMail and Collabora servers.</p>
<p>If you want to try jid-to-email get the <a href="http://people.collabora.co.uk/~bari/jid-to-email">already compiled arm executable</a> or <a href="http://git.collabora.co.uk/?p=user/bari/jid-to-email.git;a=summary">the source code</a>. <b>Remember to take a backup</b> before trying it, I don&#8217;t want to be blamed if something goes horribly wrong <img src="http://farm1.static.flickr.com/218/458651141_54bbc48288_o.png" alt=";)" />.</p>
<p>The program accepts two arguments: the vcard field for the IM protocol and a regular expression. For instance, if you cd to the directory where the program is and do “./jid-to-email X-JABBER @collabora.co.uk”, an email address will be added to all the contacts that have a Jabber ID containing “@collabora.co.uk”. Similarly “./jid-to-email X-JABBER &#8216;@g(oogle)?mail\.com&#8217;” will add an email address to all the contacts with a Jabber ID containing “@gmail.com” or “@googlemail.com”. You could also try using “X-MSN” to do the same thing for contacts that use their GMail address as MSN ID.</p>
<p>Please, let me know if you know any other server where the Jabber ID is always a valid email address.</p>
<p>By the way, this week-end I&#8217;m going to Brussels for FOSDEM: hope to meet a lot of GNOME people there!</p>
<p align="centre" class="img"><a href="http://www.fosdem.org"><img src="http://www.fosdem.org/promo/going-to" alt="I'm going to FOSDEM, the Free and Open Source Software Developers' European Meeting" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2010-02/jid-to-email/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Some lovely people out there</title>
		<link>http://blog.barisione.org/2009-12/some-lovely-people-out-there/</link>
		<comments>http://blog.barisione.org/2009-12/some-lovely-people-out-there/#comments</comments>
		<pubDate>Sun, 13 Dec 2009 18:07:54 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[crazy people]]></category>

		<category><![CDATA[extremists]]></category>

		<category><![CDATA[gnome]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=230</guid>
		<description><![CDATA[Some lovely guy sent me this email:

From:    ****@gmx.de
Subject: Freedom!

Take your closed source crap out of this planet, nobody cares about it.

--
Freedom Lover
--
Jetzt kostenlos herunterladen: Internet Explorer 8 und Mozilla Firefox 3.5 -
sicherer, schneller und einfacher! http://portal.gmx.net/de/go/chbrowser

Note the irony of using an email service that adds to your email an advertisement for Internet [...]]]></description>
			<content:encoded><![CDATA[<p>Some <em>lovely</em> guy sent me this email:</p>
<pre>
From:    ****@gmx.de
Subject: Freedom!

Take your closed source crap out of this planet, nobody cares about it.

--
Freedom Lover
--
Jetzt kostenlos herunterladen: Internet Explorer 8 und Mozilla Firefox 3.5 -
sicherer, schneller und einfacher! http://portal.gmx.net/de/go/chbrowser
</pre>
<p>Note the irony of using an email service that adds to your email an advertisement for Internet Explorer&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2009-12/some-lovely-people-out-there/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Early Christmas</title>
		<link>http://blog.barisione.org/2009-12/early-christmas/</link>
		<comments>http://blog.barisione.org/2009-12/early-christmas/#comments</comments>
		<pubDate>Wed, 09 Dec 2009 13:00:00 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
		
		<category><![CDATA[collabora]]></category>

		<category><![CDATA[maemo]]></category>

		<category><![CDATA[christmas]]></category>

		<category><![CDATA[n900]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=219</guid>
		<description><![CDATA[It looks like Santa Claus arrived early for the Collabora employees 
N900 pyramid, and sadly some of them didn&#8217;t arrive yet
]]></description>
			<content:encoded><![CDATA[<p>It looks like Santa Claus arrived early for the Collabora employees <img src="http://farm1.static.flickr.com/205/458651139_21126b48de_o.png" alt=":D" /></p>
<p align="center" class="img"><a href="http://www.flickr.com/photos/barisione/4171063869/"><img src="http://farm3.static.flickr.com/2538/4171829148_ea37c76e01_o.jpg" alt="The N900 pyramid" /></a><br /><small>N900 pyramid, and sadly some of them didn&#8217;t arrive yet</small></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2009-12/early-christmas/feed/</wfw:commentRss>
		</item>
		<item>
		<title>New #empathy IRC channel</title>
		<link>http://blog.barisione.org/2009-11/new-empathy-irc-channel/</link>
		<comments>http://blog.barisione.org/2009-11/new-empathy-irc-channel/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 13:43:32 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
		
		<category><![CDATA[collabora]]></category>

		<category><![CDATA[empathy]]></category>

		<category><![CDATA[irc]]></category>

		<category><![CDATA[telepathy]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=212</guid>
		<description><![CDATA[In the last months the traffic on the #telepathy IRC channel on Freenode has been constantly growing, reaching the point where communication among developers is difficult and, at the same time, some new Empathy users are scared and don&#8217;t talk on the channel. This is why we just created a new #empathy channel on GIMPNet [...]]]></description>
			<content:encoded><![CDATA[<p>In the last months the traffic on the #telepathy IRC channel on Freenode has been constantly growing, reaching the point where communication among developers is difficult and, at the same time, some new Empathy users are scared and don&#8217;t talk on the channel. This is why we just created a new #empathy channel on GIMPNet (<a href="irc://irc.gnome.org/">irc.gnome.org</a>) for all the empathy users, while #telepathy will be used for development-related discussions.</p>
<p>See you all on #empathy!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2009-11/new-empathy-irc-channel/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Contacts on Maemo</title>
		<link>http://blog.barisione.org/2009-10/contacts-on-maemo/</link>
		<comments>http://blog.barisione.org/2009-10/contacts-on-maemo/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 10:20:49 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
		
		<category><![CDATA[collabora]]></category>

		<category><![CDATA[maemo]]></category>

		<category><![CDATA[address book]]></category>

		<category><![CDATA[contacts]]></category>

		<category><![CDATA[IM]]></category>

		<category><![CDATA[maesum]]></category>

		<category><![CDATA[n900]]></category>

		<category><![CDATA[telepathy]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=197</guid>
		<description><![CDATA[After the Maemo Summit the details on the address book application and framework in Maemo 5 are finally completely public so I can openly talk about what I worked on during the past year and, even better, I actually have a smartphone that runs this software! (Thanks to Nokia that gave out 300 N900s, but [...]]]></description>
			<content:encoded><![CDATA[<p>After the Maemo Summit the details on the address book application and framework in Maemo 5 are finally completely public so I can openly talk about what <a href="http://wiki.maemo.org/Documentation/Maemo_5_Developer_Guide/Using_Generic_Platform_Components/Using_Address_Book_API">I worked on</a> during the past year and, even better, I actually have a smartphone that runs this software! (Thanks to Nokia that gave out 300 N900s, but I will talk about this in my next post)</p>
<p align="center" class="img"><a href="http://www.flickr.com/photos/barisione/4031795864/"><img src="http://farm3.static.flickr.com/2567/4031795864_86a282108f.jpg" alt="Contacts on the N900" /></a><br /><small>Contacts on the N900</small></p>
<p align="center" class="img"><a href="http://www.flickr.com/photos/barisione/4031796040/"><img src="http://farm4.static.flickr.com/3525/4031796040_33e4c44322.jpg" alt="Contact details" /></a><br /><small>Contact details</small></p>
<p>As you can see from the screenshots, the Contacts application has everything you would expect from a normal phone address book but it also tightly integrates IM. Your local, Jabber/GTalk and Skype contacts will appear in the same address book and, if you have a friend on multiple IM protocols, you can easily merge all the contacts into a single entity.</p>
<p>My main task has been making the component responsible for the IM part of the address book work properly, this component is an evolution-data-server backend (recently <a href="http://maemo.gitorious.org/eds-backend-telepathy/eds-backend-telepathy">released under LGPL</a>) that acts as a bridge between the Telepathy IM framework and evolution-data-server. See the <a href="http://maemo.gitorious.org/eds-backend-telepathy/eds-backend-telepathy/blobs/raw/master/README">README file</a> for more details.<br />
Sadly the library on top of evolution-data-server that does the magic contact merging and contains the widgets used on Maemo is not open, but there is <a href="https://bugs.maemo.org/show_bug.cgi?id=5549">some hope for it</a>.</p>
<p align="center" class="img"><a href="http://farm3.static.flickr.com/2646/4031042575_4769654a27_o.png"><img src="http://farm3.static.flickr.com/2548/4031810672_d240ffdee4_o.png" alt="Address book components" /></a><br /><small>Address book components</small></p>
<p>At the Maemo Summit I also gave a talk on Telepathy and how it&#8217;s used on Maemo, both for messaging/VOIP and for the contacts integration. The slides are available in <a href="http://people.collabora.co.uk/~bari/slides/telepathy-maemo-summit-2009.pdf">PDF</a> or in <a href="http://people.collabora.co.uk/~bari/slides/telepathy-maemo-summit-2009.odp">OpenOffice.org format</a> (but for some reason colours look wrong in some recent versions of OpenOffice).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2009-10/contacts-on-maemo/feed/</wfw:commentRss>
		</item>
		<item>
		<title>More GList anti-patterns</title>
		<link>http://blog.barisione.org/2009-07/more-glist-anti-patterns/</link>
		<comments>http://blog.barisione.org/2009-07/more-glist-anti-patterns/#comments</comments>
		<pubDate>Thu, 16 Jul 2009 21:26:25 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
		
		<category><![CDATA[collabora]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=181</guid>
		<description><![CDATA[Ross, your examples are not as bad as something I found in some code I had to fix recently:

GList *list = e_vcard_get_attributes (evcard);

for (list = g_list_first (list);
     list != NULL;
     list = g_list_next (list))
{
         /* Do something */
}

for (list [...]]]></description>
			<content:encoded><![CDATA[<p>Ross, <a href="http://www.burtonini.com/blog/computers/list-2009-07-16-16-11">your examples</a> are not as bad as something I found in some code I had to fix recently:</p>
<pre>
GList *list = e_vcard_get_attributes (evcard);

for (list = <b>g_list_first</b> (list);
     list != NULL;
     list = g_list_next (list))
{
         /* Do something */
}

for (list = <b>g_list_first</b> (list);
     list != NULL;
     list = g_list_next (list))
{
         /* Do something else */
         g_object_unref (list->data);
}

g_free (<b>g_list_first</b> (list));
</pre>
<p>“Surprisingly” it was not working, but at least it was not leaking memory as the return value of <a href="http://library.gnome.org/devel/libebook/stable/EVCard.html#e-vcard-get-attributes">e_vcard_get_attributes</a> is not supposed to be freed <img src="http://farm1.static.flickr.com/218/458651141_54bbc48288_o.png" alt=";)" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2009-07/more-glist-anti-patterns/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Parsing names</title>
		<link>http://blog.barisione.org/2009-06/parsing-names/</link>
		<comments>http://blog.barisione.org/2009-06/parsing-names/#comments</comments>
		<pubDate>Thu, 18 Jun 2009 09:22:23 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
		
		<category><![CDATA[collabora]]></category>

		<category><![CDATA[maemo]]></category>

		<category><![CDATA[EDS]]></category>

		<category><![CDATA[evolution]]></category>

		<category><![CDATA[name parsing]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=149</guid>
		<description><![CDATA[In the last weeks I have been asked several times to modify some components I&#8217;m working on to add the ability to split a full name in its components (first name, family name, etc.).
It looks like most people have great expectations about this working correctly but they get annoyed when it fails, and you can [...]]]></description>
			<content:encoded><![CDATA[<p>In the last weeks I have been asked several times to modify some components I&#8217;m working on to add the ability to split a full name in its components (first name, family name, etc.).<br />
It looks like most people have great expectations about this working correctly but they get annoyed when it fails, and you can be sure it will fail. It will fail because it&#8217;s impossible to parse a name correctly, for instance:</p>
<table border="1" cellpadding="4" rules="none" align="center" style="margin-bottom:2em">
<tr>
<th>Full name</th>
<th>First</th>
<th>Middle</th>
<th>Last</th>
</tr>
<tr>
<td>Barack Hussein Obama</td>
<td>Barack</td>
<td>Hussein</td>
<td>Obama</td>
</tr>
<tr>
<td>Pier Silvio Berlusconi</td>
<td>Pier Silvio</td>
<td></td>
<td>Berlusconi</td>
</tr>
<tr>
<td>José Rodríguez Zapatero</td>
<td>José</td>
<td></td>
<td>Rodríguez Zapatero</td>
</tr>
</table>
<p>How can you do this automatically?</p>
<p>This becomes particularly silly if you cannot be sure that the string you are going to parse is actually a full name, for instance don&#8217;t try to parse a chat nickname. It&#8217;s true that gmail/gtalk uses your full name by default, but this is only a default and it&#8217;s true only for gmail.</p>
<p>To cut a long story short, please please please don&#8217;t try to parse names. You can see by yourself how hard it is, even if I&#8217;m just considering western-style names.<br />
If you still don&#8217;t trust me here&#8217;s a quote from <code>e-name-western.c</code>, i.e. the file that does name parsing in libebook <img src="http://farm1.static.flickr.com/189/458651157_780851832e_o.png" alt=":)" />:</p>
<pre>
* &lt;Nat&gt; Jamie, do you know anything about name parsing?
* &lt;jwz&gt; Are you going down that rat hole? Bring a flashlight.
</pre>
<p>On a side note when you are trying to understand why some code is broken you can find some funny commits, like the <a href="http://git.gnome.org/cgit/evolution-data-server/commit/?id=d17494da8ebaba8673a581f256efc8a1d41e1e40">great EDS purge</a></p>
<p><strong>Update: </strong> I found <a href="http://bugzilla.gnome.org/show_bug.cgi?id=586225">this “serious” bug</a> in <code>e_name_western_parse</code> <img src="http://farm1.static.flickr.com/205/458651139_21126b48de_o.png" alt=":D" />.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2009-06/parsing-names/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Vala, Clutter and limoncello</title>
		<link>http://blog.barisione.org/2009-03/vala-clutter-limoncello/</link>
		<comments>http://blog.barisione.org/2009-03/vala-clutter-limoncello/#comments</comments>
		<pubDate>Mon, 09 Mar 2009 09:30:54 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=148</guid>
		<description><![CDATA[During this week-end I finally found some time to start playing with Vala and Clutter. I would like to write a small game using them, but I&#8217;m not sure I will finish it because the more the time passes the less I seem able to write code in my free time. Now that I&#8217;m spending [...]]]></description>
			<content:encoded><![CDATA[<p>During this week-end I finally found some time to start playing with Vala and Clutter. I would like to write a small game using them, but I&#8217;m not sure I will finish it because the more the time passes the less I seem able to write code in my free time. Now that I&#8217;m spending all the day programming I find it very hard to write code when I come back from the office and I end up spending my time doing other things, like cooking.</p>
<p>Speaking of cooking, in Italy it&#8217;s quite common to make your own limoncello or other similar liqueurs so I finally decided to try making a basil-based limoncello-like liqueur. This kind of liqueurs is made using some 95% (190 proof) alcohol to extract the flavour form the lemon/basil/whatever and then the result is diluted with water and sugar. In Italy bottles of grain alcohol are available in most grocery stores<sup>[1]</sup>, but here it seems impossible to find. I suspect that the only way to have access to it in the UK is to work in a lab where alcohol is used<sup>[2]</sup>.</p>
<p><small>[1] And nobody that I know of tried to just drink it or used it to make other drinks stronger, so I was quite surprised when I discovered that pure alcohol is used in the US (in the states where it&#8217;s legal) almost only to make drinks stronger.</small></p>
<p><small>[2] Somebody in Cambridge reading this that works in a place where 95% alcohol is used?</small></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2009-03/vala-clutter-limoncello/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Time goes by</title>
		<link>http://blog.barisione.org/2009-03/time-goes-by/</link>
		<comments>http://blog.barisione.org/2009-03/time-goes-by/#comments</comments>
		<pubDate>Fri, 06 Mar 2009 12:20:40 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=147</guid>
		<description><![CDATA[It has been a year since I moved to Cambridge from Italy. It feels weird, but things go well here so for now I&#8217;m not planning any other change.
Clearly I need to cook a cake for this event .
]]></description>
			<content:encoded><![CDATA[<p>It has been a year since I moved to Cambridge from Italy. It feels weird, but things go well here so for now I&#8217;m not planning any other change.</p>
<p>Clearly I need to cook a cake for this event <img src="http://farm1.static.flickr.com/189/458651157_780851832e_o.png" alt=":)" />.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2009-03/time-goes-by/feed/</wfw:commentRss>
		</item>
		<item>
		<title>WebKit GTK on iRex Digital Readers</title>
		<link>http://blog.barisione.org/2009-02/webkit-gtk-on-irex-digital-readers/</link>
		<comments>http://blog.barisione.org/2009-02/webkit-gtk-on-irex-digital-readers/#comments</comments>
		<pubDate>Thu, 05 Feb 2009 11:01:44 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
		
		<category><![CDATA[collabora]]></category>

		<category><![CDATA[webkit]]></category>

		<category><![CDATA[dr100s]]></category>

		<category><![CDATA[electronic paper]]></category>

		<category><![CDATA[fosdem]]></category>

		<category><![CDATA[irex]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=146</guid>
		<description><![CDATA[When I joined Collabora last year I started to work on porting WebKit GTK to a device produced by iRex technologies based on the GNOME mobile stack and with an electonic paper display. My task was to make WebKit usable for the browser that they want to ship with the next version (with Wi-Fi connectivity) [...]]]></description>
			<content:encoded><![CDATA[<p>When I joined Collabora last year I started to work on porting WebKit GTK to a device produced by <a href="http://www.irextechnologies.com/">iRex technologies</a> based on the GNOME mobile stack and with an electonic paper display. My task was to make WebKit usable for the browser that they want to ship with the next version (with Wi-Fi connectivity) of their device, this meant adding missing features, fixing various bugs and adapting WebKit to work well with this kind of devices.</p>
<p class="img" align="center"><a href="http://www.fosdem.org"><img src="http://www.fosdem.org/promo/going-to" alt="I'm going to FOSDEM, the Free and Open Source Software Developers' European Meeting" /></a></p>
<p>At FOSDEM I willl give a talk on what I did and I will have with me a <a href="http://www.irextechnologies.com/irexdr1000">DR 1000S</a>, so you can play with it (I suspect that most people will follow the talk only because of the nice toy <img src="http://farm1.static.flickr.com/218/458651141_54bbc48288_o.png" alt=";)" />)</p>
<p align="center" class="img"><a href="http://irextechnologies.com/dr1000images/"><img src="http://farm4.static.flickr.com/3110/3255554196_b9f0b5ccac.jpg" alt="iRex DR 1000S" /></a><br /><small>An iRex Digital Reader 1000S</small></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2009-02/webkit-gtk-on-irex-digital-readers/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.417 seconds -->
