<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">

<channel>
	<title>Your-Mix.Podcasting/Broadcasting</title>
	<link>http://www.your-mix.net/</link>
	<description></description>
	<language>fr</language>




<item>
		<title>Externaliser le JavaScript et les CSS</title>
		<link>http://www.your-mix.net/blog/developpement/externaliser-le-javascript-et-les-css</link>
		<guid isPermaLink="true">http://www.your-mix.net/blog/developpement/externaliser-le-javascript-et-les-css</guid>
		<dc:date>2010-04-07T11:02:55Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>MAXymeum Prod.</dc:creator>

<category domain="http://your-mix.net/blog/developpement/">D&#233;veloppement</category>


		<description>&quot;Pr&#233;c&#233;demment dans la s&#233;rie des performances sur le Web&quot; : je vous avais expliqu&#233; qu'il est d&#233;conseill&#233; d'utiliser les expressions CSS parfois pratiques mais souvent trop lourdes en recalcul. Parlons maintenant de la r&#232;gle num&#233;ro 8 : externaliser le JavaScript et les CSS. Avant de vous int&#233;resser au domaine des performances sur le Web, vous avez probablement - comme moi - adopt&#233; le r&#233;flexe de produire un code de qualit&#233; ; sinon, au nom de l'Internet, faites le ! Cette g&#233;n&#233;ralit&#233; vaut pour bien des (...)

-
&lt;a href="http://www.your-mix.net/blog/developpement/" rel="directory"&gt;D&#233;veloppement&lt;/a&gt;


		</description>


 <content:encoded>&lt;div class='rss_chapo'&gt;&lt;p class=&quot;spip&quot;&gt;&quot;&lt;a href=&quot;http://www.your-mix.net/blog/developpement/eviter-les-expressions-css/&quot; class='spip_out'&gt;Pr&#233;c&#233;demment&lt;/a&gt;&lt;i class=&quot;spip&quot;&gt; dans la s&#233;rie des performances sur le Web&lt;/i&gt;&quot; : je vous avais expliqu&#233; qu'il est d&#233;conseill&#233; &lt;strong class=&quot;spip&quot;&gt;d'utiliser les expressions CSS parfois pratiques mais souvent trop lourdes en recalcul&lt;/strong&gt;. Parlons maintenant de &lt;a href=&quot;http://developer.yahoo.com/performance/rules.html#external&quot; class='spip_out' rel='external'&gt;la r&#232;gle num&#233;ro 8&lt;/a&gt; : &lt;strong class=&quot;spip&quot;&gt;externaliser le JavaScript et les CSS&lt;/strong&gt;.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;p class=&quot;spip&quot;&gt;Avant de vous int&#233;resser au domaine des &lt;strong class=&quot;spip&quot;&gt;performances sur le Web&lt;/strong&gt;, vous avez probablement - comme moi - adopt&#233; le r&#233;flexe de produire un code de qualit&#233; ; sinon, au nom de l'Internet, faites le ! Cette g&#233;n&#233;ralit&#233; vaut pour bien des points de vue : &lt;strong class=&quot;spip&quot;&gt;accessibilit&#233;, r&#233;f&#233;rencement, performance, maintenance&lt;/strong&gt;, etc.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Concr&#232;tement, au-del&#224; d'un code bien structur&#233;, du retrait d'un grand nombre de balises trop souvent inutiles, du respect de la s&#233;mantique et des standards, vous devez prendre l'habitude de &lt;strong class=&quot;spip&quot;&gt;s&#233;parer vos fichiers suivant leurs types&lt;/strong&gt; : le HTML ne doit donc contenir que du HTML, idem pour le JavaScript et les CSS. Par la suite, les trois seront li&#233;s par un appel du CSS dans &lt;strong class=&quot;spip&quot;&gt;head&lt;/strong&gt; &lt;a href=&quot;http://www.your-mix.net/blog/developpement/appeler-les-css-tres-tot/&quot; class='spip_out'&gt;de cette fa&#231;on&lt;/a&gt; : &lt;em class=&quot;code&quot;&gt;&lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;chemin/fichier.css&quot;/&gt;&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;/em&gt; et par un appel du JavaScript juste avant la fermeture du &lt;strong class=&quot;spip&quot;&gt;body&lt;/strong&gt; &lt;a href=&quot;http://www.your-mix.net/blog/developpement/et-le-javascript-tres-tard/&quot; class='spip_out'&gt;de cette mani&#232;re&lt;/a&gt; : &lt;em class=&quot;code&quot;&gt;&lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;&lt;script type=&quot;text/javascript&quot; src=&quot;chemin/fichier.js&quot;&gt;&lt;/script&gt;&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;/em&gt;&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Comprenez par l&#224; que, dans la mesure du possible, &lt;strong class=&quot;spip&quot;&gt;on &#233;vitera avec acharnement les styles et &#233;v&#232;nements en ligne&lt;/strong&gt;, soit une horreur du type : &lt;em class=&quot;code&quot;&gt;&lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;&lt;a href=&quot;#&quot; style=&quot;display:inline-block; padding:10px; background:#f00; border:1px solid #0f0; color:#00f&quot; onclick=&quot;javascript:alert('En fait mon lien est un fake !'); return false&quot;&gt;Mon beau lien magnifique !&lt;/a&gt;&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;/em&gt; dans ce cas, le style et l'&#233;v&#232;nement pourront facilement &#234;tre d&#233;plac&#233;s dans des fichiers ad&#233;quats tandis qu'un simple attribut &lt;strong class=&quot;spip&quot;&gt;id&lt;/strong&gt; en assurera la liaison.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;On notera alors dans le HTML : &lt;em class=&quot;code&quot;&gt;&lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;&lt;a href=&quot;#&quot; id=&quot;fake&quot;&gt;Mon beau lien magnifique !&lt;/a&gt;&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;/em&gt; Dans le CSS : &lt;em class=&quot;code&quot;&gt;&lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;#fake{ display:inline-block; padding:10px; background:#f00; border:1px solid #0f0; color:#00f }&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;/em&gt; Enfin dans le JS : &lt;em class=&quot;code&quot;&gt;&lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;document.getElementById('fake').onclick = function(){ alert('En fait mon lien est un fake !'); return false };&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;/em&gt;&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Bon, tout ceci est bien beau mais en fait &lt;strong class=&quot;spip&quot;&gt;pourquoi&lt;/strong&gt; ? Prenons l'exemple d'une maison : il faut voir le HTML comme ses fondations, les CSS comme ses peintures ou sa d&#233;coration et le JavaScript comme l'&#233;lectricit&#233; (&#231;a n'est th&#233;oriquement pas vital mais apporte du confort). De l&#224;, on se rend bien compte que &lt;strong class=&quot;spip&quot;&gt;seul le HTML (r&#233;el contenu) est pleinement important&lt;/strong&gt;, le reste est une sur-couche agr&#233;able sans laquelle votre site se doit d'&#234;tre pleinement fonctionnel (structuration du code, respect de la s&#233;mantique et des standards W3C obligent). Cette s&#233;paration est naturellement simple &#224; comprendre pour les CSS ; pour le JavaScript, on parlera &lt;a href=&quot;http://www.journaldunet.com/developpeur/tutoriel/dht/070119-js-unobstrusive-javascript-non-intrusif.shtml&quot; class='spip_out' rel='external'&gt;d'intrusivit&#233;&lt;/a&gt;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Mais revenons au sujet des performances, j'avais parl&#233; de &lt;a href=&quot;http://www.your-mix.net/blog/developpement/faire-moins-de-requetes-http/&quot; class='spip_out'&gt;r&#233;duire le nombre de requ&#234;tes HTTP&lt;/a&gt;, pour ce faire il est certes pr&#233;f&#233;rable de regrouper tous vos fichiers du m&#234;me type en un seul quand cela est possible ; mais vous avez bien lu : &quot;&lt;strong class=&quot;spip&quot;&gt;du m&#234;me type&lt;/strong&gt;&quot;. De ce fait, vous profiterez du cache. D&#233;localiser vos styles et scripts dans des fichiers d&#233;di&#233;s &lt;strong class=&quot;spip&quot;&gt;d&#233;croit remarquablement le poids du HTML&lt;/strong&gt; qui chargera donc plus vite ; pour le reste, le cache r&#232;glera le probl&#232;me des requ&#234;tes HTTP ind&#233;sirables pour les prochaines visites. D'une pierre deux coups !&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;&lt;strong class=&quot;spip&quot;&gt;Malheureusement&lt;/strong&gt;, ceci n'est pas une science exacte. En th&#233;orie, pour des pages sur lesquelles les visiteurs n'auront pas &#224; revenir plusieurs fois, le cache se r&#233;v&#232;lera alors inutile et il vaudra mieux privil&#233;gier la disposition en ligne (th&#233;oriquement car ce type de code est difficile &#224; maintenir). Il est aussi possible de &lt;strong class=&quot;spip&quot;&gt;combiner les deux techniques&lt;/strong&gt; comme le pr&#233;cise Yahoo : profiter des quelques bienfaits de la disposition en ligne &lt;strong class=&quot;spip&quot;&gt;et&lt;/strong&gt; t&#233;l&#233;charger dynamiquement des fichiers externes apr&#232;s la fin du chargement de la page.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;&lt;strong class=&quot;spip&quot;&gt;Conclusion :&lt;/strong&gt; s&#233;parer vos types de fichiers est souvent la meilleure solution.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Cordialement.&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		
		<pubDate>Wed, 07 Apr 2010 13:02:55 +0200</pubDate>
	</item>
