<?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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Marco Barisione's Weblog &#187; barisione</title>
	<atom:link href="http://blog.barisione.org/author/admin/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.barisione.org</link>
	<description></description>
	<lastBuildDate>Tue, 05 Mar 2013 16:29:22 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>What&#8217;s happening in Italy?</title>
		<link>http://blog.barisione.org/2013-02/whats-happening-in-italy/</link>
		<comments>http://blog.barisione.org/2013-02/whats-happening-in-italy/#comments</comments>
		<pubDate>Thu, 28 Feb 2013 14:22:40 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Beppe Grillo]]></category>
		<category><![CDATA[elections]]></category>
		<category><![CDATA[five star movement]]></category>
		<category><![CDATA[italian politics]]></category>
		<category><![CDATA[Mario Monti]]></category>
		<category><![CDATA[Silvio Berlusconi]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=626</guid>
		<description><![CDATA[I read a few good articles in English about the latest elections in Italy, but they all seemed a bit unclear about what can actually happen and what cannot happen. I hope this post can be easy to understand, not too boring and not too imprecise (I&#8217;m trying to simplify a few things and I [...]]]></description>
				<content:encoded><![CDATA[<p>I read a few good articles in English about the latest elections in Italy, but they all seemed a bit unclear about what can actually happen and what cannot happen.</p>
<p>I hope this post can be easy to understand, not too boring and not too imprecise (I&#8217;m trying to simplify a few things and I didn&#8217;t study law).</p>
<h4>A brief introduction</h4>
<p>Italy is a parliamentary republic. The <b>parliament</b> is formed by two separate houses, the <b>chamber of deputies</b> and the <b>senate</b>. The two houses have the same powers to make laws and to pass votes of confidence for the government.<br />
The <a href="http://en.wikipedia.org/wiki/Cabinet_of_Italy"><b>cabinet</b></a> is usually formed by members of the parliament, but this is not a requirement. The <a href="http://en.wikipedia.org/wiki/Prime_Minister_of_Italy"><b>prime minister</b></a> is not particularly powerful, for instance the prime minister cannot dismiss ministers or call for new elections.<br />
The <a href="http://en.wikipedia.org/wiki/President_of_Italy"><b>president of Italy</b></a> is the head of state. The president is mainly a figurehead with limited powers, but becomes very important when it&#8217;s time to form a new government or to dissolve the parliament.<br />
The president is elected by a joint session of the two houses of the parliament plus 58 local representatives for a 7-year term.</p>
<h4>How is the parliament elected?</h4>
<p>The current electoral law, disliked by almost everybody, was used for the first time in 2006 and was designed to make it difficult for the <span style="color:#aa0000; font-weight:bold">left</span> to get a stable majority. Parties can form coalitions or stand on their own.<br />
For the <b>lower house</b>, the coalition or party with the most votes automatically gets <b>55% of the seats</b>. The rest of the seats are assigned to the other coalitions or parties on a proportional basis.<br />
The <b>senate</b> is elected in a similar way, but on a <b>regional basis</b> (Italy is formed by 20 regions). This means that the party or coalition that gets most of the votes in a region gets 55% of the seats assigned to that region. It means that, at a national level, it&#8217;s possible that nobody will have a majority.</p>
<h4>What are the main parties/coalitions in Italy?</h4>
<p>The <span style="color:#aa0000; font-weight:bold">left</span> is formed mainly by the <a href="http://en.wikipedia.org/wiki/Democratic_Party_(Italy)">Democratic Party</a> (a center-left social democratic party) and by <a href="http://en.wikipedia.org/wiki/Left_Ecology_Freedom">Left Ecology Freedom</a> (a communist-ish/green party).<br />
The <span style="color:#008800; font-weight:bold">centre</span> is a mix of Christian and economically liberal parties. Its leader is <a href="http://en.wikipedia.org/wiki/Mario_Monti"><b>Mario Monti</b></a>, the current technocrat prime minister.<br />
The <span style="color:#0000aa; font-weight:bold">right</span> is formed by <a href="http://en.wikipedia.org/wiki/Silvio_Berlusconi"><b>Silvio Berlusconi</b></a>&#8216;s <a href="http://en.wikipedia.org/wiki/The_People_of_Freedom">People of Freedom</a> and by the <a href="http://en.wikipedia.org/wiki/Lega_Nord">Northern League</a> (they want more independence for the North of Italy and they are a bit populist and racist).<br />
The new entry at the latest elections was <a href="http://en.wikipedia.org/wiki/Beppe_Grillo"><b>Beppe Grillo</b></a>&#8216;s <a href="http://en.wikipedia.org/wiki/Five_Star_Movement"><span style="color:#d0d000; font-weight:bold">Five Star Movement</span></a>. Their policies are a mix of environmentalism, anti-corruption and  euroscepticism. While most of their goals are laudable, they are very populist with huge holes in their policies; basically it&#8217;s not clear where they could get the money for any of their policies. While they claim to value direct democracy, it&#8217;s Beppe Grillo who actually completely controls the party, even if he was not a candidate at the elections.</p>
<h4>Why isn&#8217;t Beppe Grillo in the parliament?</h4>
<p>Beppe Grillo says he is just the spokesperson of his party. Moreover, the <span style="color:#d0d000; font-weight:bold">Five Star Movement</span> is against electing people that were found guilty of any crime in the past and Beppe Grillo was found guilty of manslaughter for a car accident in which three passengers died.</p>
<h4>Who won the elections?</h4>
<p><b>Nobody.</b> The <span style="color:#aa0000; font-weight:bold">left</span> has a majority in the lower house, but no current coalition has a majority in the senate.</p>
<h4>Who voted for the <span style="color:#d0d000; font-weight:bold">5 Star Movement</span>?</h4>
<p>Apparently one third of their voters used to vote for the <span style="color:#aa0000; font-weight:bold">left</span>, one third for the <span style="color:#0000aa; font-weight:bold">right</span> and one third didn&#8217;t vote in the past.</p>
<h4>What is going to happen now?</h4>
<p>The new parliament&#8217;s term will start in a couple of weeks. At that point the two houses need to vote for their presidents/speakers. Then the Italian president will hold meetings with the various political leaders and try to find a prime minister that has good chances of creating a cabinet that could pass a confidence vote by both houses of the parliament. This is the problem as there is no majority at the moment.</p>
<h4>Is a broader coalition possible?</h4>
<p>In theory yes. Any coalition will have to include the <span style="color:#aa0000; font-weight:bold">left</span> because they control the lower house.</p>
<ul>
<li>A coalition of the <span style="color:#aa0000; font-weight:bold">left</span> and the <span style="color:#008800; font-weight:bold">centre</span> is what most people expected before the elections, but Monti didn&#8217;t get as many votes as expected, so this coalition would not have a majority in the senate.</li>
<li>A coalition of the <span style="color:#aa0000; font-weight:bold">left</span> and the <span style="color:#d0d000; font-weight:bold">5 Star Movement</span> would have a majority, but Beppe Grillo doesn&#8217;t want to form alliances with anybody. The <span style="color:#d0d000; font-weight:bold">5 stars</span> are against traditional politics and want a deep renovation of the Italian political class; if they decided to form an alliance with a traditional party they would lose a lot of their voters.</li>
<li>A coalition of the <span style="color:#aa0000; font-weight:bold">left</span> and the <span style="color:#0000aa; font-weight:bold">right</span> is possible too, but unlikely. The current technocrat government was, after all, a coalition of <span style="color:#aa0000; font-weight:bold">left</span>, <span style="color:#008800; font-weight:bold">centre</span> and <span style="color:#0000aa; font-weight:bold">right</span>, but Berlusconi decided to stop supporting it, so why should he be trusted again? Moreover, I think that a coalition of <span style="color:#aa0000; font-weight:bold">left</span> and <span style="color:#0000aa; font-weight:bold">right</span> would disgust a lot of their voters.</li>
</ul>
<h4>Is a minority government possible?</h4>
<p>It would be very unstable but yes, it would be possible to have a minority government formed by the <span style="color:#aa0000; font-weight:bold">left</span> and, maybe, the <span style="color:#008800; font-weight:bold">centre</span> with external support by the <span style="color:#d0d000; font-weight:bold">5 stars</span>. The problem is that this cabinet would still need to pass a vote of confidence in the lower house (easy) and in the senate (not so easy as the <span style="color:#d0d000; font-weight:bold">5 stars</span> don&#8217;t want to vote for it).</p>
<h4>But the <span style="color:#d0d000; font-weight:bold">5 star</span> senators could just abstain, right?</h4>
<p>No. Abstentions in the senate count as no, so the government would not get the parliament&#8217;s confidence.</p>
<h4>But the <span style="color:#d0d000; font-weight:bold">5 star</span> senators could just leave the senate during the confidence vote!</h4>
<p>No. Votes in the senate are only valid if the majority of senators are present. The <span style="color:#0000aa; font-weight:bold">right</span> would not have enough votes to block the confidence vote, but they could just leave before the vote, making the vote invalid.</p>
<h4>Can&#8217;t you just vote again?</h4>
<p>Usually the president, when it&#8217;s clear that there is no chance to form a cabinet, calls for elections, but this time it&#8217;s not possible.<br />
The authors of our constitution were worried that a president could dissolve the parliament just before the end of the presidential term in the hope of getting a more favourable parliament that would elect the current president for another term.<br />
The term of the current president will end in a few months, so <b>he cannot dissolve the parliament now</b>.</p>
<h4>How about another technocrat government?</h4>
<p>It would be possible (and it would be very different from the current one!) but it would be very difficult to get the <span style="color:#aa0000; font-weight:bold">left</span> and the <span style="color:#d0d000; font-weight:bold">5 stars</span> to agree on much.</p>
<h4>Could the new parliament elect another president that would then dissolve the parliament?</h4>
<p>Yes, but finding an agreement to make this happen is going to be complicated and take time. In the meantime, Italy won&#8217;t have a stable government (the current Monti government will be in charge until a new government is found, but with very limited powers).</p>
<h4>So, what is going to happen?</h4>
<p>Good question. I have no idea.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2013-02/whats-happening-in-italy/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>Why is g_hash_table_insert used?</title>
		<link>http://blog.barisione.org/2013-01/why-g_hash_table_insert/</link>
		<comments>http://blog.barisione.org/2013-01/why-g_hash_table_insert/#comments</comments>
		<pubDate>Wed, 30 Jan 2013 16:38:28 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
				<category><![CDATA[collabora]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[GHashTable]]></category>
		<category><![CDATA[glib]]></category>
		<category><![CDATA[g_hash_table_insert]]></category>
		<category><![CDATA[g_hash_table_replace]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=605</guid>
		<description><![CDATA[Yesterday I was discussing a bug in some code using a GHashTable with Will and we both started to wonder if there is any reason to use g_hash_table_insert instead of g_hash_table_replace. First of all an example, look at this code and try to find the bug. #include &#60;glib.h&#62; static void add_entry (GHashTable *ht, const gchar [...]]]></description>
				<content:encoded><![CDATA[<p>Yesterday I was discussing a bug in some code using a GHashTable with <a href="http://blogs.gnome.org/wjjt/">Will</a> and we both started to wonder if there is any reason to use <code>g_hash_table_insert</code> instead of <code>g_hash_table_replace</code>.</p>
<p>First of all an example, look at this code and try to find the bug.</p>
<pre>
#include &lt;glib.h&gt;

static void
add_entry (GHashTable *ht, const gchar *config)
{
  gchar **split_config = g_strsplit (config, "=", 2);

  if (g_strv_length (split_config) == 2) {
      gchar *key = g_utf8_strdown (split_config[0], -1);
      gchar *value = g_strdup (split_config[1]);

      g_hash_table_insert (ht, key, value);

      g_print ("Set %s to %s\n", key, value);
  }

  g_strfreev (split_config);
}

int
main (int argc, char **argv)
{
  GHashTable *ht = g_hash_table_new_full (g_str_hash,
      g_str_equal, g_free, g_free);
  gint i;

  for (i = 1; i &lt; argc; i++)
    add_entry (ht, argv[i]);

  g_hash_table_unref (ht);

  return 0;
}
</pre>
<p>If it&#8217;s not clear where the bug is, try invoking the program with “<code>apples=42 Pears=12 APPLES=10</code>” on the command line.</p>
<p>If a key already exists in the hash table, the key passed to <code><a href="http://developer.gnome.org/glib/2.34/glib-Hash-Tables.html#g-hash-table-insert">g_hash_table_insert</a></code> is destroyed and you cannot use it afterwards. This behaviour is documented, but it&#8217;s easy to find code affected by this bug. <code><a href="http://developer.gnome.org/glib/2.34/glib-Hash-Tables.html#g-hash-table-replace">g_hash_table_replace</a></code> behaves like <code>g_hash_table_insert</code>, but without this problem.<br />
Is there any good reason for using <code>g_hash_table_insert</code> instead of <code>g_hash_table_replace</code>? Can you come up with a non-contrived example where you want the behaviour of the former?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2013-01/why-g_hash_table_insert/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Message Notifier for Gnome 3.6</title>
		<link>http://blog.barisione.org/2012-10/message-notifier-for-gnome-3-6/</link>
		<comments>http://blog.barisione.org/2012-10/message-notifier-for-gnome-3-6/#comments</comments>
		<pubDate>Fri, 19 Oct 2012 16:08:37 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
				<category><![CDATA[collabora]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[gnome-shell]]></category>
		<category><![CDATA[IM]]></category>
		<category><![CDATA[message notifier]]></category>
		<category><![CDATA[notification]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[xchat]]></category>
		<category><![CDATA[xchat-gnome]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=590</guid>
		<description><![CDATA[Recently I didn&#8217;t have much time to hack on Message Notifier, but luckily Guillaume Desmottes ported it to Gnome 3.6. This version also changes the shortcut to open the menu from Win+M to Win+L, as the former is now used by the shell. To update, just visit the extension page and click on the update [...]]]></description>
				<content:encoded><![CDATA[<p>Recently I didn&#8217;t have much time to hack on Message Notifier, but luckily <a href="http://blog.desmottes.be/">Guillaume Desmottes</a> ported it to Gnome 3.6. This version also changes the shortcut to open the menu from <code>Win+M</code> to <code>Win+L</code>, as the former is now used by the shell.</p>
<p>To update, just visit <a href="https://extensions.gnome.org/extension/150/message-notifier/">the extension page</a> and click on the update button next to the on/off switch.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2012-10/message-notifier-for-gnome-3-6/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Boss Mode extension</title>
		<link>http://blog.barisione.org/2012-08/boss-mode/</link>
		<comments>http://blog.barisione.org/2012-08/boss-mode/#comments</comments>
		<pubDate>Thu, 02 Aug 2012 14:07:16 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
				<category><![CDATA[gnome]]></category>
		<category><![CDATA[boss-mode]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[gnome-shell]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=572</guid>
		<description><![CDATA[Gnome-shell&#8217;s popup notifications and integrated chat are great, but sometimes I&#8217;m annoyed when the content of a chat is displayed on screen at the wrong moment (for instance if a colleague sends you a work-related message while you are sitting at a conference next to other people). The Boss Mode extension allows you to quickly [...]]]></description>
				<content:encoded><![CDATA[<p>Gnome-shell&#8217;s popup notifications and integrated chat are great, but sometimes I&#8217;m annoyed when the content of a chat is displayed on screen at the wrong moment (for instance if a colleague sends you a work-related message while you are sitting at a conference next to other people).<br />
The <a href="https://extensions.gnome.org/extension/410/boss-mode/">Boss Mode</a> extension allows you to quickly disable notifications, without any UI feedback, by just pressing Win+B. Press Win+N to enable notifications again.</p>
<p>The default keybindings can be modified by clicking the preferences button on the extension page (next to the switch to enable/disable the extension).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2012-08/boss-mode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Keybinding for the message notification extension</title>
		<link>http://blog.barisione.org/2012-07/keybinding-for-message-notifier/</link>
		<comments>http://blog.barisione.org/2012-07/keybinding-for-message-notifier/#comments</comments>
		<pubDate>Tue, 31 Jul 2012 12:12:29 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
				<category><![CDATA[gnome]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[gnome-shell]]></category>
		<category><![CDATA[message notifier]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=570</guid>
		<description><![CDATA[I uploaded a new version of Message Notifier to extensions.gnome.org. The main new feature is that you can now open the menu pressing Win+M. The default keybinding can be modified by clicking the preferences button on the extension page (next to the switch to enable/disable the extension). This version also fixes notifications for xchat-gnome on [...]]]></description>
				<content:encoded><![CDATA[<p>I uploaded a new version of <a href="https://extensions.gnome.org/extension/150/message-notifier/">Message Notifier</a> to extensions.gnome.org. The main new feature is that you can now open the menu pressing Win+M.<br />
The default keybinding can be modified by clicking the preferences button on the extension page (next to the switch to enable/disable the extension).</p>
<p>This version also fixes notifications for xchat-gnome on Fedora.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2012-07/keybinding-for-message-notifier/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Better notification support</title>
		<link>http://blog.barisione.org/2012-04/better-notification-support/</link>
		<comments>http://blog.barisione.org/2012-04/better-notification-support/#comments</comments>
		<pubDate>Fri, 27 Apr 2012 08:11:19 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
				<category><![CDATA[collabora]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[empathy]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[gnome-shell]]></category>
		<category><![CDATA[libnotify]]></category>
		<category><![CDATA[message notifier]]></category>
		<category><![CDATA[notify-send]]></category>
		<category><![CDATA[pidgin]]></category>
		<category><![CDATA[xchat]]></category>
		<category><![CDATA[xchat-gnome]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=554</guid>
		<description><![CDATA[Yesterday I released a new version of my message notification extension for gnome-shell (3.2 and 3.4), to install it or to update it just visit its page on extensions.gnome.org. The main feature in the new version is that it just handles notifications coming from well-known applications: Empathy, XChat, XChat-GNOME, Pidgin and notify-send. Handling the Empathy [...]]]></description>
				<content:encoded><![CDATA[<p>Yesterday I released a new version of my message notification extension for gnome-shell (3.2 and 3.4), to install it or to update it just visit its page on <a href="https://extensions.gnome.org/extension/150/message-notifier/">extensions.gnome.org</a>.</p>
<p>The main feature in the new version is that it just handles notifications coming from well-known applications: Empathy, XChat, XChat-GNOME, Pidgin and notify-send. Handling the Empathy notifications is easy because they are well integrated with the shell, but the other notifications required some hack because all the applications handle notifications in different ways. I did my best to make the notifications as useful as possible, similar to the Empathy ones, but there are some small limitations.<br />
Some of the handled applications require plugins to show notification bubbles:</p>
<ul>
<li><b>Pidgin:</b> Click on the “Tools” menu and then “Plug-ins”. Make sure that the “Libnotify Popups” plugin is enabled. If the plugin is not in the list it means you need to install it. On Debian the package is called “pidgin-libnotify”, other distros should have a package with a similar name.</li>
<li><b>XChat-GNOME:</b> Click on the “Edit” menu and then “Preferences”. In the “Scripts and Plugins” tab make sure that “On-screen display” is enabled.</li>
<li><b>XChat:</b> Click on the “Settings” menu and then “Preferences”. In the “Alerts” tab make sure that “Show tray baloons” is enabled for both “Private Message” and “Highlighted Message”. If the notifications pile up in the bottom right corner of your screen and clicking on them does nothing, it means that XChat is using notify-send because it cannot find libnotify. I don&#8217;t know how to fix this issue on different distros, but I found a <a href="https://bugzilla.redhat.com/show_bug.cgi?id=693362">Red Hat bug explaining the problem</a>.</li>
</ul>
<p align="center" class="img"><a href="https://extensions.gnome.org/extension/150/message-notifier/"><img src="http://farm8.staticflickr.com/7120/6969999096_498aceaa05.jpg" alt="Message notification" /></a><br /><small>Notifications coming from Empathy and XChat-GNOME</small></p>
<p>Is there any other common application that you would like to be handled by my plugin? The only prerequisite is that they somehow use standard notification bubbles (and this means I cannot implement it for Skype).</p>
<p>If you are looking for the source code, it&#8217;s in <a href="http://cgit.collabora.com/git/user/bari/shell-message-notifier.git/">this git repository</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2012-04/better-notification-support/feed/</wfw:commentRss>
		<slash:comments>39</slash:comments>
		</item>
		<item>
		<title>Updated message notifier and new cooking blog</title>
		<link>http://blog.barisione.org/2012-04/updated-message-notifier-and-new-cooking-blog/</link>
		<comments>http://blog.barisione.org/2012-04/updated-message-notifier-and-new-cooking-blog/#comments</comments>
		<pubDate>Thu, 19 Apr 2012 15:46:17 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
				<category><![CDATA[collabora]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[cooking]]></category>
		<category><![CDATA[empathy]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[gnocchialpesto.co.uk]]></category>
		<category><![CDATA[gnome-shell]]></category>
		<category><![CDATA[message notifier]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=544</guid>
		<description><![CDATA[A few months ago I wrote a gnome-shell extension that shows how many conversations with unread messages you have, so that I could stop missing incoming messages. I updated the extension so it now works better and it can also show what the incoming notifications are when you press the icon. You can get the [...]]]></description>
				<content:encoded><![CDATA[<p>A few months ago I wrote a gnome-shell extension that <a href="http://blog.barisione.org/2011-11/permanent-im-notifications/">shows how many conversations with unread messages you have</a>, so that I could stop missing incoming messages.<br />
I updated the extension so it now works better and it can also show what the incoming notifications are when you press the icon. You can get the new version (and install it with just two clicks) from <a href="https://extensions.gnome.org/extension/150/message-notifier/">extensions.gnome.org</a>. If you previously installed the extension from git and you don&#8217;t have an update button on that page it could mean you need to first manually remove <code>~/.local/share/gnome-shell/extensions/message-notifier@shell-extensions.barisione.org/</code> and reload the shell (ALT-F2 and then type “r”).</p>
<p align="center" class="img"><a href="https://extensions.gnome.org/extension/150/message-notifier/"><img src="http://farm6.staticflickr.com/5447/7090334093_b40dfbf485.jpg" alt="Message notification" /></a></p>
<p>Note that the extension shows the number of conversations with new messages and not the number of messages; I don&#8217;t like seeing “2” up there if somebody just wrote me “hi” and then “how are you?”.</p>
<p>There is still a major problem with the extension. I wanted to be able to also see if somebody pinged me on IRC (I&#8217;m a XChat-GNOME user) so I don&#8217;t limit the count to active chat conversations, but I consider all the active notifications. I find this very useful to avoid missing something, but it means that the red icon will also appear every time banshee or rhythmbox change song. Suggestions on how to solve this?</p>
<p>Changing completely topic, I recently moved to a new home and, having a nice new kitchen (with dishwasher), I started cooking a lot again. I decided to start a new cooking blog called <a href="http://www.gnocchialpesto.co.uk/">gnocchialpesto.co.uk</a> to keep track of my recipes and share them with others. If you like food, in particular Italian one, take a look at it <img src="http://farm1.static.flickr.com/189/458651157_780851832e_o.png" alt=":)" />.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2012-04/updated-message-notifier-and-new-cooking-blog/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Permanent IM notifications</title>
		<link>http://blog.barisione.org/2011-11/permanent-im-notifications/</link>
		<comments>http://blog.barisione.org/2011-11/permanent-im-notifications/#comments</comments>
		<pubDate>Mon, 21 Nov 2011 21:00:33 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
				<category><![CDATA[collabora]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[gnome 3]]></category>
		<category><![CDATA[gnome-sell]]></category>
		<category><![CDATA[IM]]></category>
		<category><![CDATA[telepathy]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=534</guid>
		<description><![CDATA[Update: the extension is now available on extensions.gnome.org. Gnome 3 and the shell look really great, but there are a few things that annoy me. My main complaint is that I keep missing IM messages because there is no visual clue that you got a message (unless you are staring at the bottom of your [...]]]></description>
				<content:encoded><![CDATA[<p><b>Update:</b> the extension is now available on <a href="https://extensions.gnome.org/extension/150/message-notifier/">extensions.gnome.org</a>.</p>
<p>Gnome 3 and the shell look really great, but there are a few things that annoy me. My main complaint is that I keep missing IM messages because there is no visual clue that you got a message (unless you are staring at the bottom of your screen exactly when you receive something).<br />
This problem will probably be fixed in the next version of Gnome, see <a href="https://bugzilla.gnome.org/show_bug.cgi?id=641723">bug #641723</a>, but I wanted something <b>now</b>. That&#8217;s why I wrote a simple <a href="http://cgit.collabora.com/git/user/bari/shell-message-notifier.git/" alt="Message Notifier extension GIT repository">extension</a> that just displays the number of conversations with unread messages. To install it, just clone the git repository and execute “make install”.</p>
<p align="center" class="img"><a href="http://farm7.staticflickr.com/6036/6378479629_9c282628b4_b.jpg"><img src="http://farm7.staticflickr.com/6036/6378479629_9c282628b4_z.jpg" alt="Spot the difference" class="scaled" width="400" /></a><br /><small>Spot the difference</small></p>
<p>The extension is unpolished, it does very little, the code is horrible and I didn&#8217;t pay any attention to usability; I just wanted a quick fix while waiting for upstream to fix the bug properly. Nevertheless, I hope this code will be useful for other people too!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2011-11/permanent-im-notifications/feed/</wfw:commentRss>
		<slash:comments>29</slash:comments>
		</item>
		<item>
		<title>Broken GTalk calls</title>
		<link>http://blog.barisione.org/2011-06/broken-gtalk-calls/</link>
		<comments>http://blog.barisione.org/2011-06/broken-gtalk-calls/#comments</comments>
		<pubDate>Thu, 23 Jun 2011 16:19:57 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
				<category><![CDATA[collabora]]></category>
		<category><![CDATA[maemo]]></category>
		<category><![CDATA[meego]]></category>
		<category><![CDATA[harmattan]]></category>
		<category><![CDATA[jabber]]></category>
		<category><![CDATA[jingle]]></category>
		<category><![CDATA[n9]]></category>
		<category><![CDATA[n900]]></category>
		<category><![CDATA[n950]]></category>
		<category><![CDATA[xmpp]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=525</guid>
		<description><![CDATA[Recently Google updated their XMPP servers to use standard Jingle for audio and video calls; see the “Google: The Future is Jingle” post on xmpp.org for some more details. This would be good news for us, except that, by doing so, they broke calls in telepathy-gabble (so in Empathy, the N900 and MeeGo) in multiple [...]]]></description>
				<content:encoded><![CDATA[<p>Recently Google updated their XMPP servers to use <a href="http://xmpp.org/extensions/xep-0166.html" alt="XEP-0166: Jingle">standard Jingle</a> for audio and video calls; see the <a href="http://xmpp.org/2011/06/the-future-is-jingle/">“Google: The Future is Jingle”</a> post on xmpp.org for some more details.<br />
This would be good news for us, except that, by doing so, they broke calls in telepathy-gabble (so in Empathy, the N900 and MeeGo) in multiple ways.</p>
<p>Luckily GTalk developers were really cooperative and they agreed on fixing their servers and <a href="http://blogs.gnome.org/wjjt/">Will</a> and <a href="http://www.ocrete.ca/">Olivier</a> already <a href="https://bugs.freedesktop.org/show_bug.cgi?id=38352">fixed Gabble</a> too. The new version of Gabble (0.12.2 for the stable branch and 0.13.1 for the development one) should make calls work again on the desktop, MeeGo and on Harmattan (i.e. the N9 and N950) too.<br />
For the N900 we don&#8217;t have any way to release updates, but Google will push an update to their servers (in the next week or two hopefully) with a N900-specific workaround.</p>
<p>Sadly video calls on the N900 will keep not working; the version of gst-dsp on the N900 doesn&#8217;t properly handle changes in the parameters of the stream <img src="http://farm1.static.flickr.com/217/458651161_e4a46b807b_o.png" alt=":(" />.</p>
<p><strong>Update:</strong> just to be clear, this affects only calls from GTalk to gabble. Calls in the other direction still work and calls between two devices of Gabble work too.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2011-06/broken-gtalk-calls/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>Folks and QtContacts</title>
		<link>http://blog.barisione.org/2010-11/folks-and-qtcontacts/</link>
		<comments>http://blog.barisione.org/2010-11/folks-and-qtcontacts/#comments</comments>
		<pubDate>Wed, 17 Nov 2010 10:40:42 +0000</pubDate>
		<dc:creator>barisione</dc:creator>
				<category><![CDATA[collabora]]></category>
		<category><![CDATA[maemo]]></category>
		<category><![CDATA[meego]]></category>
		<category><![CDATA[dublin]]></category>
		<category><![CDATA[folks]]></category>
		<category><![CDATA[libfolks]]></category>
		<category><![CDATA[meegoconf]]></category>
		<category><![CDATA[QtContacts]]></category>
		<category><![CDATA[QtFolks]]></category>
		<category><![CDATA[qtmobility]]></category>

		<guid isPermaLink="false">http://blog.barisione.org/?p=399</guid>
		<description><![CDATA[At the moment I&#8217;m at the MeeGo conference in Dublin, finally finding a bit of time to blog on what I have been working on for the past 2 weeks. The conference is really well organised and the location is a bit unusual but awesome. For me, the best thing about this conference seems to [...]]]></description>
				<content:encoded><![CDATA[<p>At the moment I&#8217;m at the MeeGo conference in Dublin, finally finding a bit of time to blog on what I have been working on for the past 2 weeks. The conference is really well organised and <a href="http://en.wikipedia.org/wiki/Aviva_Stadium">the location</a> is a bit unusual but awesome. For me, the best thing about this conference seems to be the possibility of meeting so many people that I know because of GNOME, Collabora and Maemo/MeeGo. Considering that Collabora is now employing several KDE people, this conference is also a good way to meet more KDE developers while awaiting for the Desktop Summit in Berlin.</p>
<p align="center" class="img"><a href="http://farm5.static.flickr.com/4110/5177887607_146b08cbbf_z.jpg"><img src="http://farm5.static.flickr.com/4110/5177887607_146b08cbbf_z.jpg" alt="" class="scaled" width="400" /></a><br /><small>The Aviva stadium</small></p>
<p>Nowadays, Empathy uses <a href="http://telepathy.freedesktop.org/wiki/Folks">libfolks</a> to access contacts and to merge multiple contacts (called personas in Folks) into a single “meta-contact” (called individual).<br />
On MeeGo, on the other hand, it seems that <a href="http://doc.qt.nokia.com/qtmobility-1.1-tp/contacts.html">QtContacts</a> (part of QtMobility) is the future. QtContacts is just an API and relies on backends for the actual access to contacts, so why not trying to have QtContacts using libfolks? In the last weeks I worked a bit on writing a QtFolks backed for QtContacts and a small demo written in QML to show what the backend can do.</p>
<p align="center" class="img"><a href="http://www.flickr.com/photos/barisione/5178092055/"><img src="http://farm5.static.flickr.com/4145/5178092055_9b4d9596f9_z.jpg" alt="The demo showing some of my XMPP contacts" /></a><br /><small>The demo showing some of my XMPP contacts</small></p>
<p>Folks doesn&#8217;t just want to be a library for IM contacts, but a generic library to access all of your contacts. The next logical step was to add extra backends to access more sources of contacts.<br />
If you use the Facebook XMPP server, you can already have access to Facebook friends and chat with them, but you don&#8217;t get all the information that are available through the web API. This is why I modified the <a href="http://git.collabora.co.uk/?p=meego-facebook-plugins.git;a=summary">Facebook libsocialweb plugin</a> to also access Facebook contacts and added new interfaces to libfolks to expose this information. Moreover, we can rely of the Facebook ID to automatically merge the persona from the Facebook XMPP and the one from the Facebook web API into a single individual.</p>
<p align="center" class="img"><a href="http://www.flickr.com/photos/barisione/5178698478/"><img src="http://farm5.static.flickr.com/4154/5178698478_fc5f70044a_z.jpg" alt="A contact with multiple IM addresses and information coming from Facebook too" /></a><br /><small>A contact with multiple IM addresses and information coming from Facebook too</small></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.barisione.org/2010-11/folks-and-qtcontacts/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
