<?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>Fondation Erwin Mayer</title>
	<atom:link href="http://erwinmayer.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://erwinmayer.com</link>
	<description>Much Ado About Many Things</description>
	<lastBuildDate>Mon, 23 Jan 2012 12:44:20 +0000</lastBuildDate>
	<language>fr</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<item>
		<title>Say hello to MySQL</title>
		<link>http://erwinmayer.com/2011/09/07/say-hello-to-mysql/</link>
		<comments>http://erwinmayer.com/2011/09/07/say-hello-to-mysql/#comments</comments>
		<pubDate>Wed, 07 Sep 2011 13:33:40 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Education]]></category>
		<category><![CDATA[Geek]]></category>
		<category><![CDATA[Informatique]]></category>
		<category><![CDATA[Philosophie]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Société]]></category>
		<category><![CDATA[Hello world]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[Social behaviour]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=528</guid>
		<description><![CDATA[Why does software so often fail to understand basic social conventions?]]></description>
			<content:encoded><![CDATA[<p>Why does software so often fail to understand basic social conventions?</p>
<p><center><a href="http://erwinmayer.com/wp-content/uploads/2011/09/Hello-MySQL.png"><img src="http://erwinmayer.com/wp-content/uploads/2011/09/Hello-MySQL-300x144.png" alt="MySQL - Hello" title="MySQL - Hello" width="300" height="144" class="aligncenter size-medium wp-image-529" /></a></center></p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2011/09/07/say-hello-to-mysql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Call and send SMS/MMS from your ZTE 3G modem</title>
		<link>http://erwinmayer.com/2011/09/04/call-and-send-sms-mms-from-your-zte-3g-modem/</link>
		<comments>http://erwinmayer.com/2011/09/04/call-and-send-sms-mms-from-your-zte-3g-modem/#comments</comments>
		<pubDate>Sun, 04 Sep 2011 01:09:41 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Geek]]></category>
		<category><![CDATA[High tech]]></category>
		<category><![CDATA[Informatique]]></category>
		<category><![CDATA[Innovation]]></category>
		<category><![CDATA[3G data]]></category>
		<category><![CDATA[Dashboard]]></category>
		<category><![CDATA[Huawei]]></category>
		<category><![CDATA[Metfone]]></category>
		<category><![CDATA[voice call]]></category>
		<category><![CDATA[ZTE 3565-Z]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=518</guid>
		<description><![CDATA[I recently wanted to use my cell phone sim card inside my 3G USB stick (a ZTE 3565-Z bought in Croatia), without losing the ability to receive (or make, though I generally use VoIP software for this) calls. Given what these 3G modems were designed for (i.e. modem use), and a previous unsuccessful experience trying [...]]]></description>
			<content:encoded><![CDATA[<p>I recently wanted to use my cell phone sim card inside my 3G USB stick (a <a href="http://3g-modem.wetpaint.com/page/ZTE+K3565-Z+(Vodafone)">ZTE 3565-Z</a> bought in Croatia), without losing the ability to receive (or make, though I generally use <a href="http://unbouncepages.com/tsn/" target="_blank">VoIP software</a> for this) calls.</p>
<p>Given what these 3G modems were designed for (i.e. modem use), and a previous unsuccessful experience trying to make a landline call with my laptop internal 56K modem, I was not sure whether this would be at all technically feasible. Yet digging the web revealed that it did could work with specific hardward and software. I preferred to challenge rather than change my hardware, and therefore set myself up for a new quest, in the hope of finding the holy missing piece of software, if there was any.</p>
<p>And I eventually found <a href="http://metfone.com.kh/home/en/metfone.mf?id=20&amp;task=detailpac">an uncluttered dashboard</a> (equivalent to Vodafone Mobile Connect or Gestionnaire de Connexion SFR), which worked perfectly both to access the Internet (at least with all the 3G service providers around the world I tried) and to receive/make calls.</p>
<p>The existence of this simple yet world changing software (for me) was somehow unveiled <a href="http://www.dc-unlocker.com/forum/showthread.php?t=4093" target="_blank">here on d-c unlocker forums</a> (then also mentionned on <a href="http://www.gerhardweil.de/pages/vodafone-stick3565.php">this German website</a> and <a href="http://www.gudtricks.in/2011/08/zte-modem-dashboardcallussdmmssmsoption.html">here</a>), with a link to download it. For those who have not heard of it yet, <a href="http://www.dc-unlocker.com/" target="_blank">d-c unlocker</a> is a brilliant piece of software that can unlock 3G data cards (and that works!).</p>
<p>Surprisingly, this state-of-the-art piece of software was released under Metfone&#8217;s brand, a Khmer (Cambodian) mobile and residential Internet provider. This must be why most of the countries in the area are considered as “emerging” or “pre-emerging”&#8230;</p>
<p>I now have the best smartphone one could ever dream of: a laptop connected to the Internet <img src='http://erwinmayer.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p><center><a href="http://erwinmayer.com/wp-content/uploads/2011/09/Metfone.png"><img class="aligncenter size-full wp-image-522" title="Metfone UI" src="http://erwinmayer.com/wp-content/uploads/2011/09/Metfone.png" alt="Metfone UI" width="447" height="263" /></a></center></p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2011/09/04/call-and-send-sms-mms-from-your-zte-3g-modem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>La révolution des pneus auto-gonflants</title>
		<link>http://erwinmayer.com/2011/08/29/la-revolution-des-pneus-auto-gonflants/</link>
		<comments>http://erwinmayer.com/2011/08/29/la-revolution-des-pneus-auto-gonflants/#comments</comments>
		<pubDate>Mon, 29 Aug 2011 00:09:11 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Entrepreneuriat]]></category>
		<category><![CDATA[Innovation]]></category>
		<category><![CDATA[Physique]]></category>
		<category><![CDATA[auto-gonflant]]></category>
		<category><![CDATA[Goodyear]]></category>
		<category><![CDATA[Kickstarter]]></category>
		<category><![CDATA[Pneu]]></category>
		<category><![CDATA[Pumptire]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=507</guid>
		<description><![CDATA[Amusant : ce mois-ci, nous avons d&#8217;un côté PumpTire, le David qui, ayant réalisé quelques prototypes, espère livrer ses premiers produits sous 8 mois avec un financement relativement faible de $250,000 puisque devant essentiellement payer la production des premières commandes. We are looking to raise $250K to make PumpTire a reality. This is a large [...]]]></description>
			<content:encoded><![CDATA[<p>Amusant : ce mois-ci, nous avons d&#8217;un côté <a href="http://www.kickstarter.com/projects/81926444/pumptire-self-inflating-bicycle-tire">PumpTire</a>, le David qui, ayant réalisé quelques prototypes, espère livrer ses premiers produits sous 8 mois avec un financement relativement faible de $250,000 puisque devant essentiellement payer la production des premières commandes.</p>
<blockquote><p>We are looking to raise $250K to make PumpTire a reality. This is a large sum of money for Kickstarter projects and equates to about 5,000 tires.  The money will be primarily used for four purposes:<br />
1. Completing the engineering design. This will require us to work with vendors and engineering firms to find the right materials and processes to make the product robust and lightweight. Although we have various working prototypes, we’ll need money to make sure each part of the system works properly.<br />
2. Testing. Once we’ve completed the production design we will build and test prototypes to see what we got right and what needs additional engineering.<br />
3. Purchasing tooling.  We will need to have molds built for each type of tire as well as the lumen and the individual pieces in the control valve assemblies.<br />
4. Purchasing materials.  And finally, we need to pay for the materials and components that go into each tire assembly.</p></blockquote>
<p><center><iframe width="420" height="345" src="http://www.youtube.com/embed/rMmZnzG9QqI" frameborder="0" allowfullscreen></iframe></center></p>
<p>De l&#8217;autre <a href="http://www.cleveland.com/business/index.ssf/2011/08/goodyear_wins_grant_to_develop.html">Goodyear</a>, le Goliath qui a besoin d&#8217;un grant (cadeau ?) fédéral de $1.5M pour développer une technologie similaire (adaptée aux pneus de camion), qui rapportera facilement plusieurs dizaines de millions de dollars par an en cas de succès (et contribuera sans aucun doute au progrès général de l&#8217;humanité). Mais sans annoncer la moindre date de sortie commerciale&#8230;</p>
<blockquote><p>The company did not say how expensive the new tires would be or how long it would take to develop the technology.</p></blockquote>
<p><center><a href="http://erwinmayer.com/wp-content/uploads/2011/08/Goodyear-auto-inflatable-tyre2.jpg"><img src="http://erwinmayer.com/wp-content/uploads/2011/08/Goodyear-auto-inflatable-tyre2-275x300.jpg" alt="Goodyear auto-inflatable tyre" title="Goodyear auto-inflatable tyre" width="275" height="300" class="aligncenter size-medium wp-image-510" /></a></center></p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2011/08/29/la-revolution-des-pneus-auto-gonflants/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GameDuell, le fair-play au service du business modèle</title>
		<link>http://erwinmayer.com/2011/08/27/gameduell-le-fair-play-au-service-du-business-modele/</link>
		<comments>http://erwinmayer.com/2011/08/27/gameduell-le-fair-play-au-service-du-business-modele/#comments</comments>
		<pubDate>Sat, 27 Aug 2011 17:39:05 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Jeux]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Mathématiques]]></category>
		<category><![CDATA[Espérance mathématique]]></category>
		<category><![CDATA[GameDuell]]></category>
		<category><![CDATA[Monnaie de singe]]></category>
		<category><![CDATA[Online game]]></category>
		<category><![CDATA[Valeur]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=20</guid>
		<description><![CDATA[GameDuell s&#8217;est rapidement imposé comme une référence en termes de jeux d&#8217;argent, non entièrement aléatoires et contre des adversaires réels, mettant particulièrement en avant un algorithme unique de matching pour garantir un &#171;&#160;fair-play&#160;&#187; entre ses 20 millions d&#8217;utilisateurs. Afin de vous donner une vraie chance, notre système de sélection des duels vous propose automatiquement uniquement [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://clic.reussissonsensemble.fr/click.asp?ref=472768&#038;site=5673&#038;type=text&#038;tnb=1">GameDuell</a> s&#8217;est rapidement imposé comme une référence en termes de jeux d&#8217;argent, non entièrement aléatoires et contre des adversaires réels, mettant particulièrement en avant un algorithme unique de matching pour garantir un &laquo;&nbsp;<a href="http://www.gameduell.fr/gd/i01.do?page=help.starting_conditions#10550&#038;from=.aff001te_all_fr">fair-play</a>&nbsp;&raquo; entre ses 20 millions d&#8217;utilisateurs.</p>
<blockquote><p>Afin de vous donner une vraie chance, notre système de sélection des duels vous propose automatiquement uniquement des joueurs qui ont le même niveau de jeu que le vôtre.</p></blockquote>
<p>Soyez prévenus, seule votre habilité vous conduira à la défaite ou à la victoire, et à engranger des « <a href='http://www.gameduell.fr/gd/i01.do?page=help.about_gd#26855&#038;from=.aff001te_all_fr'>gains réels</a> ».</p>
<blockquote><p>Vous pouvez véritablement gagner.</p></blockquote>
<p>Si ne pas jouer contre des adversaires plus forts que vous peut effectivement être salvateur, ne quasiment pas pouvoir jouer contre des joueurs plus faibles que vous assure que votre probabilité de victoire ne dépassera jamais 50%. Et donc, si GameDuell ne prélevait pas de commission, une espérance mathématique de 0€. Dans ces conditions, et même si vous êtes champion du monde du Spider solitaire ou de Diamonds, autant ne pas jouer d&#8217;argent ! Inutile également de vous enfermer pendant un an dans votre garage afin de programmer une intelligence artificielle capable de battre tous les humains ; vous jouerez contre un autre bot.</p>
<p><a href="http://www.flickr.com/photos/42311564@N00/3526505938/sizes/o/in/photostream/"><img src="http://erwinmayer.com/wp-content/uploads/2011/08/Bonobo-199x300.jpg" alt="Bonobo" title="Bonobo" width="199" height="300" class="alignright size-medium wp-image-497" /></a>Mais, en ne reversant par exemple qu&#8217;1,50€ sur 2€ misés lors d&#8217;un tournoi à deux joueurs, GameDuell s&#8217;octroie deux dimes et demi qui font passer votre espérance, quel que soit votre niveau, à une perte de 0,25€ par jeu. Autrement dit, statistiquement, pour avoir le droit de jouer, vous allez payer 0,25€. Si vous êtes un habitué des salles d&#8217;arcade, ce n&#8217;est pas nécessairement cher, mais si votre objectif est de devenir riche, passez votre chemin.</p>
<p>C&#8217;est là qu&#8217;intervient la grande générosité de GameDuell, qui vous propose de jouer gratuitement (oui vous avez bien lu) en parrainant vos amis : pour chaque personne que votre prosélytisme vous aura permis de ramener dans le droit chemin, vous serez l&#8217;heureux récipiendaire de 10 euros de &laquo;&nbsp;crédit gratuit&nbsp;&raquo;. Pas question toutefois de vous faire jouer contre les bienheureux qui investissent leurs économies réelles et leur talent dans GameDuell afin de pouvoir payer 0,25€ par jeu, et inutile d&#8217;espérer transférer ces 10 euros ou leurs petits sur votre compte bancaire, car il ne s&#8217;agit là que d&#8217;une <a href="http://www.gameduell.fr/gd/i01.do?page=help.gaming_money&#038;from=.aff001te_all_fr">monnaie de singe</a>. Mais si de prime abord, cela peut désemparer d&#8217;être récompensé par une &laquo;&nbsp;monnaie sans valeur&nbsp;&raquo;, vous gagnez réellement <a href="http://bastiat.org/fr/de_la_valeur.html">une valeur</a> de 10€ avec lesquels vous pourrez jouer en moyenne 40 duels avant de devoir passer à la caisse pour perdre plus. Merci qui ?</p>
<p>S&#8217;il vous prend l&#8217;envie d&#8217;essayer, n&#8217;hésitez pas à utiliser <a href="http://clic.reussissonsensemble.fr/click.asp?ref=472768&#038;site=5673&#038;type=text&#038;tnb=1">ce lien de parrainage</a> pour vous inscrire, et que le meilleur gagne !</p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2011/08/27/gameduell-le-fair-play-au-service-du-business-modele/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Much Ado About Many Things</title>
		<link>http://erwinmayer.com/2011/08/27/much-ado-about-many-things/</link>
		<comments>http://erwinmayer.com/2011/08/27/much-ado-about-many-things/#comments</comments>
		<pubDate>Sat, 27 Aug 2011 15:44:13 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[EMF]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=469</guid>
		<description><![CDATA[I have just changed the tag line of this website from boring “Business, Finance &#38; Technology” to the fabulous new one you can see above. Not that these three key topics have been deprecated, but because the Erwin Mayer Foundation encompasses so much more; hence this very flagship had to better highlight what really matters. [...]]]></description>
			<content:encoded><![CDATA[<p>I have just changed the tag line of this website from boring “Business, Finance &amp; Technology” to the fabulous new one you can see above.</p>
<p>Not that these three key topics have been deprecated, but because the Erwin Mayer Foundation encompasses so much more; hence this very flagship had to better highlight what really matters.</p>
<p>With this new shibboleth, I also wanted to pay tribute to my very well missed friend <a href="http://en.wikipedia.org/wiki/William_Shakespeare">William</a>, of whom I was delighted to attend four plays this Summer during <a href="http://www.cambridgeshakespeare.com/programme/much-ado-about-nothing/">the excellent eponymous festival in Cambridge</a>.</p>
<p><center><div id="attachment_470" class="wp-caption aligncenter" style="width: 436px"><a href="http://erwinmayer.com/wp-content/uploads/2011/08/Gilbert_WShakespeares_Plays1.jpg"><img class="size-full wp-image-470 " title="The Plays of William Shakespeare" src="http://erwinmayer.com/wp-content/uploads/2011/08/Gilbert_WShakespeares_Plays1.jpg" alt="The Plays of William Shakespeare" width="426" height="339" /></a><p class="wp-caption-text">Sir John Gilbert&#39;s, The Plays of William Shakespeare, 1849</p></div></center></p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2011/08/27/much-ado-about-many-things/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A tip to improve the performance of your Bloomberg API application</title>
		<link>http://erwinmayer.com/2011/05/25/a-tip-to-improve-the-performance-of-your-bloomberg-api-application/</link>
		<comments>http://erwinmayer.com/2011/05/25/a-tip-to-improve-the-performance-of-your-bloomberg-api-application/#comments</comments>
		<pubDate>Wed, 25 May 2011 16:04:55 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Finance]]></category>
		<category><![CDATA[Informatique]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[Bloomberg]]></category>
		<category><![CDATA[Bloomberg API]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Performance]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=441</guid>
		<description><![CDATA[If you make a request for data which results in a lot of events generated by Bloomberg API (such as long historical intraday data request, or possibly real time subscriptions), do not use the pattern specified in the API documentation, as it may end up making your application very slow to retrieve all events. Basically, [...]]]></description>
			<content:encoded><![CDATA[<p>If you make a request for data which results in a lot of events generated by Bloomberg API (such as long historical intraday data request, or possibly real time subscriptions), do not use the pattern specified in the API documentation, as it may end up making your application very slow to retrieve all events. Basically, do not call NextEvent() on a Session object, use a dedicated EventQueue instead.</p>
<p>Instead of doing this:</p>
<pre class="brush: csharp; title: ; notranslate">var cID = new CorrelationID(1);
session.SendRequest(request, cID);
do {
   Event eventObj = session.NextEvent();
   ...
}
</pre>
<p>Do this:</p>
<pre class="brush: csharp; title: ; notranslate">var cID = new CorrelationID(1);
var eventQueue = new EventQueue();
session.SendRequest(request, eventQueue, cID);
do {
   Event eventObj = eventQueue.NextEvent();
   ...
}
</pre>
<p>This simple change may yield performance improvements by an order of magnitude (or not, as the API is known to not be particularly deterministic&#8230;).</p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2011/05/25/a-tip-to-improve-the-performance-of-your-bloomberg-api-application/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Recursive algorithm to generate all combinations of elements in arrays</title>
		<link>http://erwinmayer.com/2010/12/14/recursive-algorithm-to-generate-all-combinations-of-elements-in-arrays/</link>
		<comments>http://erwinmayer.com/2010/12/14/recursive-algorithm-to-generate-all-combinations-of-elements-in-arrays/#comments</comments>
		<pubDate>Tue, 14 Dec 2010 04:11:03 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Algorithmes]]></category>
		<category><![CDATA[Informatique]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Algorithm]]></category>
		<category><![CDATA[C#.NET]]></category>
		<category><![CDATA[combinations of arrays]]></category>
		<category><![CDATA[VB.NET]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=421</guid>
		<description><![CDATA[If you have a list of lists of objects implementing IEnumerable (such as Arrays or Lists), it may occasionally be useful to flatten them to generate all possible combinations. Here is my quick solution in VB and C#.NET (you may of course use the underlying pseudocode to translate it into other languages), with an overload [...]]]></description>
			<content:encoded><![CDATA[<p>If you have a list of lists of objects implementing IEnumerable (such as Arrays or Lists), it may occasionally be useful to flatten them to generate all possible combinations. Here is my quick solution in VB and C#.NET (you may of course use the underlying pseudocode to translate it into other languages), with an overload to facilitate the function call, and an example:</p>
<p>Code in VB.NET:</p>
<pre class="brush: vb; title: ; notranslate">Public Shared Function GetCombinationsFromIEnumerables(ByRef chain() As Object, ByRef IEnumerables As IEnumerable(Of IEnumerable(Of Object))) As List(Of Object())
    Dim Combinations As New List(Of Object())
    If IEnumerables.Any Then
        For Each v In IEnumerables.First
            Combinations.AddRange(GetCombinationsFromIEnumerables(chain.Concat(New Object() {v}).ToArray, IEnumerables.Skip(1)).ToArray)
        Next
    Else
        Combinations.Add(chain)
    End If
    Return Combinations
End Function

Public Shared Function GetCombinationsFromIEnumerables(ByVal ParamArray IEnumerables() As IEnumerable(Of Object)) As List(Of Object())
    Return GetCombinationsFromIEnumerables(chain:=New Object() {}, IEnumerables:=IEnumerables.AsEnumerable)
End Function</pre>
<p>Code in C#.NET:</p>
<pre class="brush: csharp; title: ; notranslate">public static List&lt;object[]&gt; GetCombinationsFromIEnumerables(ref object[] chain, ref IEnumerable&lt;IEnumerable&lt;object&gt;&gt; IEnumerables)
{
List&lt;object[]&gt; Combinations = new List&lt;object[]&gt;();
if (IEnumerables.Any) {
    foreach ( v in IEnumerables.First) {
        Combinations.AddRange(GetCombinationsFromIEnumerables(chain.Concat(new object[] { v }).ToArray, IEnumerables.Skip(1)).ToArray);
    }
} else {
    Combinations.Add(chain);
}
return Combinations;
}

public static List&lt;object[]&gt; GetCombinationsFromIEnumerables(params IEnumerable&lt;object&gt;[] IEnumerables)
{
return GetCombinationsFromIEnumerables(chain = new object[], IEnumerables = IEnumerables.AsEnumerable);
}</pre>
<p>Usage is simple:</p>
<pre class="brush: vb; title: ; notranslate">Dim list1 = New String() {&quot;hello&quot;, &quot;bonjour&quot;, &quot;hallo&quot;, &quot;hola&quot;}
Dim list2 = New String() {&quot;Erwin&quot;, &quot;Larry&quot;, &quot;Bill&quot;}
Dim list3 = New String() {&quot;!&quot;, &quot;..&quot;}
Dim result = MyLib.GetCombinationsFromIEnumerables(list1, list2, list3)
For Each r In result
    Debug.Print(String.Join(&quot; &quot;c, r))
Next</pre>
<p>or in C#:</p>
<pre class="brush: csharp; title: ; notranslate">object list1 = new string[] {&quot;hello&quot;,&quot;bonjour&quot;,&quot;hallo&quot;,&quot;hola&quot;};
object list2 = new string[] {&quot;Erwin&quot;, &quot;Larry&quot;, &quot;Bill&quot;};
object list3 = new string[] {&quot;!&quot;,&quot;..&quot;};
object result = MyLib.GetCombinationsFromIEnumerables(list1, list2, list3);
foreach (r in result) {
Debug.Print(string.Join(' ', r));
}</pre>
<p>As with any recursive function, memory usage can be exponential so make sure you know how much data is going to be processed.</p>
<p>To parallelize this function, we would have to embed the content of the for each loop into a lambda function using: </p>
<pre class="brush: vb; title: ; notranslate">IEnumerables.First.AsParallel().AsOrdered().ForEach</pre>
<p>if order is important, otherwise simply:</p>
<pre class="brush: vb; title: ; notranslate">IEnumerables.First.AsParallel().ForAll</pre>
<p>However, unless there is a fair amount of processing involved (which apparently is not the case here as we are just iterating over elements), it is not worth parallelizing.</p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2010/12/14/recursive-algorithm-to-generate-all-combinations-of-elements-in-arrays/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Embracing KISS</title>
		<link>http://erwinmayer.com/2010/11/25/embracing-kiss/</link>
		<comments>http://erwinmayer.com/2010/11/25/embracing-kiss/#comments</comments>
		<pubDate>Thu, 25 Nov 2010 13:32:22 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Citations]]></category>
		<category><![CDATA[Albert Einstein]]></category>
		<category><![CDATA[Citation]]></category>
		<category><![CDATA[KISS]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=415</guid>
		<description><![CDATA[Make everything as simple as possible. But not simpler.— Albert Einstein]]></description>
			<content:encoded><![CDATA[<blockquote><p><em>Make everything as simple as possible. But not simpler.</em>— Albert Einstein</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2010/11/25/embracing-kiss/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Spinach, iron &amp; Popeye</title>
		<link>http://erwinmayer.com/2010/10/19/spinach-iron-popeye/</link>
		<comments>http://erwinmayer.com/2010/10/19/spinach-iron-popeye/#comments</comments>
		<pubDate>Tue, 19 Oct 2010 11:47:13 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Cinéma]]></category>
		<category><![CDATA[Gastronomie]]></category>
		<category><![CDATA[Histoire]]></category>
		<category><![CDATA[Insolite]]></category>
		<category><![CDATA[Société]]></category>
		<category><![CDATA[Criminology]]></category>
		<category><![CDATA[Iron]]></category>
		<category><![CDATA[Popeye]]></category>
		<category><![CDATA[Spinach]]></category>
		<category><![CDATA[Stutton]]></category>
		<category><![CDATA[Vitamin A]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=359</guid>
		<description><![CDATA[I just finished reading this very interesting paper, published in the Internet Journal of Criminology, by Dr Mike Sutton, who shows that even the most zealous urban myth busters may themselves end up committing the very crimes they are fighting against&#8230; Bon appétit! A copy is available here if the original link is down. Disclaimer: [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Spinach Popeye" href="http://www.flickr.com/photos/samkim/214793098"><img class="alignright" src="http://farm1.static.flickr.com/93/214793098_181e366d76_t.jpg" alt="" /></a>I just finished reading <a href="http://www.internetjournalofcriminology.com/Sutton_Spinach_Iron_and_Popeye_March_2010.pdf">this very interesting paper</a>, published in the <a href="http://www.internetjournalofcriminology.com/">Internet Journal of Criminology</a>, by Dr Mike Sutton, who shows that even the most zealous urban myth busters may themselves end up committing the very crimes they are fighting against&#8230;<br />
Bon appétit! A copy is available <a href="http://erwinmayer.com/wp-content/uploads/2010/10/Sutton_Spinach_Iron_and_Popeye_March_2010.pdf">here</a> if the <a href="http://www.internetjournalofcriminology.com/Sutton_Spinach_Iron_and_Popeye_March_2010.pdf">original link</a> is down.</p>
<p>Disclaimer: I have not verified Sutton&#8217;s sources&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2010/10/19/spinach-iron-popeye/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>A piece of wisdom from Warren Buffett</title>
		<link>http://erwinmayer.com/2010/09/14/a-piece-of-wisdom-from-warren-buffett/</link>
		<comments>http://erwinmayer.com/2010/09/14/a-piece-of-wisdom-from-warren-buffett/#comments</comments>
		<pubDate>Tue, 14 Sep 2010 11:39:33 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Citations]]></category>
		<category><![CDATA[Integrity]]></category>
		<category><![CDATA[Quote]]></category>
		<category><![CDATA[Warrent Buffet]]></category>
		<category><![CDATA[Wisdom]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=347</guid>
		<description><![CDATA[In evaluating people, you look for three qualities: integrity, intelligence, and energy. If you don’t have the first, the other two will kill you.— Warren Buffett, 1993]]></description>
			<content:encoded><![CDATA[<blockquote><p><em>In evaluating people, you look for three qualities: integrity, intelligence, and energy. If you don’t have the first, the other two will kill you.</em>— Warren Buffett, 1993</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2010/09/14/a-piece-of-wisdom-from-warren-buffett/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Le TARP, version 33 A.D.</title>
		<link>http://erwinmayer.com/2010/08/29/le-tarp-version-33-a-d/</link>
		<comments>http://erwinmayer.com/2010/08/29/le-tarp-version-33-a-d/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 16:28:18 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Finance]]></category>
		<category><![CDATA[Histoire]]></category>
		<category><![CDATA[Société]]></category>
		<category><![CDATA[Alaska]]></category>
		<category><![CDATA[Empire romain]]></category>
		<category><![CDATA[Félix Esquirou de Parieu]]></category>
		<category><![CDATA[Interventionnisme]]></category>
		<category><![CDATA[Italie]]></category>
		<category><![CDATA[Robert Etienne]]></category>
		<category><![CDATA[Sesterce]]></category>
		<category><![CDATA[subprimes]]></category>
		<category><![CDATA[TARP]]></category>
		<category><![CDATA[Tibère]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=337</guid>
		<description><![CDATA[Dans le Livre VI de ses Annales, Tacite nous rapporte cette &#171;&#160;anecdote&#160;&#187; de l&#8217;an 33, du temps de l&#8217;Empereur romain Tibère (et l&#8217;année de la mort d&#8217;un certain Jésus), qui ne manquera pas de nous délecter, tant elle rappelle l&#8217;intervention de l&#8217;Etat américain fin 2008 via son Troubled Asset Relief Program. Affaires intérieures 33 ap. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://erwinmayer.com/wp-content/uploads/2010/08/sestercetrajan101.jpg"><img src="http://erwinmayer.com/wp-content/uploads/2010/08/sestercetrajan101-300x144.jpg" alt="" title="Sesterce à l&#039;effigie de l&#039;Empereur Trajan" width="300" height="144" class="alignright size-medium wp-image-340" /></a>Dans le Livre VI de ses Annales, Tacite <a href="http://fr.wikisource.org/wiki/Annales_(Tacite)/Livre_VI?match=la" target="_blank">nous rapporte</a> cette &laquo;&nbsp;anecdote&nbsp;&raquo; de l&#8217;an 33, du temps de l&#8217;Empereur romain Tibère (et l&#8217;année de la mort d&#8217;un certain Jésus), qui ne manquera pas de nous délecter, tant elle rappelle l&#8217;intervention de l&#8217;Etat américain fin 2008 via son <a href="http://en.wikipedia.org/wiki/Troubled_Asset_Relief_Program">Troubled Asset Relief Program</a>.</p>
<blockquote><p><strong>Affaires intérieures 33 ap. J.-C. (6,15-27) &#8211; Traduction Jean-Louis B</strong><strong>urnouf, 1859</strong> <strong> Répression de l&#8217;usure (VI,16-17)</strong> <strong></p>
<p>16.</strong> Cependant une légion d&#8217;accusateurs se déchaîna contre ceux qui s&#8217;enrichissaient par l&#8217;usure, au mépris d&#8217;une loi du dictateur César sur la proportion des créances et des possessions en Italie , loi depuis longtemps mise en oubli par l&#8217;intérêt particulier, auquel le bien public est toujours sacrifié. L&#8217;usure fut de tout temps le fléau de cette ville, et une cause sans cesse renaissante de discordes et de séditions. Aussi, même dans des siècles où les mœurs étaient moins corrompues, on s&#8217;occupa de la combattre. Les Douze Tables réduisirent d&#8217;abord à un pour cent l&#8217;intérêt, qui, auparavant, n&#8217;avait de bornes que la cupidité des riches. Ensuite un tribun le fit encore diminuer de moitié ; enfin on défendit tout prêt à usure, et de nombreux plébiscites furent rendus pour prévenir les fraudes de l&#8217;avarice, qui, tant de fois réprimées, se reproduisaient avec une merveilleuse adresse. Le préteur Gracchus, devant qui se faisaient les poursuites dont nous parlons ici, fut effrayé du grand nombre des accusés et consulta le sénat. Les sénateurs alarmés (car pas un ne se sentait irréprochable) demandèrent grâce au prince. Leur prière fut entendue, et dix-huit mois furent donnés à chacun pour régler ses affaires domestiques comme la loi l&#8217;exigeait.  </p>
<p><strong>17.</strong> Des remboursements qui remuaient à la fois toutes les dettes, et la perte des biens de tant de condamnés, qui accumulait dans le fisc ou dans l&#8217;épargne les espèces monnayées, rendirent l&#8217;argent rare. Ajoutez un décret du sénat qui enjoignait aux prêteurs de placer en biens-fonds situés dans l&#8217;Italie les deux tiers de leurs créances. Or ceux-ci les exigeaient en entier ; et les débiteurs, requis de payer, ne pouvaient sans honte rester au-dessous de leurs engagements. En vain ils courent, ils sollicitent ; le tribunal du préteur retentit bientôt de demandes. Les ventes et les achats, où l&#8217;on avait cru trouver un remède, augmentèrent le mal. Plus d&#8217;emprunts possibles ; les riches serraient leur argent pour acheter des terres. La multitude des ventes en fit tomber le prix ; et plus on était obéré, plus on avait de peine à trouver des acheteurs. Beaucoup de fortunes étaient renversées, et la perte des biens entraînait celle du rang et de la réputation. Enfin Tibère soulagea cette détresse en faisant un fonds de cent millions de sesterces, sur lesquels l&#8217;État prêtait sans intérêt, pendant trois ans, à condition que le débiteur donnerait une caution en biens-fonds du double de la somme empruntée. Ainsi l’on vit renaître le crédit, et peu à peu les particuliers même prêtèrent. Quant aux achats de biens, on ne s’en tint pas à la rigueur du sénatus-consulte ; et c&#8217;est le sort de toutes les réformes, sévères au commencement, à la fin négligées.</p></blockquote>
<p>100 millions de sesterces, cela représentait 19 483 561 F du temps de Burnouf (confirmé par le <a href="http://littre.reverso.net/dictionnaire-francais/definition/sesterce/68498">Littré</a>). En 1890, la valeur à parité de pouvoir d&#8217;achat était selon <a href="http://fr.wikipedia.org/wiki/%C3%89volution_du_pouvoir_d'achat_du_franc_fran%C3%A7ais">plusieurs sources concordantes</a> de 3,30 euros pour un franc. Sachant que le franc germinal, bimétallique de l&#8217;Union latine (précurseure de l&#8217;UEM, établie le 23 décembre 1865 lors de la Convention de Paris comme &laquo;&nbsp;Prélude aux fédérations pacifiques du futur&nbsp;&raquo;, selon les terme de Félix Esquirou de Parieu) venait de s&#8217;affaiblir suite à la découverte d&#8217;importants gisements d&#8217;argents (en Alaska notamment), on peut raisonnablement estimer que trente ans auparavant, la valeur p.p.a. du franc était de 4 euros pour un franc. Les 100 millions de sesterces représentent donc l&#8217;équivalent de 75 millions d&#8217;euros actuels (<a href="http://www.webcitation.org/5sLYy4QRi">en extrapolant</a> les chiffres donnés par Robert Etienne dans <em>La vie quotidienne à Pompéi</em> (Hachette, 1966), on aboutit à une estimation similaire, à quelques millions d&#8217;euros près).</p>
<p>Si l&#8217;on suppose que cette crise était surtout circonscrite aux populations d&#8217;Italie, lesquelles représentaient probablement <a href="http://www.webcitation.org/5sLeD6kgd">10%</a> d&#8217;un Empire de <a href="http://www.webcitation.org/5sLbd8Uv3">50 millions d&#8217;habitants</a>, cela fait 15€ par habitant, ou 60 sesterces, <a href="http://www.webcitation.org/5sLYy4QRi">le salaire mensuel d&#8217;un instituteur romain</a>.<br />
De l&#8217;autre côté de l&#8217;Atlantique, 750 milliards de dollars mis sur la table, ce sont $2500 par habitant, là aussi l&#8217;équivalent du <a href="http://www.webcitation.org/5sLecRKWN">salaire mensuel d&#8217;un jeune professeur en école élémentaire publique</a>&#8230;</p>
<p>Moins d&#8217;un siècle après la fin de règne de Tibère, l&#8217;Empire romain connaîtra son apogée avec Trajan. Les Etats-Unis seraient-ils seulement à l&#8217;aube de leur âge d&#8217;or ?</p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2010/08/29/le-tarp-version-33-a-d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Happy birthday, Farmers Group, Inc.</title>
		<link>http://erwinmayer.com/2010/06/17/happy-birthday-farmers-group-inc/</link>
		<comments>http://erwinmayer.com/2010/06/17/happy-birthday-farmers-group-inc/#comments</comments>
		<pubDate>Thu, 17 Jun 2010 12:32:49 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Finance]]></category>
		<category><![CDATA[Histoire]]></category>
		<category><![CDATA[Arbitrage]]></category>
		<category><![CDATA[California Insurance Department]]></category>
		<category><![CDATA[Derivatives]]></category>
		<category><![CDATA[Exercise]]></category>
		<category><![CDATA[Expiration]]></category>
		<category><![CDATA[Farmers Insurance Group]]></category>
		<category><![CDATA[Moneyness]]></category>
		<category><![CDATA[OCC]]></category>
		<category><![CDATA[OIC]]></category>
		<category><![CDATA[Options]]></category>
		<category><![CDATA[Put option]]></category>
		<category><![CDATA[Short]]></category>
		<category><![CDATA[Stock market index option]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=327</guid>
		<description><![CDATA[As I was trying to figure out the exact cut-off times for submitting exercise notice on options, be it early or at expiration date, I stumbled on an interesting case of profitable wildcard option exercise on Farmers Group, Inc. some 22 years ago. On Friday, the 17th of June 1988, holders of OTM put option [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Finance Central" href="http://flickr.com/photos/74519410@N00/1277003497"><img class="alignright" src="http://farm2.static.flickr.com/1089/1277003497_bb1538546c_m.jpg" alt="" /></a>As I was trying to figure out the exact cut-off times for submitting exercise notice on options, be it early or at expiration date, I <a href="http://books.google.fr/books?id=nNlQYXpKxgEC&amp;lpg=PA518&amp;ots=s5iS-qsIqs&amp;dq=option%20early%20exercise%20%207%3A00%20PM&amp;pg=PA518#v=onepage&amp;q=option%20early%20exercise%20%207:00%20PM&amp;f=false">stumbled</a> on an interesting case of profitable wildcard option exercise on <a href="http://www.farmers.com/">Farmers Group, Inc.</a> some 22 years ago.</p>
<p>On Friday, the 17th of June 1988, holders of <a href="http://en.wikipedia.org/wiki/Moneyness#OTM:_Out-of-the-money">OTM</a> put option contracts on this stock (OTM at the closing time of regular trading hours, which by then was 3:00 PM on <a href="http://en.wikipedia.org/wiki/PHLX">PHLX</a>), submitted an exercise notice at 6:00 PM, therefore bypassing the exchange cut-off time of 4:30 PM (<a href="http://www.888options.com/help/faq/exercise.jsp?prt=nyse">still in effect today</a>) but not <a href="http://en.wikipedia.org/wiki/Options_Clearing_Corporation">OCC</a>&#8216;s of 7:00 PM (<a href="http://www.888options.com/help/faq/assignment.jsp">has not changed either since then</a> though technically 6:30 PM is a safe limit, according to an OIC expert I talked to, who also mentionned that nowadays nobody can exercise after 4:30 PM on expiration Friday).<br />
Why? Because at 6:00 PM, this very Friday, the California Insurance Department barred a takeover of Farmers Group, Inc, which caused a substantial decline in the value of the stock and changed the moneyness of formerly worthless put options.</p>
<p>As of 2010, exercising an officially OTM option at expiration is still possible, though the OCC no longer accepts exercise notices after 4:30 PM. If a broker imposes an earlier cut-off time, he would benefit from exercising OTM options abandoned by its customer (who no longer can decide to exercise), should the market conditions make it worthwhile. Yet they would not need to pay this profit back to their customer since the official closing price was OTM&#8230; This is not very ethical for the customer (if the latter is not allowed to submit exercise notice after 3:30 PM for example), but it would be a waste of free money not to do it.</p>
<p>I wonder to which extent brokers are aware of this opportunity, whether it is a common practice, and how much they can really make out of it&#8230;</p>
<p>Then, when we talk about early exercise of cash-settled index options, like OEX, it is possible to exercise at the closing price (determined at 3:00 PM) until 3:20 PM CST the same day, according to CBOE&#8217;s Rule 11.1, .03:</p>
<blockquote><p>Clearing Members must follow the procedures of the Clearing Corporation when exercising American-style cash-settled index option contracts issued or to be issued in any account at the Clearing Corporation. Members must also follow the procedures set forth below with respect to American-style cash-settled index options: (a) For all contracts exercised by the member or by any customer of the member, an &laquo;&nbsp;Exercise Advice&nbsp;&raquo; must be delivered by the member in such form or manner prescribed by the Exchange to a place designated by the Exchange no later than 3:20 p.m. (CT), or if trading hours are extended or modified in the applicable option class, no later than five (5) minutes after the close of trading on that day.</p></blockquote>
<p>According to the OIC, it is normally not possible for an OCC member to bypass the exchange&#8217;s cut-off time, though I wonder whether it can be tolerated (like in the case of Farmers Group, Inc.)&#8230;</p>
<p>For physically-settled options, the only closing price that matters is the one on expiration Friday. If you exercise early, you immediately become long (or short) of securities; if you want to close your position right away you will have to use the after hours fair trading price, not the artificial and outdated closing price.</p>
<p>On cash-settled options however, an arbitrage strategy could consist in buying a call, selling the underlying to delta-hedge, and wait for a big downward move to occur after close and before 3:20 PM. This would allow you to exercise the call at an artificially high price, buy back the underlying at a low price, and therefore book a free profit. The reverse applies when being long a put and the underlying.<br />
If there is no big move (and there usually isn&#8217;t any), you are good to unwind your delta-hedged position, hoping the implied volatility of the option will not have made your lose some money (and it is more likely to go down than to go up, since there has been no sudden move on the underlying), in the case you would not have hedged your vega.</p>
<p>Note: All referenced times are CST.</p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2010/06/17/happy-birthday-farmers-group-inc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>L&#8217;avenir de la zone euro : une erreur du passé, selon Charles Gave</title>
		<link>http://erwinmayer.com/2010/05/07/lavenir-de-la-zone-euro-une-erreur-du-passe-selon-charles-gave/</link>
		<comments>http://erwinmayer.com/2010/05/07/lavenir-de-la-zone-euro-une-erreur-du-passe-selon-charles-gave/#comments</comments>
		<pubDate>Fri, 07 May 2010 09:46:59 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Finance]]></category>
		<category><![CDATA[Histoire]]></category>
		<category><![CDATA[Politique]]></category>
		<category><![CDATA[Société]]></category>
		<category><![CDATA[Allemagne]]></category>
		<category><![CDATA[Charles Gave]]></category>
		<category><![CDATA[crise]]></category>
		<category><![CDATA[déficit budgétaire]]></category>
		<category><![CDATA[ENS]]></category>
		<category><![CDATA[Ernest]]></category>
		<category><![CDATA[Euro]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=314</guid>
		<description><![CDATA[Cette conférence clairvoyante de lucidité, donnée à l&#8217;ENS en décembre 2009, laisse augurer de sombres jours pour l&#8217;Union européenne. La seule alternative plausible à l&#8217;effective mise sous tutelle du Vieux Continent par l&#8217;Allemagne, telle qu&#8217;attendue par Charles Gave, serait la sortie pure et simple de la zone euro ; permise par les reliquats de nationalisme [...]]]></description>
			<content:encoded><![CDATA[<p>Cette <a href="http://www.dailymotion.com/video/xck13c_charles-gave-euro-ligne-maginot-mem_news">conférence clairvoyante de lucidité</a>, donnée à l&#8217;ENS en décembre 2009, laisse augurer de sombres jours pour l&#8217;Union européenne. La seule alternative plausible à l&#8217;effective mise sous tutelle du Vieux Continent par l&#8217;Allemagne, telle qu&#8217;attendue par <a href="http://fr.wikipedia.org/wiki/Charles_Gave">Charles Gave</a>, serait la sortie pure et simple de la zone euro ; permise par les reliquats de nationalisme présent dans chaque pays et les fausses croyances que la suppression du symptôme guérira le mal sous-jacent (le keynésianisme).</p>
<p>Lorsqu&#8217;une force extranationale est perçue comme responsable de la paupérisation d&#8217;un peuple qui s&#8217;estimait jusqu&#8217;alors libre, les plus mauvaises tendances de l&#8217;homme on tendance à se réveiller&#8230;<br />
Frustration, planche à billet, hyperinflation, élection, et après ?<br />
Il semblerait qu&#8217;une période prospère s&#8217;achève bientôt, et que nous allons devoir faire face aux turbulences qui accompagnent toujours la mise en place d&#8217;un nouvel ordre mondial.</p>
<p><center><object width="480" height="270"><param name="movie" value="http://www.dailymotion.com/swf/video/xck13c"></param><param name="allowFullScreen" value="true"></param><param name="allowScriptAccess" value="always"></param><embed type="application/x-shockwave-flash" src="http://www.dailymotion.com/swf/video/xck13c" width="480" height="270" allowfullscreen="true" allowscriptaccess="always"></embed></object></center></p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2010/05/07/lavenir-de-la-zone-euro-une-erreur-du-passe-selon-charles-gave/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hayek vs. Keynes &#8211; The Rap</title>
		<link>http://erwinmayer.com/2010/02/24/hayek-vs-keynes-the-rap/</link>
		<comments>http://erwinmayer.com/2010/02/24/hayek-vs-keynes-the-rap/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 12:41:11 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[Cinéma]]></category>
		<category><![CDATA[Finance]]></category>
		<category><![CDATA[Fiscalité]]></category>
		<category><![CDATA[Philosophie]]></category>
		<category><![CDATA[Politique]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=311</guid>
		<description><![CDATA[Une production econstories.tv. Hayek contre Keynes &#8211; VOSTfrUploaded by Liberte_Cherie]]></description>
			<content:encoded><![CDATA[<p>Une production <a href="http://www.econstories.tv">econstories.tv</a>.</p>
<p><center><object width="480" height="275"><param name="movie" value="http://www.dailymotion.com/swf/xc5c82"></param><param name="allowFullScreen" value="true"></param><param name="allowScriptAccess" value="always"></param><embed src="http://www.dailymotion.com/swf/xc5c82" width="480" height="275" allowfullscreen="true" allowscriptaccess="always"></embed></object><br /><b><a href="http://www.dailymotion.com/video/xc5c82_hayek-contre-keynes-vostfr_fun">Hayek contre Keynes &#8211; VOSTfr</a></b><br /><i>Uploaded by <a href="http://www.dailymotion.com/Liberte_Cherie">Liberte_Cherie</a></i></center></p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2010/02/24/hayek-vs-keynes-the-rap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to replace Drupal core&#8217;s tracker module using views</title>
		<link>http://erwinmayer.com/2010/02/21/how-to-replace-drupal-cores-tracker-module-using-views/</link>
		<comments>http://erwinmayer.com/2010/02/21/how-to-replace-drupal-cores-tracker-module-using-views/#comments</comments>
		<pubDate>Sun, 21 Feb 2010 04:12:19 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Informatique]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Tracker]]></category>
		<category><![CDATA[Views]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=306</guid>
		<description><![CDATA[This can be pretty handy, especially if you would like to customize it a bit more and add other tabs. Here is a simple step-by-step tutorial: Disable Drupal&#8217;s original core tracker module. Install views. Go to Site Building &#62; Views and enable the tracker view. In the tracker view, go to the Page item, and rename it for [...]]]></description>
			<content:encoded><![CDATA[<p>This can be pretty handy, especially if you would like to customize it a bit more and add other tabs. Here is a simple step-by-step tutorial:<br />
<a title="An Icelandic Horse in the Wild" href="http://flickr.com/photos/95572727@N00/394713395" target="_blank"><img class="alignright" src="http://farm1.static.flickr.com/126/394713395_7851d0c366_m.jpg" alt="" width="240" height="169" /></a></p>
<ol>
<li>Disable Drupal&#8217;s original core tracker module.</li>
<li>Install <a href="http://drupal.org/project/views">views</a>.</li>
<li>Go to Site Building &gt; Views and enable the <em>tracker</em> view.</li>
<li>In the tracker view, go to the <em>Page </em>item, and rename it for example as &laquo;&nbsp;Recent posts&nbsp;&raquo; in <em>Basic settings &gt; Name </em>and <em>Basic settings &gt; Title</em>.  Make sure you click on override before saving, so that you keep the original configuration in Defaults.</li>
<li>In the <em>Page settings </em>fieldset, set <em>Path</em> to tracker/all and the type to <em>Default menu tab</em>. Set <em>Title</em> to Recent posts and <em>Weight</em> to -10. Click on <em>update</em> and when asked for the <em>Parent menu item</em>, select <em>Normal menu item</em>, and once again type Recent posts as <em>Title</em>. Click on <em>update</em>. We are done with this page type that will display the latest nodes modifications by all users. You can now enjoy the power of views and tweak the display to precisely show what you have in mind.</li>
<li>In the left drop-down list, select <em>Page </em>and click<em> Add display</em>. Rename it for example as &laquo;&nbsp;My recent posts&nbsp;&raquo; in Basic settings &gt; Name and Basic settings &gt; Title.  Make sure you click on override before saving, so that you keep a version of the original values.</li>
<li>In the Page settings fieldset, set Path to tracker/my and the type to Menu tab. Set Title to My recent posts and Weight to 1. Click on update.</li>
<li>In the <em>Arguments </em>fieldset, click on <em>Node: User posted or commented</em> (if it doesn&#8217;t exist, add it), and as the <em>Action to take if argument is not present</em>, select P<em>rovide default argument</em> &gt; <em>User ID from logged in user</em>.</li>
<li>That&#8217;s it! The link to your new tracker view is mysite.com/tracker; two tabs will be displayed just like in the original core module. You may for example create a menu item that links to this page.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2010/02/21/how-to-replace-drupal-cores-tracker-module-using-views/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>President Obama: &#8216;Never Again Will the American Taxpayer be Held Hostage by a Bank that is &#8216;Too Big to Fail&#8217;</title>
		<link>http://erwinmayer.com/2010/01/22/president-obama-never-again-will-the-american-taxpayer-be-held-hostage-by-a-bank-that-is-too-big-to-fail/</link>
		<comments>http://erwinmayer.com/2010/01/22/president-obama-never-again-will-the-american-taxpayer-be-held-hostage-by-a-bank-that-is-too-big-to-fail/#comments</comments>
		<pubDate>Fri, 22 Jan 2010 15:21:59 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Finance]]></category>
		<category><![CDATA[Loi]]></category>
		<category><![CDATA[Politique]]></category>
		<category><![CDATA[Société]]></category>
		<category><![CDATA[Barack obama]]></category>
		<category><![CDATA[Subprime mortgage crisis]]></category>
		<category><![CDATA[US government]]></category>
		<category><![CDATA[white house]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=302</guid>
		<description><![CDATA[It is good to hear that the White House has clearly understood how banks could divert from their original mission while still benefiting from the associated privileges. Now, it should not make us forget the big share of responsibility that the US government had by actively encouraging subprime mortgages. Obama&#8217;s objectives to reshape the financial [...]]]></description>
			<content:encoded><![CDATA[<p>It is good to hear that the White House has clearly understood how banks could divert from their original mission while still benefiting from the associated privileges. Now, it should not make us forget the big share of responsibility that the US government had by actively encouraging subprime mortgages.<br />
Obama&#8217;s objectives to reshape the financial industry are ambitious. If he succeeds, it will not radically change where and how banks are making money, but hopefully add more transparency and ensure that they are not playing against taxpayers and their own customers.</p>
<p><center><object width="480" height="300"><param name="movie" value="http://www.whitehouse.gov/sites/all/modules/swftools/shared/flash_media_player/player.swf"></param><param name="allowFullScreen" value="true"></param><param name="bgcolor" value="282828"></param><param name="allowscriptaccess" value="always"></param><param name="flashvars" value="file=http://www.whitehouse.gov/videos/2010/January/012110_DiplomaticRoom.m4v&#038;path_to_plugins=http://www.whitehouse.gov/sites/default/modules/wh_multimedia/wh_jwplayer/plugins&#038;path_to_player=http://www.whitehouse.gov/sites/all/modules/swftools/shared/flash_media_player&#038;skin=http://www.whitehouse.gov/sites/all/modules/swftools/shared/flash_media_player/skins/EOP_skin.swf&#038;captions_url=http://www.whitehouse.gov/sites/default/files/av_closedcaption/01212010_The_Volcker_Rule_for_Financial_Institutions.srt&#038;image=http://www.whitehouse.gov/sites/default/files/audio-video/video_thumbnail/P012110SA-0105-2.jpg&#038;controlbar=bottom&#038;frontcolor=AAAAAA&#038;plugins=http://www.whitehouse.gov/sites/default/modules/wh_multimedia/wh_jwplayer/plugins/privacy/privacy,http://www.whitehouse.gov/sites/default/modules/wh_multimedia/wh_jwplayer/plugins/hat/hat,http://www.whitehouse.gov/sites/default/modules/wh_multimedia/wh_jwplayer/plugins/share/share,http://www.whitehouse.gov/sites/default/modules/wh_multimedia/wh_jwplayer/plugins/captions/captions&#038;captions.file=http://www.whitehouse.gov/sites/default/files/av_closedcaption/01212010_The_Volcker_Rule_for_Financial_Institutions.srt"></param><embed src="http://www.whitehouse.gov/sites/all/modules/swftools/shared/flash_media_player/player.swf" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="300" flashvars="file=http://www.whitehouse.gov/videos/2010/January/012110_DiplomaticRoom.m4v&#038;path_to_plugins=http://www.whitehouse.gov/sites/default/modules/wh_multimedia/wh_jwplayer/plugins&#038;path_to_player=http://www.whitehouse.gov/sites/all/modules/swftools/shared/flash_media_player&#038;skin=http://www.whitehouse.gov/sites/all/modules/swftools/shared/flash_media_player/skins/EOP_skin.swf&#038;captions_url=http://www.whitehouse.gov/sites/default/files/av_closedcaption/01212010_The_Volcker_Rule_for_Financial_Institutions.srt&#038;image=http://www.whitehouse.gov/sites/default/files/audio-video/video_thumbnail/P012110SA-0105-2.jpg&#038;controlbar=bottom&#038;frontcolor=AAAAAA&#038;plugins=http://www.whitehouse.gov/sites/default/modules/wh_multimedia/wh_jwplayer/plugins/privacy/privacy,http://www.whitehouse.gov/sites/default/modules/wh_multimedia/wh_jwplayer/plugins/hat/hat,http://www.whitehouse.gov/sites/default/modules/wh_multimedia/wh_jwplayer/plugins/share/share,http://www.whitehouse.gov/sites/default/modules/wh_multimedia/wh_jwplayer/plugins/captions/captions&#038;captions.file=http://www.whitehouse.gov/sites/default/files/av_closedcaption/01212010_The_Volcker_Rule_for_Financial_Institutions.srt&#038;stretching=fill&#038;menu=false"></embed></object></center></p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2010/01/22/president-obama-never-again-will-the-american-taxpayer-be-held-hostage-by-a-bank-that-is-too-big-to-fail/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Cloning objects with events in Visual Basic .NET</title>
		<link>http://erwinmayer.com/2009/10/18/cloning-object-with-events-in-visual-basic-net/</link>
		<comments>http://erwinmayer.com/2009/10/18/cloning-object-with-events-in-visual-basic-net/#comments</comments>
		<pubDate>Sun, 18 Oct 2009 00:50:35 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Informatique]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[Class]]></category>
		<category><![CDATA[Clone]]></category>
		<category><![CDATA[Cloning]]></category>
		<category><![CDATA[Deep copy]]></category>
		<category><![CDATA[Object copy]]></category>
		<category><![CDATA[Object-oriented programming]]></category>
		<category><![CDATA[Persistence]]></category>
		<category><![CDATA[Reflection]]></category>
		<category><![CDATA[Serialization]]></category>
		<category><![CDATA[Shallow copy]]></category>
		<category><![CDATA[Visual Basic.NET]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=289</guid>
		<description><![CDATA[The easiest way to clone an object (deep copy) in .NET is to use the serialization functions available: Though the performance is not very good, for occasional operations it will do the job perfectly. However, I was confronted to the following problem: what if there are events inside the class, to which other objects have [...]]]></description>
			<content:encoded><![CDATA[<p>The easiest way to clone an object (deep copy) in .NET is to use the serialization functions available:</p>
<pre class="brush: vb; title: ; notranslate">
    Public Shared Function CloneObject(ByVal obj As Object) As Object
        If Not obj Is Nothing Then
            Dim bf = New System.Runtime.Serialization.Formatters.Binary.BinaryFormatter()
            Dim fs = New System.IO.MemoryStream()
            bf.Serialize(fs, obj)
            fs.Seek(0, System.IO.SeekOrigin.Begin)
            Dim copy = CType(bf.Deserialize(fs), Object)
            fs.Close()
            Return copy
        Else
            Return Nothing
        End If
    End Function
</pre>
<p>Though the performance is not very good, for occasional operations it will do the job perfectly. However, I was confronted to the following problem: what if there are events inside the class, to which other objects have subscribed? I found <a href="http://www.codeproject.com/KB/vb/serializevbclasses.aspx">several methods</a> (and functions <img src='http://erwinmayer.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> ) on various places over the Internet; they basically were: </p>
<ul>
<li>Implement ISerializable yourself (meaning you have to update it each time you modify the class);</li>
<li>Disconnect from events (retrieved using Reflection), serialize the object, and then reconnect the events (I could not make this working properly);</li>
<li>Implement a serialization surrogate;</li>
<li>Implement your events in a separate class that is not serialized;</li>
<li>Implement your events in a C# base class.</li>
</ul>
<p>Plenty of potential solutions, but none of them was good enough for me. So I played around with Reflection and found something that nobody else might have done so far. For a cloning interface that does just a shallow copy, like what MemberwiseClone does, but without event, I wrote this:</p>
<pre class="brush: vb; title: ; notranslate">
    Public Function Clone() As Object Implements System.ICloneable.Clone
        Dim cl = New MyClassName(Me)
        'Here we don't capture events, only normal fields, including non public ones (private, protected...)
        Dim FldInfos() As Reflection.FieldInfo = Me.GetType.GetFields(Reflection.BindingFlags.Instance Or Reflection.BindingFlags.Public Or Reflection.BindingFlags.NonPublic)
        For Each FldInfo As Reflection.FieldInfo In FldInfos
            FldInfo.SetValue(cl, FldInfo.GetValue(Me)) 'For serialization purpose we just need not to have events, so no need to perform a deep copy of the fields.
        Next
        Return cl
    End Function
</pre>
<p>Now if one of your class member is an object with events (or if you want to perform a deep copy), you should call its clone method (to be implemented the same way) when performing the FldInfo.SetValue, like this:</p>
<pre class="brush: vb; title: ; notranslate">
        For Each FldInfo As Reflection.FieldInfo In FldInfos
            If FldInfo.Name &lt;&gt; &quot;MyObjectWithEvents&quot; Then
                FldInfo.SetValue(cl, FldInfo.GetValue(Me)) 'It is not really necessary to clone a possible reference class member here for serialization purpose, we just need not to have events in the clone
            Else
                FldInfo.SetValue(cl, Me.MyObjectWithEvents.Clone())
            End If
        Next
</pre>
<p>If you have an object that is for example a dictionary of objects with events, you can call this:</p>
<pre class="brush: vb; title: ; notranslate">
        For Each FldInfo As Reflection.FieldInfo In FldInfos
            If FldInfo.Name &lt;&gt; &quot;MyObjectsWithEventsDictionary&quot; Then
                FldInfo.SetValue(cl, MyLib.CloneObject(FldInfo.GetValue(Me)))
            Else
                FldInfo.SetValue(cl, Me.MyObjectsWithEventsDictionary.ToDictionary(Of String, MyObjectWithEvent)(Function(entry) entry.Key, Function(entry) CType(entry.Value.Clone(), MyObjectWithEvent)))
            End If
        Next
</pre>
<p>Finally, if you intend to use the Clone interface to serialize objects, you should make sure you don&#8217;t include class members marked as NonSerialized():</p>
<pre class="brush: vb; title: ; notranslate">
        For Each FldInfo As Reflection.FieldInfo In FldInfos
            If Not FldInfo.IsNotSerialized Then
                FldInfo.SetValue(cl, FldInfo.GetValue(Me))
            End If
        Next
</pre>
<p>I hope this will give you an insight to build something more tailored to your needs. There are other optimizations I can already think of, such as implementing a recursive Clone function where you would just put your original object and a virgin instance of it as a reference, and get a perfect serializable deep copy, whatever the class members and sub class members are! This could become a universal Clone method&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2009/10/18/cloning-object-with-events-in-visual-basic-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to sort WordPress posts by modified date instead of published date?</title>
		<link>http://erwinmayer.com/2009/10/18/how-to-sort-wordpress-posts-by-modified-date-instead-of-published-date/</link>
		<comments>http://erwinmayer.com/2009/10/18/how-to-sort-wordpress-posts-by-modified-date-instead-of-published-date/#comments</comments>
		<pubDate>Sun, 18 Oct 2009 00:05:30 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Informatique]]></category>
		<category><![CDATA[Programmation]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=287</guid>
		<description><![CDATA[Here is the simple solution. Simply use this: before where the Loop checks for posts: It basically adds a condition to the Loop. Enjoy!]]></description>
			<content:encoded><![CDATA[<p>Here is the simple solution. Simply use this:</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php query_posts($query_string . '&amp;orderby=modified&amp;order=desc'); ?&gt;
</pre>
<p>before where <a href="http://codex.wordpress.org/The_Loop">the Loop</a> checks for posts:</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php /* If there are any posts: */
if (have_posts()) ...
?&gt;
</pre>
<p>It basically adds a condition to the Loop. Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2009/10/18/how-to-sort-wordpress-posts-by-modified-date-instead-of-published-date/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Human rights: are they absolute?</title>
		<link>http://erwinmayer.com/2009/10/11/human-rights-are-they-absolute/</link>
		<comments>http://erwinmayer.com/2009/10/11/human-rights-are-they-absolute/#comments</comments>
		<pubDate>Sun, 11 Oct 2009 17:43:33 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Développement personnel]]></category>
		<category><![CDATA[EMF]]></category>
		<category><![CDATA[Loi]]></category>
		<category><![CDATA[Philosophie]]></category>
		<category><![CDATA[Politique]]></category>
		<category><![CDATA[Société]]></category>
		<category><![CDATA[Civilization]]></category>
		<category><![CDATA[Culture]]></category>
		<category><![CDATA[Erwin Mayer Foundation]]></category>
		<category><![CDATA[Human rights]]></category>
		<category><![CDATA[Law]]></category>
		<category><![CDATA[Religion/Belief]]></category>
		<category><![CDATA[Rights]]></category>
		<category><![CDATA[Society]]></category>
		<category><![CDATA[United Nations]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=282</guid>
		<description><![CDATA[Undoubtedly, human rights represent a way for people to feel safer in a naturally troubled world. This is why the following clip cannot be deemed as harmful and the Erwin Mayer Foundation eagerly supports the message it conveys: However, except for those who derive them from their religion, mankind shall not forget that these rights [...]]]></description>
			<content:encoded><![CDATA[<p>Undoubtedly, human rights represent a way for people to feel safer in a naturally troubled world. This is why the following clip cannot be deemed as harmful and the Erwin Mayer Foundation eagerly supports the message it conveys:</p>
<p><center><object width="560" height="340"><param name="movie" value="http://www.youtube.com/v/Ot8YGiRtB7U&#038;hl=fr&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/Ot8YGiRtB7U&#038;hl=fr&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"></embed></object></center></p>
<p>However, except for those who derive them from their religion, mankind shall not forget that these rights do not arise from anything inherent to being human. No absolute principle might be invoked to justify them; though it obviously makes them less appealing and defendable, they are just a contract which clauses have been drafted by a self-proclaimed majority of human societies (who refer to themselves as the United Nations Organizations), and enforced by all those who believe it can improve the common good.</p>
<p>Therefore, it is important to remain careful on any modification of its arbitrary components. In the the video (1:53), I was particularly suprised to read &laquo;&nbsp;Copyright&nbsp;&raquo; as a human right (item 27). History shows that people can create and share without such a right. Some human rights are dependent on each other and on the context they target, hence you could easily build alternative civilization models with different rights deemed fundamental. &laquo;&nbsp;Social security&nbsp;&raquo; is another example: beyond the definition problem, what if a civilization has found a better or alternative approach to tackle the same problem, or has not actually considered it as a problem?</p>
<p>Most importantly, human rights, simply because they are <em>rights</em>, have a meaning only when applied to mankind as a group of consenting individuals. A single human, or even a single family, could not incorporate the concept of <em>right</em>, let alone <em>human right</em>, into their understanding of the world.</p>
<p>Human rights make sense because we live in a society, and this is probably the best proof of their not being inherent to each of us. We have the power to define what they are to make our world better, for they are the root, if not the rules, of a civilization.</p>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2009/10/11/human-rights-are-they-absolute/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Réchauffement climatique : obscurité ou obscurantisme ?</title>
		<link>http://erwinmayer.com/2009/09/30/rechauffement-climatique-obscurite-ou-obscurantisme/</link>
		<comments>http://erwinmayer.com/2009/09/30/rechauffement-climatique-obscurite-ou-obscurantisme/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 14:03:09 +0000</pubDate>
		<dc:creator>Erwin</dc:creator>
				<category><![CDATA[Environnement]]></category>
		<category><![CDATA[Physique]]></category>
		<category><![CDATA[Politique]]></category>
		<category><![CDATA[Société]]></category>
		<category><![CDATA[Dogme]]></category>
		<category><![CDATA[l'académie des sciences]]></category>
		<category><![CDATA[Réchuaffement climatique]]></category>
		<category><![CDATA[refroidissement climatique]]></category>
		<category><![CDATA[théorie scientifique]]></category>
		<category><![CDATA[Vincent Courtillot]]></category>

		<guid isPermaLink="false">http://erwinmayer.com/?p=276</guid>
		<description><![CDATA[La complaisance dans un consensus mou n&#8217;est pas propice à l&#8217;établissement d&#8217;une vérité scientifique. Qu&#8217;on l&#8217;oublie, et c&#8217;est bientôt tout l&#8217;édifice qui s&#8217;écroule. Le professeur Vincent Courtillot, géologue physicien et membre de l&#8217;académie des sciences, s&#8217;est incidemment intéressé de plus près au réchauffement climatique. Il vient au secours de la climatologie, en apportant aux théories [...]]]></description>
			<content:encoded><![CDATA[<p>La complaisance dans un consensus mou n&#8217;est pas propice à l&#8217;établissement d&#8217;une vérité scientifique. Qu&#8217;on l&#8217;oublie, et c&#8217;est bientôt tout l&#8217;édifice qui s&#8217;écroule.</p>
<p>Le professeur Vincent Courtillot, géologue physicien et membre de l&#8217;académie des sciences, s&#8217;est incidemment intéressé de plus près au réchauffement climatique. Il vient au secours de la climatologie, en apportant aux théories à la mode une réfutabilité aussi essentielle que scandaleusement qualifiée d&#8217;hérésie par les médias, les politiciens, mais surtout ceux-là mêmes qui se prétendent en être les plus illustres experts.</p>
<p>Il est temps que la masse bascule. Les leaders d&#8217;opinion suivront. Il n&#8217;existe pas d&#8217;intérêt matériel pour une théorie ou pour une autre, simplement une égotisation massive des enjeux.<br />
Les marchés boursiers nous y ont habitué : malheur à celui qui défie la tendance avant que tout le monde s&#8217;accorde à reconnaître que le roi est nu. Nous ignorons quand la bulle explosera, notre seule certitude est qu&#8217;une théorie coupée de ses fondements scientifiques finit toujours par tirer sa révérence. Il n&#8217;y aura pas de choc, pas de ruines, pas de victimes. La masse ne s&#8217;enrichit pas à cultiver son irréaliste culpabilité ; en devenant sa propre victime, elle appauvrit sa capacité à résoudre ses véritables problèmes.</p>
<p>Dans cette <a href="http://www.js.univ-nantes.fr/14918022/0/fiche___pagelibre/&#038;RH=JS_FR1">conférence donnée à l&#8217;Université de Nantes</a>, Vincent Courtillot tente d&#8217;apporter une nouvelle lecture aux données brutes dont nous disposons, et qui ont été malmenées par des experts auto-proclamés pendant de si longues années. Loin du sensationnalisme d&#8217;un Al Gore ou de <a href="http://www.channel4.com/science/microsites/G/great_global_warming_swindle/">Channel 4</a>, c&#8217;est ici un discours que l&#8217;on peut saluer tant pour sa rigueur que pour sa clarté. En un mot, une contribution véritablement constructive au débat, sans polémique. Ceux qui auront besoin de plus de détails pourront étancher leur curiosité en consultant les nombreuses références sur la page professionnelle de <a href="http://www.ipgp.fr/~courtil/">Vincent Courtillot</a>.</p>
<p><script type="text/javascript">
function portlet_showhide(id) {
        if(document.getElementById(id).style.display == 'none') {
                document.getElementById(id).style.display = 'block';
                document.getElementById("label_"+id).innerHTML = 'cacher';
        } else {
                document.getElementById(id).style.display = 'none';
                document.getElementById("label_"+id).innerHTML = 'ajouter &agrave; votre site';
        }
}
</script></p>
<ul>
<li>Ecouter la conférence (durée : 51 min.)&nbsp;:</li>
<p><center>&nbsp;<object type="application/x-shockwave-flash" width="240" height="20" data="http://ressources.univ-nantes.fr/campo/mp3/mp3_player/dewplayer-vol.swf?mp3=http://videos-campo.univ-nantes.fr/mp3/2009/07/conf_01.mp3 "><param name="movie" value="http://ressources.univ-nantes.fr/campo/mp3/mp3_player/dewplayer-vol.swf?mp3=http://videos-campo.univ-nantes.fr/mp3/2009/07/conf_01.mp3 " /></object><br />
<b><a style="color:#749333;text-decoration:underline;cursor:pointer;font-weight:bold;"  onclick="window.open(this.href);return false;" href="http://videos-campo.univ-nantes.fr/mp3/2009/07/conf_01.mp3 ">t&eacute;l&eacute;charger ce mp3</a>&nbsp;|<span id="label_82" style="color:#749333;text-decoration:underline;cursor:pointer;" onclick="portlet_showhide(82)">ajouter &agrave; votre site</span></b>
<div id="82" style="display:none;"><textarea  cols=85 rows=5><object type="application/x-shockwave-flash" width="240" height="20" data="http://ressources.univ-nantes.fr/campo/mp3/mp3_player/dewplayer-vol.swf?mp3=http://videos-campo.univ-nantes.fr/mp3/2009/07/conf_01.mp3 "><param name="movie" value="http://ressources.univ-nantes.fr/campo/mp3/mp3_player/dewplayer-vol.swf?mp3=http://videos-campo.univ-nantes.fr/mp3/2009/07/conf_01.mp3 " /></object></textarea></div>
<p></center></p>
<p></p>
<li>Visionner la conférence (durée : 51 min.)&nbsp;:</li>
<p><center><object type="application/x-shockwave-flash" width="320" height="240" data="http://ressources.univ-nantes.fr/campo/flv_player/neolao1.6/player_flv_maxi-aa.swf?configxml=http://ressources.univ-nantes.fr/campo/flv_player/neolao1.6/flv_config.xml&#038;flv=http://videos-campo.univ-nantes.fr/pam/2009/07/js2009_confs/01-courtillot.flv"><param name="movie" value="http://ressources.univ-nantes.fr/campo/flv_player/player_flv.swf?configxml=http://ressources.univ-nantes.fr/campo/flv_player/neolao1.6/flv_config.xml&#038;flv=http://videos-campo.univ-nantes.fr/pam/2009/07/js2009_confs/01-courtillot.flv" /><param name="skin" value="http://videos-campo.univ-nantes.fr/flv_player/player_flv_skin003.jpg"/><param name="width" value="320" /><param name="height" value="240" /><param name="wmode" value="transparent" /><param name="allowFullScreen" value="true" /></object><br />
<span id="label_10" style="color:#749333;text-decoration:underline;cursor:pointer;font-weight:bold;" onclick="portlet_showhide(10)">ajouter &agrave; votre site</span>
<div id="10" style="display:none;"><textarea  cols=64 rows=5><object type="application/x-shockwave-flash" width="320" height="240" data="http://ressources.univ-nantes.fr/campo/flv_player/neolao1.6/player_flv_maxi-aa.swf?configxml=http://ressources.univ-nantes.fr/campo/flv_player/neolao1.6/flv_config.xml&#038;flv=http://videos-campo.univ-nantes.fr/pam/2009/07/js2009_confs/01-courtillot.flv"><param name="movie" value="http://ressources.univ-nantes.fr/campo/flv_player/player_flv.swf?configxml=http://ressources.univ-nantes.fr/campo/flv_player/neolao1.6/flv_config.xml&#038;flv=http://videos-campo.univ-nantes.fr/pam/2009/07/js2009_confs/01-courtillot.flv" /><param name="skin" value="http://videos-campo.univ-nantes.fr/flv_player/player_flv_skin003.jpg"/><param name="width" value="320" /><param name="height" value="240" /><param name="wmode" value="transparent" /><param name="allowFullScreen" value="true" /></object><br /></textarea></div>
<p></center>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://erwinmayer.com/2009/09/30/rechauffement-climatique-obscurite-ou-obscurantisme/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
<enclosure url="http://videos-campo.univ-nantes.fr/mp3/2009/07/conf_01.mp3" length="70869159" type="audio/mpeg" />
		</item>
	</channel>
</rss>