<item>
		<title>Br&#232;ves et petite mise au point</title>
		<link>http://www.your-mix.net/blog/annonces/article/breves-et-petite-mise-au-point</link>
		<guid isPermaLink="true">http://www.your-mix.net/blog/annonces/article/breves-et-petite-mise-au-point</guid>
		<dc:date>2010-03-29T09:11:18Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Sebastien P.</dc:creator>

<category domain="http://your-mix.net/blog/annonces/">Annonces</category>


		<description>Bonjour, me revoici en mode blogueur pour vous apporter quelques nouvelles sur le futur du projet Your-Mix. Certaines sont bonnes, d'autres moins ; &#224; vrai dire tout d&#233;pend du point de vue. Du mien, il s'agit d'un simple tournant, d'une &#233;volution dans mes go&#251;ts ; une toute nouvelle naissance pour Your-Mix en quelque sorte ... Commen&#231;ons par quelques petites br&#232;ves : Concernant le retour du module de commentaires du blog (ainsi que de celui des statistiques qui affiche toujours z&#233;ro), il se fera en (...)

-
&lt;a href="http://www.your-mix.net/blog/annonces/" rel="directory"&gt;Annonces&lt;/a&gt;


		</description>


 <content:encoded>&lt;div class='rss_chapo'&gt;&lt;p class=&quot;spip&quot;&gt;Bonjour, me revoici en mode blogueur pour vous apporter quelques nouvelles sur &lt;strong class=&quot;spip&quot;&gt;le futur du projet Your-Mix&lt;/strong&gt;. Certaines sont bonnes, d'autres moins ; &#224; vrai dire tout d&#233;pend du point de vue. Du mien, il s'agit d'un simple tournant, d'une &#233;volution dans mes go&#251;ts ; une toute nouvelle naissance pour &lt;strong class=&quot;spip&quot;&gt;Your-Mix&lt;/strong&gt; en quelque sorte ...&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;p class=&quot;spip&quot;&gt;&lt;u&gt;Commen&#231;ons par &lt;strong class=&quot;spip&quot;&gt;quelques petites br&#232;ves&lt;/strong&gt; :&lt;/u&gt;&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Concernant le retour du &lt;strong class=&quot;spip&quot;&gt;module de commentaires&lt;/strong&gt; du blog (ainsi que de celui des &lt;strong class=&quot;spip&quot;&gt;statistiques&lt;/strong&gt; qui affiche toujours z&#233;ro), il se fera en m&#234;me temps que le passage au &lt;a href=&quot;http://www.your-mix.net/blog/annonces/article/nouveau-design-du-site-a-venir/&quot; class='spip_out'&gt;nouveau design&lt;/a&gt;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Pour ce qui est du &lt;strong class=&quot;spip&quot;&gt;passage au nouveau design&lt;/strong&gt;, je n'ai malheureusement toujours pas de date pr&#233;cise &#224; avancer mais peut-&#234;tre que je posterai quelques &lt;strong class=&quot;spip&quot;&gt;captures d'&#233;cran&lt;/strong&gt; sur &lt;a href=&quot;http://twitter.com/yourmix&quot; class='spip_out' rel='external'&gt;le Twitter&lt;/a&gt; ou &lt;a href=&quot;http://twitter.com/maxymeumprod&quot; class='spip_out' rel='external'&gt;mon Twitter&lt;/a&gt; afin de vous faire patienter.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Ma s&#233;rie d'articles sur les &lt;strong class=&quot;spip&quot;&gt;performances du Web&lt;/strong&gt; vous int&#233;resse beaucoup, tout comme moi ; sachez-le, je suis de retour en mode blogueur, attendez vous &#224; du contenu dans les prochains jours !&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;&lt;u&gt;Ceci fait, passons maintenant aux &lt;strong class=&quot;spip&quot;&gt;choses s&#233;rieuses&lt;/strong&gt; :&lt;/u&gt;&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Je suis de tr&#232;s pr&#232;s les &#233;volutions du Web depuis maintenant une dizaine d'ann&#233;es durant lesquelles j'ai beaucoup appris mais face aux r&#233;els et assez r&#233;cents changements qu'apportent le &lt;strong class=&quot;spip&quot;&gt;HTML 5&lt;/strong&gt;, les &lt;strong class=&quot;spip&quot;&gt;CSS 3&lt;/strong&gt; et l'&lt;strong class=&quot;spip&quot;&gt;Internet mobile&lt;/strong&gt; mes int&#233;r&#234;ts se sont recentr&#233;s. Toutes ces technologies sont prometteuses, tellement que j'ai eu envie de m'y plonger enti&#232;rement. Le mod&#232;le que proposait alors &lt;strong class=&quot;spip&quot;&gt;Your-Mix&lt;/strong&gt; (cr&#233;ation, gestion et promotion de Podcasts musicaux) me parait aujourd'hui avoir un peu mal vieillit. Cependant, il contient quelques bonnes id&#233;es qui m'ont convaincu de ne pas l'abandonner totalement. L'ancien &lt;strong class=&quot;spip&quot;&gt;Your-Mix&lt;/strong&gt; (Podcasting/Broadcasting) est donc &lt;strong class=&quot;spip&quot;&gt;officiellement en pause&lt;/strong&gt; pour une dur&#233;e ind&#233;termin&#233;e (probablement le temps qu'il faudra aux navigateurs modernes pour supporter pleinement l'audio sous HTML 5).&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;&#192; quoi devez-vous donc vous attendre ? Eh bien c'est simple, &lt;strong class=&quot;spip&quot;&gt;Your-Mix&lt;/strong&gt; - dont le blog seulement &#233;tait accessible jusqu'alors - &lt;strong class=&quot;spip&quot;&gt;deviendra un blog &#224; part enti&#232;re&lt;/strong&gt;. Un blog abordant les m&#234;me sujets qu'aujourd'hui mais de mani&#232;re plus pouss&#233;e avec une place certaine pour des exemples de code. &lt;strong class=&quot;spip&quot;&gt;Your-Mix&lt;/strong&gt; sera aussi le portail d'acc&#232;s &#224; mes projets actuels tels que &lt;a href=&quot;http://code.google.com/p/ymslider/&quot; class='spip_out' rel='external'&gt;YMslider&lt;/a&gt;, YMjsonp (traitement des r&#233;sultats obtenus via les API &#224; la mode et JSONP), &lt;a href=&quot;http://sebastienp.net/&quot; class='spip_out' rel='external'&gt;sebastienp.net&lt;/a&gt; (sorte de CV et vitrine jQuery/performances &lt;strong class=&quot;spip&quot;&gt;encore en construction&lt;/strong&gt;) &lt;strong class=&quot;spip&quot;&gt;et surtout YMiNgin&lt;/strong&gt; : imaginez cr&#233;er des interfaces utilisateur pour vos applications Web et natives iPhone/iPad en HTML 5/CSS 3, sans rien coder et surtout enti&#232;rement personnalisables ! On aura l'occasion d'en reparler dans ces pages rassurez-vous.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Voil&#224;, je pense n'avoir rien oubli&#233;, j'esp&#232;re aussi ne pas trop vous d&#233;cevoir m&#234;me si &lt;strong class=&quot;spip&quot;&gt;YMiNgin&lt;/strong&gt; devrait plut&#244;t vous mettre l'eau &#224; la bouche. &lt;strong class=&quot;spip&quot;&gt;Je suis de retour,&lt;/strong&gt; avec beaucoup de bonnes choses et donc beaucoup &#224; raconter !&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Cordialement.&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		
		<pubDate>Mon, 29 Mar 2010 11:11:18 +0200</pubDate>
	</item>
<item>
		<title>Nouveau design du site &#224; venir</title>
		<link>http://www.your-mix.net/blog/annonces/nouveau-design-du-site-a-venir</link>
		<guid isPermaLink="true">http://www.your-mix.net/blog/annonces/nouveau-design-du-site-a-venir</guid>
		<dc:date>2009-11-21T09:24:31Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Sebastien P.</dc:creator>

<category domain="http://your-mix.net/blog/annonces/">Annonces</category>


		<description>Bonjour, comme vous avez-pu une nouvelle fois le constater, le blog est rest&#233; de nombreuses semaines en inactivit&#233;, je me devais donc d'&#233;claircir un certain nombre de points ne serait-ce qu'au regard des abonn&#233;s &#224; mon flux RSS qui me font tout de m&#234;me confiance, merci &#224; vous ! Alors voil&#224;, ayant d&#233;cid&#233; d'ouvrir ma future plateforme Your-Mix &#224; tout Podcasteur et non plus seulement aux DJs, le design actuel n'&#233;tait pas suffisamment extensible pour me permettre de mener &#224; bien ce changement d'orientation. Il (...)

