<?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>Florent Gallaire&#039;s Blog</title>
	<atom:link href="http://fgallaire.flext.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://fgallaire.flext.net</link>
	<description>Free (libre) software and free (libre) culture (science and law)</description>
	<lastBuildDate>Sun, 12 May 2013 14:06:10 +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>Lucas Nussbaum élu DPL pour 2013</title>
		<link>http://fgallaire.flext.net/lucas-nussbaum-dpl-2013/</link>
		<comments>http://fgallaire.flext.net/lucas-nussbaum-dpl-2013/#comments</comments>
		<pubDate>Mon, 15 Apr 2013 01:41:11 +0000</pubDate>
		<dc:creator>fgallaire</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[DPL]]></category>
		<category><![CDATA[Libre]]></category>
		<category><![CDATA[Lucas Nussbaum]]></category>

		<guid isPermaLink="false">http://fgallaire.flext.net/?p=2456</guid>
		<description><![CDATA[C'est Lucas Nussbaum qui vient d'être élu Debian Project Leader (DPL) pour l'année 2013, succédant ainsi au triple mandat de Stefano Zacchiroli.



Lucas Nussbaum devance Allan Moray et Gergely Nagy (déjà candidat malheureux en 2004 et 2012). Voici une représentation du résultat du scrutin qui utilise la méthode Condorcet.



Bravo à toi Lucas, et bonne chance ...]]></description>
				<content:encoded><![CDATA[<p>C&#8217;est <a href="http://www.loria.fr/~lnussbau/" target="_blank">Lucas Nussbaum</a> qui <a href="http://lists.debian.org/debian-devel-announce/2013/04/msg00004.html" target="_blank">vient d&#8217;être élu Debian Project Leader</a> (<a href="http://www.debian.org/devel/leader" target="_blank">DPL</a>) pour l&#8217;année 2013, succédant ainsi au triple mandat de <a href="http://upsilon.cc/~zack/" target="_blank">Stefano Zacchiroli</a>.</p>
<p><img class="aligncenter" alt="" src="http://free-electrons.com/pub/video/2009/rmll/rmll2009-nussbaum-methodes-de-vote.jpg" width="410" height="317" /></p>
<p>Lucas Nussbaum devance Allan Moray et Gergely Nagy (déjà candidat malheureux en <a href="http://www.debian.org/vote/2004/vote_001" target="_blank">2004</a> et <a href="http://www.debian.org/vote/2012/vote_001" target="_blank">2012</a>). Voici une représentation du résultat du scrutin qui utilise la <a href="http://fr.wikipedia.org/wiki/M%C3%A9thode_Condorcet" target="_blank">méthode Condorcet</a>.</p>
<p><img class="aligncenter" alt="" src="http://vote.debian.org/~secretary/leader2013/results.png" width="293" height="395" /></p>
<p>Bravo à toi Lucas, et bonne chance dans la mise en œuvre de ton <a href="http://www.debian.org/vote/2013/platforms/lucas" target="_blank">programme</a> à partir du 17 avril !</p>
<p class="wp-flattr-button"></p> <p><a href="http://fgallaire.flext.net/?flattrss_redirect&amp;id=2456&amp;md5=fb9d2dd4c52a0d858956006e8bed787b" title="Flattr" target="_blank"><img src="http://fgallaire.flext.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://fgallaire.flext.net/lucas-nussbaum-dpl-2013/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>La syntaxe des sets en Python</title>
		<link>http://fgallaire.flext.net/la-syntaxe-des-sets-en-python/</link>
		<comments>http://fgallaire.flext.net/la-syntaxe-des-sets-en-python/#comments</comments>
		<pubDate>Thu, 14 Mar 2013 01:45:27 +0000</pubDate>
		<dc:creator>fgallaire</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Libre]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Python 3]]></category>

		<guid isPermaLink="false">http://fgallaire.flext.net/?p=1903</guid>
		<description><![CDATA[Pour comprendre la génèse de la syntaxe des sets, il faut étudier celle des types conteneurs historiques de Python qui sont :

	les listes, délimitées par les crochets 
	les tuples, délimités par les parenthèses ( et )
	les dictionnaires, délimités par les accolades { et }

Ces types conteneurs sont donc dotés d'une syntaxe légère ...]]></description>
				<content:encoded><![CDATA[<p>Pour comprendre la génèse de la syntaxe des sets, il faut étudier celle des types conteneurs historiques de Python qui sont :</p>
<ul>
<li>les listes, délimitées par les crochets <code>[</code> et <code>]</code></li>
<li>les tuples, délimités par les parenthèses <code>(</code> et <code>)</code></li>
<li>les dictionnaires, délimités par les accolades <code>{</code> et <code>}</code></li>
</ul>
<p>Ces types conteneurs sont donc dotés d&#8217;une syntaxe légère et facilement utilisable :</p>
<blockquote><p><code>&gt;&gt;&gt; l = [1, 2, 3]<br />
&gt;&gt;&gt; l<br />
[1, 2, 3]<br />
&gt;&gt;&gt; t = (1, 2, 3)<br />
&gt;&gt;&gt; t<br />
(1, 2, 3)<br />
&gt;&gt;&gt; d = {1: '1', 2: '2', 3: '3'}<br />
&gt;&gt;&gt; d<br />
{1: '1', 2: '2', 3: '3'}</code></p></blockquote>
<p>Les tuples, qui sont en fait des listes immutables et que l&#8217;on ne peut donc pas modifier, sont souvent oubliés car assez peu utilisés, en tout cas de manière consciente. En effet, une simple énumération sans syntaxe spécifique est en fait un tuple :</p>
<blockquote><p><code>&gt;&gt;&gt; e = 1, 2, 3<br />
&gt;&gt;&gt; e<br />
(1, 2, 3)</code></p></blockquote>
<p>Si l&#8217;on peut donc dire que globalement, les listes et les dictionnaires répondent à la grande majorité des besoins des programmeurs, un quatrième type conteneur s&#8217;est lentement mais sûrement fait une place au soleil des pythonistes : les sets.</p>
<p>Un set est un ensemble, c&#8217;est-à-dire une collection non ordonnée d&#8217;éléments uniques, ce qui se révèle très pratique dans beaucoup d&#8217;usages courants. Ce nouveau type conteneur étant fourni en deux saveurs, l&#8217;une mutable (comme les listes), et l&#8217;autre immutable (comme les tuples).</p>
<p>D&#8217;abord <a href="http://www.python.org/getit/releases/2.3/highlights/" target="_blank">introduits dans Python 2.3</a> sous la forme d&#8217;un nouveau module <code>sets</code> ajouté à la bibliothèque standard. Il est ensuite devenu un type <em>built-in</em> dans <a href="http://docs.python.org/2/whatsnew/2.4.html#pep-218-built-in-set-objects" target="_blank">Python 2.4</a>, ce qui représentait une amélioration syntaxique non négligeable. Plus besoin d&#8217;écrire :</p>
<blockquote><p><code>&gt;&gt;&gt; import sets<br />
&gt;&gt;&gt; s_mutable = sets.Set([1, 2, 3])<br />
&gt;&gt;&gt; s_immutable = sets.ImmutableSet([1, 2, 3])</code></p></blockquote>
<p>On pouvait dorénavant se contenter de :</p>
<blockquote><p><code>&gt;&gt;&gt; s_mutable = set([1,2,3])<br />
&gt;&gt;&gt; s_immutable = frozenset([1,2,3])</code></p></blockquote>
<p>Et de bénéficier en plus d&#8217;une implémentation du type <code>set</code> en C et non plus en Python, avec la belle augmentation de performance qui va avec.</p>
<p>L&#8217;intégration des sets mutables (les plus utiles) dans le core du langage Python, au même niveau que les tuples, les listes et les dictionnaires, se heurtait encore à une limitation syntaxique : il fallait écrire <code>set([1, 2, 3])</code>. En effet, il n&#8217;y a que trois signes de ponctuation <a href="http://fr.wikipedia.org/wiki/American_Standard_Code_for_Information_Interchange#Table_des_128_caract.C3.A8res_ASCII" target="_blank">ASCII 7 bits</a> fonctionnant par paire et facilement accessibles sur un clavier, les parenthèse, les crochets et les accolades, qui comme on l&#8217;a vu sont déjà utilisés respectivement par les tuples, les listes et les dictionnaires.</p>
<p>Mais que pouvait-on alors faire pour mieux intégrer syntaxiquement les sets à Python ? C&#8217;est dans <a href="http://docs.python.org/3.0/whatsnew/3.0.html" target="_blank">Python 3.0</a> que la solution a été trouvée : si les tuples et les listes sont des énumérations que l&#8217;on ne pourrait distinguer des sets, les dictionnaires sont eux bien différents, et l&#8217;on peut donc utiliser les accolades <code>{</code> et <code>}</code> pour une énumération sans risque de confusion :</p>
<blockquote><p><code>&gt;&gt;&gt; s = {1, 2, 3}<br />
&gt;&gt;&gt; s<br />
{1, 2, 3}</code></p></blockquote>
<p>Il reste cependant une petite exception qui rend cette solution syntaxique imparfaite, et potentiellement génératrice d&#8217;erreurs ou d&#8217;incompréhensions, c&#8217;est le cas de l&#8217;ensemble vide. En effet, <code>{}</code> ne peut pas représenter à la fois le dictionnaire vide <strong>et</strong> le set vide :</p>
<blockquote><p><code>&gt;&gt;&gt; s = {}<br />
&gt;&gt;&gt; s<br />
{}<br />
&gt;&gt;&gt; isinstance(s, set)<br />
False<br />
&gt;&gt;&gt; isinstance(s, dict)<br />
True<br />
</code></p></blockquote>
<p>De manière logique et rétrocompatible, <code>{}</code> représente donc toujours le dictionnaire vide, et c’est <code>set()</code> qui permet de créer un set vide :</p>
<blockquote><p><code>&gt;&gt;&gt; s = set()<br />
&gt;&gt;&gt; s<br />
set()<br />
&gt;&gt;&gt; s.add(1)<br />
&gt;&gt;&gt; s<br />
{1}<br />
</code></p></blockquote>
<p>Enfin, ce sucre syntaxique de Python 3 a été backporté dans <a href="http://docs.python.org/dev/whatsnew/2.7.html" target="_blank">Python 2.7</a>.</p>
<p>&nbsp;</p>
<p class="wp-flattr-button"></p> <p><a href="http://fgallaire.flext.net/?flattrss_redirect&amp;id=1903&amp;md5=14783a5cb30000b59835ea8a9331a9ce" title="Flattr" target="_blank"><img src="http://fgallaire.flext.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://fgallaire.flext.net/la-syntaxe-des-sets-en-python/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Quel DPL pour 2013 ?</title>
		<link>http://fgallaire.flext.net/quel-dpl-pour-2013/</link>
		<comments>http://fgallaire.flext.net/quel-dpl-pour-2013/#comments</comments>
		<pubDate>Mon, 11 Mar 2013 14:35:51 +0000</pubDate>
		<dc:creator>fgallaire</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[DPL]]></category>
		<category><![CDATA[Libre]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Stefano Zacchiroli]]></category>

		<guid isPermaLink="false">http://fgallaire.flext.net/?p=2382</guid>
		<description><![CDATA[Le temps passe vite, et cela fait déjà presque un an que Stefano Zacchiroli, dit Zack, a vu son mandat de Debian Project Leader (DPL) re-renouvelé.

Le plus important est bien sûr de lire les programmes de chacun des candidats :

	Gergely Nagy (candidat malheureux en 2004 et 2012)
	Moray Allan
	Lucas Nussbaum

Les presque mille développeurs Debian seront libres de faire leur ...]]></description>
				<content:encoded><![CDATA[<p>Le temps passe vite, et cela fait déjà presque un an que <a href="http://upsilon.cc/%7Ezack/" target="_blank">Stefano Zacchiroli</a>, dit Zack, a vu son mandat de <a href="http://www.debian.org/devel/leader" target="_blank">Debian Project Leader</a> (DPL) <a href="http://fgallaire.flext.net/zack-3-0/" target="_blank">re-renouvelé</a>.</p>
<p>Le plus important est bien sûr de lire les programmes de chacun des candidats :</p>
<ul>
<li><a href="http://www.debian.org/vote/2013/platforms/algernon" target="_blank">Gergely Nagy</a> (candidat malheureux en 2004 et 2012)</li>
<li><a href="http://www.debian.org/vote/2013/platforms/moray" target="_blank">Moray Allan</a></li>
<li><a href="http://www.debian.org/vote/2013/platforms/lucas" target="_blank">Lucas Nussbaum</a></li>
</ul>
<p>Les presque mille <a href="http://wiki.debian.org/DebianDeveloper" target="_blank">développeurs Debian</a> seront libres de faire leur choix du 31 mars au 13 avril lors d’un vote utilisant la <a href="http://fr.wikipedia.org/wiki/M%C3%A9thode_Condorcet" target="_blank">méthode Condorcet</a>.</p>
<p>Il y a trois candidats, le même nombre que l&#8217;année dernière, ce qui est un peu moins en moyenne que les <a href="http://blog.liw.fi/posts/dpl-election-candidates/" target="_blank">années précédentes</a>, mais l&#8217;absence du triple sortant laisse présager  d&#8217;un scrutin très ouvert. Les candidats doivent vraiment se sentir libres de proposer des idées et des orientations originales et innovantes.</p>
<p>La campagne qui commence et qui durera jusqu&#8217;au 30 mars devrait donc être très dynamique et permettre d&#8217;ouvrir publiquement certains débats, ce que chacun pourra suivre sur la <a href="http://lists.debian.org/debian-vote/2013/03/threads.html" target="_blank">mailing list debian-vote</a>.</p>
<p class="wp-flattr-button"></p> <p><a href="http://fgallaire.flext.net/?flattrss_redirect&amp;id=2382&amp;md5=fb02584a772de170a48753d6f3a3ba22" title="Flattr" target="_blank"><img src="http://fgallaire.flext.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://fgallaire.flext.net/quel-dpl-pour-2013/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jailbreak aux USA : smartphones toujours, tablettes pas encore</title>
		<link>http://fgallaire.flext.net/jailbreak-usa-smartphones-oui-tablettes-non/</link>
		<comments>http://fgallaire.flext.net/jailbreak-usa-smartphones-oui-tablettes-non/#comments</comments>
		<pubDate>Wed, 07 Nov 2012 02:40:25 +0000</pubDate>
		<dc:creator>fgallaire</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Droit]]></category>
		<category><![CDATA[Jailbreak]]></category>
		<category><![CDATA[Libre]]></category>
		<category><![CDATA[Smartphone]]></category>
		<category><![CDATA[Tablette]]></category>

		<guid isPermaLink="false">http://fgallaire.flext.net/?p=2305</guid>
		<description><![CDATA[Le 26 octobre 2012 a été publiée la cinquième version des exceptions à l'interdiction de contournement des systèmes de protection du Copyright (droit d'auteur) aux États-Unis. Ces exceptions sont débattues dans le cadre d'une longue procédure de consultations participatives prévue par la section 1201 du Digital Millennium Copyright Act (DMCA), et menée par le ...]]></description>
				<content:encoded><![CDATA[<p>Le 26 octobre 2012 a été publiée la <a href="http://www.copyright.gov/fedreg/2012/77fr65260.pdf" target="_blank">cinquième version</a> des exceptions à l&#8217;interdiction de contournement des systèmes de protection du Copyright (droit d&#8217;auteur) aux États-Unis. Ces exceptions sont débattues dans le cadre d&#8217;une longue <a href="http://www.copyright.gov/1201/" target="_blank">procédure de consultations participatives</a> prévue par la <a href="http://www.copyright.gov/title17/92chap12.html#1201" target="_blank">section 1201</a> du <a href="http://fr.wikipedia.org/wiki/Digital_Millennium_Copyright_Act" target="_blank">Digital Millennium Copyright Act</a> (DMCA), et menée par le <a href="http://en.wikipedia.org/wiki/United_States_Copyright_Office" target="_blank">bureau du Copyright</a> de la <a href="http://fr.wikipedia.org/wiki/Biblioth%C3%A8que_du_Congr%C3%A8s" target="_blank">bibliothèque du Congrès</a>.</p>
<p>Cette révision triennale de la réglementation a pour but de permettre une adaptation rapide du cadre juridique aux évolutions technologiques. C&#8217;est une manière de procéder très différente de la nôtre, puisque nous bénéficions en France d&#8217;un cadre légal définissant à l&#8217;article L. 122-6-1 IV du <a href="http://www.legifrance.gouv.fr/affichCode.do?cidTexte=LEGITEXT000006069414" target="_blank">Code de la propriété intellectuelle</a> une exception globale à des fins d&#8217;interopérabilité :</p>
<blockquote><p>La reproduction du code du logiciel ou la traduction de la forme de ce code n&#8217;est pas soumise à l&#8217;autorisation de l&#8217;auteur lorsque la reproduction ou la traduction au sens du 1° ou du 2° de l&#8217;article L. 122-6 est indispensable pour obtenir les informations nécessaires à l&#8217;interopérabilité d&#8217;un logiciel créé de façon indépendante avec d&#8217;autres logiciels [...]</p></blockquote>
<p>Le défaut de cette méthode est que c&#8217;est le juge qui trace la limite par la jurisprudence, et qu&#8217;en l&#8217;absence de contentieux et donc de jugements, nous sommes confrontés à une forme &#8220;d&#8217;insécurité juridique&#8221;. Les américains savent eux de manière beaucoup plus claire ce qu&#8217;il est possible de faire ou non. Ainsi, concernant les smartphones et les tablettes, c&#8217;est la classe B qui nous intéresse :</p>
<p>B. Wireless Telephone Handsets—Software Interoperability</p>
<blockquote><p>Computer programs that enable wireless telephone handsets to execute lawfully obtained software applications, where circumvention is accomplished for the sole purpose of enabling interoperability of such applications with computer programs on the telephone handset.<br />
This exemption is a modification of the proponents’ proposal. It permits the circumvention of computer programs on mobile phones to enable interoperability of non-vendor-approved software applications (often referred to as ‘‘jailbreaking’’), but does not apply to tablets—as had been requested by proponents—because the record did not support it.</p></blockquote>
<p>Mais qui étaient donc les &#8220;proponents&#8221; , c&#8217;est à dire ceux qui ont proposé et soutenu cette classe de périphériques, qui voulaient pouvoir jailbreaker non seulement leurs smartphones, mais aussi leurs tablettes ?</p>
<blockquote><p>Proponent Electronic Frontier Foundation (‘‘EFF’’), joined by New America Foundation’s Open Technology Initiative, New Media Rights, Mozilla Corporation (‘‘Mozilla’’), and the Free Software Foundation (‘‘FSF’’), as well as several hundred individual supporters</p></blockquote>
<p>Il n&#8217;est pas surprenant d&#8217;y retrouver l&#8217;<a href="https://www.eff.org/" target="_blank">EFF</a>, déjà à l&#8217;origine de la proposition en 2010, soutenue par les groupements du logiciel libre les plus influents politiquement, la <a href="http://www.fsf.org/fr" target="_blank">FSF</a> et <a href="http://www.mozilla.org" target="_blank">Mozilla</a>, ainsi que par des centaines de particuliers. Mais pourquoi le bureau du Copyright a-t-il refusé de considérer cette nouvelle catégorie de périphériques ? Le <a href="http://fr.wikipedia.org/wiki/Fear,_uncertainty_and_doubt" target="_blank">FUD</a> habituel d&#8217;un lien entre jailbreak et &#8220;piratage&#8221;, c&#8217;est-à-dire &#8220;contrefaçon&#8221; en droit français, est balayé d&#8217;un revers de main :</p>
<blockquote><p>While Joint Creators raised concerns about pirated applications that are able to run on jailbroken devices, the record did not demonstrate any significant relationship between jailbreaking and piracy.</p></blockquote>
<p>C&#8217;est en fait le caractère mal défini ou trop large de l&#8217;appellation &#8220;tablette&#8221;, recouvrant potentiellement trop de types de périphériques différents, qui est la justification du refus :</p>
<blockquote><p>The Register found significant merit to the opposition’s concerns that this aspect of the proposed class was broad and illdefined, as a wide range of devices might be considered ‘‘tablets,’’ notwithstanding the significant distinctions among them in terms of the way they operate, their intended purposes, and the nature of the applications they can accommodate. For example, an ebook reading device might be considered a ‘‘tablet,’’ as might a handheld video game device or a laptop computer.</p></blockquote>
<p>Même si l&#8217;<a href="http://en.wikipedia.org/wiki/National_Telecommunications_and_Information_Administration" target="_blank">agence gouvernementale américaine des télécoms</a> (NTIA) était d&#8217;un <a href="http://www.copyright.gov/1201/2012/2012_NTIA_Letter.pdf" target="_blank">tout autre avis</a>, puisqu&#8217;elle considérait la définition proposée par l&#8217;EFF comme totalement pertinente :</p>
<blockquote><p>NTIA was persuaded that the proposed class should apply to tablets as well as mobile phones, believing that category to have been sufficiently defined by EFF.</p></blockquote>
<p>Cependant, le bureau du Copyright n&#8217;insulte pas l&#8217;avenir et laisse la porte ouverte pour les prochaines révisions des exceptions :</p>
<blockquote><p>In future rulemakings, as mobile computing technology evolves, such a definition might be more attainable</p></blockquote>
<p>Dont acte, rendez-vous en 2015 !</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p class="wp-flattr-button"></p> <p><a href="http://fgallaire.flext.net/?flattrss_redirect&amp;id=2305&amp;md5=b76b55f07d33a63de99e55577ea8d986" title="Flattr" target="_blank"><img src="http://fgallaire.flext.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://fgallaire.flext.net/jailbreak-usa-smartphones-oui-tablettes-non/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>La honteuse mise à mort d&#8217;Unity 2D !</title>
		<link>http://fgallaire.flext.net/honteuse-mort-unity-2d/</link>
		<comments>http://fgallaire.flext.net/honteuse-mort-unity-2d/#comments</comments>
		<pubDate>Sun, 26 Aug 2012 14:54:00 +0000</pubDate>
		<dc:creator>fgallaire</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Canonical]]></category>
		<category><![CDATA[Libre]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Unity]]></category>
		<category><![CDATA[Unity 2D]]></category>

		<guid isPermaLink="false">http://fgallaire.flext.net/?p=2248</guid>
		<description><![CDATA[Canonical a décidé de tuer Unity 2D, la version d'Unity fonctionnant même sans carte graphique 3D puisqu'utilisant Qt et Metacity en lieu et place de Nux et Compiz.

Personnellement je l'ai appris par un message d'Ogra, sur la mailing list Ubuntu/AC100 à laquelle je suis inscrit car  le port d'Ubuntu pour le Toshiba AC100 est ...]]></description>
				<content:encoded><![CDATA[<p>Canonical a décidé de tuer Unity 2D, la version d&#8217;Unity fonctionnant même sans carte graphique 3D puisqu&#8217;<a href="http://fgallaire.flext.net/unity-point-technique/" target="_blank">utilisant Qt et Metacity en lieu et place de Nux et Compiz</a>.</p>
<p>Personnellement je l&#8217;ai appris par un <a href="https://lists.launchpad.net/ac100/msg00769.html" target="_blank">message d&#8217;Ogra</a>, sur la <em>mailing list</em> Ubuntu/AC100 à laquelle je suis inscrit car  le <a href="https://wiki.ubuntu.com/ARM/TEGRA/AC100" target="_blank">port d&#8217;Ubuntu pour le Toshiba AC100</a> est de loin la meilleure distribution Linux disponible pour cette machine (que j&#8217;ai offerte à ma sœur et dont j&#8217;assure la maintenance). Mais si cela a autant d&#8217;importance pour moi c&#8217;est que j&#8217;utilise Unity 2D, que je trouve plus légère et plus rapide qu&#8217;Unity, sur toutes mes machines Desktop.</p>
<p>En fait, la décision a d&#8217;abord été annoncée lors du <a href="http://summit.ubuntu.com/uds-q/" target="_blank">Ubuntu Developer Summit Q</a>, au détour d&#8217;une <a href="http://summit.ubuntu.com/uds-q/meeting/20425/desktop-q-gnome-plans-review/" target="_blank">conférence sur l&#8217;avenir de GNOME dans Ubuntu</a>. Sa réalisation a commencé avec  <a href="https://bugs.launchpad.net/ubuntu/+source/gnome-control-center/+bug/1035261" target="_blank">un bug à portée générale</a> et <a href="https://lists.ubuntu.com/archives/ubuntu-desktop/2012-August/003940.html" target="_blank">vient d&#8217;être confirmée</a> par Jason Warner, le <em>Ubuntu Desktop Manager</em>.</p>
<p>Mais alors que se passera-t-il  lorsqu&#8217;un ordinateur n&#8217;aura pas les capacités 3D nécessaires à Unity, si l&#8217;on ne peut plus avoir recours à Unity 2D ? La solution choisie par Canonical est la même que celle que <a href="http://fedoraproject.org/wiki/Features/Gnome_shell_software_rendering" target="_blank">Red Hat a mise en œuvre pour GNOME Shell</a> et qui fonctionne <a href="http://lists.fedoraproject.org/pipermail/devel/2011-November/158976.html" target="_blank">depuis Fedora 17</a> : utiliser <a href="http://www.mesa3d.org/llvmpipe.html" target="_blank">LLVMpipe</a>, qui est basé sur <a href="http://wiki.freedesktop.org/wiki/Software/gallium" target="_blank">Gallium3D</a>, pour émuler en <em>software</em> les fonctionnalités 3D manquantes du <em>hardware</em>.</p>
<p>Ceci implique très logiquement de <a href="http://www.phoronix.com/scan.php?page=article&amp;item=ubuntu_unity2d_2dperf&amp;num=1" target="_blank">gros problèmes de performance</a> et, le plus grave selon moi, une compatibilité limitée aux seuls processeurs <a href="http://fr.wikipedia.org/wiki/X86" target="_blank">x86</a>. Or, en plus du Toshiba AC100 et de son processeur <a href="http://fr.wikipedia.org/wiki/Architecture_ARM" target="_blank">ARM</a>, j&#8217;utilise aussi de vieux Macs équipés de processeurs <a href="http://fr.wikipedia.org/wiki/PowerPC" target="_blank">PowerPC</a> comme desktop&#8230;</p>
<p>L&#8217;intérêt bien compréhensible de Canonical est de concentrer toutes ses forces dans un seul projet. Cette démarche est rationnelle, mais le choix du projet est plus que contestable, car c&#8217;est celui qui fonctionne le mieux, alors même qu&#8217;il est plus jeune et qu&#8217;il bénéficie de moins de développeurs, qui se retrouve sacrifié.</p>
<p><a href="http://fgallaire.flext.net/qt-dans-ubuntu/" target="_blank"> Comme je l&#8217;avais envisagé à l&#8217;annonce d&#8217;Unity 2D</a>, Canonical simplifie son offre logicielle pour le desktop, mais contrairement à ce que j&#8217;espérais ce n&#8217;est pas Unity qui disparaît. Pourtant, <a href="http://bazaar.launchpad.net/~ubuntutv-dev-team/ubuntutv/trunk/files" target="_blank">le choix d&#8217;Unity 2D</a> pour le projet <a href="http://www.ubuntu.com/devices/tv" target="_blank">Ubuntu TV</a> et les besoins du projet <a href="http://www.ubuntu.com/devices/android" target="_blank">Ubuntu for Android</a> m&#8217;avaient clairement conforté dans mon analyse, et rendent d&#8217;autant plus surprenante la décision d&#8217;abandonner Unity 2D maintenant.</p>
<p>Est-il encore temps de réagir et d&#8217;obtenir que Canonical revienne sur sa décision ? Un fork d&#8217;Unity 2D, avec port immédiat vers <a href="https://live.gnome.org/GnomeGoals/GSettingsMigration" target="_blank">GSettings</a>, sans le soutien de Canonical est-il viable ? J&#8217;ai vraiment l&#8217;impression de ne pas être le seul à préférer Unity 2D à Unity pour des machines ayant un support 3D, et je me demande si Canonical avait vraiment conscience de cela au moment où la mise à mort de Unity 2D a été décidée&#8230;</p>
<p>&nbsp;</p>
<p class="wp-flattr-button"></p> <p><a href="http://fgallaire.flext.net/?flattrss_redirect&amp;id=2248&amp;md5=03f7a062fb64a787c5b0b5616ddbca31" title="Flattr" target="_blank"><img src="http://fgallaire.flext.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://fgallaire.flext.net/honteuse-mort-unity-2d/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Prince of Persia libéré !</title>
		<link>http://fgallaire.flext.net/prince-of-persia-libere/</link>
		<comments>http://fgallaire.flext.net/prince-of-persia-libere/#comments</comments>
		<pubDate>Wed, 18 Apr 2012 00:58:03 +0000</pubDate>
		<dc:creator>fgallaire</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Droit]]></category>
		<category><![CDATA[Jeux Vidéo]]></category>
		<category><![CDATA[Libre]]></category>
		<category><![CDATA[POP]]></category>
		<category><![CDATA[Prince of Persia]]></category>

		<guid isPermaLink="false">http://fgallaire.flext.net/?p=2163</guid>
		<description><![CDATA[Prince of Persia est un jeu vidéo culte qui a réellement marqué l'histoire des jeux vidéo, en particulier pour son innovante technique d'animation rotoscopique. Or sa version originelle, sortie sur Apple II en 1989, vient d'être libérée par Jordan Mechner.

C'est son père qui, il y a trois semaines, en faisant du rangement, a retrouvé dans un ...]]></description>
				<content:encoded><![CDATA[<p><a href="http://fr.wikipedia.org/wiki/Prince_of_Persia_(s%C3%A9rie)" target="_blank">Prince of Persia</a> est un jeu vidéo culte qui a réellement marqué l&#8217;histoire des jeux vidéo, en particulier pour son <a href="http://www.youtube.com/watch?v=gC3WEwSJoHs" target="_blank">innovante technique</a> d&#8217;<a href="http://fr.wikipedia.org/wiki/Rotoscopie" target="_blank">animation rotoscopique</a>. Or sa version originelle, sortie sur <a href="http://fr.wikipedia.org/wiki/Apple_II" target="_blank">Apple II</a> en 1989, vient d&#8217;<a href="http://jordanmechner.com/blog/2012/04/textfiles/" target="_blank">être libérée</a> par <a href="http://fr.wikipedia.org/wiki/Jordan_Mechner" target="_blank">Jordan Mechner</a>.</p>
<p style="text-align: center;"><a href="http://www.ordiretro.fr/blog/wp-content/uploads/2011/02/prince_of_persia2.gif"><img class="aligncenter" title="Prince of Persia" src="http://www.ordiretro.fr/blog/wp-content/uploads/2011/02/prince_of_persia2.gif" alt="" width="415" height="259" /></a></p>
<p>C&#8217;est son père qui, il y a trois semaines, en faisant du rangement, a retrouvé dans un carton trois vieilles <a href="http://fr.wikipedia.org/wiki/Disquette" target="_blank">disquettes</a> 3.5&#8243;, âgées de plus de 20 ans, dans lesquelles se trouvait encore <a href="http://jordanmechner.com/blog/2012/03/prince-of-persia-source-code-found/" target="_blank">le précieux code source du jeu</a>.</p>
<p style="text-align: center;"><a href="http://jordanmechner.com/wp-content/uploads/2012/03/photo.jpeg"><img class="aligncenter" title="Disquette Prince of Persia" src="http://jordanmechner.com/wp-content/uploads/2012/03/photo.jpeg" alt="" width="387" height="290" /></a></p>
<p>Le code source, qui est maintenant <a href="https://github.com/jmechner/Prince-of-Persia-Apple-II" target="_blank">disponible sur GitHub</a>, est de l&#8217;assembleur pour <a href="http://fr.wikipedia.org/wiki/MOS_Technology_6502" target="_blank">6502</a>, un processeur utilisé sur une très grande variété de machines différentes, ce qui laisse pas mal d&#8217;espoir de voir apparaître de nouveaux portages. La riche <a href="http://jordanmechner.com/wp-content/uploads/1989/10/popsource009.pdf" target="_blank">documentation technique</a>, fournie à l&#8217;époque par Jordan pour aider les développeurs effectuant les portages commerciaux, devrait alors être encore une fois d&#8217;un grand secours.</p>
<p>La disponibilité du code source rend les choses beaucoup plus simples, bien que la programmation en assembleur puisse paraître effrayante pour beaucoup de programmeurs &#8220;modernes&#8221;, et évite d&#8217;avoir recours au <a href="http://fr.wikipedia.org/wiki/R%C3%A9tro-ing%C3%A9nierie" target="_blank">reverse engineering</a> comme lors du superbe travail de portage de Prince of Persia sur <a href="http://popc64.blogspot.se/2011/10/prince-of-persia-for-commodore-64128.html" target="_blank">Commodore 64</a>, économisant ainsi beaucoup d&#8217;énergie et de talent.</p>
<p>Le choix de la licence utilisée n&#8217;est pas encore très clair, Jordan indiquant juste dans le README:</p>
<blockquote><p>We did this for fun, not profit. As the author and copyright holder of this source code, I personally have no problem with anyone studying it, modifying it, attempting to run it, etc. Please understand that this does NOT constitute a grant of rights of any kind in Prince of Persia, which is an ongoing Ubisoft game franchise. Ubisoft alone has the right to make and distribute Prince of Persia games.</p></blockquote>
<p>Je lui ai demandé des précisions sur <a href="https://twitter.com/#!/jmechner" target="_blank">son Twitter</a>, moyen de communication qu&#8217;il semble privilégier, et j&#8217;espère qu&#8217;il répondra rapidement. En attendant, vous pouvez toujours jouer au clone Flash de POP :</p>

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_prince-of-persia_205740350"
			class="flashmovie"
			width="420"
			height="300">
	<param name="movie" value="http://91.121.199.16/1980-games/flash4/jeux-action/jeux-flash/prince-of-persia.swf" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://91.121.199.16/1980-games/flash4/jeux-action/jeux-flash/prince-of-persia.swf"
			name="fm_prince-of-persia_205740350"
			width="420"
			height="300">
	<!--<![endif]-->
		
<p>Flash n&#8217;est pas installé ? Tant mieux !</p>

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object>
<p>Et ainsi réfléchir aux Ghz de CPU et aux Go de RAM que vous utilisez, alors que la version dont on a aujourd&#8217;hui le code source faisait que le Mhz du 6502 et ses quelques Ko de RAM suffisaient à obtenir le même résultat.</p>
<p>À l&#8217;époque où un jeu vidéo était une <a href="http://jordanmechner.com/wp-content/uploads/resources/POP_sample.pdf" target="_blank">œuvre indissociable de son développeur</a>, inventeur aussi bien de l&#8217;idée originale que du scénario, créateur aussi bien du code source que des graphismes ; et où chaque instruction assembleur utilisée était un trésor d&#8217;optimisation de code (<em><a href="https://fr.wikiquote.org/wiki/Linus_Torvalds" target="_blank">when men were men and wrote their own device drivers</a></em>)&#8230;</p>
<p class="wp-flattr-button"></p> <p><a href="http://fgallaire.flext.net/?flattrss_redirect&amp;id=2163&amp;md5=27138afdae18c38199631cf664e5b42e" title="Flattr" target="_blank"><img src="http://fgallaire.flext.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://fgallaire.flext.net/prince-of-persia-libere/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Zack 3.0</title>
		<link>http://fgallaire.flext.net/zack-3-0/</link>
		<comments>http://fgallaire.flext.net/zack-3-0/#comments</comments>
		<pubDate>Sun, 15 Apr 2012 15:46:06 +0000</pubDate>
		<dc:creator>fgallaire</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[DPL]]></category>
		<category><![CDATA[Libre]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Stefano Zacchiroli]]></category>
		<category><![CDATA[Zack]]></category>

		<guid isPermaLink="false">http://fgallaire.flext.net/?p=2143</guid>
		<description><![CDATA[Stefano Zacchiroli (Zack) vient d’être re-réélu Debian Project Leader.

Il devance très largement Wouter Verhelst (déjà candidat malheureux en 2007 et 2010) et Gergely Nagy (déjà malheureux lui en 2004) :

Zack a annoncé pendant la campagne que ce troisième mandat consécutif de DPL serait son dernier. Souhaitons qu'il se déroule aussi bien, et même encore mieux !, que ...]]></description>
				<content:encoded><![CDATA[<p><a href="http://upsilon.cc/%7Ezack/" target="_blank">Stefano Zacchiroli</a> (Zack) vient d’<a href="http://lists.debian.org/debian-vote/2012/04/msg00005.html" target="_blank">être re-réélu</a> <a href="http://www.debian.org/devel/leader" target="_blank">Debian Project Leader</a>.</p>
<p style="text-align: left;"><a href="http://lwn.net/images/conf/2010/LinuxTag/StefanoZacchiroli.jpg"><img class="aligncenter" title="Zack" src="http://lwn.net/images/conf/2010/LinuxTag/StefanoZacchiroli.jpg" alt="" width="378" height="391" /></a></p>
<p>Il devance très largement <a href="http://grep.be/" target="_blank">Wouter Verhelst</a> (déjà candidat malheureux en <a href="http://www.debian.org/vote/2007/vote_001" target="_blank">2007</a> et <a href="http://www.debian.org/vote/2010/vote_001" target="_blank">2010</a>) et Gergely Nagy (déjà malheureux lui en <a href="http://www.debian.org/vote/2004/vote_001" target="_blank">2004</a>) :</p>
<p style="text-align: left;"><a href="http://master.debian.org/~secretary/leader2012/results.png"><img class="aligncenter" src="http://master.debian.org/~secretary/leader2012/results.png" alt="" width="335" height="395" /></a></p>
<p>Zack a annoncé pendant la campagne que ce troisième mandat consécutif de DPL serait son dernier. Souhaitons qu&#8217;il se déroule aussi bien, et même encore mieux !, que les deux premiers, et que Zack puisse mettre en œuvre au mieux <a href="http://www.debian.org/vote/2012/platforms/zack" target="_blank">son programme</a>.</p>
<p class="wp-flattr-button"></p> <p><a href="http://fgallaire.flext.net/?flattrss_redirect&amp;id=2143&amp;md5=96f2c9d91a0b5a841b781682359152ef" title="Flattr" target="_blank"><img src="http://fgallaire.flext.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://fgallaire.flext.net/zack-3-0/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Android pour les Abribus !</title>
		<link>http://fgallaire.flext.net/android-pour-les-abribus/</link>
		<comments>http://fgallaire.flext.net/android-pour-les-abribus/#comments</comments>
		<pubDate>Thu, 05 Apr 2012 03:39:16 +0000</pubDate>
		<dc:creator>fgallaire</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Libre]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://fgallaire.flext.net/?p=2104</guid>
		<description><![CDATA[En  passant place de la Bastille à Paris (j'ai cours tout près, à l'EFB, rue de Charenton), j'ai croisé un Abribus d'un nouveau genre, aux allures de soucoupe volante, doté d'un design futuriste et de nombreux écrans :

Cet Abribus est un prototype de JCDecaux, faisant partie des 40 projets de mobilier urbain intelligent retenus par la ville de ...]]></description>
				<content:encoded><![CDATA[<p>En  passant place de la Bastille à Paris (j&#8217;ai cours tout près, à l&#8217;<a href="http://www.efb.fr/EC_presentation.html" target="_blank">EFB</a>, rue de Charenton), j&#8217;ai croisé un Abribus d&#8217;un nouveau genre, aux allures de soucoupe volante, doté d&#8217;un design futuriste et de nombreux écrans :</p>
<p style="text-align: center;"><a href="http://fgallaire.flext.net/wp-content/uploads/2012/04/2012-04-04-19.04.39.jpg"><img class="aligncenter size-large wp-image-2105" title="Abribus Android front" alt="" src="http://fgallaire.flext.net/wp-content/uploads/2012/04/2012-04-04-19.04.39-1024x768.jpg" width="450" height="337" /></a></p>
<p>Cet Abribus est un <a href="http://www.paris.fr/pratique/Portal.lut?page_id=9959&amp;document_type_id=4&amp;document_id=105585&amp;portlet_id=24868&amp;multileveldocument_sheet_id=19162" target="_blank">prototype de JCDecaux</a>, faisant partie des <a href="http://www.paris.fr/pratique/Portal.lut?page_id=9959&amp;document_type_id=4&amp;document_id=105585&amp;portlet_id=24868" target="_blank">40 projets</a> de mobilier urbain intelligent retenus par la ville de Paris. Le grand écran de 42 pouces en pleine action :</p>
<p style="text-align: center;"><a href="http://fgallaire.flext.net/wp-content/uploads/2012/04/2012-04-04-19.08.09.jpg"><img class="aligncenter size-large wp-image-2111" title="Abribus Android screen" alt="" src="http://fgallaire.flext.net/wp-content/uploads/2012/04/2012-04-04-19.08.09-1024x768.jpg" width="450" height="337" /></a></p>
<p>Les deux écrans de l&#8217;arrière :</p>
<p style="text-align: center;"><a href="http://fgallaire.flext.net/wp-content/uploads/2012/04/2012-04-04-19.05.20.jpg"><img class="aligncenter  wp-image-2113" title="Abribus Android back" alt="" src="http://fgallaire.flext.net/wp-content/uploads/2012/04/2012-04-04-19.05.20-768x1024.jpg" width="324" height="432" /></a></p>
<p>Les écrans sont tous tactiles multitouch et proposent de nombreux services que je ne détaillerai pas car là n&#8217;est pas mon propos. En effet, c&#8217;est le système d&#8217;exploitation utilisé par cet Abribus qui m&#8217;intéresse, et l&#8217;utilisateur de smartphone un peu perspicace que je suis a tout de suite reconnu <a href="http://fr.wikipedia.org/wiki/Android" target="_blank">Android</a>, un système d&#8217;exploitation libre basé sur le <a href="http://fr.wikipedia.org/wiki/Noyau_Linux" target="_blank">noyau Linux</a> !</p>
<p>Ceci est une réelle bonne nouvelle, car jusqu&#8217;à présent JCDecaux utilise pour ses différentes bornes des solutions basées sur Microsoft Windows, ce qui présente pas mal d&#8217;inconvénients. Ainsi, tous les utilisateurs réguliers de <a href="http://fr.wikipedia.org/wiki/V%C3%A9lib'" target="_blank">Vélib&#8217;</a> ont été au moins une fois confrontés à une station totalement plantée, ce que JCDecaux résout tant bien que mal en redémarrant ses bornes toutes les nuits&#8230;</p>
<p>Si, à l&#8217;avenir, Android devait remplacer Windows, les utilisateurs y gagneraient donc des stations plus stables et plus fonctionnelles, et JCDecaux ferait des économies de licence (ce qui devrait impliquer des économies pour la Ville de Paris et donc pour les contribuables parisiens&#8230;).</p>
<p class="wp-flattr-button"></p> <p><a href="http://fgallaire.flext.net/?flattrss_redirect&amp;id=2104&amp;md5=071a376607059f59f0066c70cb3c5aa3" title="Flattr" target="_blank"><img src="http://fgallaire.flext.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://fgallaire.flext.net/android-pour-les-abribus/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Quel DPL pour 2012 ?</title>
		<link>http://fgallaire.flext.net/quel-dpl-pour-2012/</link>
		<comments>http://fgallaire.flext.net/quel-dpl-pour-2012/#comments</comments>
		<pubDate>Mon, 19 Mar 2012 01:51:46 +0000</pubDate>
		<dc:creator>fgallaire</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[DPL]]></category>
		<category><![CDATA[Libre]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Stefano Zacchiroli]]></category>
		<category><![CDATA[Zack]]></category>

		<guid isPermaLink="false">http://fgallaire.flext.net/?p=2076</guid>
		<description><![CDATA[Le temps passe vite, et cela fait déjà presque un an que Stefano Zacchiroli, dit Zack, a vu son mandat de Debian Project Leader (DPL) renouvelé. Sans concurrent en 2011, Zack est cette année en compétition avec Wouter Verhelst (candidat malheureux en 2007 et 2010) et Gergely Nagy (malheureux lui en 2004). Il a justifié sa nouvelle candidature par le proverbe ...]]></description>
				<content:encoded><![CDATA[<p>Le temps passe vite, et cela fait déjà presque un an que <a href="http://upsilon.cc/~zack/" target="_blank">Stefano Zacchiroli</a>, dit Zack, a vu son mandat de <a href="http://www.debian.org/devel/leader" target="_blank">Debian Project Leader</a> (DPL) <a href="http://fgallaire.flext.net/zack-2-0/" target="_blank">renouvelé</a>. Sans concurrent en 2011, Zack est cette année en compétition avec <a href="http://grep.be/" target="_blank">Wouter Verhelst</a> (candidat malheureux en <a href="http://www.debian.org/vote/2007/vote_001" target="_blank">2007</a> et <a href="http://www.debian.org/vote/2010/vote_001" target="_blank">2010</a>) et Gergely Nagy (malheureux lui en <a href="http://www.debian.org/vote/2004/vote_001" target="_blank">2004</a>). Il a justifié sa nouvelle candidature par le proverbe italien &#8220;<a href="http://it.wikipedia.org/wiki/Non_c'%C3%A8_due_senza_tre" target="_blank">Non c&#8217;è due senza tre</a>&#8220;, qui semble bien être l&#8217;équivalent de notre &#8220;Jamais deux sans trois&#8221;.</p>
<p>Le plus important est bien sûr de lire les programmes de chacun des candidats :</p>
<ul>
<li><a href="http://www.debian.org/vote/2012/platforms/zack" target="_blank">Stefano Zacchiroli</a></li>
<li><a href="http://www.debian.org/vote/2012/platforms/wouter" target="_blank">Wouter Verhelst</a></li>
<li><a href="http://www.debian.org/vote/2012/platforms/algernon" target="_blank">Gergely Nagy</a></li>
</ul>
<p>Les presque mille <a href="http://wiki.debian.org/DebianDeveloper" target="_blank">développeurs Debian</a> sont maintenant libres de faire leur choix lors d&#8217;un vote utilisant la <a href="http://fr.wikipedia.org/wiki/M%C3%A9thode_Condorcet" target="_blank">méthode Condorcet</a>. Le nombre de trois candidats est un peu inférieur à la moyenne des <a href="http://blog.liw.fi/posts/dpl-election-candidates/" target="_blank">années précédentes</a>, qui est de quatre environ, mais il permet tout de même un belle campagne qui ouvre publiquement certains débats, que chacun peut suivre sur la <a href="http://lists.debian.org/debian-vote/2012/03/threads.html" target="_blank">mailing list debian-vote</a>.</p>
<p class="wp-flattr-button"></p> <p><a href="http://fgallaire.flext.net/?flattrss_redirect&amp;id=2076&amp;md5=ff2393d2e6bf26965a99c5872c738f09" title="Flattr" target="_blank"><img src="http://fgallaire.flext.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://fgallaire.flext.net/quel-dpl-pour-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Complément à l&#8217;article de Carl sur SQLite et Python</title>
		<link>http://fgallaire.flext.net/complement-carl-sqlite3-sqlite-et-python/</link>
		<comments>http://fgallaire.flext.net/complement-carl-sqlite3-sqlite-et-python/#comments</comments>
		<pubDate>Tue, 14 Feb 2012 16:58:21 +0000</pubDate>
		<dc:creator>fgallaire</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Libre]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[SQLite]]></category>
		<category><![CDATA[sqlite3]]></category>

		<guid isPermaLink="false">http://fgallaire.flext.net/?p=2047</guid>
		<description><![CDATA[Carl vient de publier, dans le dernier Linux Pratique Hors-Série sur Python, un article sur le module sqlite3, disponible dans la bibliothèque standard depuis Python 2.5, et qui permet d'utiliser facilement SQLite.

C'est un article très didactique, qui tombait à point nommé pour moi puisque j'ai récemment eu plusieurs idées d'intégration de SQLite dans txt2tags. Je suis parti totalement ...]]></description>
				<content:encoded><![CDATA[<p><a href="http://carlchenet.wordpress.com/about/" target="_blank">Carl</a> vient de publier, dans le dernier Linux Pratique Hors-Série sur <a href="http://www.python.org/" target="_blank">Python</a>, <a href="http://carlchenet.wordpress.com/2012/02/11/du-sql-dans-vos-fichiers-le-module-sqlite3-de-python-3-2-linux-pratique-hors-serie-2/" target="_blank">un article</a> sur le module <a href="http://docs.python.org/py3k/library/sqlite3.html" target="_blank"><code>sqlite3</code></a>, disponible dans la bibliothèque standard <a href="http://docs.python.org/whatsnew/2.5.html" target="_blank">depuis Python 2.5</a>, et qui permet d&#8217;utiliser facilement <a href="http://www.sqlite.org/" target="_blank">SQLite</a>.</p>
<p>C&#8217;est un article très didactique, qui tombait à point nommé pour moi puisque j&#8217;ai récemment eu plusieurs idées d&#8217;intégration de SQLite dans <a href="http://txt2tags.org/" target="_blank">txt2tags</a>. Je suis parti totalement de zéro, puisque j&#8217;ai toujours fui aussi bien le langage <a href="http://fr.wikipedia.org/wiki/Structured_Query_Language" target="_blank">SQL</a> que la configuration des <a href="http://fr.wikipedia.org/wiki/Syst%C3%A8me_de_gestion_de_base_de_donn%C3%A9es" target="_blank">systèmes de gestion de bases de données</a>, et j&#8217;ai quelques remarques complémentaires à faire qui pourront aider les personnes dans le même situation que moi.</p>
<p><strong>Sur le shell </strong><code><strong>sqlite3</strong></code></p>
<p>Le shell <code>sqlite3</code> est très pratique pour interagir avec les bases de données SQLite, et en particulier vérifier celles générées par nos programmes Python. Cependant, l&#8217;affichage standard est un peu spartiate :</p>
<blockquote>
<pre>sqlite&gt; select * from tab;
1|gpl|3|premier test
2|linux|5|deuze</pre>
</blockquote>
<p>Pour une meilleur visualisation, on peut ajouter les noms des champs :</p>
<blockquote>
<pre>sqlite&gt; .header on
sqlite&gt; select * from tab;
id|title|length|comment
1|gpl|3|premier test
2|linux|5|deuze</pre>
</blockquote>
<p>Afficher en colonnes :</p>
<blockquote>
<pre>sqlite&gt; .mode column
sqlite&gt; select * from tab;
1           gpl         3           premier test
2           linux       5           deuze</pre>
</blockquote>
<p>Et même les deux à la fois :</p>
<blockquote>
<pre>sqlite&gt; select * from tab;
id          title       length      comment
----------  ----------  ----------  ------------
1           gpl         3           premier test
2           linux       5           deuze</pre>
</blockquote>
<p><strong>Sur la table </strong><code><strong>sqlite_master</strong></code></p>
<p>Dans l&#8217;article il est précisé comment obtenir la liste des tables d&#8217;une base de données grâce à une commande du shell <code>sqlite3</code> :</p>
<blockquote>
<pre>sqlite&gt; .tables
tab</pre>
</blockquote>
<p>Mais pas comment obtenir le même résultat d&#8217;une requête SQL que vous pouvez effectuer en Python, et qui utilise la table <code>sqlite_master</code> automatiquement créée par SQLite :</p>
<blockquote>
<pre>sqlite&gt; select name from sqlite_master;
tab</pre>
</blockquote>
<p><strong>Sur la méthode </strong><code><strong>iterdump()</strong></code></p>
<p>Deux remarques :</p>
<ol>
<li>Elle n&#8217;est disponible que depuis Python 2.6</li>
<li>C&#8217;est <a href="http://osdir.com/ml/python.db.pysqlite.user/2008-07/msg00007.html" target="_blank">selon Gerhard Hæring lui-même</a>, l&#8217;auteur du module <code>sqlite3</code>, la seule méthode pour dupliquer une base en mémoire vers une base sur disque (oui, c&#8217;est vraiment très moche qu&#8217;il n&#8217;y ai pas de manière plus élégante de le faire, mais c&#8217;est comme ça !)</li>
</ol>
<p><strong>Sur les ? et les chaînes de caractères</strong></p>
<p>Pour construire dynamiquement le contenu des requêtes SQL, Carl utilise sans le justifier des <code>?</code> et un tuple de valeurs comme second argument de la méthode <code>execute()</code>. Il est en fait très important de suivre cette manière de faire, car si vous utilisez les opérations classiques de concaténation des chaîne de caractères, vous vous exposez à des risques d&#8217;attaque par <a href="http://fr.wikipedia.org/wiki/Injection_SQL" target="_blank">injection SQL</a> !</p>
<p>L&#8217;<a href="http://carlchenet.wordpress.com/2012/02/11/du-sql-dans-vos-fichiers-le-module-sqlite3-de-python-3-2-linux-pratique-hors-serie/" target="_blank">autre article</a> de Carl sur l&#8217;utilisation du module <code>smtplib</code> est aussi très intéressant, les autres articles du Hors-Série formant en fait un gros tutoriel d&#8217;initiation au langage Python.</p>
<p class="wp-flattr-button"></p> <p><a href="http://fgallaire.flext.net/?flattrss_redirect&amp;id=2047&amp;md5=33217ee8bf6dcfc129736a343d78d29b" title="Flattr" target="_blank"><img src="http://fgallaire.flext.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://fgallaire.flext.net/complement-carl-sqlite3-sqlite-et-python/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
