<?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>conundrum &#187; OpenSource</title>
	<atom:link href="http://www.emmanuelebassi.name/archives/category/computer/opensource/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.emmanuelebassi.name</link>
	<description>on the other side of the screen it all looks so easy</description>
	<lastBuildDate>Tue, 08 Sep 2009 20:52:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Liberty Bell</title>
		<link>http://www.emmanuelebassi.name/archives/2008/10/04/liberty-bell/</link>
		<comments>http://www.emmanuelebassi.name/archives/2008/10/04/liberty-bell/#comments</comments>
		<pubDate>Sat, 04 Oct 2008 16:02:45 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
				<category><![CDATA[Diary]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[clutter]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[gtk+]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[travel]]></category>
		<category><![CDATA[ui]]></category>

		<guid isPermaLink="false">http://www.emmanuelebassi.net/archives/2008/10/liberty-bell/</guid>
		<description><![CDATA[il sottoscritto se ne va per una settimana circa in quel di Boston, prima per una hackfest poi per il Boston Summit. poiché mi porterò dietro l&#8217;altro laptop1 sarà problematico rispondere a email e menate varie, ma tenterò di usare tumblr e twitter per dimostrare la mia esistenza. un T61 con su windows xp, che [...]]]></description>
			<content:encoded><![CDATA[<p>il sottoscritto se ne va per una settimana circa in quel di Boston, prima per una <em>hackfest</em> poi per il Boston Summit. poiché mi porterò dietro l&#8217;<em>altro</em> laptop<sup>1</sup> sarà problematico rispondere a email e menate varie, ma tenterò di usare tumblr e twitter per dimostrare la mia esistenza.</p>
<ol class="footnotes"><li id="footnote_0_1125" class="footnote">un T61 con su windows xp, che serve solo come client di posta hardware e per completare burocrazia varia che richiede IE, e che in questo momento sta subendo un&#8217;installazione di Debian per un improbabile <em>dual booting</em> che non faccio dal novembre 1998</li></ol>]]></content:encoded>
			<wfw:commentRss>http://www.emmanuelebassi.name/archives/2008/10/04/liberty-bell/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>A Time to be so Small</title>
		<link>http://www.emmanuelebassi.name/archives/2008/10/03/a-time-to-be-so-small/</link>
		<comments>http://www.emmanuelebassi.name/archives/2008/10/03/a-time-to-be-so-small/#comments</comments>
		<pubDate>Fri, 03 Oct 2008 16:10:46 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[gtk+]]></category>
		<category><![CDATA[shit happens]]></category>
		<category><![CDATA[ui]]></category>

		<guid isPermaLink="false">http://www.emmanuelebassi.net/archives/2008/10/a-time-to-be-so-small/</guid>
		<description><![CDATA[dato che non sono contento se non entro nelle solite diatribe sul selettore di file delle GTK+, sono finito ovviamente sul bug 325095, ovvero mostra una colonna con la dimensione del file. premessa: se devi usare la dimensione di un file come discriminante per decidere cosa farne, sei fottuto comunque; la prossima volta usa un [...]]]></description>
			<content:encoded><![CDATA[<p>dato che non sono contento se non entro nelle solite diatribe sul <a href="http://library.gnome.org/devel/gtk/stable/GtkFileChooser.html">selettore di file delle GTK+</a>, sono finito ovviamente sul <a href="http://bugzilla.gnome.org/show_bug.cgi?id=325095">bug 325095</a>, ovvero <em>mostra una colonna con la dimensione del file</em>.</p>
<p><strong>premessa</strong>: se devi usare la dimensione di un file come discriminante per decidere cosa farne, sei fottuto comunque; la prossima volta usa un nome decente. qualunque altra considerazione ricade sotto <em>file management</em>, e quello non lo fate da una finestra di dialogo che serve per aprire o salvare file, bensì da un <em>file manager</em>. ergo, non venitemi a menare il torrone con stronzate tipo &#8220;devo decidere cosa cancellare&#8221; oppure &#8220;devo vedere cosa spostare&#8221;: Nautilus <strong>ha già una colonna per le dimensioni</strong> quindi usate quello e non venite a rompere i coglioni a me.</p>
<p>nonostante la doverosa premessa, esiste un caso in cui effettivamente serve la dimensione dei file &mdash; ovvero quando devi aprire un file che non hai creato tu. dato che questo caso non dovrebbe essere l&#8217;unico modo in cui i file appaiono sul vostro computer<sup>1</sup>, il <em>default</em> è &#8220;non visibile&#8221;.</p>
<p>dato che una sera mi annoiavo, e dato che la lettura dei commenti aveva provocato in me <a href="http://www.emmanuelebassi.net/archives/2007/05/overdrive2/">gli effetti noti</a>, ho deciso di dedicare quei venti minuti necessari all&#8217;implementazione e il test<sup>2</sup>.</p>
<p>quindi, ecco qui uno screenshot del selettore file con la colonna visibile:</p>
<p><a href="http://www.emmanuelebassi.net/wp-content/uploads/2008/10/filechooser-show-size-column.png"><img src="http://www.emmanuelebassi.net/wp-content/uploads/2008/10/filechooser-show-size-column-300x261.png" alt="show size column" title="show size column" width="300" height="261" class="aligncenter size-medium wp-image-1152" /></a></p>
<p>la <em>patch</em> è già atterrata in <code>trunk</code>, quindi sarà nella prossima <em>release</em>, di qui a nove mesi circa.</p>
<p>quello che mi domando è: nei tre anni di vita di quel bug, e dopo venti commenti, è possibile che io sia stato il primo pirla ad avere venti minuti da spendere per:</p>
<ul>
<li>aprire un editor di testo</li>
<li>trovare la parte che si occupa di leggere le informazioni sui file</li>
<li>aggiungere numero una (1) colonna a un TreeView, numero uno (1) MenuItem, numero una (1) funzione di sorting</li>
</ul>
<p>ora, vabbé che avevo venti minuti di totale odio per la razza umana, ma non è pensabile che io li abbia sempre e davanti a un computer con un <em>check out</em> delle GTK+<sup>3</sup>.</p>
<ol class="footnotes"><li id="footnote_0_1123" class="footnote">nel qual caso, lo porterei dal più vicino esorcista se fossi in voi</li><li id="footnote_1_1123" class="footnote">e non fosse che compilare le gtk+ su questo laptop porta via 10 minuti anche con due <em>core</em>, ci avrei messo meno</li><li id="footnote_2_1123" class="footnote">ah, ma chi prendo in giro: io ho <strong>sempre</strong> un <em>check out</em> delle GTK+</li></ol>]]></content:encoded>
			<wfw:commentRss>http://www.emmanuelebassi.name/archives/2008/10/03/a-time-to-be-so-small/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>GUADEC/0</title>
		<link>http://www.emmanuelebassi.name/archives/2008/07/11/guadec0-3/</link>
		<comments>http://www.emmanuelebassi.name/archives/2008/07/11/guadec0-3/#comments</comments>
		<pubDate>Fri, 11 Jul 2008 20:35:41 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[gtk+]]></category>
		<category><![CDATA[guadec]]></category>

		<guid isPermaLink="false">http://www.emmanuelebassi.net/archives/2008/07/guadec0-3/</guid>
		<description><![CDATA[dalla caffetteria dell&#8217;università, a cinquanta metri dal Bosforo anche quest&#8217;anno, il GUADEC è stata una grande esperienza. ritrovare varia umanità con cui chiaccheri solo su IRC o su mailing list mette più o meno di buon umore &#8212; e se a questo si aggiunge passare la serata fino alle tre del mattino sdraiato su cuscini [...]]]></description>
			<content:encoded><![CDATA[<p><em>dalla caffetteria dell&#8217;università, a cinquanta metri dal Bosforo</em></p>
<p>anche quest&#8217;anno, il GUADEC è stata una grande esperienza. ritrovare varia umanità con cui chiaccheri solo su IRC o su mailing list mette più o meno di buon umore &mdash; e se a questo si aggiunge passare la serata fino alle tre del mattino sdraiato su cuscini bevendo te e in compagnia di un nargilé al mango il quadro è completo.</p>
<p>al GUADEC, però, si va anche per parlare con persone che lavorano con e su GNOME &mdash; invariabilmente questo porta a interessanti sviluppi.</p>
<p>leggendo un po&#8217; in giro, vedo che alcuni si sono scandalizzati o sorpresi del <em>new deal</em> nelle GTK+ e in GNOME; se però avessero seguito quello che avviene ogni giorno da un anno a questa parte si sarebbero velocemente resi conto di come tutto questo sia partito dallo scorso GUADEC &mdash; e possibilmente anche da quello prima. sigillare le GTK+ per poter cambiare gli <em>internals</em> senza rompere le applicazioni, ridurre il lasso di tempo da <em>major release</em>, non sono grandi e rivoluzionari piani: sono l&#8217;unico modo di portare avanti una piattaforma in maniera organica e continua. non vi siete svegliati una mattina trovandovi venti centimetri più alti, con una voce di due ottave più bassa e i caratteri sessuali secondari completamente sviluppati &mdash; vi ci saranno voluti anni. E se gestire la pubertà è un&#8217;impresa ardua, immaginatevi un <em>desktop</em> con milioni di utenti su varie piattaforme su cui non esercitate alcun controllo.</p>
<p>GNOME ha già provato a rompere con il passato in maniera netta, con un <em>quantum leap</em> invece che vari passi incrementali; è stato un diastro ferroviario, e sicuramente tutti quelli coinvolti nel progetto pensano &quot;mai più&quot;. la somma di questi piani &mdash; GTK+ 3.0 e GNOME 3.0 &mdash; sono l&#8217;unica alternativa realistica.</p>
<p>se poi vogliamo andare sul non-realistico, possiamo sempre contare sull&#8217;aiuto di Babbo Natale e della Fatina dei Denti &mdash; ma ho i miei dubbi sull&#8217;implementabilità.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.emmanuelebassi.name/archives/2008/07/11/guadec0-3/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Why do I keep counting?</title>
		<link>http://www.emmanuelebassi.name/archives/2008/01/30/why-do-i-keep-counting/</link>
		<comments>http://www.emmanuelebassi.name/archives/2008/01/30/why-do-i-keep-counting/#comments</comments>
		<pubDate>Wed, 30 Jan 2008 10:16:10 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[kde]]></category>
		<category><![CDATA[nokia]]></category>

		<guid isPermaLink="false">http://www.emmanuelebassi.net/archives/2008/01/why-do-i-keep-counting/</guid>
		<description><![CDATA[LunedÃ¬ Ã¨ venuta a mancare &#60;div style=&#34;text-align:center&#34;&#62;&#60;h3&#62;La ComunitÃ  di KDE&#60;/h3&#62;&#60;/div&#62; Ne danno &#60;a href=&#34;http://dot.kde.org/1201517986/&#34;&#62;il triste annuncio&#60;/a&#62; la madre Trolltech e la sua nuova consorte, Nokia; gli utenti commerciali di Qtopia, che se producevano cellulari adesso si trovano costretti a cambiare piattaforma; gli utenti di KDE, per cui il desktop potrebbe finire in secondo piano quando [...]]]></description>
			<content:encoded><![CDATA[<p>LunedÃ¬ Ã¨ venuta a mancare</p>
<p>&lt;div style=&quot;text-align:center&quot;&gt;&lt;h3&gt;La ComunitÃ  di KDE&lt;/h3&gt;&lt;/div&gt;</p>
<p>Ne danno &lt;a href=&quot;http://dot.kde.org/1201517986/&quot;&gt;il triste annuncio&lt;/a&gt; la madre Trolltech e la sua nuova consorte, Nokia; gli utenti commerciali di Qtopia, che se producevano cellulari adesso si trovano costretti a cambiare piattaforma; gli utenti di KDE, per cui il desktop potrebbe finire in secondo piano quando l&#8217;unico provider monopolista della tecnologia su cui ti basi viene acquistato da un produttore di &lt;em&gt;embedded device&lt;/em&gt; che intende usarti come anti-Android.</p>
<p>I funerali si terranno, in una data inevitabile a meno che qualcuno non tiri fuori 150 milioni di euro, a Helsinki.</p>
<p>&lt;em style=&quot;font-size:75%&quot;&gt;Certo perÃ², che inculata pazzesca per gli utenti: prima la Trolltech forza la mano alla comunitÃ  per rilasciare un dimostratore incompleto e instabile di QT 4.x, poi vende l&#8217;ambaradan.&lt;/em&gt;</p>
<p>Fuori di &lt;em&gt;obit joke&lt;/em&gt;: questo succede quando tieni tutte le uova in un paniere, e ci fai pagare pure &quot;la tassa&quot; sopra, con tanto di benedizione di San Ignucius (a dimostrazione di quanto il buon Richard si stia rincoglionendo con l&#8217;etÃ ); se poi si guardano i &lt;em&gt;quarterly report&lt;/em&gt; ci si accorge di come la Trolltech stesse perdendo &lt;em&gt;cash&lt;/em&gt; dal 2006<sup>1</sup>, e che erano appena riusciti ad arrivare a un netto tra &lt;em&gt;operative costs&lt;/em&gt; e &lt;em&gt;operative revenues&lt;/em&gt; nel Q3 2007. Non mi sorprende l&#8217;offerta di 100m di euro, quindi.<br />
Adesso la palla passa alla comunitÃ . Se la Nokia dovesse decidere in un cambio di strategia, KDE muore; se la comunitÃ  decide di forkare e rimanere sotto GPL (v3, &lt;em&gt;nonetheless&lt;/em&gt;), KDE cessa di avere un &lt;em&gt;appeal&lt;/em&gt; commerciale, e diventa il nuovo GNUstep.</p>
<ol class="footnotes"><li id="footnote_0_1091" class="footnote">Greenphone? Possibile.</li></ol>]]></content:encoded>
			<wfw:commentRss>http://www.emmanuelebassi.name/archives/2008/01/30/why-do-i-keep-counting/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
		<item>
		<title>Just a Ride</title>
		<link>http://www.emmanuelebassi.name/archives/2007/09/03/just-a-ride/</link>
		<comments>http://www.emmanuelebassi.name/archives/2007/09/03/just-a-ride/#comments</comments>
		<pubDate>Mon, 03 Sep 2007 22:24:18 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
				<category><![CDATA[Computer]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[gtk+]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://www.emmanuelebassi.net/archives/2007/09/just-a-ride/</guid>
		<description><![CDATA[Dicevo &#60;a href=&#34;http://log.emmanuelebassi.net/archives/2007/09/my-wandering-days-are-over/&#34;&#62;altrove&#60;/a&#62; di aver provato &#60;a href=&#34;http://live.gnome.org/Vala&#34;&#62;Vala&#60;/a&#62;, il linguaggio C#-like scritto usando GLib e GObject come base, e che viene &#34;compilato&#34; in C invece di usare una &#60;acronym title=&#34;Virtual Machine&#34;&#62;VM&#60;/acronym&#62; e un linguaggio intermedio1. Ho trovato dei difetti nel layer di traduzione, ma sono dovuti essenzialmente alla giovane etÃ  del progetto, e il team [...]]]></description>
			<content:encoded><![CDATA[<p>Dicevo &lt;a href=&quot;http://log.emmanuelebassi.net/archives/2007/09/my-wandering-days-are-over/&quot;&gt;altrove&lt;/a&gt; di aver provato &lt;a href=&quot;http://live.gnome.org/Vala&quot;&gt;Vala&lt;/a&gt;, il linguaggio C#-like scritto usando GLib e GObject come base, e che viene &quot;compilato&quot; in C invece di usare una &lt;acronym title=&quot;Virtual Machine&quot;&gt;VM&lt;/acronym&gt; e un linguaggio intermedio<sup>1</sup>.</p>
<p>Ho trovato dei difetti nel layer di traduzione, ma sono dovuti essenzialmente alla giovane etÃ  del progetto, e il team di sviluppo sta raccogliendo intorno a sÃ© una quantitÃ  di collaboratori piÃ¹ o meno saltuari che fa ben sperare. In piÃ¹, la mera esistenza di Vala sta spingendo a completare il supporto per l&#8217;introspezione in GObject<sup>2</sup>.</p>
<p>Quello che piÃ¹ mi interessa, perÃ², Ã¨ la possibilitÃ  di avere un linguaggio a medio/alto ufficialmente sanzionato da GNOME &#8211; come Objective-C da Apple. Intendiamoci: la quantitÃ  di &lt;em&gt;binding&lt;/em&gt; giÃ  presenti Ã¨ enorme, e giÃ  oggi se volessi scrivere un&#8217;applicazione per GNOME potrei farlo in Perl, come in Java, come in C# e perfino con quel &lt;em&gt;train wreck&lt;/em&gt; di Python<sup>3</sup>. Tuttavia, i bindings sono quello che sono: si portano dietro &lt;em&gt;virtual machine&lt;/em&gt;, ambienti di &lt;em&gt;runtime&lt;/em&gt;, licenze, implementazioni &lt;em&gt;patent encumbered&lt;/em&gt; e altre amenitÃ .</p>
<p>Intendiamoci: non ho nulla contro le &lt;acronym title=&quot;Virtual Machine&quot;&gt;VM&lt;/acronym&gt; &#8211; a parte l&#8217;obiezione classica: &quot;sto giÃ  usando una macchina virtuale su una macchina reale, perchÃ© devo usarne un&#8217;altra ancora per ogni linguaggio?&quot;; tuttavia, e specie sulle macchine su cui lavoro, &lt;strong&gt;una&lt;/strong&gt; &lt;em&gt;virtual machine&lt;/em&gt; Ã¨ giÃ  sufficiente &#8211; figuriamoci quattro o cinque. Mi piacerebbe che qualcuno prendesse Mono e ci portasse piÃ¹ di tre o quattro linguaggi; mi piacerebbe ancora di piÃ¹ che qualcuno prendesse &lt;a href=&quot;http://en.wikipedia.org/wiki/Parrot_virtual_machine&quot;&gt;Parrot&lt;/a&gt; e lo completasse. Mi piacerebbe, insomma, avere &lt;strong&gt;una&lt;/strong&gt; macchina virtuale per tutti i linguaggi ad alto livello. Se non posso averla, allora tanto vale usare Vala.</p>
<ol class="footnotes"><li id="footnote_0_1074" class="footnote">si potrebbe arguire come, in realtÃ , la VM usata sia il sistema operativo ospite, e che sicuramente esistono piÃ¹ piattaforme con un compilatore C che piattaforme che supportano Java o C#</li><li id="footnote_1_1074" class="footnote">ovvero la possibilitÃ  di avere meta-informazioni a &lt;em&gt;runtime&lt;/em&gt; su una libreria, sulle API e sui tipi di dati esportati</li><li id="footnote_2_1074" class="footnote">che, spero, Python 3.0 affosserÃ  definitivamente con tutte le modifiche arbitrarie alle API senza vere nuove &lt;em&gt;feature&lt;/em&gt;; non ci resta, quindi, che sperare in IronPython per una implementazione sana di mente? non voglio pensarci</li></ol>]]></content:encoded>
			<wfw:commentRss>http://www.emmanuelebassi.name/archives/2007/09/03/just-a-ride/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>The Worst Joke Ever</title>
		<link>http://www.emmanuelebassi.name/archives/2007/05/14/the-worst-joke-ever/</link>
		<comments>http://www.emmanuelebassi.name/archives/2007/05/14/the-worst-joke-ever/#comments</comments>
		<pubDate>Mon, 14 May 2007 22:13:51 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
				<category><![CDATA[Diary]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[gtk+]]></category>

		<guid isPermaLink="false">http://www.emmanuelebassi.net/archives/2007/05/the-worst-joke-ever/</guid>
		<description><![CDATA[Ho passato gli ultimi tre giorni a tentare di capire perchÃ© un pezzo di codice producesse un &#60;code&#62;SIGSEGV&#60;/code&#62;. Ho cambiato linee, logica, tipi di dato. Niente: qualunque cosa facessi, solo crash. Come al solito, &#60;code&#62;gdb&#60;/code&#62; si rivelava poco utile, mentendo spudoratamente sul luogo della violazione di memoria. Oggi pomeriggio ho deciso di arrendermi e ho [...]]]></description>
			<content:encoded><![CDATA[<p>Ho passato gli ultimi tre giorni a tentare di capire perchÃ© un pezzo di codice producesse un &lt;code&gt;SIGSEGV&lt;/code&gt;. Ho cambiato linee, logica, tipi di dato. Niente: qualunque cosa facessi, solo crash. Come al solito, &lt;code&gt;gdb&lt;/code&gt; si rivelava poco utile, mentendo spudoratamente sul luogo della violazione di memoria.</p>
<p>Oggi pomeriggio ho deciso di arrendermi e ho chiesto a Kris se poteva darmi una mano (dato che il &lt;em&gt;segfault&lt;/em&gt; si verificava nel codice del &lt;code&gt;GtkTreeModelSort&lt;/code&gt; che lui mantiene). Stasera mi dice di aver trovato la patch:</p>
<p>&lt;pre&gt;<br />
Index: gtk/gtkfilechooserdefault.c<br />
==============================================================<br />
&#8212; gtk/gtkfilechooserdefault.c (revision 17846)<br />
+++ gtk/gtkfilechooserdefault.c (revision 17848)<br />
@@ -9508,7 +9508,7 @@ recent_column_path_sort_func (GtkTreeMod<br />
   if (!name_a)<br />
     return 1;</p>
<p>-  if (!name_b);<br />
+  if (!name_b)<br />
     return -1;</p>
<p>   if (is_folder_a != is_folder_b)<br />
&lt;/pre&gt;</p>
<p>Penso che i miei moccoli siano arrivati vicinissimi al Moccolo a Delta di Dirac (dieci alla ventottesima madonne in un microsecondo).</p>
<p>&lt;em&gt;Va da sÃ© che Kris si vedrÃ  offrire una birra al GUADEC.&lt;/em&gt;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.emmanuelebassi.name/archives/2007/05/14/the-worst-joke-ever/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Overdrive/2</title>
		<link>http://www.emmanuelebassi.name/archives/2007/05/12/overdrive2/</link>
		<comments>http://www.emmanuelebassi.name/archives/2007/05/12/overdrive2/#comments</comments>
		<pubDate>Sat, 12 May 2007 15:51:51 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
				<category><![CDATA[Diary]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[gtk+]]></category>

		<guid isPermaLink="false">http://www.emmanuelebassi.net/archives/2007/05/overdrive2/</guid>
		<description><![CDATA[&#60;em style=&#34;font-size:80%&#34;&#62;&#60;a href=&#34;http://www.emmanuelebassi.net/archives/2007/01/overdrive1/&#34;&#62;segue&#60;/a&#62;&#60;/em&#62; &#60;h4&#62;GTK+&#60;/h4&#62; Per mancanza di tempo, negli ultimi mesi ho dovuto lasciare a metÃ  alcuni miei lavori sulle &#60;a href=&#34;http://www.gtk.org&#34;&#62;GTK+&#60;/a&#62;. Fortunatamente ogni tanto si Ã¨ aperto qualche spiraglio di tempo libero, e quando ho potuto ritornare alla libreria che (ricordiamolo) ha consentito all&#8217;avere di che mangiare non mi sono certo fatto scrupoli. Le [...]]]></description>
			<content:encoded><![CDATA[<p>&lt;em style=&quot;font-size:80%&quot;&gt;&lt;a href=&quot;http://www.emmanuelebassi.net/archives/2007/01/overdrive1/&quot;&gt;segue&lt;/a&gt;&lt;/em&gt;</p>
<p>&lt;h4&gt;GTK+&lt;/h4&gt;</p>
<p>Per mancanza di tempo, negli ultimi mesi ho dovuto lasciare a metÃ  alcuni miei lavori sulle &lt;a href=&quot;http://www.gtk.org&quot;&gt;GTK+&lt;/a&gt;. Fortunatamente ogni tanto si Ã¨ aperto qualche spiraglio di tempo libero, e quando ho potuto ritornare alla libreria che (ricordiamolo) ha consentito all&#8217;avere di che mangiare non mi sono certo fatto scrupoli.</p>
<p>Le GTK+ sono piagate, da tempo ormai, da una cronica mancanza di sviluppatori nel &lt;em&gt;core team&lt;/em&gt;; il flusso di patch in &lt;a href=&quot;http://bugzilla.gnome.org&quot;&gt;Bugzilla&lt;/a&gt; Ã¨ piÃ¹ o meno costante (anche se non altissimo), ma le persone in grado di fare una revisione delle patch e in generale dei bug segnalati sono poche, e nessuno lavora a tempo pieno sulle GTK+. A questo si aggiunge un&#8217;inerzia proveniente dalle compagnie che lavorano con le GTK+ nei confronti di una (ormai inevitabile) rottura della compatibilitÃ  binaria e, possibilmente, delle &lt;acronym title=&quot;Application Programming Interface&quot;&gt;API&lt;/acronym&gt;. Il quadro Ã¨ complesso, e meriterebbe un post di analisi dei fattori pro e contro una tale rottura di compatibilitÃ  all&#8217;indietro; sfortunatamente Ã¨ sabato mattina e non ho molta voglia di farlo &#8211; considerate la questione solo rimandata.</p>
<p>Cosa si muove, quindi, nelle GTK+? Cosa ci sarÃ  nella prossima &lt;em&gt;minor release&lt;/em&gt;, la 2.12.0? E cosa ci aspetta nel futuro?</p>
<p>Cominciamo con le cose giÃ  in &lt;code&gt;trunk&lt;/code&gt;:</p>
<p>&lt;dl&gt;<br />
  &lt;dt&gt;&lt;strong&gt;Supporto Quartz e DirectFB&lt;/strong&gt;&lt;/dt&gt;<br />
  &lt;dd&gt;Il lavoro sui backend per GDK continua; il backend per Quartz Ã¨ mantenuto dagli sviluppatori della Imendio ed Ã¨ quasi stabile; mancano ancora feature, e molto dipende dalla stabilitÃ  del backend Quartz di Cairo, ma comincia ad essere usabile. Il backend DirectFB Ã¨ invece portato avanti dal team per l&#8217;installer grafico della Debian, e ha ricevuto molte attenzioni in occasione del rilascio di Etch. Alcune delle funzionalitÃ  sono state aggiunte alla branch stabile, ma &lt;code&gt;trunk&lt;/code&gt; Ã¨ il posto dove la magia avviene.&lt;/dd&gt;</p>
<p>  &lt;dt&gt;&lt;strong&gt;Rimosso il supporto a Windows 9x/ME&lt;/strong&gt;&lt;/dt&gt;<br />
  &lt;dd&gt;Il supporto per i sistemi operativi giocattolo della casa di Redmond era giÃ  cessato con la release 2.10; adesso Ã¨ stato completamente rimosso dalla &lt;em&gt;code base&lt;/em&gt;. Chi vuole, puÃ² fare un &lt;code&gt;diff&lt;/code&gt; tra 2.10 e &lt;code&gt;trunk&lt;/code&gt;, procurarsi un incudine e un martello e prepararsi per un&#8217;intensa sessione di martellate sui gioielli di famiglia.&lt;/dd&gt;</p>
<p>  &lt;dt&gt;&lt;strong&gt;Nuova API per le tooltip&lt;/strong&gt;&lt;/dt&gt;<br />
  &lt;dd&gt;Kristian Reitveld ha creato una nuova API per gestire le tooltip sui vari widget. D&#8217;ora in poi, niente piÃ¹ &lt;code&gt;GtkTooltips&lt;/code&gt; da tenere in giro per tutta la durata dell&#8217;applicazione, ma una semplice proprietÃ  che contiene il testo della tooltip (con supporto per il markup). Se si vuole modificare la finestra stessa usata per la tooltip, basta fare l&#8217;&lt;em&gt;override&lt;/em&gt; di una funzione virtuale della class &lt;code&gt;GtkWidget&lt;/code&gt; e si puÃ² usare la finestra che si preferisce. Questo, tra l&#8217;altro, permette finalmente di poter usare tooltip con &lt;code&gt;GtkTreeView&lt;/code&gt; e &lt;code&gt;GtkComboBox&lt;/code&gt;.&lt;/dd&gt;</p>
<p>  &lt;dt&gt;&lt;strong&gt;File recenti&lt;/strong&gt;&lt;/dt&gt;<br />
  &lt;dd&gt;Una delle cose che ho scritto io. Finalmente Ã¨ possibile infilare la lista dei file recenti in un menu costruito usando &lt;code&gt;GtkUIManager&lt;/code&gt;. Per la disperazione (di uno) degli autori di &lt;a href=&quot;http://www.gnome.org/projects/gedit&quot;&gt;gedit&lt;/a&gt;, niente menu &quot;in linea&quot; (come Windows, per intenderci) ma solo come sotto-menu (come OS X). Scrievere una version in linea non Ã¨ complicato (se volete, trovate una implementazione &lt;a href=&quot;http://www.gnome.org/~ebassi/recent-uimanager-inline.c&quot;&gt;qui&lt;/a&gt;). Ho anche aggiunto la possibilitÃ  di inserire elementi del menu prima e dopo la lista dei file recenti nel &lt;code&gt;GtkRecentChooserMenu&lt;/code&gt;, cosÃ¬ da renderlo piÃ¹ simile a un &lt;code&gt;GtkMenu&lt;/code&gt; (quale Ã¨).&lt;/dd&gt;</p>
<p>  &lt;dt&gt;&lt;strong&gt;FileChooser migliorato&lt;/strong&gt;&lt;/dt&gt;<br />
  &lt;dd&gt;Una delle cose che mi fanno aumentare la misantropia e, in generale, il desiderio di vedere la razza umana estinguersi sono le &lt;em&gt;flame&lt;/em&gt; sul selettore di file delle GTK+. Seriamente: ogniqualvolta arriva qualche sedicente esperto di usabilitÃ  che urla ai quattro venti come il &lt;code&gt;GtkFileChooserDialog&lt;/code&gt; sia &quot;inusabile&quot; io spero solo che si tratti di qualcuno che vive vicino ad una costa marittima, e aspetto che il riscaldamento globale faccia il resto. Due settimane fa ho fatto il &lt;em&gt;commit&lt;/em&gt; della patch (non scritta da me) che aggiungeva il supporto per la ricerca di file usando (indirettamente) Beagle, Tracker o una semplice ricerca per nome. La patch aveva ancora dei problemi, con funzionalitÃ  non implementate o comportamenti non consistenti, quindi ho passato questa settimana a scrivere &lt;a href=&quot;http://www.gnome.org/~ebassi/filechooser-merge/&quot;&gt;patch&lt;/a&gt; per chiudere il bug &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=435343&quot;&gt;#435343&lt;/a&gt; e intanto che c&#8217;ero anche il bug &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=435342&quot;&gt;#435342&lt;/a&gt; (se volete vedere come appare il selettore file adesso, ci sono degli screenshot &lt;a href=&quot;http://www.gnome.org/~ebassi/filechooser-recent.png&quot;&gt;qui&lt;/a&gt; e &lt;a href=&quot;http://www.gnome.org/~ebassi/filechooser-search.png&quot;&gt;qui&lt;/a&gt;) per aggiungere la lista dei file recenti direttamente nel selettore di file e chiudere cosÃ¬ integrazione iniziata con la scorsa versione delle GTK+ &#8211; quasi due anni dopo il &lt;a href=&quot;http://www.emmanuelebassi.net/archives/2005/05/guadec-live/&quot;&gt;GUADEC che ha iniziato tutto quanto&lt;/a&gt;.&lt;/dd&gt;</p>
<p>&lt;/dl&gt;</p>
<p>Ovviamente, le novitÃ  non sono solo queste. C&#8217;Ã¨ stato un gran lavoro nel portare alcune &lt;em&gt;feature&lt;/em&gt; sviluppate per piattaforme &lt;em&gt;embedded&lt;/em&gt;, come la navigazione via tasti oppure il metodo di inserimento per tastiere solo numeriche. In piÃ¹, ci sono nuove &lt;em&gt;feature&lt;/em&gt; in fase di valutazione e di revisione che non sono ancora &quot;atterrate&quot; in &lt;code&gt;trunk&lt;/code&gt;, come il supporto per il &lt;em&gt;tap-and-hold&lt;/em&gt; per i menu contestuali (usato dai &lt;em&gt;touchscreen&lt;/em&gt; o piÃ¹ in generale da chi ha puntatori con un tasto solo, come Mac o &lt;em&gt;tablet&lt;/em&gt;). Infine, c&#8217;Ã¨ la grossa &lt;em&gt;feature&lt;/em&gt; rappresentata dal &lt;code&gt;GtkBuilder&lt;/code&gt;, ovvero la possibilitÃ  di creare interfacce utente usando XML &#8211; come libglade ma integrato ed esteso.</p>
<p>Cosa ci attende nel post-2.12 non si sa. Le GTK+ avranno finalmente un canvas? E come impatterÃ  questo oggetto con la struttura dei widget? In piÃ¹, avremo finalmente una class &lt;code&gt;GtkApplication&lt;/code&gt; per scrivere applicazioni in maniera piÃ¹ semplice, lasciando che siano le GTK+ a gestire le sessioni e lo stato (liberandoci di un bel pezzo di &lt;code&gt;libgnome&lt;/code&gt; e &lt;code&gt;libgnomeui&lt;/code&gt;)? Avremo un &lt;em&gt;layer&lt;/em&gt; per &lt;acronym title=&quot;Virtual File System&quot;&gt;VFS&lt;/acronym&gt; finalmente usabile senza una lobotomia parziale? E una piattaforma per la configurazione che non sia ferma al 2001?</p>
<p>Infine, quando avremo le GTK+ 3.0, con una ripulitura generale del codice?</p>
<p>Non so dare risposte; so solo che chi vivrÃ , vedrÃ .</p>
<p>&lt;em style=&quot;font-size:80%&quot;&gt;continua&#8230;&lt;/em&gt;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.emmanuelebassi.name/archives/2007/05/12/overdrive2/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Special Delivery</title>
		<link>http://www.emmanuelebassi.name/archives/2007/03/31/special-delivery/</link>
		<comments>http://www.emmanuelebassi.name/archives/2007/03/31/special-delivery/#comments</comments>
		<pubDate>Sat, 31 Mar 2007 17:09:23 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
				<category><![CDATA[Diary]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[clutter]]></category>
		<category><![CDATA[compiz]]></category>
		<category><![CDATA[gnome]]></category>

		<guid isPermaLink="false">http://www.emmanuelebassi.net/archives/2007/03/special-delivery/</guid>
		<description><![CDATA[A tirare su il bilancio di una discreta settimana del cavolo ci pensa eBay, grazie alla quale ho potuto mettere le mani su un &#60;a href=&#34;http://en.wikipedia.org/wiki/SNES&#34;&#62;Super Nintendo&#60;/a&#62; d&#8217;occasione, completo di una decina di giochi tra cui &#60;a href=&#34;http://en.wikipedia.org/wiki/Starwing&#34;&#62;Starwing&#60;/a&#62;, &#60;a href=&#34;http://en.wikipedia.org/wiki/Sensible_Soccer&#34;&#62;Sensible Soccer&#60;/a&#62; e una valanga di Super Mario. Sul fronte piÃ¹ interessante dell&#8217;hacking, sto finendo la [...]]]></description>
			<content:encoded><![CDATA[<p>A tirare su il bilancio di una discreta settimana del cavolo ci pensa eBay, grazie alla quale ho potuto mettere le mani su un &lt;a href=&quot;http://en.wikipedia.org/wiki/SNES&quot;&gt;Super Nintendo&lt;/a&gt; d&#8217;occasione, completo di una decina di giochi tra cui &lt;a href=&quot;http://en.wikipedia.org/wiki/Starwing&quot;&gt;Starwing&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/Sensible_Soccer&quot;&gt;Sensible Soccer&lt;/a&gt; e una valanga di Super Mario.</p>
<p>Sul fronte piÃ¹ interessante dell&#8217;hacking, sto finendo la riscrittura di &lt;code&gt;gnome-screenshot&lt;/code&gt;; ho rimpiazzato buona parte del codice con oggetti, rimosso l&#8217;uso diretto delle Xlibs in favore delle piÃ¹ compatte e utili GDK (tagliano circa l&#8217;80% di fuffa, garantendomi una certa qual sanitÃ  mentale), e aggiunto il &lt;em&gt;code path&lt;/em&gt; per scattare screenshot su compiz/beryl/vattelapesca (che &lt;strong&gt;non&lt;/strong&gt; fanno il &lt;em&gt;reparenting&lt;/em&gt; delle finestre con il &lt;em&gt;frame&lt;/em&gt; aggiunto dal window manager &#8211; come chiunque abbia tentato di usare gnome-screenshot sotto compiz avrÃ  notato).</p>
<p>Un altro fronte sul quale ho lavorato nelle ultime due settimane Ã¨ stata la separazione di &lt;em&gt;backend&lt;/em&gt; in &lt;a href=&quot;http://www.clutter-project.org&quot;&gt;Clutter&lt;/a&gt;; adesso Clutter si puÃ² usare sia in ambienti desktop con GL che in ambienti embedded con GL-ES; in piÃ¹, il codice Ã¨ molto migliorato e la gestione degli eventi pure.</p>
<p>Infine, qualche tempo fa ho incontrato &lt;a href=&quot;http://njpatel.blogspot.com/&quot;&gt;Neil Patel&lt;/a&gt; dal vivo. Trattasi di ragazzo particolarmente in gamba impegnato nella realizzazione di &lt;em&gt;bling&lt;/em&gt; vario e utile per il desktop. A quanto pare, si Ã¨ interessato a Clutter per scrivere una specie di &lt;em&gt;media center&lt;/em&gt;. Il suo unico difetto Ã¨ che gli piace Tracker, ma non temete: con un po&#8217; di convincimento da parte del sottoscritto potrebbe lasciar perdere quell&#8217;aggeggio senza speranze.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.emmanuelebassi.name/archives/2007/03/31/special-delivery/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Millions Miles Away</title>
		<link>http://www.emmanuelebassi.name/archives/2007/03/31/millions-miles-away/</link>
		<comments>http://www.emmanuelebassi.name/archives/2007/03/31/millions-miles-away/#comments</comments>
		<pubDate>Sat, 31 Mar 2007 16:39:21 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[Rants]]></category>
		<category><![CDATA[stupidity]]></category>
		<category><![CDATA[ui]]></category>

		<guid isPermaLink="false">http://www.emmanuelebassi.net/archives/2007/03/millions-miles-away/</guid>
		<description><![CDATA[Sto attraversando un momento di pura e distillata misantropia. Oppure, piÃ¹ semplicemente, non capisco che strano processo mentale (?) porta certa gente a proporre cose come: &#60;blockquote&#62; Gli utenti si apettano tutte le funzionalitÃ  del file manager dalla finestra di dialogo per salvare un file [...] quindi se Nautilus Ã¨ installato le GTK+ dovrebbero eseguire [...]]]></description>
			<content:encoded><![CDATA[<p>Sto attraversando un momento di pura e distillata misantropia. Oppure, piÃ¹ semplicemente, non capisco che strano processo mentale (?) porta certa gente a proporre cose come:</p>
<p>&lt;blockquote&gt;<br />
Gli utenti si apettano tutte le funzionalitÃ  del file manager dalla finestra di dialogo per salvare un file [...] quindi se Nautilus Ã¨ installato le GTK+ dovrebbero eseguire Nautilus [al posto della GtkFileChooserDialog].<br />
&lt;/blockquote&gt;</p>
<p>Sicuramente, ha a che fare con della droga &#8211; &lt;em&gt;crack&lt;/em&gt;, nel caso specifico. Lasciamo perdere l&#8217;evidente caso di inversione (perchÃ© le GTK+, che sono un toolkit multipiattaforma, dovrebbero dipendere da Nautilus, &lt;em&gt;albeit&lt;/em&gt; opzionalmente?), e concentriamoci sull&#8217;idiozia di poter effettivamente modificare file, directory ed eseguire applicazioni &lt;strong&gt;mentre si sta salvando un file&lt;/strong&gt;. Ottimo se hai un &lt;em&gt;attention deficit disorder&lt;/em&gt; e non riesci a fare a meno di lavarti i denti mentre bevi il caffÃ©, tirandoti su i pantaloni alla fermata dell&#8217;autobus.</p>
<p>Oppure no.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.emmanuelebassi.name/archives/2007/03/31/millions-miles-away/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Give It Up</title>
		<link>http://www.emmanuelebassi.name/archives/2007/03/13/give-it-up/</link>
		<comments>http://www.emmanuelebassi.name/archives/2007/03/13/give-it-up/#comments</comments>
		<pubDate>Tue, 13 Mar 2007 13:20:39 +0000</pubDate>
		<dc:creator>ebassi</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[kde]]></category>
		<category><![CDATA[stupidity]]></category>

		<guid isPermaLink="false">http://www.emmanuelebassi.net/archives/2007/03/give-it-up/</guid>
		<description><![CDATA[La missione, se deciderete di accettarla, sarÃ  di trovare la playlist nel prossimo Amarok: &#60;div style=&#34;text-align:center&#34;&#62; &#60;a id=&#34;p1052&#34; rel=&#34;attachment&#34; class=&#34;imagelink&#34; href=&#34;http://www.emmanuelebassi.net/archives/2007/03/give-it-up/amarok-2png/&#34; title=&#34;amarok-2.png&#34;&#62;&#60;img id=&#34;image1052&#34; src=&#34;http://www.emmanuelebassi.net/wp-content/amarok-2.png&#34; alt=&#34;amarok-2.png&#34; /&#62;&#60;/a&#62; &#60;/div&#62; Se verrete catturati, uccisi oppure vi butterete dalla finestra dall&#8217;orrore, il dipartimento negherÃ  di essere a conoscenza della vostra missione. Poi, a che diavolo serve il menu &#60;em&#62;Engage&#60;/em&#62;? [...]]]></description>
			<content:encoded><![CDATA[<p>La missione, se deciderete di accettarla, sarÃ  di trovare la playlist nel prossimo Amarok:</p>
<p>&lt;div style=&quot;text-align:center&quot;&gt;<br />
&lt;a id=&quot;p1052&quot; rel=&quot;attachment&quot; class=&quot;imagelink&quot; href=&quot;http://www.emmanuelebassi.net/archives/2007/03/give-it-up/amarok-2png/&quot; title=&quot;amarok-2.png&quot;&gt;&lt;img id=&quot;image1052&quot; src=&quot;http://www.emmanuelebassi.net/wp-content/amarok-2.png&quot; alt=&quot;amarok-2.png&quot; /&gt;&lt;/a&gt;<br />
&lt;/div&gt;</p>
<p>Se verrete catturati, uccisi oppure vi butterete dalla finestra dall&#8217;orrore, il dipartimento negherÃ  di essere a conoscenza della vostra missione.</p>
<p>Poi, a che diavolo serve il menu &lt;em&gt;Engage&lt;/em&gt;? Cos&#8217;Ã¨, l&#8217;Enterprise?</p>
<p>Le motivazioni per utilizzare Amarok stanno scivolando sempre piÃ¹ verso il lombrosiano.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.emmanuelebassi.name/archives/2007/03/13/give-it-up/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
	</channel>
</rss>