-
&lt;a href="http://www.your-mix.net/blog/annonces/" rel="directory"&gt;Annonces&lt;/a&gt;


		</description>


 <content:encoded>&lt;div class='rss_chapo'&gt;&lt;p class=&quot;spip&quot;&gt;Bonjour, comme vous avez-pu &lt;strong class=&quot;spip&quot;&gt;une nouvelle fois&lt;/strong&gt; le constater, &lt;strong class=&quot;spip&quot;&gt;le blog est rest&#233;&lt;/strong&gt; de nombreuses semaines &lt;strong class=&quot;spip&quot;&gt;en inactivit&#233;&lt;/strong&gt;, je me devais donc d'&#233;claircir un certain nombre de points ne serait-ce qu'au regard des abonn&#233;s &#224; mon flux RSS qui me font tout de m&#234;me confiance, merci &#224; vous !&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;p class=&quot;spip&quot;&gt;Alors voil&#224;, ayant d&#233;cid&#233; d'ouvrir ma future plateforme &lt;strong class=&quot;spip&quot;&gt;Your-Mix&lt;/strong&gt; &#224; tout Podcasteur et non plus seulement aux DJs, &lt;strong class=&quot;spip&quot;&gt;le design actuel n'&#233;tait pas suffisamment extensible&lt;/strong&gt; pour me permettre de mener &#224; bien ce changement d'orientation. Il m'a alors fallu &lt;strong class=&quot;spip&quot;&gt;travailler d'arrache pied sur une nouvelle version du site&lt;/strong&gt; sans pour autant avoir assez de moments de libres pour la sortir rapidement.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Qui plus est, j'ai d&#233;velopp&#233; plusieurs fonctionnalit&#233;s sympathiques &#224; l'aide du &lt;strong class=&quot;spip&quot;&gt;framework JavaScript&lt;/strong&gt; &lt;a href=&quot;http://jquery.com/&quot; class='spip_out' rel='external'&gt;jQuery&lt;/a&gt; qui - en plus du nouveau Web design m'ont pris &#233;norm&#233;ment de temps, je n'ai d'ailleurs toujours pas termin&#233; mais vous pourrez par exemple jeter un oeil &#224; &lt;strong class=&quot;spip&quot;&gt;mon plugin YMslider&lt;/strong&gt; &lt;a href=&quot;http://code.google.com/p/ymslider/&quot; class='spip_out' rel='external'&gt;sur Google Code&lt;/a&gt; (plugin de d&#233;filement de contenu) qui sera mis &#224; jour en version 1.0.5 dans les heures &#224; venir.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Bref, &lt;strong class=&quot;spip&quot;&gt;Your-Mix n'est pas mort, je n'ai pas non plus d&#233;cid&#233; d'abandonner ce Blog ainsi que les r&#232;gles de performances YSlow&lt;/strong&gt;. Vous devrez simplement me faire confiance et attendre encore un peu.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;&lt;strong class=&quot;spip&quot;&gt;Je vous en remercie d'avance&lt;/strong&gt; d'autant que vous &#234;tes de plus en plus nombreux chaque jour &#224; vous abonner &#224; mon flux RSS alors que je ne poste rien de nouveau depuis des semaines.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Cordialement.&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		
		<pubDate>Sat, 21 Nov 2009 10:24:31 +0100</pubDate>
	</item>
<item>
		<title>Stage et nouveaut&#233;s Your-Mix</title>
		<link>http://www.your-mix.net/blog/annonces/stage-et-nouveautes-your-mix</link>
		<guid isPermaLink="true">http://www.your-mix.net/blog/annonces/stage-et-nouveautes-your-mix</guid>
		<dc:date>2009-04-21T11:51:21Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Sebastien P.</dc:creator>

<category domain="http://your-mix.net/blog/annonces/">Annonces</category>


		<description>Bonjour, comme vous avez-pu le constater, suite &#224; ce billet vous expliquant pourquoi, le blog est rest&#233; de nombreuses semaines en inactivit&#233;, p&#233;riode durant laquelle nous n'avons pourtant pas ch&#244;m&#233;, bien au contraire ... En effet, outre le fait que je n'ai plus que mes weekend &#224; consacrer sur Your-Mix (stage chez Orange Labs la semaine oblige), sachez tout de m&#234;me que beaucoup de bonnes choses sont en pr&#233;paration ! Pour vous mettre l'eau &#224; la bouche, commen&#231;ons par l'annonce du nouveau Webdesign du (...)

-
&lt;a href="http://www.your-mix.net/blog/annonces/" rel="directory"&gt;Annonces&lt;/a&gt;


		</description>


 <content:encoded>&lt;div class='rss_chapo'&gt;&lt;p class=&quot;spip&quot;&gt;Bonjour, comme vous avez-pu le constater, suite &#224; &lt;a href=&quot;http://www.your-mix.net/blog/annonces/spip-2-0-3-jquery-ui-et-stage/&quot; class='spip_out'&gt;ce billet&lt;/a&gt; vous expliquant pourquoi, &lt;strong class=&quot;spip&quot;&gt;le blog est rest&#233;&lt;/strong&gt; de nombreuses semaines &lt;strong class=&quot;spip&quot;&gt;en inactivit&#233;&lt;/strong&gt;, p&#233;riode durant laquelle &lt;strong class=&quot;spip&quot;&gt;nous n'avons pourtant pas ch&#244;m&#233;&lt;/strong&gt;, bien au contraire ...&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;p class=&quot;spip&quot;&gt;En effet, outre le fait que je n'ai plus que mes weekend &#224; consacrer sur &lt;strong class=&quot;spip&quot;&gt;Your-Mix&lt;/strong&gt; (stage chez Orange Labs la semaine oblige), sachez tout de m&#234;me que &lt;strong class=&quot;spip&quot;&gt;beaucoup de bonnes choses sont en pr&#233;paration&lt;/strong&gt; !&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Pour vous mettre l'eau &#224; la bouche, commen&#231;ons par l'annonce du &lt;strong class=&quot;spip&quot;&gt;nouveau Webdesign du site&lt;/strong&gt; que vous pourrez admirer d'ici peu en remplacement de ce blog : un Webdesign &lt;strong class=&quot;spip&quot;&gt;beaucoup plus orient&#233; Web 2.0&lt;/strong&gt; avec au programme nuage de tags, icones shiny, un nouveau logo, coloration syntaxique des snippets de code informatique, etc. etc.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Ensuite, comme une bonne nouvelle n'arrive jamais seule, sachez que &lt;strong class=&quot;spip&quot;&gt;le projet Your-Mix ne va plus seulement &#234;tre r&#233;serv&#233; aux DJs&lt;/strong&gt;, il ouvrira ses portes &#224; TOUS LES PODCASTEURS quels qu'ils soient (radios, &#233;missions, interviews, ...) et ce notamment avec la nouvelle version du site mais aussi avec l'arriv&#233;e de la &lt;strong class=&quot;spip&quot;&gt;version 2 beta de notre Player Flash&lt;/strong&gt;, enti&#232;rement repens&#233; et comprenant &#233;norm&#233;ment de fonctionnalit&#233;s suppl&#233;mentaires (dont la liste sera d&#233;voil&#233;e au fur et &#224; mesure sur ce blog) ... mais pour cela il faudra &#234;tre encore un tantinet patient ...&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Et enfin, pour terminer ce billet sur une note tout aussi positive, sachez qu'apr&#232;s r&#233;flexion &lt;strong class=&quot;spip&quot;&gt;j'ai d&#233;cid&#233; de ne plus ins&#233;rer de publicit&#233;&lt;/strong&gt; sur aucune page du futur service Your-Mix, de m&#234;me qu'il existera &lt;strong class=&quot;spip&quot;&gt;une offre totalement gratuite&lt;/strong&gt; (certes limit&#233;e) dont je dois encore d&#233;terminer les modalit&#233;s.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Cordialement.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;&lt;i class=&quot;spip&quot;&gt;PS :&lt;/i&gt; Pour des mises &#224; jour plus courtes mais plus r&#233;guli&#232;res, vous pouvez d'ores et d&#233;j&#224; &lt;a href=&quot;http://twitter.com/maxymeumprod&quot; class='spip_out' rel='external'&gt;me suivre sur Twitter&lt;/a&gt;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;&lt;i class=&quot;spip&quot;&gt;PS 2 :&lt;/i&gt; Suite &#224; la mise &#224; jour du noyau du blog, tous les commentaires ont momentan&#233;ment &#233;t&#233; perdus, de plus des spammeurs commen&#231;aient &#224; faire des siennes sur mes billets j'ai donc d&#233;cid&#233; de d&#233;sactiver le module de commentaires jusqu'&#224; nouvel ordre. Derni&#232;re chose, toujours &#224; cause de cette mise &#224; jour, toutes les statistiques de consultation de billets ont aussi &#233;t&#233; perdues ce qui a pour effet de mettre un &quot;beau&quot; 0 partout donnant ainsi la f&#226;cheuse impression que personne ne me lis ...&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		
		<pubDate>Tue, 21 Apr 2009 13:51:21 +0200</pubDate>
	</item>
<item>
		<title>Eviter les expressions CSS</title>
		<link>http://www.your-mix.net/blog/developpement/eviter-les-expressions-css</link>
		<guid isPermaLink="true">http://www.your-mix.net/blog/developpement/eviter-les-expressions-css</guid>
		<dc:date>2009-04-20T20:19:09Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Sebastien P.</dc:creator>

<category domain="http://your-mix.net/blog/developpement/">D&#233;veloppement</category>


		<description>&quot;Pr&#233;c&#233;demment dans la s&#233;rie des performances sur le Web&quot; : je vous avais expliqu&#233; qu'il est b&#233;n&#233;fique et donc conseill&#233; de d&#233;placer toutes vos lignes d'appel de script juste avant de refermer la balise body. Parlons maintenant de la r&#232;gle num&#233;ro 7 : &#233;viter les expressions CSS. Les expressions CSS - comme on les appelle - ne sont qu'un moyen d'int&#233;grer du JavaScript dans vos feuilles de style CSS. Elles sont support&#233;es uniquement sous Internet Explorer de la version 5 &#224; la version 7 (eh oui, ils les ont (...)

-
&lt;a href="http://www.your-mix.net/blog/developpement/" rel="directory"&gt;D&#233;veloppement&lt;/a&gt;


		</description>


 <content:encoded>&lt;div class='rss_chapo'&gt;&lt;p class=&quot;spip&quot;&gt;&quot;&lt;a href=&quot;http://www.your-mix.net/blog/developpement/et-le-javascript-tres-tard.html&quot; class='spip_out'&gt;Pr&#233;c&#233;demment&lt;/a&gt;&lt;i class=&quot;spip&quot;&gt; dans la s&#233;rie des performances sur le Web&lt;/i&gt;&quot; : je vous avais expliqu&#233; qu'il est b&#233;n&#233;fique et donc conseill&#233; de &lt;strong class=&quot;spip&quot;&gt;d&#233;placer toutes vos lignes d'appel de script juste avant de refermer la balise body&lt;/strong&gt;. Parlons maintenant de &lt;a href=&quot;http://developer.yahoo.com/performance/rules.html#css_expressions&quot; class='spip_out' rel='external'&gt;la r&#232;gle num&#233;ro 7&lt;/a&gt; : &lt;strong class=&quot;spip&quot;&gt;&#233;viter les expressions CSS&lt;/strong&gt;.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;p class=&quot;spip&quot;&gt;&lt;strong class=&quot;spip&quot;&gt;Les expressions CSS&lt;/strong&gt; - comme on les appelle - ne sont qu'un moyen d'&lt;strong class=&quot;spip&quot;&gt;int&#233;grer du JavaScript dans vos feuilles de style CSS&lt;/strong&gt;. Elles sont support&#233;es uniquement sous Internet Explorer de la version 5 &#224; la version 7 (eh oui, ils les ont abandonn&#233;es dans la version 8 !).&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Outre le fait que les expressions CSS &lt;strong class=&quot;spip&quot;&gt;sont assez puissantes&lt;/strong&gt; (vous imaginez bien que rendre dynamiques les propri&#233;t&#233;s de vos styles peut-&#234;tre int&#233;ressant), sachez qu'elles sont aussi &lt;strong class=&quot;spip&quot;&gt;fortement d&#233;conseill&#233;es du point de vue des performances&lt;/strong&gt; ! En effet, premi&#232;rement, si l'on s&#233;pare les CSS et le JS du HTML dans des fichiers bien distincts ce n'est justement pas pour aller m&#233;langer les CSS et le JavaScript ! Ensuite, la raison principale avanc&#233;e par l'&#233;quipe Yahoo pour oublier les expressions CSS est que &lt;strong class=&quot;spip&quot;&gt;ces derni&#232;res sont recalcul&#233;es &#224; chaque fois que l'utilisateur redimensionne la page, utilise le scroll, &#224; chaque fois qu'il bouge la souris, etc&lt;/strong&gt;. Bref, une horreur, un peu comme le coup du &lt;a href=&quot;http://performance.survol.fr/2008/09/mode-de-rendu-des-tableaux/&quot; class='spip_out' rel='external'&gt;mode de rendu des tableaux HTML&lt;/a&gt; (pour faire court, &lt;strong class=&quot;spip&quot;&gt;utilisez la directive CSS table-layout:fixed&lt;/strong&gt; et les navigateurs Web lutteront moins pour l'affichage et le reflow de vos grands tableaux aux multiples lignes et colonnes) ; les propri&#233;t&#233;s CSS &#224; base d'expression JavaScript peuvent donc &#234;tre recalcul&#233;es des dizaines de milliers de fois en peu de temps ce qui arrive &#224; &#234;tre plut&#244;t lourd &#224; dig&#233;rer pour &lt;strong class=&quot;spip&quot;&gt;quelque chose de si simple &#224; &#233;viter&lt;/strong&gt; !&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Malgr&#233; tout, pour ceux ou celles qui seraient tout de m&#234;me int&#233;ress&#233;(e)s et qui souhaiteraient en savoir plus sur les expressions CSS, vous pouvez toujours consulter &lt;a href=&quot;http://msdn.microsoft.com/fr-fr/library/ms537634(en-us).aspx&quot; class='spip_out' rel='external'&gt;la page officielle Microsoft&lt;/a&gt; ou bien &lt;a href=&quot;http://alyze.info/Blog/10&quot; class='spip_out' rel='external'&gt;ce blog ci&lt;/a&gt; et encore &lt;a href=&quot;http://www.gatellier.be/blog/css-pseudo-classes-internet-explorer/&quot; class='spip_out' rel='external'&gt;ce blog l&#224;&lt;/a&gt;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Cordialement.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;&lt;i class=&quot;spip&quot;&gt;PS :&lt;/i&gt; par manque de temps ces derni&#232;res semaines, je n'ai pas pu assurer la mise en ligne r&#233;guli&#232;re de mes posts sur le sujet des performances Web, veuillez m'en excuser, on se retrouve donc tr&#232;s bient&#244;t avec la r&#232;gle num&#233;ro 8, &lt;a href=&quot;http://developer.yahoo.com/performance/rules.html#external&quot; class='spip_out' rel='external'&gt;externaliser le JavaScript et les CSS&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		
		<pubDate>Mon, 20 Apr 2009 22:19:09 +0200</pubDate>
	</item>
<item>
		<title>SPIP 2.0.3, JQuery UI et stage</title>
		<link>http://www.your-mix.net/blog/annonces/spip-2-0-3-jquery-ui-et-stage</link>
		<guid isPermaLink="true">http://www.your-mix.net/blog/annonces/spip-2-0-3-jquery-ui-et-stage</guid>
		<dc:date>2009-02-16T09:47:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>MAXymeum Prod.</dc:creator>

<category domain="http://your-mix.net/blog/annonces/">Annonces</category>


		<description>Un peu de nouvelles concernant l'avanc&#233;e des travaux ne fait pas de mal. Apr&#232;s la finalisation de la version 1 beta r&#233;vision 9 de notre player DJ et notre choix de ne rendre cette mise &#224; jour disponible au public qu'en m&#234;me temps que les pages d&#233;di&#233;es aux DJs (car les deux sont &#233;troitement li&#233;es), qu'en est-il du d&#233;veloppement de ces dites pages ? &#192; l'heure actuelle, notre d&#233;veloppeur attitr&#233; se heurte aux derni&#232;res difficult&#233;s concernant principalement un plugin de notation en &#233;toile r&#233;calcitrant allant (...)

-
&lt;a href="http://www.your-mix.net/blog/annonces/" rel="directory"&gt;Annonces&lt;/a&gt;


		</description>


 <content:encoded>&lt;div class='rss_chapo'&gt;&lt;p class=&quot;spip&quot;&gt;&lt;strong class=&quot;spip&quot;&gt;Un peu de nouvelles&lt;/strong&gt; concernant l'avanc&#233;e des travaux ne fait pas de mal. Apr&#232;s la finalisation de la &lt;a href=&quot;http://www.your-mix.net/blog/annonces/player-v1-beta-revision-9/&quot; class='spip_out'&gt;version 1 beta r&#233;vision 9&lt;/a&gt; de notre player DJ et notre choix de ne rendre cette mise &#224; jour disponible au public qu'en m&#234;me temps que les pages &lt;strong class=&quot;spip&quot;&gt;d&#233;di&#233;es aux DJs&lt;/strong&gt; (car les deux sont &#233;troitement li&#233;es), &lt;strong class=&quot;spip&quot;&gt;qu'en est-il du d&#233;veloppement de ces dites pages&lt;/strong&gt; ?&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;p class=&quot;spip&quot;&gt;&#192; l'heure actuelle, &lt;strong class=&quot;spip&quot;&gt;notre d&#233;veloppeur attitr&#233; se heurte aux derni&#232;res difficult&#233;s&lt;/strong&gt; concernant principalement &lt;a href=&quot;http://www.spip-contrib.net/Notation-d-articles-SPIP&quot; class='spip_out' rel='external'&gt;un plugin de notation en &#233;toile&lt;/a&gt; r&#233;calcitrant allant de paire avec l'&#233;tablissement d'un classement des DJs. Visiblement, &lt;strong class=&quot;spip&quot;&gt;le plugin en question n'est pas compatible avec le travail d&#233;j&#224; r&#233;alis&#233;&lt;/strong&gt; sur &lt;a href=&quot;http://www.your-mix.net/blog/developpement/url-rewriting-et-le-cms-spip/&quot; class='spip_out'&gt;la pr&#233;sentation (r&#233;&#233;criture) des URL&lt;/a&gt; de notre plateforme qu'est &lt;strong class=&quot;spip&quot;&gt;Your-Mix&lt;/strong&gt;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Pour des raisons &#233;videntes de &lt;strong class=&quot;spip&quot;&gt;gain de temps&lt;/strong&gt; de d&#233;veloppement et de &lt;strong class=&quot;spip&quot;&gt;capacit&#233; &#224; mettre en place&lt;/strong&gt; un syst&#232;me tel que celui que nous souhaitons r&#233;aliser, notre d&#233;veloppeur s'est bas&#233; d&#232;s le d&#233;part sur un CMS (Content Management System) bien connu : &lt;a href=&quot;http://www.spip.net/rubrique91.html&quot; class='spip_out' rel='external'&gt;SPIP&lt;/a&gt;, alors dans &lt;a href=&quot;http://www.spip.net/fr_article3567.html&quot; class='spip_out' rel='external'&gt;sa mouture 1.9.2&lt;/a&gt;. Apr&#232;s avoir eu du mal avec la r&#233;&#233;criture d'URL sous SPIP afin d'obtenir un r&#233;sultat de type &quot;arborescence&quot;, &lt;strong class=&quot;spip&quot;&gt;des petits soucis sont apparus&lt;/strong&gt; notamment dans la gestion et l'administration du &lt;a href=&quot;http://www.spip.net/fr_article886.html&quot; class='spip_out' rel='external'&gt;cache applicatif&lt;/a&gt; page par page qui est alors devenue impossible ainsi que dans la compatibilit&#233; avec le plugin &quot;notation&quot;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Depuis quelques temps, &lt;strong class=&quot;spip&quot;&gt;SPIP est disponible en version publique 2.0.3&lt;/strong&gt;, &lt;a href=&quot;http://www.spip.net/fr_article3784.html&quot; class='spip_out' rel='external'&gt;une mise &#224; jour importante&lt;/a&gt; qui laisse entrevoir le bout du tunnel quant au plugin &quot;notation&quot; puisqu'une version plus r&#233;cente - et plus performante - a &#233;t&#233; r&#233;alis&#233;e uniquement pour SPIP 2. De m&#234;me, la gestion des URL en mod&#232;le arborescent est maintenant native, &lt;strong class=&quot;spip&quot;&gt;ce qui devrait r&#233;gler les conflits rencontr&#233;s actuellement&lt;/strong&gt; avec le cache de SPIP. Enfin, dans le souci d'am&#233;liorer l'exp&#233;rience utilisateur, nous explorerons les nouvelles pistes offertes par SPIP 2 concernant &lt;strong class=&quot;spip&quot;&gt;l'usage d'AJAX&lt;/strong&gt; dans l'int&#233;gration des formulaires et de plusieurs pages pour les commentaires. En r&#233;sum&#233;, le prochain grand pallier &#224; passer pour l'avancement de la plateforme &lt;strong class=&quot;spip&quot;&gt;Your-Mix&lt;/strong&gt; est la mise &#224; jour et l'assimilation de son noyau : SPIP en version 2.0.3.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Pour accompagner ce noyau, &lt;a href=&quot;http://www.your-mix.net/blog/annonces/choix-d-un-framework-js-jquery/&quot; class='spip_out'&gt;nous avions d&#233;j&#224; &#233;voqu&#233; notre choix du Framework JS JQuery&lt;/a&gt; ; eh bien pour accompagner ce Framework, nous avons d&#233;cid&#233; de &lt;strong class=&quot;spip&quot;&gt;le compl&#233;ter par sa branche orient&#233;e interface utilisateur&lt;/strong&gt; nomm&#233;e &lt;a href=&quot;http://jqueryui.com/&quot; class='spip_out' rel='external'&gt;JQuery UI&lt;/a&gt;. Cet ajout - pas des moindres - &lt;strong class=&quot;spip&quot;&gt;permet notamment de g&#233;rer le glisser/d&#233;pos&#233;&lt;/strong&gt; (drag &amp; drop) que nous mettrons en place dans l'interface d'administration du &lt;strong class=&quot;spip&quot;&gt;Your-Mix DJ Web MP3 Player&lt;/strong&gt; pour chaque DJ. Cependant, un petit travail suppl&#233;mentaire sera &#224; r&#233;aliser : &lt;strong class=&quot;spip&quot;&gt;revoir le Web Design final des pages DJ pour int&#233;grer par la suite JQuery UI&lt;/strong&gt; selon un th&#232;me personnalis&#233;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Pour terminer ce billet, il nous faut replacer ces annonces dans le contexte actuel : &lt;strong class=&quot;spip&quot;&gt;notre d&#233;veloppeur commence d&#232;s aujourd'hui un stage chez Orange Labs&lt;/strong&gt; (France T&#233;l&#233;com d&#233;partement Recherche et D&#233;veloppement) &#224; cause de quoi l'avanc&#233;e des travaux sur la plateforme &lt;strong class=&quot;spip&quot;&gt;Your-Mix&lt;/strong&gt; sera d'autant compromise.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Merci de votre compr&#233;hension, cordialement.&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		
		<pubDate>Mon, 16 Feb 2009 10:47:00 +0100</pubDate>
	</item>
<item>
		<title>... et le JavaScript tr&#232;s tard</title>
		<link>http://www.your-mix.net/blog/developpement/et-le-javascript-tres-tard</link>
		<guid isPermaLink="true">http://www.your-mix.net/blog/developpement/et-le-javascript-tres-tard</guid>
		<dc:date>2009-02-15T11:06:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Sebastien P.</dc:creator>

<category domain="http://your-mix.net/blog/developpement/">D&#233;veloppement</category>


		<description>&quot;Pr&#233;c&#233;demment dans la s&#233;rie des performances sur le Web&quot; : je vous avais expliqu&#233; pourquoi s&#233;parer vos CSS de vos HTML dans un - seul - fichier d&#233;di&#233; appel&#233; dans head via la balise link permet un rendu progressif et donc un chargement plus rapide pour vos pages. Le cas inverse s'applique alors pour vos codes JavaScript, c'est la r&#232;gle num&#233;ro 6 : mettre les scripts en bas. Contrairement &#224; la croyance g&#233;n&#233;rale, il est pr&#233;f&#233;rable d'appeler vos fichiers JS le plus tard possible dans la page, c'est &#224; dire (...)

-
&lt;a href="http://www.your-mix.net/blog/developpement/" rel="directory"&gt;D&#233;veloppement&lt;/a&gt;


		</description>


 <content:encoded>&lt;div class='rss_chapo'&gt;&lt;p class=&quot;spip&quot;&gt;&quot;&lt;a href=&quot;http://www.your-mix.net/blog/developpement/appeler-les-css-tres-tot/&quot; class='spip_out'&gt;Pr&#233;c&#233;demment&lt;/a&gt; &lt;i class=&quot;spip&quot;&gt;dans la s&#233;rie des performances sur le Web&lt;/i&gt;&quot; : je vous avais expliqu&#233; &lt;strong class=&quot;spip&quot;&gt;pourquoi s&#233;parer vos CSS&lt;/strong&gt; de vos HTML dans un - seul - fichier d&#233;di&#233; &lt;strong class=&quot;spip&quot;&gt;appel&#233; dans head via la balise link&lt;/strong&gt; permet un &lt;strong class=&quot;spip&quot;&gt;rendu progressif&lt;/strong&gt; et donc un chargement plus rapide pour vos pages. Le cas inverse s'applique alors pour vos codes JavaScript, c'est &lt;a href=&quot;http://developer.yahoo.com/performance/rules.html#js_bottom&quot; class='spip_out' rel='external'&gt;la r&#232;gle num&#233;ro 6&lt;/a&gt; : &lt;strong class=&quot;spip&quot;&gt;mettre les scripts en bas&lt;/strong&gt;.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;p class=&quot;spip&quot;&gt;Contrairement &#224; la croyance g&#233;n&#233;rale, il est &lt;strong class=&quot;spip&quot;&gt;pr&#233;f&#233;rable d'appeler vos fichiers JS le plus tard possible&lt;/strong&gt; dans la page, c'est &#224; dire juste avant de refermer la balise body. La plupart du temps, nous ins&#233;rons notre ligne type : &lt;em class=&quot;code&quot;&gt;&lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;&lt;script type=&quot;application/javascript&quot; src=&quot;monSuperScript.js&quot;&gt;&lt;/script&gt;&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;/em&gt; (oui, &lt;i class=&quot;spip&quot;&gt;application/javascript&lt;/i&gt; est le nouveau mime-type certifi&#233; &#224; utiliser en remplacement de &lt;i class=&quot;spip&quot;&gt;text/javascript&lt;/i&gt; maintenant obsol&#232;te) dans head probablement plus par souci d'une certaine &#233;l&#233;gance pour notre source ; or &lt;strong class=&quot;spip&quot;&gt;cette pratique n'est absolument pas obligatoire&lt;/strong&gt;, et &lt;a href=&quot;http://www.w3.org/TR/REC-html40/interact/scripts.html&quot; class='spip_out' rel='external'&gt;ce n'est pas la W3C qui d&#233;mentira&lt;/a&gt;, les standards sont clairs, &lt;strong class=&quot;spip&quot;&gt;on peut aussi bien d&#233;clarer un script dans head que dans body&lt;/strong&gt; et la seconde solution est loin de ne pas &#234;tre &quot;propre&quot; ...&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Le fait est que lorsqu'un navigateur Internet (actuel) d&#233;tecte un appel de script, &lt;strong class=&quot;spip&quot;&gt;il bloque totalement le rendu de la page&lt;/strong&gt; jusqu'&#224; ce que le fichier soit charg&#233; et le code interpr&#233;t&#233; (&#224; la diff&#233;rence par exemple des images qui seront t&#233;l&#233;charg&#233;es &lt;a href=&quot;http://performance.survol.fr/avec/parallelisation/&quot; class='spip_out' rel='external'&gt;en parall&#232;le&lt;/a&gt; ... j'y reviendrai). Ce comportement est d&#251; au fait que &lt;strong class=&quot;spip&quot;&gt;le JavaScript peut entre autres modifier le contenu d'une page&lt;/strong&gt; notamment via la m&#233;thode &lt;em class=&quot;code&quot;&gt;document.write(...) ;&lt;/em&gt; Dans ce cas, la d&#233;claration du script est bien faite dans le body, &#224; l'endroit m&#234;me de la page o&#249; vous avez souhait&#233; que quelque chose soit &#233;crit via JavaScript ; &lt;strong class=&quot;spip&quot;&gt;cette m&#233;thode est cependant fortement &#224; d&#233;conseiller&lt;/strong&gt; car le JavaScript devient alors ici &lt;a href=&quot;http://www.journaldunet.com/developpeur/tutoriel/dht/070119-js-unobstrusive-javascript-non-intrusif.shtml&quot; class='spip_out' rel='external'&gt;intrusif&lt;/a&gt; comme si vous l'ins&#233;riez dans un attribut HTML de type gestion d'&#233;v&#232;nement que sont par exemple : &lt;i class=&quot;spip&quot;&gt;onmouseover&lt;/i&gt;, &lt;i class=&quot;spip&quot;&gt;onmouseout&lt;/i&gt;, &lt;i class=&quot;spip&quot;&gt;onkeydown&lt;/i&gt;, etc. Il est &#233;vident qu'un script faisant usage de &lt;i class=&quot;spip&quot;&gt;document.write&lt;/i&gt; ne pourra &#234;tre d&#233;plac&#233; plus bas dans la page (un &lt;strong class=&quot;spip&quot;&gt;exemple&lt;/strong&gt; courant est &lt;strong class=&quot;spip&quot;&gt;la publicit&#233; Google Adsense&lt;/strong&gt; qui est difficilement d&#233;pla&#231;able sauf &#233;ventuellement gr&#226;ce &#224; une triche &#224; base de CSS).&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;De plus, dans le cas contraire (pas de &lt;i class=&quot;spip&quot;&gt;document.write&lt;/i&gt; et un appel du script dans head), le navigateur r&#233;agira de la m&#234;me fa&#231;on, le probl&#232;me &#233;tant que &lt;strong class=&quot;spip&quot;&gt;le blocage du rendu se fait au niveau du header&lt;/strong&gt; de la page, autrement dit rien ne sera encore affich&#233; puisque le body n'est pas encore interpr&#233;t&#233;. &lt;strong class=&quot;spip&quot;&gt;Quel est alors l'int&#233;r&#234;t&lt;/strong&gt; de bloquer le rendu si rien n'est rajout&#233; &#224; la page via JavaScript ? Eh oui, sinon vous auriez utilis&#233; &lt;i class=&quot;spip&quot;&gt;document.write&lt;/i&gt; et alors d&#233;plac&#233; votre d&#233;claration de script dans le body. D'une mani&#232;re tr&#232;s g&#233;n&#233;rale, ce qu'il faut retenir avec &lt;strong class=&quot;spip&quot;&gt;le JavaScript&lt;/strong&gt;, c'est qu'il &lt;strong class=&quot;spip&quot;&gt;est un &#233;l&#233;ment bloquant&lt;/strong&gt; pour le moteur de rendu d'un navigateur Web.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Afin de limiter la casse dans les deux cas de figure pr&#233;sent&#233;s ci-dessus, &lt;strong class=&quot;spip&quot;&gt;on &#233;vitera d'&#233;crire du JavaScript dit intrusif&lt;/strong&gt; par exemple &lt;a href=&quot;http://www.css4design.com/blog/framework-jquery-pour-ecrire-du-javascript-non-intrusif&quot; class='spip_out' rel='external'&gt;gr&#226;ce &#224; l'utilisation d'un Framework JS tel que JQuery&lt;/a&gt;, on pourra - et l'on devra - alors &lt;strong class=&quot;spip&quot;&gt;toujours d&#233;placer sa/ses ligne(s) d'appel de script&lt;/strong&gt; pour l'&#233;crire &lt;strong class=&quot;spip&quot;&gt;juste avant de refermer la balise body&lt;/strong&gt;. Par cons&#233;quent, &lt;strong class=&quot;spip&quot;&gt;tout le rendu&lt;/strong&gt; de la page &lt;strong class=&quot;spip&quot;&gt;sera fait&lt;/strong&gt; (c'est &#224; dire que votre visiteur aura rapidement acc&#232;s &#224; l'information recherch&#233;e) &lt;strong class=&quot;spip&quot;&gt;avant le blocage&lt;/strong&gt; li&#233; au chargement de vos scripts. J'en avais d&#233;j&#224; parl&#233;, il s'agit ni plus ni moins de &lt;strong class=&quot;spip&quot;&gt;privil&#233;gier le fond &#224; la forme&lt;/strong&gt; lors du rendu afin que &lt;strong class=&quot;spip&quot;&gt;vos visiteurs aient moins l'impression d'attendre&lt;/strong&gt;. En plus, ceci vous assurera que l'arbre de vos pages (constitu&#233; par les &quot;noeuds&quot; de balises) sera enti&#232;rement disponible avant que votre Framework JS fasse les attributions pour la gestion des &#233;v&#232;nements (&lt;i class=&quot;spip&quot;&gt;onclick&lt;/i&gt;, ...) ; le cas contraire &#233;tant une aberration.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Cordialement.&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		
		<pubDate>Sun, 15 Feb 2009 12:06:00 +0100</pubDate>
	</item>
<item>
		<title>Appeler les CSS tr&#232;s t&#244;t ...</title>
		<link>http://www.your-mix.net/blog/developpement/appeler-les-css-tres-tot</link>
		<guid isPermaLink="true">http://www.your-mix.net/blog/developpement/appeler-les-css-tres-tot</guid>
		<dc:date>2009-02-02T11:04:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Sebastien P.</dc:creator>

<category domain="http://your-mix.net/blog/developpement/">D&#233;veloppement</category>


		<description>&quot;Pr&#233;c&#233;demment dans la s&#233;rie des performances sur le Web&quot; : je vous avais expliqu&#233; comment compresser vos composants &#224; base de texte c&#244;t&#233; serveur via la m&#233;thode Gzip (ou Deflate). La conclusion &#224; tirer de cette am&#233;lioration &#233;tait son rapport efficacit&#233;/ressources &#233;lev&#233;. En effet, pour une petite ligne de code, vous et vos visiteurs y gagnerez beaucoup ! Parlons maintenant de la r&#232;gle num&#233;ro 5 : mettre les CSS en haut. J'en avais d&#233;j&#224; parl&#233; dans le quatri&#232;me paragraphe de ce billet, le principe pour cette (...)

-
&lt;a href="http://www.your-mix.net/blog/developpement/" rel="directory"&gt;D&#233;veloppement&lt;/a&gt;


		</description>


 <content:encoded>&lt;div class='rss_chapo'&gt;&lt;p class=&quot;spip&quot;&gt;&quot;&lt;a href=&quot;http://www.your-mix.net/blog/developpement/compression-gzip-ou-deflate/&quot; class='spip_out'&gt;Pr&#233;c&#233;demment&lt;/a&gt; &lt;i class=&quot;spip&quot;&gt;dans la s&#233;rie des performances sur le Web&lt;/i&gt;&quot; : je vous avais expliqu&#233; &lt;strong class=&quot;spip&quot;&gt;comment compresser vos composants&lt;/strong&gt; &#224; base de texte c&#244;t&#233; serveur &lt;strong class=&quot;spip&quot;&gt;via la m&#233;thode Gzip (ou Deflate)&lt;/strong&gt;. La conclusion &#224; tirer de cette am&#233;lioration &#233;tait son &lt;strong class=&quot;spip&quot;&gt;rapport efficacit&#233;/ressources &#233;lev&#233;&lt;/strong&gt;. En effet, pour une petite ligne de code, vous et vos visiteurs y gagnerez beaucoup ! Parlons maintenant de &lt;a href=&quot;http://developer.yahoo.com/performance/rules.html#css_top&quot; class='spip_out' rel='external'&gt;la r&#232;gle num&#233;ro 5&lt;/a&gt; : &lt;strong class=&quot;spip&quot;&gt;mettre les CSS en haut&lt;/strong&gt;.&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;p class=&quot;spip&quot;&gt;J'en avais d&#233;j&#224; parl&#233; dans le quatri&#232;me paragraphe &lt;a href=&quot;http://www.your-mix.net/blog/developpement/faire-moins-de-requetes-http/&quot; class='spip_out'&gt;de ce billet&lt;/a&gt;, le principe pour cette r&#232;gle d'optimisation est le m&#234;me, &#224; savoir &lt;strong class=&quot;spip&quot;&gt;permettre &#224; la page de faire son rendu progressivement&lt;/strong&gt; et ainsi que &lt;strong class=&quot;spip&quot;&gt;le visiteur ait acc&#232;s plus rapidement au fond&lt;/strong&gt; (&#224; l'information recherch&#233;e) &lt;strong class=&quot;spip&quot;&gt;qu'&#224; la forme&lt;/strong&gt; (le Web Design et tous les &#233;v&#232;nements JavaScript par exemple). Pour ce faire, l'&#233;quipe de Yahoo - ayant men&#233; toutes sortes de recherches sur la question des performances - nous conseille fortement d'appeler nos feuilles de style CSS tr&#232;s t&#244;t dans la page c'est &#224; dire &lt;strong class=&quot;spip&quot;&gt;entre les balises &lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;&lt;head&gt; et &lt;/head&gt;&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;/strong&gt;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Je pense qu'il n'est pas n&#233;cessaire de s'&#233;tendre sur le sujet car il me semble que cette pratique - de surcroit recommand&#233;e aussi dans&lt;a href=&quot;http://www.w3.org/TR/html4/struct/links.html#h-12.3&quot; class='spip_out' rel='external'&gt;les sp&#233;cifications HTML du W3C&lt;/a&gt; - est plus que courante ; cependant, il y a une subtilit&#233; concernant la m&#233;thode d'appel des CSS, il existe en effet la m&#233;thode dite &quot;&lt;i class=&quot;spip&quot;&gt;link&lt;/i&gt;&quot; : &lt;em class=&quot;code&quot;&gt;&lt;/p&gt;
&lt;div style='text-align: left;' class='spip_code' dir='ltr'&gt;&lt;code&gt;&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;maSuperCSS.css&quot; /&gt;&lt;/code&gt;&lt;/div&gt;
&lt;p class=&quot;spip&quot;&gt;&lt;/em&gt; et la m&#233;thode dite &quot;&lt;i class=&quot;spip&quot;&gt;import&lt;/i&gt;&quot; : &lt;em class=&quot;code&quot;&gt;&lt;/p&gt;
&lt;div style='text-align: left;' class='spip_code' dir='ltr'&gt;&lt;code&gt;&lt;style type=&quot;text/css&quot;&gt;@import url(maSuperCSS.css);&lt;/style&gt;&lt;/code&gt;&lt;/div&gt;
&lt;p class=&quot;spip&quot;&gt;&lt;/em&gt; Ces deux m&#233;thodes ont toutes deux pour effet d'appliquer vos styles dans vos pages ; &lt;a href=&quot;http://www.babylon-design.com/site/index.php/2007/04/10/184-regle-import-bonne-pratique&quot; class='spip_out' rel='external'&gt;certains vous diront&lt;/a&gt; que choisir &quot;&lt;i class=&quot;spip&quot;&gt;import&lt;/i&gt;&quot; est une bonne pratique pour se faciliter la vie lorsqu'il s'agit de &lt;strong class=&quot;spip&quot;&gt;regrouper de vos diff&#233;rents fichiers&lt;/strong&gt; afin de cr&#233;er des feuilles de style &quot;dynamiques&quot;, alors que &lt;a href=&quot;http://performance.survol.fr/2008/04/css-et-import/&quot; class='spip_out' rel='external'&gt;d'autres vous diront&lt;/a&gt; - du point de vue des performances - qu'utiliser &quot;&lt;i class=&quot;spip&quot;&gt;link&lt;/i&gt;&quot; &lt;strong class=&quot;spip&quot;&gt;n'est pas bloquant donc plus rapide et &#224; conseiller&lt;/strong&gt; si l'on souhaite rejoindre les recommandations donn&#233;es par l'&#233;quipe Yahoo.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;&lt;strong class=&quot;spip&quot;&gt;Ce que j'en dis&lt;/strong&gt; : puisque vous avez normalement d&#233;j&#224; (dans la mesure du possible) &lt;a href=&quot;http://www.your-mix.net/blog/developpement/faire-moins-de-requetes-http/&quot; class='spip_out'&gt;regroup&#233; vos fichiers en un seul&lt;/a&gt;, il me semble alors qu'utiliser la m&#233;thode &quot;&lt;i class=&quot;spip&quot;&gt;import&lt;/i&gt;&quot; perd toute son utilit&#233; ; pr&#233;f&#233;rez donc en g&#233;n&#233;ral (sauf rares cas exceptionnels o&#249; vous ne pourrez pas faire autrement) la m&#233;thode &quot;&lt;i class=&quot;spip&quot;&gt;link&lt;/i&gt;&quot; et &lt;strong class=&quot;spip&quot;&gt;le probl&#232;me sera r&#233;gl&#233;&lt;/strong&gt;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Enfin, &lt;strong class=&quot;spip&quot;&gt;une derni&#232;re petite pr&#233;cision concernant les s&#233;lecteurs CSS&lt;/strong&gt; : sachez que le rendu pour un &#233;l&#233;ment du &lt;a href=&quot;http://fr.wikipedia.org/wiki/Document_Object_Model&quot; class='spip_out' rel='external'&gt;DOM&lt;/a&gt; cibl&#233; de la mani&#232;re suivante (exemple donn&#233; arbitrairement) : &lt;em class=&quot;code&quot;&gt;table#monTableau tr td.maCellule &lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;{...}&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;/em&gt; sera moins rapide que pour : &lt;em class=&quot;code&quot;&gt;.maCellule &lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;{...}&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;/em&gt; En effet, contrairement &#224; ce que l'on pourrait croire, &lt;strong class=&quot;spip&quot;&gt;donner plus de pr&#233;cision dans le ciblage n'aide pas le moteur de rendu du navigateur&lt;/strong&gt;, ceci lui fait au contraire calculer plus de choses. En plus, simplifier vos s&#233;lecteurs all&#232;gera vos CSS, c'est tout b&#233;nef' !&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Cordialement.&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		
		<pubDate>Mon, 02 Feb 2009 12:04:00 +0100</pubDate>
	</item>
<item>
		<title>Player v1 Beta r&#233;vision 9</title>
		<link>http://www.your-mix.net/blog/annonces/player-v1-beta-revision-9</link>
		<guid isPermaLink="true">http://www.your-mix.net/blog/annonces/player-v1-beta-revision-9</guid>
		<dc:date>2009-01-29T09:46:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>MAXymeum Prod.</dc:creator>

<category domain="http://your-mix.net/blog/annonces/">Annonces</category>


		<description>Comme nous l'avions annonc&#233; dans ce billet, une nouvelle mise &#224; jour de notre DJ Web MP3 Player en version 1 Beta r&#233;vision 9 &#233;tait dans les cartons, pr&#233;vue pour &#234;tre rendue publique courant Janvier 2009 ; c'est maintenant chose faite ... ou presque ... Cette mise &#224; jour s'accompagne m&#234;me de deux ajouts non annonc&#233;s suppl&#233;mentaires. Il s'agit de la pr&#233;sentation du num&#233;ro de version lors d'un clic droit (menu contextuel de Flash) n'importe o&#249; dans la zone du Player permettant &#224; tout-un-chacun de savoir si le (...)

-
&lt;a href="http://www.your-mix.net/blog/annonces/" rel="directory"&gt;Annonces&lt;/a&gt;


		</description>


 <content:encoded>&lt;div class='rss_chapo'&gt;&lt;p class=&quot;spip&quot;&gt;Comme nous l'avions annonc&#233; &lt;a href=&quot;http://www.your-mix.net/blog/annonces/roadmap-player-v1-beta-r9/&quot; class='spip_out'&gt;dans ce billet&lt;/a&gt;, une nouvelle &lt;strong class=&quot;spip&quot;&gt;mise &#224; jour&lt;/strong&gt; de notre &lt;strong class=&quot;spip&quot;&gt;DJ Web MP3 Player&lt;/strong&gt; en &lt;strong class=&quot;spip&quot;&gt;version 1 Beta r&#233;vision 9&lt;/strong&gt; &#233;tait dans les cartons, pr&#233;vue pour &#234;tre rendue publique courant Janvier 2009 ; c'est maintenant chose faite ... ou presque ...&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;p class=&quot;spip&quot;&gt;Cette mise &#224; jour s'accompagne m&#234;me de deux ajouts non annonc&#233;s suppl&#233;mentaires. Il s'agit de la &lt;strong class=&quot;spip&quot;&gt;pr&#233;sentation du num&#233;ro de version&lt;/strong&gt; lors d'un clic droit (menu contextuel de Flash) n'importe o&#249; dans la zone du Player permettant &#224; tout-un-chacun de savoir si le navigateur Web utilis&#233; aura appliqu&#233; les prochaines mises &#224; jour ou si il faudra actualiser son cache. De plus, &lt;strong class=&quot;spip&quot;&gt;le code HTML pour exporter le Player a &#233;t&#233; retravaill&#233;&lt;/strong&gt; pour &#234;tre raccourci et simplifi&#233;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;La version 1 Beta r&#233;vision 9 du DJ Web MP3 Player &lt;strong class=&quot;spip&quot;&gt;Your-Mix&lt;/strong&gt; est d'ores et d&#233;j&#224; finalis&#233;e et comporte donc les am&#233;liorations et nouvelles fonctionnalit&#233;s suivantes :&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;1) Correction de bug lecture al&#233;atoire. &lt;br /&gt;
2) URL permanente page du DJ. &lt;br /&gt;
3) Code pour exporter le Player. &lt;br /&gt;
4) Choix de la couleur de fond. &lt;br /&gt;
5) Ajout du texte &quot;[Explicite]&quot;. &lt;br /&gt;
6) Affichage du num&#233;ro de version. &lt;br /&gt;
7) Code HTML d'export simplifi&#233;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Cependant, l'affichage de l'URL permanente vers la page du DJ pose un probl&#232;me puisque les pages en question ne sont pas encore termin&#233;es et pleinement fonctionnelles. &lt;strong class=&quot;spip&quot;&gt;Nous avons alors d&#233;cid&#233; de ne rendre cette nouvelle version de notre Player publique que lorsque les pages DJ en question le seront&lt;/strong&gt;. Merci de votre compr&#233;hension.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Cordialement.&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		
		<pubDate>Thu, 29 Jan 2009 10:46:00 +0100</pubDate>
	</item>
<item>
		<title>Compression Gzip ou Deflate</title>
		<link>http://www.your-mix.net/blog/developpement/compression-gzip-ou-deflate</link>
		<guid isPermaLink="true">http://www.your-mix.net/blog/developpement/compression-gzip-ou-deflate</guid>
		<dc:date>2009-01-23T11:03:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Sebastien P.</dc:creator>

<category domain="http://your-mix.net/blog/developpement/">D&#233;veloppement</category>


		<description>&quot;Pr&#233;c&#233;demment dans la s&#233;rie des performances sur le Web&quot; : je vous avais expliqu&#233; comment stocker vos composants dans le cache navigateur de vos visiteurs et comment d&#233;finir une date d'expiration dans le lointain ou proche futur. Cette r&#232;gle d'optimisation &#233;tait tr&#232;s importante et permettait d'&#233;conomiser beaucoup de ressources et de temps de chargement. Passons &#224; la r&#232;gle num&#233;ro 4, toute aussi importante : compresser les composants avec Gzip (ou Deflate). Compresser vos composants a pour effet de (...)

-
&lt;a href="http://www.your-mix.net/blog/developpement/" rel="directory"&gt;D&#233;veloppement&lt;/a&gt;


		</description>


 <content:encoded>&lt;div class='rss_chapo'&gt;&lt;p class=&quot;spip&quot;&gt;&quot;&lt;a href=&quot;http://www.your-mix.net/blog/developpement/en-tetes-expires-et-cache-control/&quot; class='spip_out'&gt;Pr&#233;c&#233;demment&lt;/a&gt; &lt;i class=&quot;spip&quot;&gt;dans la s&#233;rie des performances sur le Web&lt;/i&gt;&quot; : je vous avais expliqu&#233; &lt;strong class=&quot;spip&quot;&gt;comment stocker vos composants dans le cache navigateur&lt;/strong&gt; de vos visiteurs et &lt;strong class=&quot;spip&quot;&gt;comment d&#233;finir une date d'expiration&lt;/strong&gt; dans le lointain ou proche futur. Cette r&#232;gle d'optimisation &#233;tait tr&#232;s importante et permettait d'&lt;strong class=&quot;spip&quot;&gt;&#233;conomiser beaucoup de ressources et de temps&lt;/strong&gt; de chargement. Passons &#224; la &lt;a href=&quot;http://developer.yahoo.com/performance/rules.html#gzip&quot; class='spip_out' rel='external'&gt;r&#232;gle num&#233;ro 4&lt;/a&gt;, toute aussi importante : &lt;strong class=&quot;spip&quot;&gt;compresser les composants avec Gzip&lt;/strong&gt; (ou Deflate).&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;p class=&quot;spip&quot;&gt;Compresser vos composants a pour effet de &lt;strong class=&quot;spip&quot;&gt;diminuer les temps de r&#233;ponse&lt;/strong&gt; aux requ&#234;tes HTTP que font vos visiteurs. Autrement dit, moins un composant p&#232;se lourd et plus vite il sera achemin&#233; &#224; travers les tuyaux du r&#233;seau jusqu'aux ordinateurs des internautes, ce qui est logique. On pourra alors, de la m&#234;me fa&#231;on que nous le faisons avec Photoshop, SmushIt ou autre pour nos images, &lt;strong class=&quot;spip&quot;&gt;compresser via le serveur tout ce qui est &#224; base de texte&lt;/strong&gt; (et uniquement, j'y reviendrai). Par exemple, pourquoi ne pas compresser vos pages HTML, vos feuilles de style CSS, vos fichiers JavaScript, XML, TXT et/ou JSON avant de les envoyer au client ? Ceci peut &#234;tre d'autant plus int&#233;ressant que ces fichiers ont pu &#234;tre alourdis lorsque vous les avez tous regroup&#233;s afin de &lt;a href=&quot;http://www.your-mix.net/blog/developpement/faire-moins-de-requetes-http/&quot; class='spip_out'&gt;faire moins de requ&#234;tes HTTP&lt;/a&gt; comme je vous l'avais sugg&#233;r&#233; et vivement conseill&#233;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Ceux qui on lu au moins mon billet pr&#233;c&#233;dent concernant la mise en cache navigateur des composants me diront &quot;pourquoi compresser les CSS, fichiers JS et autres pour r&#233;duire les temps de r&#233;ponse alors qu'&#224; partir de leur second acc&#232;s sur le site, les visiteurs auront un cache plein et ces fichiers seront renvoy&#233;s par leur disque dur et non plus par le r&#233;seau ?&quot;. Eh bien la r&#233;ponse r&#233;side plus ou moins dans la question, il s'agit d'&lt;strong class=&quot;spip&quot;&gt;acc&#233;l&#233;rer le chargement des pages lors d'une premi&#232;re visite et donc d'un acc&#232;s fait avec un cache vide&lt;/strong&gt; ; ceci se justifie encore une fois du fait que les fichiers sont regroup&#233;s et donc potentiellement plus lourds car certaines directives (CSS, JS, ...) sont inutilis&#233;es sur certaines pages mais bien pr&#233;sentes dans ces fichiers.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Ok, alors comment je fais pour compresser mes composants ? C'est tr&#232;s simple, depuis l'arriv&#233;e du protocole HTTP 1.1 et depuis Internet Explorer 4, &lt;strong class=&quot;spip&quot;&gt;presque tous les navigateurs sont capables de d&#233;compresser un contenu renvoy&#233; compress&#233; par le serveur&lt;/strong&gt; ; ne vous pr&#233;occupez pas de ceux qui n'en sont pas capables, le m&#234;me contenu leur sera alors automatiquement renvoy&#233; non-compress&#233; pour qu'il n'y ait aucun risque d'incompatibilit&#233;. Concr&#232;tement, vous configurez votre serveur Apache (pour ceux qui ne me suivent pas r&#233;guli&#232;rement, je ne fais &#233;tat sur ce Blog que d'Apache &#233;tant le seul que je connais) via &lt;i class=&quot;spip&quot;&gt;httpd.conf&lt;/i&gt; ou &lt;i class=&quot;spip&quot;&gt;.htaccess&lt;/i&gt; (&#224; la racine) pour qu'il compresse les fichiers souhait&#233;s avant de les renvoyer &#224; vos visiteurs qui les d&#233;compresseront ensuite avant de les lire (et les stocker dans leur cache navigateur), &lt;strong class=&quot;spip&quot;&gt;le tout d'une mani&#232;re totalement transparente et automatique&lt;/strong&gt;. Sachez que les r&#233;sultats de cette m&#233;thode sont visibles d&#232;s les premi&#232;res secondes apr&#232;s sa mise en place et que son efficacit&#233; permet de r&#233;duire - d'apr&#232;s Yahoo - les temps de r&#233;ponse d'environ 70%, pour une seule ligne de code !&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;&lt;strong class=&quot;spip&quot;&gt;La syntaxe &#224; adopter est diff&#233;rente selon la version d'Apache&lt;/strong&gt; que vous utilisez. En effet, Apache 1.3+ se sert du module &lt;i class=&quot;spip&quot;&gt;mod_gzip&lt;/i&gt; (&#224; t&#233;l&#233;charger sur &lt;a href=&quot;http://sourceforge.net/projects/mod-gzip/&quot; class='spip_out' rel='external'&gt;cette page&lt;/a&gt;, aide &#224; l'installation et &#224; l'utilisation sur &lt;a href=&quot;http://www.trustonme.net/didactels/223.html&quot; class='spip_out' rel='external'&gt;cette page&lt;/a&gt;) tandis qu'Apache 2+ int&#232;gre par d&#233;faut le module &lt;a href=&quot;http://httpd.apache.org/docs/2.0/mod/mod_deflate.html&quot; class='spip_out' rel='external'&gt;mod_deflate&lt;/a&gt; qui est tr&#232;s simple &#224; utiliser. Si vous ne savez pas lequel choisir, vous pouvez toujours essayer le code suivant : &lt;em class=&quot;code&quot;&gt;&lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;&lt;IfModule mod_deflate.c&gt;&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;br /&gt;
&lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;&lt;FilesMatch &quot;\.(html|php|txt|xml|js|css)$&quot;&gt;&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;br /&gt;
SetOutputFilter DEFLATE&lt;br /&gt;
&lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;&lt;/FilesMatch&gt;&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;br /&gt;
&lt;!-- htmlA --&gt;&lt;code class='spip_code' dir='ltr'&gt;&lt;/IfModule&gt;&lt;/code&gt;&lt;!-- htmlB --&gt;&lt;/em&gt; qui fait un test de pr&#233;sence pour &lt;i class=&quot;spip&quot;&gt;mod_deflate&lt;/i&gt; avant de compresser uniquement vos fichiers HTML, PHP, TXT, XML, JS et CSS. Vous pourrez ensuite v&#233;rifier si ce snippet a fonctionn&#233; gr&#226;ce au &lt;a href=&quot;http://www.your-mix.net/blog/developpement/yslow-analyse-et-note-vos-pages/&quot; class='spip_out'&gt;sous-menu &quot;Components&quot; de YSlow&lt;/a&gt;. Ces quelques lignes de code donnent exactement le m&#234;me r&#233;sultat que celle-ci qui est toutefois plus propre (se servant des &lt;a href=&quot;http://fr.wikipedia.org/wiki/Type_MIME&quot; class='spip_out' rel='external'&gt;mime-type&lt;/a&gt;) : &lt;em class=&quot;code&quot;&gt;AddOutputFilterByType DEFLATE text/html text/xml application/xhtml+xml text/plain application/javascript text/css&lt;/em&gt; Une derni&#232;re chose, &lt;strong class=&quot;spip&quot;&gt;n'essayez pas de compresser via Gzip/Deflate vos images, PDF ou autre qui sont des fichiers d&#233;j&#224; compress&#233;s lors de leur production logicielle&lt;/strong&gt;. Les risques sont de consommer des ressources processeur de votre serveur pour rien (eh oui, compresser c'est n&#233;cessaire, tr&#232;s bien, mais pas gratuit ni magique) voire d'augmenter leur poids.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Des questions ?&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		
		<pubDate>Fri, 23 Jan 2009 12:03:00 +0100</pubDate>
	</item>



</channel>

</rss>
