# articles

feed_id: http://www.warriordudimanche.net/article739/gagner-du-temps-quand-on-cherche-un-mobile
title: Gagner du temps quand on cherche un mobile
uri: Gagner-du-temps-quand-on-cherche-un-mobile
content:
./plugins//WDDWebLinks/default_image.jpg<p>En passant, je vous file un petit bookmarklet que j'ai bricolé quand je cherchais un smartphone pas trop cher: il suffit de sélectionner le nom d'un portable sur une page web et de cliquer sur le bookmarklet; il ouvre alors une nouvelle page avec une recherche sur lesnumériques.com.</p>
<p>C'est tout con, mais ça m'a fait gagner du temps.</p>
<pre><code>javascript:(function(){if(window.getSelection){sel=window.getSelection();}else%20if(document.getSelection){sel=%20document.getSelection();}else{var%20selection=document.selection&amp;&amp;document.selection.createRange();if(selection.text){sel=selection.text;}};window.open('https://www.lesnumeriques.com/recherche?q='+sel,'infos');})()</code></pre>
<p><a href="javascript:(function(){if(window.getSelection){sel=window.getSelection();}else%20if(document.getSelection){sel=%20document.getSelection();}else{var%20selection=document.selection&&document.selection.createRange();if(selection.text){sel=selection.text;}};window.open('https://www.lesnumeriques.com/recherche?q='+sel,'infos');})()">Chercher sur les numériques</a></p>
<p>Glissez-déposez ce lien vers les bookmarks pissétou.</p>
<img class="smile big" src="media/2ec5b231.bazinga.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/big/bazinga.png"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article739#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article740/5a1fe98041fa0
title: Learn CSS Grid in 5 Minutes – freeCodeCamp
uri: Learn-CSS-Grid-in-5-Minutes-freeCodeCamp
url: https://medium.freecodecamp.org/learn-css-grid-in-5-minutes-f582e87b1228
content:
<img src="media/a3d49d10.1-fjniddiscjhi9czjdxv3eg.png" data-original-source="http://www.warriordudimanche.net/data/medias/1-fjniddiscjhi9czjdxv3eg.png" style="width:100%;height:auto"/><p>C'est juste... beau. <img class="smile normal" src="media/c43f2a25.sad.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/sad.png"/> <br />
<br /></p>
<pre><code>&lt;div class="wrapper"&gt;
  &lt;div&gt;1&lt;/div&gt;
  &lt;div&gt;2&lt;/div&gt;
  &lt;div&gt;3&lt;/div&gt;
  &lt;div&gt;4&lt;/div&gt;
  &lt;div&gt;5&lt;/div&gt;
  &lt;div&gt;6&lt;/div&gt;
&lt;/div&gt;
.wrapper {
    display: grid;
    grid-template-columns: 100px 100px 100px;
    grid-template-rows: 50px 50px;
}</code></pre>
<img class="smile big" src="media/b589a631.mouille.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/big/mouille.jpg"/> 
<div class="via"><span title="Source du lien">Via Plop links</span></div><br/><br/><div class="img_source"><a href="media/7e6553e3.1fJNIdDiScjhI9CZjdxv3Eg.png" data-original-source="https://cdn-images-1.medium.com/max/1600/1*fJNIdDiScjhI9CZjdxv3Eg.png">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article740#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article741/5a21670b2b582
title: microsoft [Wiki de sebsauvage.net]
uri: microsoft-Wiki-de-sebsauvage-net
url: http://sebsauvage.net/wiki/doku.php?id=microsoft
content:
<img src="media/ba59067b.-wiki-de-sebsauvage-net-true_face_of_bsod_by_buba_kl-d4sg3iw.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/microsoft-wiki-de-sebsauvage-net-true_face_of_bsod_by_buba_kl-d4sg3iw.jpg" style="width:100%;height:auto"/><p>Une liste complète et objective des griefs légitimes contre microsoft.<br />
<br />
<br />
<br />
<img class="smile xbig" src="media/03909da5.wouhou.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/wouhou.jpg"/> <br />
Linux Powa.<br />
Voilà.<br/><br/><div class="img_source"><a href="media/750da8b8.true_face_of_bsod_by_buba_kl-d4sg3iw.jpg" data-original-source="https://orig00.deviantart.net/8d20/f/2012/070/9/e/true_face_of_bsod_by_buba_kl-d4sg3iw.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article741#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article742/5a2925216917c
title: OPByte: Grsync rsync GUI interface frontend for Linux, Windows and Mac OS X
uri: OPByte-Grsync-rsync-GUI-interface-frontend-for-Linux-Windows-and-Mac
url: http://www.opbyte.it/grsync/
content:
<img src="media/9c7c8b38.terface-frontend-for-linux-windows-and-mac-os-x-grsync-1.0.0.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/opbyte-grsync-rsync-gui-interface-frontend-for-linux-windows-and-mac-os-x-grsync-1.0.0.png" style="width:100%;height:auto"/><blockquote>
<p>Grsync permet d'effectuer des sauvegardes de fichiers ou de répertoires, localement ou à distance. Il est en fait une interface graphique au logiciel rsync disponible en ligne de commande. Les sauvegardes peuvent être incrémentales. On peut sauvegarder les préférences de nos sauvegardes, les exporter en un fichier pour les partager, lancer plusieurs sessions en un coup, on peut les simuler avant de les lancer, etc<br />
<br />
<br />
<br/><br/><div class="img_source"><a href="media/090f7fcc.grsync-1.0.0.png" data-original-source="http://www.opbyte.it/grsync/grsync-1.0.0.png">Source image</a></div></p>
</blockquote>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article742#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article743/5a2a3fab11725
title: La liberté d'opinion est une farce si l'information sur les faits n'est pas garantie
uri: La-liberté-d-opinion-est-une-farce-si-l-information-sur-les-faits-n-e
url: http://dicocitations.lemonde.fr/citations/citation-65314.php
content:
<img src="media/9f0266c3.-farce-si-l-information-sur-les-faits-n-est-pas-garantie-171.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/la-liberte-d-opinion-est-une-farce-si-l-information-sur-les-faits-n-est-pas-garantie-171.jpg" style="width:100%;height:auto"/><p><strong><em>« La liberté d'opinion est une farce si l'information sur les faits n'est pas garantie et si ce ne sont pas les faits eux-mêmes qui font l'objet du débat. »</em></strong><br />
<br /></p>
<ul>
<li>Hannah Arendt<br/><br/><div class="img_source"><a href="media/fc49422f.171.jpg" data-original-source="http://www.dicocitations.com/images_auteur/171.jpg">Source image</a></div></li>
</ul>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article743#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article745/bozon-mais-non-ce-n-est-pas-mort
title: Bozon: mais non ce n'est pas mort...
uri: Bozon-mais-non-ce-n-est-pas-mort
content:
<img src="media/f8a6bf9a.9484db357021bfb2cc4a2a07b6b51--citation-abandon-belle-phrase.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/https-i-pinimg-com-736x-e8-59-48e859484db357021bfb2cc4a2a07b6b51--citation-abandon-belle-phrase.jpg" style="width:100%;height:auto"/><p>Voilà un moment que je ne donne aucune nouvelle de Bozon. Le projet n'est pas mort mais après un an à récrire le code, JerryWham a attiré mon attention sur le fait que l'ensemble devait être amélioré et optimisé: malheureusement, après moultes tentatives en ce sens (de nous deux, on a pas mal bossé), il s'avère qu'une restructuration est encore nécessaire.</p>
<img class="smile xbig" src="media/53e8e841.piquer.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/piquer.jpg"/> 
<p>C'est donc à cette tâche que je m'attelle en ce moment: restructurer afin de respecter certaines règles de programmation, quitte à me racler la soupière encore un moment <img class="smile " src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/></p>
<p>Du coup, je suis en train de déplacer et récrire des portions de code pour rendre le tout plus élégant et efficient afin de produire une version de travail commune pour coder à quatre mains.</p>
<p>En plus, <a href="https://cyrille-borne.com/pluxml/index.php?article78/quelques-services-en-lignes">comme le mentionne Cyrille</a>, c'est pas mon temps libre qui me permet d'avancer...</p>
<p>«Faire et défaire, c'est apprendre à travailler» Proverbe familial</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article745#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article744/5a2aa3cee19c5
title: Novlangue de bois et résistances - #DATAGUEULE 77 - YouTube
uri: Novlangue-de-bois-et-résistances-DATAGUEULE-77-YouTube
url: https://www.youtube.com/watch?v=bliStO5z5dY
content:
<img src="media/17a61e3c.ngue-de-bois-et-resistances-datagueule-77-youtube-A_Deneault.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/novlangue-de-bois-et-resistances-datagueule-77-youtube-A_Deneault.png" style="width:100%;height:auto"/><p>Je suis d'accord sur l'ensemble. Le refus ne pouvant se faire à l'échelle du peuple que l'on cherche à diviser, il doit se faire à celle de chaque individu et dans son cercle d'influence directe: refuser d'utiliser les termes de la «novlangue» c'est déjà lutter.<br />
<br />
« Les limites de ma langue sont les limites de mon monde » <br /></p>
<ul>
<li>Wittgenstein<div class="via"><span title="Source du lien">Via Lapin Masqué</span></div><br/><br/><div class="img_source"><a href="media/c08ade32.A_Deneault.png" data-original-source="https://oxfam.qc.ca/wp-content/uploads/2016/03/A_Deneault.png">Source image</a></div></li>
</ul>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article744#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article746/5a30d4d8bce6c
title: Quand les 99% viennent célébrer un 1%, l'élite se marre |
uri: Quand-les-99-viennent-célébrer-un-1-l-élite-se-marre
url: https://reflets.info/quand-les-99-viennent-celebrer-un-1-lelite-se-marre/
content:
<img src="media/4fb586f6.quand-les-99-viennent-celebrer-un-1-l-elite-se-marre-gal.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/quand-les-99-viennent-celebrer-un-1-l-elite-se-marre-gal.jpg" style="width:100%;height:auto"/><p>C'est tellement ça que je vais copier-coller intégralement pour mémoire:<br /></p>
<blockquote>
<p>Ne nous méprenons pas : que l’on ait apprécié ou non les performances artistiques du chanteur mort mercredi, celui-ci reste un monument d’égoïsme national, un magouilleur ultra-riche protégé par les politiques, au mépris de toute décence.<br />
<br />
Le type a quand même trouvé le moyen de pratiquer l’exil fiscal, et donc de ne pas (ou très peu au prorata de ce que les Français lui ont versé) participer à la construction des écoles, l’entretien des routes ou des hôpitaux, au maintien des services publics quand ses fans français plus ou moins miséreux l’enrichissaient à qui mieux-mieux.<br />
<br />
Ce qui est le plus drôle et fascinant dans cette histoire, c’est que tous ceux qui suent pour maintenir ce pays à un niveau correct de civilisation, par leurs impôts, les 99%, viennent en masse honorer un représentant des 1%, qui leur a dit en gros : « je vous emmerde, bande de crasseux, je préfère garder tout le pognon que vous m’avez filé en m’installant ailleurs ».<br />
<br />
Ces 99%, ne rêvent-ils pas d’avoir pu être Johnny un jour ? Et au fond, comme certains l’avouent, n’auraient-ils pas fait exactement la même chose que la star ? »<br />
<br />
Ce qui signifierait au final, que c’est bien là l’esprit français : dénoncer les injustices et les dérives des élites tout en aspirant à en faire partie pour les perpétuer.<br />
<br />
<br />
<br />
<br />
<br />
Oui, la majorité des gens ne souhaite pas changer la société, mais simplement en profiter plus que les autres...<div class="via"><span title="Source du lien">Via HowTommy</span></div><br/><br/><div class="img_source"><a href="media/02f353b6.gal.jpg" data-original-source="http://img.gal.pmdstatic.net/fit/http.3A.2F.2Fprd2-bone-image.2Es3-website-eu-west-1.2Eamazonaws.2Ecom.2Fgal.2F2017.2F12.2F07.2Fa1dcb7f8-d2b7-4b7c-8442-b7d1a8ed45cc.2Ejpeg/1140x499/quality/80/gal.jpg">Source image</a></div></p>
</blockquote>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article746#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article747/5a37a15b94ac8
title: Thierry Fétiveau, design graphique et typographie - Andersen
uri: Thierry-Fétiveau-design-graphique-et-typographie-Andersen
url: http://thierryfetiveau.fr/cms/index.php?page=andersen
content:
<img src="media/2542625d.-typographie-andersen-andersen-serif-typeface-livres-enfants.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/thierry-fetiveau-design-graphique-et-typographie-andersen-andersen-serif-typeface-livres-enfants.png" style="width:100%;height:auto"/><p>Très intéressante, cette police de caractères. J'ignorais qu'Andersen avait mis au point ces ponctuations complémentaires.<br />
La police BD est chouette aussi... je prends !<br />
<a href="http://thierryfetiveau.fr/cms/index.php?page=Anelim"><a href="http://thierryfetiveau.fr/cms/index.php?page=Anelim">http://thierryfetiveau.fr/cms/index.php?page=Anelim</a></a><div class="via"><span title="Source du lien">Via <a href="https://chezsoi.org/shaarli/">https://chezsoi.org/shaarli/</a></span></div><br/><br/><div class="img_source"><a href="media/127a2955.andersen-serif-typeface-livres-enfants.png" data-original-source="http://thierryfetiveau.fr/cms/uploads/images/typographie/Andersen/andersen-serif-typeface-livres-enfants.png">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article747#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article748/5a37fbfc36278
title: IM🍑HIM sur Twitter : Best use of Amazon Prime that I've seen. #secretsanta
uri: IM-HIM-sur-Twitter-Best-use-of-Amazon-Prime-that-I-ve-seen-secr
url: https://twitter.com/ziyatong/status/941817091216367616/video/1
content:
./plugins//WDDWebLinks/default_image.jpg<p>Et voilà, j'ai encore eu la larme à l'oeil...<br />
<br />
J'ai été très touché par la chaleur humaine de part et d'autre...<div class="via"><span title="Source du lien">Via <a href="http://dhoko.me/liens/">http://dhoko.me/liens/</a></span></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article748#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article749/5a38cf57b1b0f
title: “My reality is just different than yours” – Signé : l’équipe marketing de Mozilla Firefox
uri: My-reality-is-just-different-than-yours-Signé-l-équipe
url:
https://korben.info/my-reality-is-just-different-than-yours-signe-lequipe-marketing-de-mozilla-firefox.html

content:
<img src="media/fa7c3ec4.quipe-marketing-de-mozilla-firefox-AVT_Terry-Pratchett_9180.jpeg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/my-reality-is-just-different-than-yours-signe-lequipe-marketing-de-mozilla-firefox-AVT_Terry-Pratchett_9180.jpeg" style="width:100%;height:auto"/><p><strong><em>«Quand on commence à déroger à un principe pour de bonnes raisons, on finit toujours par y déroger pour de mauvaises»</em></strong><br />
Terry Pratchett<br/><br/><div class="img_source"><a href="media/4065a549.AVT_Terry-Pratchett_9180.jpeg" data-original-source="https://www.babelio.com/users/AVT_Terry-Pratchett_9180.jpeg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article749#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article750/5a3b753db35b2
title: A tous les homophobes citant la bible … | Brouillons de Culture
uri: A-tous-les-homophobes-citant-la-bible-Brouillons-de-Culture
url: https://brouillonsdeculture.wordpress.com/2011/08/07/a-tous-les-homophobes-citant-la-bible/
content:
<img src="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/a-tous-les-homophobes-citant-la-bible-brouillons-de-culture-images" style="width:100%;height:auto"/><p>Toujours aussi bon, je copie-colle là pour le ressortir (j'ai une liste de clients potentiels)<br />
<br /></p>
<blockquote>
<p>Lors d’une de ses émissions, une célèbre animatrice radio états-unienne fit remarquer que l’homosexualité est une perversion. « C’est ce que dit la Bible dans le livre du Lévitique, chapitre 18, verset 22 : « Tu ne coucheras pas avec un homme comme on couche avec une femme : ce serait une abomination ». La Bible le dit. Un point c’est tout », affirma-t-elle.<br />
<br />
Quelques jours plus tard, un auditeur lui adressa une lettre ouverte qui disait :<br />
<br />
« Merci de mettre autant de ferveur à éduquer les gens à la Loi de Dieu. J’apprends beaucoup à l’écoute de votre programme et j’essaie d’en faire profiter tout le monde. Mais j’aurais besoin de conseils quant à d’autres lois bibliques.<br />
<br />
Par exemple, je souhaiterais vendre ma fille comme servante, tel que c’est indiqué dans le livre de l’Exode, chapitre 21, verset 7. A votre avis, quel serait le meilleur prix ?<br />
<br />
Le Lévitique aussi, chapitre 25, verset 44, enseigne que je peux posséder des esclaves, hommes ou femmes, à condition qu’ils soient achetés dans des nations voisines. Un ami affirme que ceci est applicable aux mexicains, mais pas aux canadiens. Pourriez-vous m’éclairer sur ce point ? Pourquoi est-ce que je ne peux pas posséder des esclaves canadiens ?<br />
<br />
J’ai un voisin qui tient à travailler le samedi. L’Exode, chapitre 35, verset 2, dit clairement qu’il doit être condamné à mort. Je suis obligé de le tuer moi-même ? Pourriez-vous me soulager de cette question gênante d’une quelconque manière ?<br />
<br />
Autre chose : le Lévitique, chapitre 21, verset 18, dit qu’on ne peut pas s’approcher de l’autel de Dieu si on a des problèmes de vue. J’ai besoin de lunettes pour lire. Mon acuité visuelle doit-elle être de 100% ? Serait-il possible de revoir cette exigence à la baisse ?<br />
<br />
Un de mes amis pense que même si c’est abominable de manger des fruits de mer (Lévitique 11:10), l’homosexualité est encore plus abominable. Je ne suis pas d’accord. Pouvez-vous régler notre différend ?<br />
<br />
La plupart de mes amis de sexe masculin se font couper les cheveux, y compris autour des tempes, alors que c’est expressément interdit par Le Lévitique (19:27). Comment doivent-ils mourir ?<br />
<br />
Je sais que l’on ne me permet aucun contact avec une femme tant qu’elle est dans sa période de règles (Levitique. 15:19-24). Le problème est : comment le dire ? J’ai essayé de demander, mais la plupart des femmes s’en offusquent…<br />
<br />
Quand je brûle un taureau sur l’autel du sacrifice, je sais que l’odeur qui se dégage est apaisante pour le Seigneur (Levitique. 1:9). Le problème, c’est mes voisins : ils trouvent que cette odeur n’est pas apaisante pour eux. Dois-je les châtier en les frappant ?<br />
<br />
Un dernier conseil. Mon oncle ne respecte pas ce que dit le Lévitique, chapitre 19, verset 19, en plantant deux types de culture différents dans le même champ, de même que sa femme qui porte des vêtements faits de différents tissus, coton et polyester. De plus, il passe ses journées à médire et à blasphémer. Est-il nécessaire d’aller jusqu’au bout de la procédure embarrassante de réunir tous les habitants du village pour lapider mon oncle et ma tante, comme le prescrit le Lévitique, chapitre 24, versets 10 à 16 ? On ne pourrait pas plutôt les brûler vifs au cours d’une simple réunion familiale privée, comme ça se fait avec ceux qui dorment avec des parents proches, tel qu’il est indiqué dans le livre sacré, chapitre 20, verset 14 ?<br />
<br />
Je sais que vous avez étudié à fond tous ces cas, aussi ai-je confiance en votre aide.<br />
<br />
Merci encore de nous rappeler que la loi de Dieu est éternelle et inaltérable.<br />
<br />
Votre disciple dévoué et fan admiratif. »<br/><br/>
<img src="http://www.warriordudimanche.net/
data/medias/https-2-bp-blogspot-com-bok-qoaan68-v3zv4vwk9fi-aaaaaaaat7s-9xceifipzekmuvyluxx-efavpex8lp9iwclcb-s1600IMG_20160701_185326.jpg" alt="alt" /></p>
</blockquote>
<div class="img_source"><a href="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSRiy5bpTRaJ18hHVl9GYdMfAbcr6sPq-oNu1REzUb0nrblbKbPCA">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article750#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article751/joyeux-noyel-pour-moi
title: Joyeux noyel pour moi !
uri: Joyeux-noyel-pour-moi
content:
<img src="media/76843eef.img_20171222_105420.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/copains/img_20171222_105420.jpg" style="width:100%;height:auto"/><p>Quand tu as des potes qui sont à la fois de TRÈS GRANDS MALADES et des vrais généreux, ça donne un colis inattendu, volumineux et plein de surprises (tu vas voir !)</p>
<p><img src="media/76843eef.img_20171222_105420.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/copains/img_20171222_105420.jpg" alt="1" />
Quand je dis qu'il est volumineux, c'est qu'il est <strong><em>volumineux</em></strong> ! <img class="smile normal" src="media/b8e47026.omg.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/omg.png"/> </p>
<p><img src="media/68b8ccf6.img_20171222_105646.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/copains/img_20171222_105646.jpg" alt="2" /></p>
<p>Pis dedans ...</p>
<p><img src="http://poladroid.warriordudimanche.net/index.php?p=305106_766_305106-2923-403339455" alt="bons produits" /></p>
<p><img src="media/68b8ccf6.img_20171222_105646.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/copains/img_20171222_105646.jpg" alt="alt" /></p>
<p>Donc, vous voyez, on a du kouign amann (ma source de diabète/cholestérol préférée <img class="smile " src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/>), de la bière, des chips bretonnes, des gourmandises à mettre sur des toïos, du caramel au beurre salé (salaud!) et...</p>
<p>des oignons...</p>
<p><img src="http://poladroid.warriordudimanche.net/index.php?p=picture_30" alt="oignons" /></p>
<p>Là, tu comprends que sur terre il y a des gens:</p>
<ul>
<li>qui t'aiment assez pour t'envoyer un filet de 5kg d'oignons par livreur, histoire de te faire marrer,</li>
<li>qui sont assez givrés pour t'envoyer un filet de 5kg d'oignons par livreur,</li>
</ul>
<p>Et coup de bol, on a la chance de compter parmi leurs copains ! <img class="smile normal" src="media/928ef04f.love.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/love.png"/> </p>
<p>Evidemment, gourmand comme je suis et totalement dépourvu de volonté (chuis qu'une merde  <img class="smile normal" src="media/b19fe667.myass.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/myass.png"/> ), je me suis jeté sur le caramel...</p>
<p><img src="http://poladroid.warriordudimanche.net/index.php?p=Ron-Swanson" alt="alt" /></p>
<p>Sur un petit bout de pain, allez encore un, bon je me fais une tartine, juste une deuxième pour finir mon pain, juste une cuillère c'est trop bon... (voir le sketch de <a href="https://www.youtube.com/watch?v=0W5q3gUfBQ0">bernard Azimuth</a> pour le ton)</p>
<p><img src="http://poladroid.warriordudimanche.net/index.php?p=IMG_20171206_110131" alt="alt" /></p>
<p>MERCI MON POTE !! \o/</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article751#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article752/5a4d23a0624bf
title: 11 CONNERIES DANS RABBI JACOB - BOM #43 - YouTube
uri: 11-CONNERIES-DANS-RABBI-JACOB-BOM-43-YouTube
url: https://www.youtube.com/watch?v=fKgaTksu6VY
content:
<img src="media/a3353879.les-aventures-de-rabbi-jacob.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/les-aventures-de-rabbi-jacob.jpg" style="width:100%;height:auto"/><p>Excellente critique et remarques très pertinentes.<br />
Tout est dit dans la phrase finale. <br />
A regarder !<div class="via"><span title="Source du lien">Via LapinMasqué</span></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article752#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article753/5a574e9eb0c33
title: Mavo: A new, approachable way to create Web applications
uri: Mavo-A-new-approachable-way-to-create-Web-applications
url: https://mavo.io/
content:
./plugins//WDDWebLinks/default_image.jpg<p>Tiens, à regarder de près...<br />
<br />
What is Mavo?<br />
<br />
Mavo extends the syntax of HTML to describe Web applications that manage, store, and transform data.<br />
Store data in the cloud, locally, or not at all by just changing an HTML attribute<br />
Edit data right in the website, with an intuitive, auto-generated, customizable interface. No more wrestling with CMSes and servers!<br />
Multimedia uploads in your page via drag &amp; drop, pasting, or browsing, without a single line of code.<br />
Perform calculations right in the HTML, that update when needed. No need to write JavaScript!<br /></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article753#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article754/5a58d6ea42bfd
uri: APLOMB-Si-vous-êtes-harcelé-par-un-huissier-ou-un-cabinet-de-recou
url: https://antibanque.blogspot.fr/2011/07/si-vous-etes-harcele-par-un-huissier-ou.html
title:
APLOMB : Si vous êtes harcelé par un huissier ou un cabinet de recouvrement, envoyez leur cette lettre. Elle a un pouvoir… apaisant.

content:
<img src="media/a54885f4.ment-envoyez-leur-cette-lettre-elle-a-un-pouvoir-apaisant-k1.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/aplomb-si-vous-etes-harcele-par-un-huissier-ou-un-cabinet-de-recouvrement-envoyez-leur-cette-lettre-elle-a-un-pouvoir-apaisant-k1.jpg" style="width:100%;height:auto"/><blockquote>
<p>Messieurs,<br />
<br />
Vous m’avez prévenu que l’organisme XXX vous a mandaté pour recouvrir une certaine créance.<br />
<br />
Cette somme étant l’objet d’une contestation de ma part, j’use de mon droit de demander l’arbitrage de l’autorité judiciaire.<br />
<br />
Il appartient donc à cet organisme de solliciter le juge d’instance aux fins d’obtenir une « ordonnance portant injonction de payer ».<br />
<br />
Le cas échéant, dès que celle-ci me sera signifiée par voie d’huissier, et en fonction des éléments présentés, je me réserve le droit, soit de payer, soit d’y faire opposition dans le délai d’un mois.<br />
<br />
Le juge d’instance ou de proximité me convoquera en audience et je pourrais alors lui exposer mon point de vue, documents à l’appui.<br />
<br />
Le juge pourra alors valablement trancher sur la validité de ladite créance ou non.<br />
<br />
Il n’y a pas d’autres procédures. Je vous demande donc expressément de cesser vos relances et d’informer l’organisme qui vous a mandaté de ma position.<br />
<br />
A partir de la date de réception de cette lettre, toutes relances de votre part, tant par courrier que par téléphone, seront considérées comme du harcèlement et de l’intimidation. Je n’hésiterai pas à porter plainte pour ce motif, ce qui hypothèquera sérieusement vos chances d’obtenir la validation de la dette par les voies judiciaires.<br />
<br />
Je vous prie de croire, messieurs, en l’expression de mes sentiments respectueux.<br />
<br />
<br />
<br />
<br />
<br />
<br />
&lt;3<div class="via"><span title="Source du lien">Via crashweb</span></div><br/><br/><div class="img_source"><a href="media/4bb2f17f.k1.jpg" data-original-source="http://nerdalors.fr/wp-content/uploads/2008/12/k1.jpg">Source image</a></div></p>
</blockquote>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article754#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article756/5a5f31cb0a1c5
title: “Stop Using CSS Selectors for Non-CSS”
uri: Stop-Using-CSS-Selectors-for-Non-CSS
url: https://css-tricks.com/stop-using-css-selectors-non-css/
content:
<img src="media/6ffe3bd4.-Do-Overload-Googles-Fetch-And-Mobile-Testing-Tools-1030x644.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/stop-using-css-selectors-for-non-css-JavaScript-And-CSS-Includes-Do-Overload-Googles-Fetch-And-Mobile-Testing-Tools-1030x644.jpg" style="width:100%;height:auto"/><p>Une réflexion intéressante que je garderai en mémoire: ne réserver les classes css que pour styler, pas pour cibler en js.<br />
Donc en résumé, au lieu de <br />
```<br /></p>
<article class="article"><br />
</article><br />
<br />
et <br />
<br />
$(".article") <br />
```<br />
<br />
Préférer:<br />
<br />
```<br />
<article class="article" data-hoverable><br />
</article><br />
<br />
et <br />
<br />
$("[data-hoverable]")<br />
```<br />
<br />
On sépare ainsi les classes (styling) des attributs data-* (scripting js)<br />
<br />
<br/><br/><div class="img_source"><a href="media/a3a1b187.-Do-Overload-Googles-Fetch-And-Mobile-Testing-Tools-1030x644.jpg" data-original-source="https://www.inetsolutions.org/wp-content/uploads/2016/03/JavaScript-And-CSS-Includes-Do-Overload-Googles-Fetch-And-Mobile-Testing-Tools-1030x644.jpg">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article756#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article755/5a5f2f2a6f644
title: Homicide à Châtelet : on ne sait pas combien de passagers ont ainsi filmé
uri: Homicide-à-Châtelet-on-ne-sait-pas-combien-de-passagers-ont-ainsi
url:
https://www.nouvelobs.com/rue89/notre-epoque/20180115.OBS0621/homicide-a-chatelet-on-ne-sait-pas-combien-de-passagers-ont-ainsi-filme.html

content:
<img src="media/d1fc5e60.-sait-pas-combien-de-passagers-ont-ainsi-filme-titanic-today.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/homicide-a-chatelet-on-ne-sait-pas-combien-de-passagers-ont-ainsi-filme-titanic-today.jpg" style="width:100%;height:auto"/><p><img class="smile xbig" src="media/311d3c40.attentionvomi.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/attentionvomi.png"/> <br />
On en est là.<br />
En 2018.<br />
Le premier réflexe des gens est de filmer et de poster plutôt que d'aider ou même simplement de tenir la main du gars pour qu'il ne meure pas seul. <br />
<br />
On se demande où va l'<strong>H</strong>umanité mais personne se se rend compte que l'<strong>h</strong>umanité a déjà presque disparue.<br />
<br /></p>
<blockquote>
<p><strong><em>humanité</em></strong>: Disposition à la compréhension, à la compassion envers ses semblables, qui porte à aider ceux qui en ont besoin.<br />
<a href="http://www.larousse.fr/dictionnaires/francais/humanit%C3%A9/40625">Larousse</a></p>
</blockquote>
<p>Compréhension et compassion...<br />
Cherchez dans les infos et événements mondiaux quoi que ce soit qui puisse prouver qu'on est dans la bonne voie en la matière.<br />
Je vous donne quelques pistes: <br />
<br /></p>
<h2>France:<br /></h2>
<ul>
<li>politique intérieure Macronienne (et Hollandienne avant -&gt; Vallsienne)<br /></li>
<li>politique d'immigration ( '' )<br /></li>
<li>propos tenus par les politiques à propos des migrants, des chômeurs, des femmes [insérez ici d'autres catégories de citoyens.nes opprimé.es]<br /></li>
<li>émissions à la télé : téléréalités qui apprennent à éliminer l'autre et enseignent la médiocrité intellectuelle et morale, les émissions avec des équipes de clowns qui se croient drôles en pratiquant «l'humour» oppressif, la discrimination, la culture du viol, l'humiliation etc, pseudo émissions «intellectuelles» prétendant montrer une réflexion politique objective tout en invitant des gens du même bord etc. etc.<br /></li>
<li>publicité (en général)<br /></li>
</ul>
<h2>International: <br /></h2>
<ul>
<li>Trump (pour l'ensemble de son oeuvre)<br /></li>
<li>la montée des extrémismes dans le monde mais aussi au sein même de l'europe<br /></li>
<li>la fermeture progressive de toutes les frontières séparant les nantis/privilégiés des autres<br />
etc.etc.<br />
<img class="smile xbig" src="media/a3a4715f.wrong.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/wrong.jpg"/> <br />
<br />
Pour revenir au sujet de cet article de l'Obs, j'ose espérer que les générations qui viennent réagiront mieux: les collégiens sont formés aux gestes de premiers secours depuis une bonne décennie  et ils se montrent souvent plus responsables que bien des adultes. Peut-être reste-t-il un espoir ?<div class="via"><span title="Source du lien">Via SammyFisher</span></div><br/><br/><div class="img_source"><a href="media/532fe678.titanic-today.jpg" data-original-source="https://www.byothe.fr/wp-content/uploads/2017/01/titanic-today.jpg">Source image</a></div></li>
</ul>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article755#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article757/5a60586470715
title: NDDL : « L’un des principaux enjeux est désormais celui de l’évacuation de la ZAD »
uri: NDDL-L-un-des-principaux-enjeux-est-désormais-celui-de-l-év
url:
http://www.lemonde.fr/idees/article/2018/01/17/nddl-l-un-des-principaux-enjeux-est-desormais-celui-de-l-evacuation-de-la-zad_5243056_3232.html

content:
<img src="media/c1bb35cf.s-celui-de-levacuation-de-la-zad-radicaux-libres-elimination.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/nddl-lun-des-principaux-enjeux-est-desormais-celui-de-levacuation-de-la-zad-radicaux-libres-elimination.jpg" style="width:100%;height:auto"/><p>@Sammy<br />
Je rigolerais que les forces de l'ordre ne trouvent que des gens pacifiques et prêts à s'intégrer à la localité, tiens...<br />
&quot;- Chef,chef, yen a aucun de ces pourris de radicalisés...<br />
-Merde, t'as bien cherché ?<br />
-Ben ça, pour les chercher, on les a bien cherchés, comme d'hab': provocations, insultes, menaces... Mais non, rien !<br />
-Spapossib' ! Chuis pas dans la merde, qu'est-ce que je vais bien pouvoir dire au patron ?!&quot;<br />
<br />
D'autres part, ça leur permettrait de rester dans de bonnes conditions (apparemment, le maire serait tout-à-fait d'accord et les agriculteurs du coin semblent bien s'entendre avec eux...) et légalement (pour faire taire tous ceux qui les accusent d’extrémisme, d'être des asociaux etc.)<br />
<br /></p>
<div class="via"><span title="Source du lien">Via SammyFisher</span></div><br/><br/><div class="img_source"><a href="media/e0009ff4.radicaux-libres-elimination.jpg" data-original-source="https://www.authentico.fr/wp-content/uploads/2017/06/radicaux-libres-elimination.jpg">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article757#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article759/5a60817d29749
title: What Web Can Do Today
uri: What-Web-Can-Do-Today
url: https://whatwebcando.today/
content:
<img src="media/7806237d.what-web-can-do-today-API-illustration-ss-1920.gif" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/what-web-can-do-today-API-illustration-ss-1920.gif" style="width:100%;height:auto"/><p>Pas mal ça: un site sur les API disponibles dans les navigateurs. Très bien foutu.<br />
<br />
par exemple,  page visibility:<br /></p>
<ul>
<li>document.hidden: Returns true if the page is currently hidden.<br /></li>
<li>document.visibilityState: Returns current visibility state: visible, hidden, prerender or unloaded.<br /></li>
<li>document.addEventListener('visibilitychange')<br />
<br />
sympa !<div class="via"><span title="Source du lien">Via Korben</span></div><br/><br/><div class="img_source"><a href="media/b57f00f7.API-illustration-ss-1920.gif" data-original-source="https://martechtoday.com/wp-content/uploads/2016/09/API-illustration-ss-1920.gif">Source image</a></div></li>
</ul>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article759#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article758/5a607703a3bc0
title: 5 exciting new HTML and CSS features to look forward to in 2018
uri: 5-exciting-new-HTML-and-CSS-features-to-look-forward-to-in-2018
url: https://www.catswhocode.com/blog/5-exciting-new-html-and-css-features-to-look-forward-to-in-2018
content:
<img src="media/f666d4a1.https-keithjgrant-com-images-2018native-dialog-styled.png" data-original-source="http://www.warriordudimanche.net/data/medias/https-keithjgrant-com-images-2018native-dialog-styled.png" style="width:100%;height:auto"/><img class="smile xbig" src="media/03909da5.wouhou.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/wouhou.jpg"/>   
<p>Les nouveautés du HTML 5.2...</p>
<h1>Native Dialog element</h1>
<p>Un élément pour faire des dialogbox facilement </p>
<pre><code>&lt;dialog&gt;  
  &lt;h2&gt;Your title&lt;/h2&gt;
  &lt;p&gt;Your content...&lt;/p&gt;
&lt;/dialog&gt;

modal.addEventListener('click', (event) =&gt; {
  if (event.target === modal) {
    modal.close('cancelled');
  }
});

modal.close('Accepted');

console.log(modal.returnValue); // logs `Accepted`</code></pre>
<img class="smile big" src="media/b589a631.mouille.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/big/mouille.jpg"/>  
<h1>CSS scroll snap points</h1>
<p>Des points d'arrêts lors d'un défilement</p>
<h1>CSS Variables</h1>
<p>On connaissait déjà, mais bon, c'est chouette quand même \o/</p>
<h1>Support queries</h1>
<p>Créer des règles css en fonction de leur support sur le navigateur</p>
<pre><code>@supports (mix-blend-mode: overlay) {
  .example {
    mix-blend-mode: overlay;
  }
}

@supports not(mix-blend-mode: overlay) {
  .example {
    /* alternative styles here */
  }
}</code></pre>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article758#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article760/5a6235efd5b61
title: Minecraft Apps - Overview
uri: Minecraft-Apps-Overview
url: http://chunkbase.com/apps/
content:
<img src="media/53d9daea.minecraft-apps-overview-banner420.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/minecraft-apps-overview-banner420.png" style="width:100%;height:auto"/><p>Un finder pour savoir où trouver les trucs intéressants sur une map de minecraft (à partir du seed ou d'un fichier)
Vraiment utile !<br />
<img src="media/f612b0c4.selection_536.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/captures/selection_536.png" alt="alt" /></p>
<p><img src="media/7f65ff48.selection_537.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/captures/selection_537.png" alt="alt" /></p>
<p><br/><br/><div class="img_source"><a href="media/b5d169cf.banner420.png" data-original-source="http://chunkbase.com/img/banner420.png">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article760#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article762/5a6729912bea9
title: Escobabar sur Twitter :
uri: Escobabar-sur-Twitter
url: https://twitter.com/sophare/status/955491135941742598
content:
<img src="media/78566cc7.6d7bfcd1ed85b0fd65fc407e33150d0c_thumb_565.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/6d7bfcd1ed85b0fd65fc407e33150d0c_thumb_565.jpg" style="width:100%;height:auto"/><p>Ben oui, c'est évident: quand tu es dans un pays dont tu n'es pas originaire, tu te regroupes avec ceux qui sont dans ton cas et tu parles ta langue... un peu comme à l'armée on se retrouvait rapidement entre étudiants sans même en avoir parlé: qui se ressemble s'assemble.<br />
<br />
Pour les blancs, c'est normal, pour les autres, c'est du communautarisme.<br />
...<br />
Tout le billet vaut son pesant de lutte citoyenne, mais je cite un peu:<br />
<br /></p>
<blockquote>
<p>Juste pour dire, ceux qui tiennent ses propos, c'est parfois également et aussi indécent que ça puisse paraître ceux qui vivent dans nos pays d'origines, entourés de haies de 4m de haut et parfois de barbelés, dans des quartiers ou l'on ne parle que français<br />
<br />
J'ai habité au Maroc, j'y ai passé ma terminale dans un lycée français<br />
Tous les français du lycée vivaient dans des ghettos bIancs, dans d'immenses baraques exploitant plusieurs domestiques pour des salaires de misère, ne sortant jamais de ces quartiers<br />
<br />
Aucun de ces français ne parlait arabe, pas même ceux qui était nés là bas. Pire encore, personne ne faisait l'effort d'apprendre, et presque tous s'impatientaient voire s'énervaient quand les locaux ne comprenaient pas leur français<br />
<br />
Quasiment tous étaient de droite, la plupart avaient de forts relents d'islamophobie et voyaient les locaux comme des autochtones un peu stupides mais gentils. Qu'on ne s'y méprenne pas : les &quot;expatriés&quot; n'échappent pas à l'appellation d'&quot;immigrés&quot; sans raison. Ce sont des colons<br />
<br /></p>
<h1>relentsDeColonialisme #leBonIndigene #faisCeQueJeDisPasCeQueJeFais<br /></h1>
<p><br />
<img class="smile big" src="media/faaa3447.partivomir.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/big/partivomir.png"/> <br/><br/><div class="img_source"><a href="media/1fffbf7f.6d7bfcd1ed85b0fd65fc407e33150d0c_thumb_565.jpg" data-original-source="https://static.yabiladi.com/files/articles/6d7bfcd1ed85b0fd65fc407e33150d0c_thumb_565.jpg">Source image</a></div></p>
</blockquote>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article762#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article761/5a67277c1af69
title: Jelly - css-html-js
uri: Jelly-css-html-js
url: https://codepen.io/dissimulate/pen/dJgMaO
content:
./plugins//WDDWebLinks/default_image.jpg<p>Oui, très joli... par contre ça te me fout Firefox à genoux direct...  <img class="smile normal" src="media/73a2ceae.facepalm.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/facepalm.png"/> <br />
<em>/me passe sous chromium</em> <img class="smile " src="media/b8e47026.omg.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/omg.png"/>ohhh c'est fluiiiiiide ! <img class="smile normal" src="media/26a2c0f5.oooh.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/oooh.png"/> <br />
<br />
<img class="smile big" src="media/835b585c.troll.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/big/troll.png"/> <div class="via"><span title="Source du lien">Via Kalvn's Links</span></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article761#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article763/5a6841c26d05c
uri: Loïc-Mathaud-sur-Twitter-Sinon-ils-peuvent-juste-payer-leurs-impôt
url: https://twitter.com/loicmathaud/status/955709677542821888
title:
Loïc Mathaud sur Twitter : Sinon ils peuvent juste payer leurs impôts qui serviront, entre autre, à l'éducation

content:
<img src="media/ec6cc74b.selection_538.png" data-original-source="http://www.warriordudimanche.net/data/medias/selection_538.png" style="width:100%;height:auto"/><p>Google qui fait un coup de com avec l'aide de notre <strong><em>très cher</em></strong> <del>roi</del> président.<br /></p>
<p><p style="text-align:center"><img src="media/84783999.savoir-fr-wp-content-uploads-2012-12google-apps-for-business.jpg" data-original-source="http://warriordudimanche.net/data/medias/http-www-havredesavoir-fr-wp-content-uploads-2012-12google-apps-for-business.jpg" alt="flouze" /></p></p>
<h3>Faisons nos comptes: petite «analyse» sans prétention:<br /></h3>
<p><br />
En gros, ils «offrent» 100.000 «formations numériques» par an aux français (aucune précision sur la durée ou les modalités de ces formations, comme le nombre de participants par session, le contenu, le type de formation etc.)<br />
Bon, mettons que chaque formation coûte <u>à Google</u> entre 500 et 1000€/pers. (supposition basée sur une recherche rapide du prix des formations au numérique, faute de mieux compte tenu de l'opacité de l'information). Coût total de l'opération pour le géant amerloque: entre 50.000.000 et 100.000.000 € par an.<br />
<br /></p>
<ul>
<li>Revenus <strong><em>officiels</em></strong> de Google <strong><em>France</em></strong> en 2017: 299 301 900 € (<a href="https://www.societe.com/societe/google-france-443061841.html#chiffrecle">https://www.societe.com/societe/google-france-443061841.html#chiffrecle</a> )<br /></li>
<li>Revenus réels estimés (2014) :  »France devrait compter pour environ 2,5 milliards» (<a href="https://www.linformaticien.com/actualites/id/39655/les-vrais-chiffres-de-google-france-10-de-la-realite-de-l-activite.aspx">https://www.linformaticien.com/actualites/id/39655/les-vrais-chiffres-de-google-france-10-de-la-realite-de-l-activite.aspx</a> ) <br />
Ce second chiffre ne semble en effet pas aberrant compte tenu du chiffre d'affaires annuel de Google en 2016 : 90 Milliards de dollards.(<a href="https://fr.statista.com/statistiques/565392/chiffre-d-affaires-annuel-de-google/">https://fr.statista.com/statistiques/565392/chiffre-d-affaires-annuel-de-google/</a> )
<img src="media/654f2123.cagoogle.png" data-original-source="http://warriordudimanche.net/data/medias/cagoogle.png" alt="CA de google" /></li>
<li>Arriérés d'impôts estimés par le fisc français:  1,6 milliards d'euros. (<a href="http://www.lemonde.fr/economie/article/2016/02/25/le-fisc-reclame-1-6-milliard-d-euros-a-google_4871155_3234.html">http://www.lemonde.fr/economie/article/2016/02/25/le-fisc-reclame-1-6-milliard-d-euros-a-google_4871155_3234.html</a> )</li>
</ul>
<p>Donc -c'est évident, mais ça va mieux en le disant- <strong><em>Google ne nous fait pas un cadeau avec cette proposition</em></strong>, il retourne une situation déjà scandaleuse à son avantage.</p>
<hr />
<p><p style="text-align:center"><img src="media/8dcbfd5a.84886-pierre-palmade-712519-1-fre-fri17284886-pierre-palmade.jpg" data-original-source="http://warriordudimanche.net/data/medias/http-www-ina-fr-var-ogpv3-storage-images-contenus-editoriaux-notices-i17284886-pierre-palmade-712519-1-fre-fri17284886-pierre-palmade.jpg" alt="le colonel" /></p></p>
<h3>Mais c'est nouveau ces petites formations si sympas, là ?!</h3>
<p>Ben non.</p>
<ul>
<li>2015: <a href="https://www.blogdumoderateur.com/google-formation-pour-les-pros/">https://www.blogdumoderateur.com/google-formation-pour-les-pros/</a></li>
<li>2016: <a href="http://transition-numerique.fr/2016/01/05/google-france-lance-un-programme-gratuit-de-formation-en-ligne-aux-outils-numeriques/">http://transition-numerique.fr/2016/01/05/google-france-lance-un-programme-gratuit-de-formation-en-ligne-aux-outils-numeriques/</a></li>
<li>2017: <a href="https://www.challenges.fr/high-tech/google-lance-un-programme-de-70-000-formations-au-numerique-en-france_472813">https://www.challenges.fr/high-tech/google-lance-un-programme-de-70-000-formations-au-numerique-en-france_472813</a>
En gros, la plate-forme de formation est en ligne depuis un moment...</li>
</ul>
<hr />
<p><p style="text-align:center"><img src="media/58dc29e1.5-33-23-20160228ob_85f255_article-creer-propre-secte-542x276.jpg" data-original-source="http://warriordudimanche.net/data/medias/http-img-over-blog-kiwi-com-0-65-33-23-20160228ob_85f255_article-creer-propre-secte-542x276.jpg" alt="secte" /></p></p>
<h3> Et on n'a pas encore parlé du contenu de ces formations ?!</h3>
<p>Ben non, hein, ce serait trop simple.
Quand on cherche un peu, on s'aperçoit que d'habitude, les «formations» proposées par Google sont  à distance: on se connecte à un site et on suit un tuto amélioré...
Coût réel de l'opération pour le géant étatsuniens, dont l'activité principale -rappelons-le- est l'hébergement de <strong><em>ses propres serveurs</em></strong> avec des <strong><em>capacités de stockage et de traitement dantesques</em></strong>:<u> peanuts</u>.
Héberger une chtite plate-forme d'e-learning accessibles à 100.000 personnes par an... ?! </p>
<img class="smile medium" src="media/70bdd6aa.lol.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/medium/lol.png"/> 
<p>Mouhouhaha.</p>
<p><p style="text-align:center"><img src="media/edaa10cc.pression-com-wp-content-uploads-2011-12jean-claude-convenant.jpg" data-original-source="http://warriordudimanche.net/data/medias/http-www-aix-pression-com-wp-content-uploads-2011-12jean-claude-convenant.jpg" alt="deplus" /></p>
<p>Qui plus outre (et non des moindres)
</p>
Quel contenu les <del>victimes</del> usagers de <del>cette arnaque</del> ce service vont-ils recevoir ?
Petit florilège des «formations» proposées sur <a href="https://learndigital.withgoogle.com/pourlespros/topic-library">https://learndigital.withgoogle.com/pourlespros/topic-library</a> :</p>
<ul>
<li>Les opportunités qu'offre Internet (pour piner tout le monde, c'est bien ça ?!)</li>
<li>Vos premiers pas vers le succès sur Internet (facile, créez une entreprise basée en Irlande et pratiquez le fiscfucking)</li>
<li>Développez votre présence en ligne (et gavez-vous avec les données que vous collectez)</li>
<li>Communiquez grâce aux e-mails (ça sent la formation d'avenir)</li>
<li>Familiarisez-vous avec la recherche (apprenez à être dépendant de NOS services, les autres c'est tous des cons #traduisonsLes)</li>
<li>Faites-vous connaître grâce à la recherche (apprenez à nous payer pour remonter dans nos résultats)</li>
<li>Faites en sorte que la recherche fonctionne pour votre entreprise (cf ci-dessus)</li>
<li>Faites-vous remarquer grâce aux annonces sur les moteurs de recherche (cf ci-dessus)</li>
<li>Améliorez vos campagnes sur les moteurs de recherche (ha ben c'est tout pareil, alors ?!)</li>
<li>Aidez les gens près de vous à vous trouver en ligne (devenez de bons petits collabos en transmettant l'idée que seul Google est bien)</li>
<li>Tirez profit des opportunités qu'offre le mobile (et apprenez à pomper sans vergogne les données personnelles)</li>
<li>Approfondissez la publicité display (devenez un agent de cette société de merde où le <strong><em>CON</em></strong>sommateur doit être stimulé par la pub où qu'il se trouve cf <a href="https://lentreprise.lexpress.fr/marketing-vente/promotion-communication/la-pub-dans-les-toilettes-c-est-bon-pour-le-trafic_1526276.html">https://lentreprise.lexpress.fr/marketing-vente/promotion-communication/la-pub-dans-les-toilettes-c-est-bon-pour-le-trafic_1526276.html</a> attention, c'est l'express, donc, nausées à la clé)</li>
<li>Développez-vous à l'international (tout en n'ayant officiellement qu'une petite entreprise de 7500€ de capital)</li>
<li>La puissance de la vidéo sur Internet (et de la pub forcée avant les vidéos de votre plate-forme, et de la censure)
etc. etc.</li>
</ul>
<p>C'est chouette <del>le formatage</del> la formation proposée par ces salopards ?! un magnifique projet de société...</p>
<hr />
<p><p style="text-align:center"><img src="media/a313167e.http-md1-libe-com-photo685856--.jpg" data-original-source="http://warriordudimanche.net/data/medias/http-md1-libe-com-photo685856--.jpg" alt="dans l'cul lulu" /></p></p>
<h3>Conclusion</h3>
<p>C'est de la mârde.
Non seulement le président autorise Google à ne pas payer ce qu'il nous doit, <a href="http://www.economiematin.fr/news-canard-enchaine-loi-macron-cadeau-fiscal">comme à son habitude</a>, mais en plus ils se foutent ouvertement de notre gueule en réchauffant du vieux vomi à la crotte de nez.</p>
<p>Quand le culot éhonté se mêle au cynisme le plus complet ça donne ça. A sa façon, Google est à l'humanité ce que les usines sont à la beauté: Vous savez, ces usines tellement hideuses et immondes qu'elles en deviennent fascinantes...<br />
<br />
Face aux profondeurs abyssales de leur manque de solidarité et d'humanité, on est pris de vertige parfois.<br /></p>
<p>Tu peux te les coller dans le côlon, tes formations gratuites, mon connard, on te les laisse et on va continuer à se former sans toi.
En attendant, paye ce que tu nous dois, enfoiré.</p>
<p><br /></p>
<h3>résumé des sources:<br /></h3>
<ul>
<li><a href="https://www.linformaticien.com/actualites/id/39655/les-vrais-chiffres-de-google-france-10-de-la-realite-de-l-activite.aspx">https://www.linformaticien.com/actualites/id/39655/les-vrais-chiffres-de-google-france-10-de-la-realite-de-l-activite.aspx</a><br /></li>
<li><a href="https://www.linformaticien.com/actualites/id/39648/google-france-1-6-milliard-d-arrieres-d-impots-reclames.aspx">https://www.linformaticien.com/actualites/id/39648/google-france-1-6-milliard-d-arrieres-d-impots-reclames.aspx</a><br /></li>
<li><a href="http://www.economiematin.fr/news-canard-enchaine-loi-macron-cadeau-fiscal">http://www.economiematin.fr/news-canard-enchaine-loi-macron-cadeau-fiscal</a></li>
<li><a href="https://www.blogdumoderateur.com/google-formation-pour-les-pros/">https://www.blogdumoderateur.com/google-formation-pour-les-pros/</a></li>
<li><a href="http://transition-numerique.fr/2016/01/05/google-france-lance-un-programme-gratuit-de-formation-en-ligne-aux-outils-numeriques/">http://transition-numerique.fr/2016/01/05/google-france-lance-un-programme-gratuit-de-formation-en-ligne-aux-outils-numeriques/</a></li>
<li><a href="https://lentreprise.lexpress.fr/marketing-vente/promotion-communication/la-pub-dans-les-toilettes-c-est-bon-pour-le-trafic_1526276.html">https://lentreprise.lexpress.fr/marketing-vente/promotion-communication/la-pub-dans-les-toilettes-c-est-bon-pour-le-trafic_1526276.html</a></li>
<li><a href="https://www.challenges.fr/high-tech/google-lance-un-programme-de-70-000-formations-au-numerique-en-france_472813">https://www.challenges.fr/high-tech/google-lance-un-programme-de-70-000-formations-au-numerique-en-france_472813</a>
<div class="via"><span title="Source du lien">Via https://nicolas-delsaux.hd.free.fr/Shaarli/</span></div></li>
</ul>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article763#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article764/5a701ad7405c8
title: Procès de jawad
uri: Procès-de-jawad
url: https://lundi.am/jawad
content:
<img src="media/c3383432.https-s2-ssl-dmcdn-net-pciuax240-_55.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/https-s2-ssl-dmcdn-net-pciuax240-_55.jpg" style="width:100%;height:auto"/><p>Un article très intéressant histoire de ne pas avoir que la version BFMTV &amp; Paris Match et de ne pas se contenter de l'opinion que cette version peut donner. <br />
A lire.<div class="via"><span title="Source du lien">Via NekoBlog</span></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article764#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article766/5a709edb3c6b4
title: Regexper
uri: Regexper
url: https://regexper.com/
content:
./plugins//WDDWebLinks/default_image.jpg<p>Pour ma part, j'aime beaucoup <a href="https://regex101.com/">https://regex101.com/</a> <br />
Très complet et bien foutu...</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article766#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article765/touit-du-mardi-30-janvier-2018-a-17-31-12-python
title: Touit du Mardi 30 Janvier 2018 à 17:31:12 PYTHON !!!
uri: Touit-du-Mardi-30-Janvier-2018-à-17-31-12-PYTHON
content:
./plugins//WDDWebLinks/default_image.jpg<p>Je relaie mon appel mastodon ici, pour les ceusses qui ne me suivent pas sur le pachyderme...<br />
<br />
Salut les mammouths et la #teamVieux !<br />
Je cherche à me mettre à python et j'aimerais bien un GUI designer simple, kiss et intuitif, un peu du genre de notre cher vieux Visual basic *soupir nostalgique)<br />
<br />
J'aimerais bien dessiner l'interface et attacher des fonctions/méthodes aux événements des objets de l'interface (bouton-&gt;clic-&gt;fais ça)<br />
<br />
<br />
Je ne suis pas super convaincu (en un seul mot <img class="smile " src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/> #jeuDeMotToutPété)  par QT designer, qui me semble un peu touffu et peu intuitif...<br />
<br />
Une idée ?!</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article765#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article767/c-est-con-j-ai-ri-4
title: C'est con, j'ai ri 4
uri: C-est-con-j-ai-ri-4
content:
<img src="media/c4f48373.2f0onew.gif" data-original-source="http://www.warriordudimanche.net/data/medias/images/2f0onew.gif" style="width:100%;height:auto"/><p>Pour celles et ceux qui en ont marre de leur semaine, de la météo, de la politique, des affaires, des gens qui tuent leurs conjoints alors qu'ils faisaient genre «chuis trop inquiet sur la vie de ma reum», du code du travail, des inondations, qu'on leur parle de la Seine ou des nichons de la famille Kardachiants, voici un Dump du Dredi: attention, c'est con (mais j'ai ri  <img class="smile normal" src="media/73a2ceae.facepalm.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/facepalm.png"/> )</p><p class="picture"><img class="imgList" src="media/7fdef8b9.sub-buzz-22002-1490365356-5.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/sub-buzz-22002-1490365356-5.png"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/d52795ce.sf9KhhV.gif" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/sf9KhhV.gif"/>Quand tu penses avoir tout prévu.</p>
<p class="picture"><img class="imgList" src="media/574f45ab.selection-du-weekend-252-13.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/selection-du-weekend-252-13.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/b98b466e.ff958c7f4e790ebc54c08b476b915ff4.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/ff958c7f4e790ebc54c08b476b915ff4.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/c164752a.fc1f49be9159470e57fc69aa0440cd2a.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/fc1f49be9159470e57fc69aa0440cd2a.jpg"/>C'est pas faux...</p>
<p class="picture"><img class="imgList" src="media/1b39acfd.f63e8433df98f756cd14f4abd68abf73.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/f63e8433df98f756cd14f4abd68abf73.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/7fd707e9.efb297c6dea4769dc0fa75aeec26b799.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/efb297c6dea4769dc0fa75aeec26b799.jpg"/>Râlez pas, je vous avais prévenu... c'est con.</p>
<p class="picture"><img class="imgList" src="media/1def4419.e448393d6d560d03e0e42292577d7dc6.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/e448393d6d560d03e0e42292577d7dc6.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/b8d039a4.e12ebbbf597f26fbfe7bc4273b516158.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/e12ebbbf597f26fbfe7bc4273b516158.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/0f32b676.e0ff73cb2ecc11ad8ae80df476cc40ff.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/e0ff73cb2ecc11ad8ae80df476cc40ff.jpg"/>Tout s'explique.</p>
<p class="picture"><img class="imgList" src="media/2e14fff1.dfc7ddb303424873d95503f51e78184b.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dfc7ddb303424873d95503f51e78184b.jpg"/>Le retour de Tout s'explique.</p>
<p class="picture"><img class="imgList" src="media/d32f1b76.d433196555935fc0967c0e8f45c0712a.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/d433196555935fc0967c0e8f45c0712a.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/a2206a71.d294f0db9c5ac8f613284139441ed55f.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/d294f0db9c5ac8f613284139441ed55f.jpg"/>NSFW ?! ou pas ?!</p>
<p class="picture"><img class="imgList" src="media/92d3d67a.c1nlsPsSCWj7C7MuuFhQ_3.gif" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/c1nlsPsSCWj7C7MuuFhQ_3.gif"/>Saute pas dans les flaques, bordel ! Tu vas niquer tes chaussures... Plouf! et ton pantalon, et ton teeshirt, et ton blouson...</p>
<p class="picture"><img class="imgList" src="media/be40e022.c16ff313c027ebedd395214534ca0a7d.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/c16ff313c027ebedd395214534ca0a7d.jpg"/>covfefe... j'ai envie de dire...</p>
<p class="picture"><img class="imgList" src="media/cd28897d.b9d24d4c8a2838451adeb82325563dfd.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/b9d24d4c8a2838451adeb82325563dfd.jpg"/>Merde, j'ai encore ri.</p>
<p class="picture"><img class="imgList" src="media/f26658c3.b8c61bbca1050245aa534687842e7e3c.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/b8c61bbca1050245aa534687842e7e3c.jpg"/>C'est chaud, le sesque !</p>
<p class="picture"><img class="imgList" src="media/0d7902e3.b146ebf3e86b6ba900247b3b116b9fe1.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/b146ebf3e86b6ba900247b3b116b9fe1.jpg"/>ça permet aussi d'éviter de se retrouver en zonzon, aussi... ça compte.</p>
<p class="picture"><img class="imgList" src="media/93720d28.ad680bc65af313fcc22b755b77636e28.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/ad680bc65af313fcc22b755b77636e28.jpg"/>Oui, mais t'es PAS un cheval, ça doit jouer aussi.</p>
<p class="picture"><img class="imgList" src="media/77e3fb5f.a9b952e8ae62013c855b60a2bda1e349.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/a9b952e8ae62013c855b60a2bda1e349.jpg"/>Oui, je sais...</p>
<p class="picture"><img class="imgList" src="media/8a503c77.a833566d831d9d50d07daadebb9d976d.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/a833566d831d9d50d07daadebb9d976d.jpg"/>«Sheldor AFK»</p>
<p class="picture"><img class="imgList" src="media/3facd9b4.Stephen-forgets-that-he-isnt-on-the-Internet.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/Stephen-forgets-that-he-isnt-on-the-Internet.jpg"/>J'imagine un troll faire ça en vrai...  <img class="smile big" src="media/b589a631.mouille.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/big/mouille.jpg"/> </p>
<p class="picture"><img class="imgList" src="media/a7bfede7.NyjUB6O.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/NyjUB6O.jpg"/> <img class="smile medium" src="media/5963bdbb.pfch.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/medium/pfch.png"/> </p>
<p class="picture"><img class="imgList" src="media/ccfae0e2.Just-another-Star-Wars-spoiler.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/Just-another-Star-Wars-spoiler.jpg"/>Attention, SPOILER !  <img class="smile normal" src="media/a873be48.mdr.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/mdr.png"/> </p>
<p class="picture"><img class="imgList" src="media/a8b93cce.JEzT2GY.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/JEzT2GY.jpg"/>Non, mais faut vraiment que j'arrête de la regarder celle-là  <img class="smile normal" src="media/a873be48.mdr.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/mdr.png"/> </p>
<p class="picture"><img class="imgList" src="media/65a69859.9e06a48ad23b12938758fe66f05ba659.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/9e06a48ad23b12938758fe66f05ba659.jpg"/>Bon, si je suis pas le seul, alors, ça va...</p>
<p class="picture"><img class="imgList" src="media/5e972289.8796125580154955c6fa0004e96959a2.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/8796125580154955c6fa0004e96959a2.jpg"/>Moi, j'aime bien ... <img class="smile " src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/></p>
<p class="picture"><img class="imgList" src="media/920b3237.7bd273b6eac268836e3f3aa85a58576e.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/7bd273b6eac268836e3f3aa85a58576e.jpg"/>Pour la source, je suis pas certain certain notez...</p>
<p class="picture"><img class="imgList" src="media/2edc3059.7ac9930c16e2ad8acf90e0a0b1bda9c8.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/7ac9930c16e2ad8acf90e0a0b1bda9c8.jpg"/>Maiiiizoooooon!</p>
<p class="picture"><img class="imgList" src="media/b87004bb.6fee5be58e9cd9865d132b9173df3438.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/6fee5be58e9cd9865d132b9173df3438.jpg"/>ça expliquerait en effet beaucoup de choses !</p>
<p class="picture"><img class="imgList" src="media/f09a830c.675df05e03ceb0c8f3480eb2879f1017.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/675df05e03ceb0c8f3480eb2879f1017.jpg"/>Profite ma fille, profite.
Ça me rappelle la devise du nécrophile... c'est la même que celle du gars qui se baigne en Bretagne: «au début elle est froide mais après elle est bonne !» (cadeau)</p>
<p class="picture"><img class="imgList" src="media/733f6488.5630f430056b369c976ec14fa4561bd5.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/5630f430056b369c976ec14fa4561bd5.jpg"/>Attention ! Les chats sont solubles dans l'eau !</p>
<p class="picture"><img class="imgList" src="media/40c771d2.33bf261c155fd9546ffdf2dc7f503e35.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/33bf261c155fd9546ffdf2dc7f503e35.jpg"/>La roue, c'est pour moi... (sisi ça me fait plaisir <img class="smile " src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/>)</p>
<p class="picture"><img class="imgList" src="media/86b8a6ed.30c3a5f119e8b56b44b8daa56e412695.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/30c3a5f119e8b56b44b8daa56e412695.jpg"/>True story</p>
<p class="picture"><img class="imgList" src="media/804b5db0.24ec95b040ad8da710fbc80636ab34f3.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/24ec95b040ad8da710fbc80636ab34f3.jpg"/>Meumeuhpmorgue</p>
<p class="picture"><img class="imgList" src="media/fbb25982.186a6e49260179a38540f44591d90a55.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/186a6e49260179a38540f44591d90a55.jpg"/>En effet, envisagé sous cet angle...</p>
<p class="picture"><img class="imgList" src="media/c089bf33.17f97c242d20480668092ecaa0fa916d.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/17f97c242d20480668092ecaa0fa916d.jpg"/>Jusqu'ici, tout va bien.</p>
<p class="picture"><img class="imgList" src="media/71d0d678.0bIpKbU.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/0bIpKbU.jpg"/>Un cheval qui a du chien...  <img class="smile normal" src="media/615d8db3.dsl.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/dsl.png"/> </p>
<h1>Une spéciale pour les Devs</h1>
<p class="picture"><video controls><source src="media/7bf10d07.When-fixing-one-bug-leads-to-another.mp4" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/When-fixing-one-bug-leads-to-another.mp4" type="video/mp4"/></video>
Quand un bug te conduit à un autre... (old) </p>
<p class="picture"><img class="imgList" src="media/3e7d63e7.What-were-you-doing.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/What-were-you-doing.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/934f5c16.Web-development-explained-with-butt-analogies.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Web-development-explained-with-butt-analogies.jpg"/>Oui, c'est plus clair comme ça, en effet...</p>
<p class="picture"><img class="imgList" src="media/2773095b.WWP-WORLD-WIDE-PROGRAMMING.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/WWP-WORLD-WIDE-PROGRAMMING.jpg"/>TOUT SUR DAVE !</p>
<p class="picture"><img class="imgList" src="media/4bcb94ac.Troubleshooting.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Troubleshooting.jpg"/>Non, mais sans d'conner, sérieux: qui sont ces gens qui font des vidéos pour montrer du code en te «parlant» via un éditeur de texte... quels sont leurs réseaux ?!</p>
<p class="picture"><img class="imgList" src="media/13fb6f8b.Stylepositionrelativeleft1px.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Stylepositionrelativeleft1px.jpg"/><3</p>
<p class="picture"><img class="imgList" src="media/5f21bcdd.Software-is-never-finished.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Software-is-never-finished.jpg"/>«Et mentir ?! Vous savez mentir ?! à la cour, c'est très utile !»</p>
<p class="picture"><video controls><source src="media/0d49d9ce.Software-development.mp4" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Software-development.mp4" type="video/mp4"/></video>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/d4209cf7.gramming-Hide-and-Seek-Championship-now-with-free-comic-sans.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Programming-Hide-and-Seek-Championship-now-with-free-comic-sans.jpg"/> <img class="smile normal" src="media/172f79b9.drogue.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/drogue.png"/> </p>
<p class="picture"><img class="imgList" src="media/1969da73.Personal-projects.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Personal-projects.jpg"/>Welcome to my world !</p>
<p class="picture"><img class="imgList" src="media/6d9bee1c.OhI-get-it-Now-No-Wonder-they-Expect-Everything-from-Us.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/OhI-get-it-Now-No-Wonder-they-Expect-Everything-from-Us.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/61419a53.Nice-work-JavaScript.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Nice-work-JavaScript.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/330caefe.My-Girlfriend-is-learning-some-coding-for-her-job.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/My-Girlfriend-is-learning-some-coding-for-her-job.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/172b931b.Just-got-my-new-StackOverflow-keyboard.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Just-got-my-new-StackOverflow-keyboard.jpg"/>Yes ! Mon clavier StackOverflow est arrivé !</p>
<p class="picture"><img class="imgList" src="media/88f437c2.Its-always-been-you.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Its-always-been-you.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/9fc621a5.IT-people-can-probably-relate-to-this.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/IT-people-can-probably-relate-to-this.jpg"/>Ben oui...</p>
<p class="picture"><img class="imgList" src="media/8e8ae73d.I-fixed-it.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/I-fixed-it.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/a8aa9acf.How-users-see-security-warnings.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/How-users-see-security-warnings.jpg"/>Le message d'erreur ultime</p>
<p class="picture"><video controls><source src="media/c683cc91.u-sweep-the-floors-real-quick-spends-two-weeks-building-this.mp4" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Honey-can-you-sweep-the-floors-real-quick-spends-two-weeks-building-this.mp4" type="video/mp4"/></video>
Quand tu demandes à un programmeur de balayer l'allée...</p>
<p class="picture"><img class="imgList" src="media/5a279a3e.Got-some-catching-up-to-do.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Got-some-catching-up-to-do.jpg"/> <img class="smile xbig" src="media/2f186608.danslamerde.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/danslamerde.jpg"/> </p>
<p class="picture"><img class="imgList" src="media/5bc79bbc.Found-this-in-my-schools-networking-lab.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Found-this-in-my-schools-networking-lab.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/8f34fa55.Every-time-learning-a-new-programming-language.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Every-time-learning-a-new-programming-language.jpg"/>Oui, moi aussi, j'en ai marre...</p>
<p class="picture"><img class="imgList" src="media/383f5fcf.Evacuation-Procedure.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Evacuation-Procedure.jpg"/>Parce que la vie est une question de priorités (notamment en bagnole)</p>
<p class="picture"><img class="imgList" src="media/365262b9.Ermm--.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Ermm--.jpg"/>Tellement ça ! </p>
<p class="picture"><img class="imgList" src="media/ab93e265.Easy-way-to-explain-it.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Easy-way-to-explain-it.jpg"/>&nbsp;</p>
<p class="picture"><video controls><source src="media/263974c6.Debugging-code.mp4" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Debugging-code.mp4" type="video/mp4"/></video>
Quand je débuggue mon code</p>
<p class="picture"><img class="imgList" src="media/8d7762b4.Client-side-validation.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/Client-side-validation.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/7f4c4e8b.All-GUI-app-explained-in-one-image-.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/All-GUI-app-explained-in-one-image-.jpg"/>&nbsp;</p>
<p class="picture"><img class="imgList" src="media/9d0e4381.99-Little-bugs-in-the-code.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/99-Little-bugs-in-the-code.jpg"/>'tain, ça y est, je l'ai dans la tête...</p>
<p class="picture"><img class="imgList" src="media/e85849ef.7-circles-of-Developer-Hell.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/dev/7-circles-of-Developer-Hell.jpg"/>&nbsp;</p>
<h1>Allez, ça suffit !</h1>
<p class="picture"><img class="imgList" src="media/9d51cd1e.nwqyyMH.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/j-ai-ri4/nwqyyMH.jpg"/>&nbsp;</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article767#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article768/5a7d5a5cb9d95
title: Tu prendras bien une crêpe à la vie privée ? – Inside My Head
uri: Tu-prendras-bien-une-crêpe-à-la-vie-privée-Inside-My-Head
url: https://www.hackorn.club/2018/02/08/tu-prendras-bien-une-crepe-a-la-vie-privee/
content:
<img src="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/tu-prendras-bien-une-crepe-a-la-vie-privee-inside-my-head-" style="width:100%;height:auto"/><p>Rien à ajouter...<br/><br/><div class="img_source"><a href="https://secure.gravatar.com/avatar/f39065155b2fe26c0fa6a509b3750632/?s=120&d=mm">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article768#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article769/5a7ed76cdaea2
title: https://startpages.github.io/startpages/BIOS-tommyku/#main
uri: https-startpages-github-io-startpages-BIOS-tommyku-main
url: https://startpages.github.io/startpages/BIOS-tommyku/#main
content:
<img src="media/8a1cffb6.-bios-tommyku-main-charger-parametres-par-defaut-bios-998eea.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/https-startpages-github-io-startpages-bios-tommyku-main-charger-parametres-par-defaut-bios-998eea.jpg" style="width:100%;height:auto"/><p><img class="smile big" src="media/f610fd7c.pinaise.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/big/pinaise.png"/> <br />
J'adore !<br />
J'en veux j'en veux !<br />
Merci mon pote !<div class="via"><span title="Source du lien">Via Liandri</span></div><br/><br/><div class="img_source"><a href="media/87883581.charger-parametres-par-defaut-bios-998eea.jpg" data-original-source="https://lecrabeinfo.net/app/uploads/2013/03/charger-parametres-par-defaut-bios-998eea.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article769#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article770/5a8ab51331d96
title: GhostText
uri: GhostText
url: https://github.com/GhostText/GhostText
content:
<img src="media/2658776f.ghosttext-demo.gif" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/ghosttext-demo.gif" style="width:100%;height:auto"/><p>Use your text editor to write in your browser. Everything you type in the editor will be instantly updated in the browser (and vice versa).<br />
<br />
<br/><br/><div class="img_source"><a href="media/8eaf91ad.demo.gif" data-original-source="https://github.com/GhostText/GhostText/raw/master/promo/demo.gif">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article770#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article771/petite-blague-animaliere
title: Petite blague animalière...
uri: Petite-blague-animalière
content:
<img src="media/c4f48373.2f0onew.gif" data-original-source="http://www.warriordudimanche.net/data/medias/images/2f0onew.gif" style="width:100%;height:auto"/><p>Deux touristes en Australie discutent la veille du retour:</p>
<p>— Moi je vais ramener une chauve-souris géante comme souvenir...</p>
<p>— Tiens ?! c'est marrant, moi j'ai choisi de ramener un putois... Comment tu vas lui faire passer le contrôle à l'aéroport ?</p>
<p>— Facile, je vais la scotcher sur mon T-shirt et je vais écrire «batman» dessous... et toi ?</p>
<p>— Moi, je vais le cacher dans mon slip, tranquilou !</p>
<p>— Dans ton slip ?! 'tain, t'es fou ! ça va puer !</p>
<p>— Oh, ben tant pis, s'il crève, il crève, hein...</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article771#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article772/petite-blague-libertine
title: Petite blague libertine
uri: Petite-blague-libertine
content:
./plugins//WDDWebLinks/default_image.jpg<p>Une dame entre dans un sex-shop, bien décidée à se faire plaisir sans compter; je vendeur s'approche et lui propose ses services:</p>
<p>— Bonjour madame, vous avez fait votre choix ?</p>
<p>— Oui ! Je voudrais le vibro masseur jaune, là, le bleu qui est ici et le rouge, là-bas...</p>
<p>— Certainement... pour le jaune et le bleu, aucun problème, par contre, pour l'extincteur, faudra voir ça directement avec le patron.</p>
<img class="smile " src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article772#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article774/5a8fddcee1d2c
uri: Ff-Shukke-Cette-ordure-d-Orelsan-sacré-artiste-masculin-de-l-an
url: https://framapiaf.org/@FFShukke/99573823084141582
title:
Ff Shukke : «Cette ordure d'Orelsan sacré artiste masculin de l'année aux victoires de la musique. Le machisme et les violences faites aux femmes ont encore de beaux jours devant eux. #àvomir »

content:
<img src="media/9b1bb067.ont-encore-de-beaux-jours-devant-eux-avomir-36bc4c105edcaa74.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/ff-shukke-cette-ordure-d-orelsan-sacre-artiste-masculin-de-l-annee-aux-victoires-de-la-musique-le-machisme-et-les-violences-faites-aux-femmes-ont-encore-de-beaux-jours-devant-eux-avomir-36bc4c105edcaa74.jpg" style="width:100%;height:auto"/><p>Comment, en une seule récompense, chier à la gueule de toutes les personnes qui se sont investies contre les violences faites aux femmes en particulier depuis ces dernières années...<br />
<br />
<img class="smile xbig" src="media/311d3c40.attentionvomi.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/attentionvomi.png"/> <br />
<br />
Qu'attendre d'un pays où :<br /></p>
<ul>
<li>on a déroulé le tapis rouge à un dictateur connu pour violer les femmes qui constituaient sa garde personnelle, <br /></li>
<li>on considère qu'une interpellation durant laquelle on a le rectum déchiré par une matraque s'est déroulée normalement, <br /></li>
<li>près de la moitié des personnes interrogées affirment que si une femme est habillée «de façon provocante» alors il est normal qu'elle se fasse violer,<br /></li>
<li>une émission dans laquelle on embrasse ou on touche une femme qui a clairement dit qu'elle ne le voulait pas est toujours à l'antenne et fait toujours plus d'audience<br /></li>
<li>ou une star du porno peut agresser sexuellement une femme sur un plateau télé sans que personne ne trouve à redire,<br />
etc.<br />
etc.<br />
etc.<br />
etc.<br />
<br />
<img class="smile xbig" src="media/136d6d73.mondedemerde.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/mondedemerde.png"/> <div class="via"><span title="Source du lien">Via SammyFisherJr</span></div><br/><br/><div class="img_source"><a href="media/9e7507c6.36bc4c105edcaa74.jpg" data-original-source="https://framapiaf.org/system/media_attachments/files/000/600/094/original/36bc4c105edcaa74.jpg">Source image</a></div></li>
</ul>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article774#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article773/guns-are-a-problem
title: Guns are a problem
uri: Guns-are-a-problem
content:
./plugins//WDDWebLinks/default_image.jpg<p><img src="media/93450319.moreguns.jpg" data-original-source="http://warriordudimanche.net/data/medias/moreguns.jpg" alt="alt" /></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article773#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article776/5a902e9a85bcf
title: Hortensia - Hydrangea - Non, l'hortensia n'est pas une plante de terre de bruyère
uri: Hortensia-Hydrangea-Non-l-hortensia-n-est-pas-une-plante-de-terre
url: https://www.hortensia-hydrangea.fr/blog/22-non-l-hortensia-n-est-pas-une-plante-de-terre-de-bruyere
content:
<img src="media/73d15647.de-bruyere-Kobe_municipal_forest_botanical_garden34n4272-300.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/hortensia-hydrangea-non-l-hortensia-n-est-pas-une-plante-de-terre-de-bruyere-Kobe_municipal_forest_botanical_garden34n4272-300.jpg" style="width:100%;height:auto"/><p>Rho ben mârdalors ! <img class="smile normal" src="media/9447f58d.wow.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/wow.png"/> <br />
J'en ai plein plantés dans 60cm de terre de bruyère... <br />
<em>PAN</em> dans l'idée reçue...<br />
Weekend project: remplacer la terre de bruyère par le compost de mon bac.<br /></p>
<div class="via"><span title="Source du lien">Via SammyFisher</span></div><br/><br/><div class="img_source"><a href="media/84111001.Kobe_municipal_forest_botanical_garden34n4272-300.jpg" data-original-source="http://www.hortensia-hydrangea.fr/img/cms/blog/Kobe_municipal_forest_botanical_garden34n4272-300.jpg">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article776#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article775/5a90267585cd5
title: ku1neu504sh01.jpg (Image JPEG, 3014 × 4264 pixels) - Redimensionnée (17%)
uri: ku1neu504sh01-jpg-(Image-JPEG-3014-4264-pixels)-Redimensionné
url: https://i.redd.it/ku1neu504sh01.jpg
content:
<img src="media/86fb25fa.g-image-jpeg-30144264-pixels-redimensionnee-17-ku1neu504sh01.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/ku1neu504sh01-jpg-image-jpeg-30144264-pixels-redimensionnee-17-ku1neu504sh01.jpg" style="width:100%;height:auto"/><p>@Erase : Mouhouhaha ! C'est tellement ça !!! <br />
<br /></p>
<div class="via"><span title="Source du lien">Via Erase</span></div><br/><br/><div class="img_source"><a href="media/db8a2721.ku1neu504sh01.jpg" data-original-source="https://i.redd.it/ku1neu504sh01.jpg">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article775#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article777/5a97d3bb7d0af
title: 7 Practical Tips for Cheating at Design – Refactoring UI – Medium
uri: 7-Practical-Tips-for-Cheating-at-Design-Refactoring-UI-Medium
url: https://medium.com/refactoring-ui/7-practical-tips-for-cheating-at-design-40c736799886
content:
<img src="media/f22cfde8.ting-at-design-refactoring-ui-medium-17oh6p-XStALhzNMsKyps1w.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/7-practical-tips-for-cheating-at-design-refactoring-ui-medium-17oh6p-XStALhzNMsKyps1w.png" style="width:100%;height:auto"/><p>En résumé:<br />
<br />
<br />
<br /></p>
<pre><code>
/* Emphasis: don't play with sizes, use weight & colour !*/
.text-important{
        font-weight:700;
        color:hsl(0,0%,17%)
}
.text-normal{
        font-weight:400;
        color:hsl(0,0%,40%);
}
.text-less-important{
        font-weight:400;
        color:hsl(0,0%,45%);
}

/* on coloured background: use opacity to avoid grey on colour*/
.text-on-colour{
        color:hsla(0,0%,100%,0.6);
}

/* add vertical offset on shadows instead of increase blur*/
.shadow{
        box-shadow: 0 4px 6px 0 hsla(0,0%,0%,0.2);
}
.inset-shadow{
        box-shadow: 0 2px 4px 0 hsla(0,0%,0%,0.08);
}

/* avoid borders if you can and replace it with 
        . a shadow 
        . different background colour
        . extra space
*/
.dialog-box{
        border:0;
        box-shadow: 0 4px 6px 0 hsla(0,0%,0%,0.2);
}
.footer-dialog{
        background: hsl(0,0%,98%);
}
.category-p{
        margin-bottom:48px;
}

/* don't oversize one-coloured icons: 16px -> 24px max; */
[class^="icon-"]:before, [class*=" icon-"]:before {
        font-size:20px;
}

/* accent borders on focused, active or important boxes  */
div.important{
        border-top:6px solid #40A4F4 /*blue*/;
}
}
li.important{
        border-left:6px solid #40A4F4 /*blue*/;
}
.important-inlineblock{
        border-bottom:6px solid #40A4F4 /*blue*/;
}
body.cooool{
        border-top:6px solid #40A4F4 /*blue*/;
}

/* use background color for button only if semantic:
        . positive action: green
        . delete something: red;
        . normal, not important or not the preferred action: TRANSPARENT;
*/
.btn-danger{
        background-color:red;
        color:white;
}
.btn-success{
        background-color:green;
        color:white;
}
.btn{
        background-color:transparent;
        color:hsl(0,0%,40%);
}
</code></pre><br />
<br />
<br />
<div class="via"><span title="Source du lien">Via Kalvn's links</span></div><br/><br/><div class="img_source"><a href="media/c702751e.17oh6p-XStALhzNMsKyps1w.png" data-original-source="https://cdn-images-1.medium.com/max/2000/1*7oh6p-XStALhzNMsKyps1w.png">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article777#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article778/retour-de-vacances-tain-chuis-creve
title: Retour de vacances: 'tain, chuis crevé !
uri: Retour-de-vacances-tain-chuis-crevé
content:
<img src="media/914bbbaa.g-berceaumagique-com-wp-content-uploadsparent-epuise-phrases.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/https-blog-berceaumagique-com-wp-content-uploadsparent-epuise-phrases.jpg" style="width:100%;height:auto"/><p>Je suis toujours vivant !
on peut s'en réjouir d'une part parce que mon silence d'une semaine pouvait inquiéter (#oupas) mais également parce que je reviens du ski avec les enfants et... oui... j'ai survécu ! \o/</p>
<p>Au menu, déco totale, ski le matin, jeu dans la neige l'après midi, fromage fondu et vin chaud à un moment ou à un autre...</p>
<p>On a creusé un igloo de fous, parcouru des dizaines de km dans une neige fraîche et soyeuse, pris le soleil... c'était bien.
<img src="media/8b3b72e9.img_20180307_131122.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/img_20180307_131122.jpg" alt="L'igloo en question" /></p>
<p>Moins bien, je me suis fait massacrer le pare-brises pendant la nuit et j'ai dû réparer au ruban adhésif de chantier façon chirurgien de l'extrême. Le destin faisant bien les choses, je n'étais pas là quand l'abruti a perpétré son forfait, sans quoi je me serais sans doute laissé aller à un mouvement d'humeur à base de coude dans la bouche. <img class="smile medium" src="media/0d4b8984.fuckingkiddingme.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/medium/fuckingkiddingme.png"/></p>
<p>Après un voyage de retour bien chiant grâce à un combo GPS facétieux + Rues bloquées dans Paris, on a tout rangé , foutu tout le monde au lit et basta.
Aujourd'hui, pour faire de la place, mon épouse à descendu du grenier mes vieilles patinettes, délaissées depuis moultes années. Vous me connaissez, j'aime pô jeter. Du coup, j'ai fait un banc avec.</p>
<p>La preuve en photos.
<img src="media/94d441f7.img_20180310_144136.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/img_20180310_144136.jpg" alt="alt" />
<img src="media/74f8f4e8.img_20180310_145328.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/img_20180310_145328.jpg" alt="alt" />
<img src="media/ee864c0d.img_20180310_150521.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/img_20180310_150521.jpg" alt="alt" /></p>
<p>Oui, je sais, j'étais crevé, j'avais déjà fait les courses, vidé le coffre de toit, fait à manger, réparé deux trois trucs, accepté les tâches surnuméraires que mes <del>vampires</del> enfants me demandaient... j'aurais dû poser un cul...</p>
<p>Ben j'ai fait un banc où le poser d'abord. <img class="smile " src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/></p>
<p>Pfiouuu  <img class="smile normal" src="media/fef22c4f.dodo.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/dodo.png"/>  </p>
<p>Bon, salut les copains et que le pet du seigneur soit sur vous  <img class="smile normal" src="media/b19fe667.myass.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/myass.png"/></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article778#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article779/5aa5517b1a08c
title: Erase / Froxiss-Reload · GitLab
uri: Erase-Froxiss-Reload-GitLab
url: https://framagit.org/Erase/Froxiss-Reload/
content:
<img src="media/486c1b3c.ase-froxiss-reload-gitlab-tumblr_mk9lffvGUy1s7aky5o2_r1_1280.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/erase-froxiss-reload-gitlab-tumblr_mk9lffvGUy1s7aky5o2_r1_1280.jpg" style="width:100%;height:auto"/><p>Haha !! \o/ Mon pote Erase reprend le développement de Froxiss, un lecteur RSS minimaliste.<br />
yabon !<br />
<img class="smile big" src="media/b589a631.mouille.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/big/mouille.jpg"/> <br/><br/><div class="img_source"><a href="media/85c26ea2.tumblr_mk9lffvGUy1s7aky5o2_r1_1280.jpg" data-original-source="https://framagit.org/uploads/-/system/user/avatar/1205/tumblr_mk9lffvGUy1s7aky5o2_r1_1280.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article779#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article780/5aa8e3cc75ff6
title: Le billet culturel du mercredi 14 mars 2018 : La tournée de B. Cantat
uri: Le-billet-culturel-du-mercredi-14-mars-2018-La-tournée-de-B-Cantat
url:
https://www.franceculture.fr/emissions/le-billet-culturel/le-billet-culturel-du-mercredi-14-mars-2018

content:
<img src="media/183a2ba4.-cantat-lors-de-son-proces-a-vilnius-le-17-mars-2004_5962716.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/le-billet-culturel-du-mercredi-14-mars-2018-la-tournee-de-b-cantat-bertrand-cantat-lors-de-son-proces-a-vilnius-le-17-mars-2004_5962716.jpg" style="width:100%;height:auto"/><p>Je réunissais mes  arguments/contre arguments au sujet de Cantat, histoire de mettre de l'ordre dans mes idées et d'essayer d'arrêter une opinion sur le sujet, quand j'ai entendu le billet de Mathilde Serrell sur France Culture, qui réunissait tout ce à quoi j'avais pensé et le formulait avec clarté, éloquence et ma radio (zeugma (ﾉʘヮʘ)ﾉ*:･ﾟ✧ )<br />
<br />
Du coup, plutôt que de redire moins bien, je vous renvoie à son podcast (dont je vous mets une copie ci-dessous, merci <a href="http://tipiak.warriordudimanche.net/">tipiak</a><br />
<br /></p>
<audio controls>

  <source src="media/f2d781d9.12814-14.03.2018-itema_21615838-0.mp3" data-original-source="http://warriordudimanche.net/data/medias/mp3/12814-14.03.2018-itema_21615838-0.mp3" type="audio/mpeg">

</audio> 
<p><br/><br/><div class="img_source"><a href="media/6fc518ee.-cantat-lors-de-son-proces-a-vilnius-le-17-mars-2004_5962716.jpg" data-original-source="https://static.lexpress.fr/medias_11645/w_640,h_360,c_fill,g_north/v1520877081/bertrand-cantat-lors-de-son-proces-a-vilnius-le-17-mars-2004_5962716.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article780#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article782/5aaa4baaee062
title: affordance.info: Invite un banquier dans ta classe. Et fais sécher son corps dans ton grenier.
uri: affordance-info-Invite-un-banquier-dans-ta-classe-Et-fais-sécher-so
url: http://affordance.typepad.com/mon_weblog/2018/03/adopte-un-banquier.html
content:
<img src="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/affordance-info-invite-un-banquier-dans-ta-classe-et-fais-secher-son-corps-dans-ton-grenier-6a00d8341c622e53ef01bb09fb7c37970d-800wi" style="width:100%;height:auto"/><p>Au passage, je remarque qu'il y a une <strong><em>semaine</em></strong> de l'argent mais <strong><em>un jour</em></strong> de la femme...<br />
Il y a des priorités.<br />
<br />
<img class="smile big" src="media/faaa3447.partivomir.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/big/partivomir.png"/> <br/><br/><div class="img_source"><a href="http://www.affordance.info/.a/6a00d8341c622e53ef01bb09fb7c37970d-800wi">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article782#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article781/5aaa3b2b664ea
title: Note - Le Hollandais Volant
uri: Note-Le-Hollandais-Volant
url: https://lehollandaisvolant.net/?mode=links&id=20180315012124
content:
./plugins//WDDWebLinks/default_image.jpg<p>Toutes mes condoléances Timo, on pense à toi.</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article781#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article785/adminmenuicons-inutile-donc-indispensable
title: AdminMenuIcons: inutile donc indispensable
uri: AdminMenuIcons-inutile-donc-indispensable
content:
<img src="media/59459e3d.http-www-img1-psthc-fr-uploads1464080987s.png" data-original-source="http://www.warriordudimanche.net/data/medias/http-www-img1-psthc-fr-uploads1464080987s.png" style="width:100%;height:auto"/><h1>&#35;plugindemerde</h1>
<h1>&#35;vousetesprevenus</h1>
<p>Juste un plugin pour ajouter des icônes au menu admin sous pluxml.
Oui, c'est tout.</p>
<img class="smile medium" src="media/0d4b8984.fuckingkiddingme.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/medium/fuckingkiddingme.png"/> 
<p>En gros, ça donne ça:</p>
<p><img src="media/abfaba8b.adminmenuicons.png" data-original-source="http://warriordudimanche.net/data/medias/adminmenuicons.png" alt="alt" /></p>
<p><a href="http://repo.warriordudimanche.net/ZIPFILES/AdminMenuIcons.zip">ze link to ze downloade</a></p>
<p>Allez en pet !</p>
<img class="smile xbig" src="media/34677495.bisou.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/bisou.jpg"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article785#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article783/5aae3af9136a8
title: ن Humour de Droite ن sur Twitter : le service public
uri: ن-Humour-de-Droite-ن-sur-Twitter-le-service-public
url: https://twitter.com/humourdedroite/status/974945311604002816
content:
<img src="media/878fadb9.tuel-mais-vu-que-cest-un-peu-le-sujet-actuellement-allons-y-.png" data-original-source="http://www.warriordudimanche.net/data/medias/humour-de-droite-sur-twitter-ya-un-truc-qui-me-turlupine-a-propos-de-letat-francais-et-du-service-public-pas-seulement-lie-au-gouvernement-actuel-mais-vu-que-cest-un-peu-le-sujet-actuellement-allons-y-.png" style="width:100%;height:auto"/><p>Ben oui...<br />
<br /></p>
<div class="via"><span title="Source du lien">Via Riduidel</span></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article783#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article786/5aaf94c732b0f
title: Les preneurs d’otages | Emma
uri: Les-preneurs-d-otages-Emma
url: https://emmaclit.com/2018/03/19/les-preneurs-dotages/
content:
./plugins//WDDWebLinks/default_image.jpg<p>Du très bon pour contrebalancer la propagande anti SNCF<div class="via"><span title="Source du lien">Via yakmoijebrille</span></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article786#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article787/5ab0b0d303912
title: Je déteste le web d'aujourd'hui
uri: Je-déteste-le-web-d-aujourd-hui
url: https://anotherwhiskyformisterbukowski.com/2018/02/24/deteste-web-daujourdhui/
content:
<img src="media/d2eaf3d8.mieux-avant-1.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/mieux-avant-1.jpg" style="width:100%;height:auto"/><p><em><span class="grey">1-« Je craque parce que la gratuité du web est en train de disparaître : Il n’y a plus un site dont l’accès ne soit pas bloqué par un formulaire d’inscription, plus un blog qui ne t’agresse pas en te collant un putain de pop up pour s’inscrire à sa newsletter, plus un annuaire qui ne facture un abonnement mensuel pour accéder à une liste de gens, la seule valeur ajoutée de l’annuaire étant de les réunir dans une base de donnée.»</span><br />
</em><br />
Tout-à-fait d'accord; d'ailleurs, j'en suis à dégager direct des sites qui me collent un popup ou qui fractionnent un article en 10 pages putaclics.<br />
<strong><em>Solutions:</em></strong> pour les sites nécessaires, un grabber qui parse la page et ne garde que le nécessaire (riez pas, je l'ai déjà fait <img class="smile normal" src="media/b8e47026.omg.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/omg.png"/>), un script greasemonkey pour virer les merdes, une règle stylish pour <em>display:none</em> les popups, une extension ?</p>
<p><p style="text-align:center"><img src="media/2f79ec7f.-images-na-ssl-images-amazon-com-images-i81xAxL-GkgL._SX355_.jpg" data-original-source="http://warriordudimanche.net/data/medias/https-images-na-ssl-images-amazon-com-images-i81xAxL-GkgL._SX355_.jpg" alt="popup finger" /></p></p>
<p><em><span class="grey">2-«Je craque parce qu’il ne se crée plus de grands projets d’envergure avec le partage pour seul mot d’ordre : chacun bricole son petit truc dans son coin en espérant gratter des parts de marché ou trouver la micro-niche dans laquelle il pourra devenir le site de référence, site qu’il monétisera ensuite avec de la pub et de l’affiliation. »</span><br />
</em><br />
Monétisation est vraiment le terme qui coince, à plusieurs titres: modèle de financement adapté pour vivre de son activité / notion de gratuité qui a tendance à foutre le camp... (car, oui, imposer une inscription est déjà une forme de paiement)<br />
<strong><em>Solutions:</em></strong> continuer à bloguer par passion (de toutes façons on ne deviendra pas riches <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/>) et pour la mise en commun: vive le RSS (en flux complets) !</p>
<p><p style="text-align:center"><img src="media/2278552e.https-postrss-com-wp-content-uploads-2017-01RSS_Feed.jpg" data-original-source="http://warriordudimanche.net/data/medias/https-postrss-com-wp-content-uploads-2017-01RSS_Feed.jpg" alt="alt" /></p></p>
<p>*<span class="grey">3-«Je craque parce que Mark Zuckerberg ne sera jamais Aaron Swartz :[...]  Ils [les GAFAM] sont devenus tellement indispensables au web qu’on ne peut vraiment plus se passer d’eux et tout ce qu’on fait sur un site affilié rebondit inexorablement dans les immenses bases de données qui fondent leur pouvoir. .»</span><br /></p>
<p>Heu, si, on peut se passer d'eux, mais ça a un coût social (ne pas forcément être à la mode, passer pour un idéaliste ridicule, toussa) et ça demande de gros efforts (ne pas faire partie du même réseau social que ses proches va en effet à l'encontre du principe même de réseau social et convertir les proches, bonjour...)
Sinon: framasoft, mastodon, diaspora, blogs etc... C'est possible...
Pour les récupérations «indirectes» (google fonts, frameworks, regies de pub/stats etc), hébergez vos propres versions, utilisez <a href="http://warriordudimanche.net/article424/goofi-ramener-des-google-fonts-en-local-en-une-ligne">goofi</a>, choisissez des services libres.</p>
<p><p style="text-align:center"><img src="media/6e84db94.mark-twain.png" data-original-source="http://warriordudimanche.net/data/medias/mark-twain.png" alt="citation" /></p></p>
<p><em><span class="grey">«Non, depuis 1993, le web fait partie de mon ADN et j’y passe le plus clair de mon temps. Je ne serai jamais Aaron Swartz mais je suis profondément influencé par sa pensée et je milite pour un accès libre à l’information. A mon petit niveau, je ne participe qu’à des projets qui donnent libre accès à l’information. Que ça soit ton blog culturel préféré, les deux webzine Metal auxquels j’ai contribué, Metal-Impact et Thrashocore, ainsi que mon dernier projet, Sweet Home, qui se rêve comme le site de référence du maintien à domicile des seniors, je ne ferai jamais de l’info payante. Et si tu montes une communauté de l’anneau, je veux bien y participer…»</span></em><br /></p>
<p><p style="text-align:center"><img src="media/3aa2ff5a.x312-1-77-90-06-sherlock-2x02la-communaute-de-lanneau-355703.jpg" data-original-source="http://warriordudimanche.net/data/medias/http-img-over-blog-com-500x312-1-77-90-06-sherlock-2x02la-communaute-de-lanneau-355703.jpg" alt="citation" /></p></p>
<h1>DANS MES BRAS MON FRERE !</h1>
<img class="smile xbig" src="media/43063a86.toijtaime.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/toijtaime.jpg"/> 
<p>via Parigot-Manchot</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article787#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


title: Plugin pluxml: DropOnArticle, uploader des images directement sur un article (beta)
uri: Plugin-pluxml-DropOnArticle-uploader-des-images-directement-sur-un-a
feed_id:
http://www.warriordudimanche.net/article788/plugin-pluxml-droponarticle-uploader-des-images-directement-sur-un-article

content:
<img src="media/91fac788.600px-04SHANG4963_cropped.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/600px-04SHANG4963_cropped.jpg" style="width:100%;height:auto"/><p>Marre de devoir passer par la page média pour uploader des images, puis les récupérer dans les articles, ajouter la balise IMG...
La vie est trop courte pour tout ça !</p>
<p>Tu glisses déposes les fichiers sur ton article dans la page de création d'article, tu cliques sur envoyer, ça uploade, tu récupères automatiquement les <img> avec le chemin de l'image...</p>
<div class="face3"><div class="bubble">Alors ?! Merci qui ? </div></div>
<div class="voiceoff"><div class="rightbubble">Merci Jacky(...)</div><span class="image">🗦</span></div>
<div class="face5"><div class="bubble">TA GUEULE !</div></div>
<p>Le lien: <a href="http://repo.warriordudimanche.net/ZIPFILES/DropOnArticle.zip">DropOnArticle.zip</a></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article788#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article790/plugin-randompic
title: Plugin: randomPic
uri: Plugin-randomPic
content:
<img src="media/c6dd93fc._89716241_thinkstockphotos-523060154.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images//_89716241_thinkstockphotos-523060154.jpg" style="width:100%;height:auto"/><p>Un chti plugin Bronco's touch (cf post précédent) qui affiche une image au hasard, prise dans un ou plusieurs dossiers.
Il suffit d'appeler le hook </p>
<pre><code>&lt;?php eval($plxShow-&gt;callHook('randomPic','dossier/'));?&gt;
</code></pre>
<p>Si on veut spécifier plusieurs dossiers, on les sépare par &quot;*&quot;.
Et si on veut une balise à soi, on précise la pattern en argument (avec un % pour remplacer le chemin vers l'image) et en mettant les deux paramètres dans un array:</p>
<pre><code>&lt;?php eval($plxShow-&gt;callHook('randomPic',['dossier/','&lt;a href="http://www.warriordudimanche.net/%"&gt;%&lt;/a&gt;']));?&gt;
</code></pre>
<p>pissétou.</p>
<p>Pour un exemple, regardez par là -&gt;</p>
<p><a href="http://repo.warriordudimanche.net/ZIPFILES/randomPic.zip">randomPic.zip</a></p>
<div class="voiceoff"><div class="rightbubble">Si on décerne un jour un prix du code le moins utile, tu seras relativement bien classé, je pense.</div><span class="image">🗦</span></div>
<div class="face1"><div class="bubble">Tu penses, c'est déjà ça... </div></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article790#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


title: Getlib: ramener des bibliotheques & frameworks en local en une ligne
uri: Getlib-ramener-des-bibliotheques-frameworks-en-local-en-une-ligne
feed_id:
http://www.warriordudimanche.net/article789/getlib-ramener-des-bibliotheques-frameworks-en-local-en-une-ligne

content:
<img src="media/1d8fd9d3.aticdelivery-nexusmods-com-mods-110-images33330-1-1363323527.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/https-staticdelivery-nexusmods-com-mods-110-images33330-1-1363323527.jpg" style="width:100%;height:auto"/><p>Certains se souviennent peut-être de <a href="http://warriordudimanche.net/article424/goofi-ramener-des-google-fonts-en-local-en-une-ligne">goofi</a>, pour récupérer des google fonts en local; sur la base de ce script, j'ai bricolé une version qui permettra de faire la même chose avec les bibliothèques et frameworks (notamment js) que tout un chacun utilise et dont l'appel participe aux stats de google et consorts à chaque requête sur leur serveur.</p>
<p>Donc, en gros, il suffit de remplacer l'appel du script dans le <head> en ajoutant <strong><em>getlib.php?url=</em></strong> devant.</p>
<p>Ainsi</p>
<pre><code> &lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"&gt;&lt;/script&gt;</code></pre>
<p>deviendra</p>
<pre><code>&lt;script src="http://www.warriordudimanche.net/getlib.php?url=https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"&gt;&lt;/script&gt;</code></pre>
<p>Le fichier est récupéré une seule fois et seule la vertsion locale sera renvoyée par la suite.</p>
<p>Au cas où vous voulez que le script récupère une éventuelle mise à jour, il suffit d'ajouter update dans l'url:</p>
<pre><code>&lt;script src="http://www.warriordudimanche.net/getlib.php?update&amp;url=https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"&gt;&lt;/script&gt;</code></pre>
<p>Getlib vérifiera alors si le fichier distant a changé et le retéléchargera si c'est nécessaire.</p>
<p>Comme avec Goofi, seule l'IP du serveur qui héberge le script est connue du serveur distant, jamais celle du visiteur.</p>
<p>C'est tout!
Je n'ai pas testé à fond encore et les erreurs ne sont pas gérées pour le moment, mais ça fonctionne quand même pas mal !</p>
<pre><code>&lt;?php 
# get libs from distant servers to local (&amp; avoid unnecessary requests to servers who can log user's connections)
# ex:  
# https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js
# becomes
# getlib.php?url=https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js
# if you want to update local file if the distant one changes, just add "update" 
# getlib.php?update&amp;url=https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js
# author: warriordudimanche.net
# 
$lib_folder='libs/';
$check_updates=isset($_GET['update']);

if (!empty($_GET['url'])){
    if (!is_dir($lib_folder)){mkdir($lib_folder);}

    $url=strip_tags($_GET['url']);
    $local_filename=$lib_folder.basename($url);
    $flag='non';
    if (
        !is_file($local_filename)
        ||
        ($check_updates &amp;&amp; !isSameFile())

    ){
        $lib=file_get_contents($url);
        file_put_contents($local_filename,$lib);
        $head = array_change_key_case(get_headers($url, TRUE));
        file_put_contents($local_filename.'.info', $head['last-modified']);
        $flag='oui';
    }
    header('Content-Type: '.mime_content_type($local_filename));
    exit(file_get_contents($local_filename));
}

function getDistantFile($url){
    global $local_filename;
    $lib=file_get_contents($url);
    file_put_contents($local_filename,$lib);
    $head = array_change_key_case(get_headers($url, TRUE));
    file_put_contents($local_filename.'.info', $head['last-modified']);
}

function isSameFile(){
    global $local_filename,$url;
    $head = array_change_key_case(get_headers($url, TRUE));
    $local=file_get_contents($local_filename.'.info');
    $distant=$head['last-modified'];
    return $distant==$local;
}</code></pre>
<p><a href="https://github.com/broncowdd/getlib.php/archive/master.zip">getlib.zip</a>
<a href="https://github.com/broncowdd/getlib.php">le dépôt</a></p>
<div class="voiceoff"><div class="rightbubble">Comme toujours, <br/>c'est aux autres de débugger <br/> les scripts que tu commets, heu... commit...<br/> super.</div><span class="image">🗦</span></div>
<div class="face5"><div class="bubble">Et je vais t'avouer un truc, j'ai même pas honte !<br/> C'est même ma marque de fabrique: une genre de «Bronco's touch»</div></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article789#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article791/rebucon-1
title: Rébucon #1
uri: Rébucon-1
content:
./plugins//WDDWebLinks/default_image.jpg<img src="media/a28c76ff.rebucon1.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images//rebucon1.jpg" alt="image"/>
<p>Oui, je sais, c'est très con... <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article791#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


title: RoR - un générateur d'avatars auto-hébergeable en un script
uri: RoR-un-générateur-d-avatars-auto-hébergeable-en-un-script
feed_id:
http://www.warriordudimanche.net/article793/ror-un-generateur-d-avatars-auto-hebergeable-en-un-script

content:
<img src="media/ce02c79b.icon.png" data-original-source="http://www.warriordudimanche.net/data/medias/icon.png" style="width:100%;height:auto"/><p>Bon, j'ai un peu tout dit dans le titre...
Toutefois, je peux préciser que ce script permet de générer un avatar à partir d'une chaîne de caractères (genre un pseudo, quoi <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/>)</p>
<p>Le script utilise les variables $_GET suivantes:</p>
<ul>
<li><strong><em>str</em></strong> : la chaîne de caractères (obligatoire)</li>
<li><strong><em>sz</em></strong> : la taille souhaitée (par défaut:128)</li>
<li><strong><em>c1</em></strong> : couleur d'avatar (optionnel, par défaut le script déterminera une couleur en fonction de la chaîne)</li>
<li><strong><em>c2</em></strong> : pareil que c1 mais pour la couleur de fond.</li>
</ul>
<p><del>Du coup</del> Par conséquent, la requête suivante:</p>
<pre><code>index.php?str=Bronco&amp;sz=128&amp;c1=ff0000&amp;c2=00ff00</code></pre>
<p>donnera </p>
<p><img src="http://avatar.warriordudimanche.net/index.php?str=Bronco&amp;sz=128&amp;c1=ff0000&amp;c2=00ff00" alt="avatar généré" /></p>
<p>et </p>
<pre><code>index.php?str=Bronco</code></pre>
<p>donnera </p>
<p><img src="http://avatar.warriordudimanche.net/index.php?str=Bronco" alt="avatar généré" /></p>
<p>A noter que lorsque l'avatar est généré, il est sauvegardé dans un dossier <strong><em>avatars/</em></strong> afin d'éviter de le régénérer à chaque demande.</p>
<div class="face5"><div class="bubble">«Mais comment t'as fait ?» allez-vous me demander d'un ton péremptoire autant que fébrile </div></div>
<div class="voiceoff"><div class="rightbubble">Non,non... on s'en fout... en fait.</div><span class="image">🗦</span></div>
<div class="voiceoff"><div class="rightbubble">*PAN*</div><span class="image">🗦</span></div>
<p>Donc, le premier problème était d'avoir une pattern pour chaque lettre sur une grille qui ne soit pas trop étendue. Après avoir réfléchi un bon moment, je me suis frappé le front en me disant que la pattern était toute trouvée: l'ordre en binaire de la lettre à encoder...</p>
<p>Second problème, le nombre de lettres et de caractères potentiels m'obligeaient à avoir une grille trop grande (minuscules/majuscules/nombres -&gt; 62 caractères !) 62 en binaire 111110, soient 6 cases x2 pour la symétrie, on se retrouve avec une matrice de 12 x 12... trop à mon goût.</p>
<p>Troisième problème, la taille variable des chaînes potentiellement fournies par l'utilisateur. Il faudrait normaliser ces chaînes avant traitement... pfff.</p>
<p>Illumination: le hash d'une chaîne est toujours de la même longueur... et hash('crc32','blabla'); donne toujours une chaîne de 8 caractères hexadécimaux \o/ : tous les problèmes sont résolus:</p>
<ul>
<li>encodage de 16 caractères (0 à F) : 0000 à 1111.</li>
<li>chaîne de longueur fixe quelle que soit les données fournies</li>
</ul>
<pre><code>    $h1=hash('crc32',$_GET['str']); # pour la génération du dessin et de la couleur 1
    $h2=hash('crc32b',$_GET['str']);#pour la génération de la couleur 2</code></pre>
<p>Il ne reste plus qu'à tracer des carrés de la couleur d'avatar à l'emplacement des 1 et de la couleur de fond à la place des 0.</p>
<pre><code>function drawLine($linenb,$pattern,$size){
    global $image,$couleur_avatar,$couleur_fond;
    for ($i=0;$i&lt;9;$i++){
        $x=$i*$size;
        $y=$linenb*$size;
        if ($pattern[$i]==1){
            imagefilledrectangle ( $image , $x,$y  , $x+$size ,$y+$size , $couleur_avatar );
        }else{
            imagefilledrectangle ( $image , $x,$y  , $x+$size ,$y+$size ,$couleur_fond);
        }
    }
}</code></pre>
<p>Le reste est relativement simple à saisir, je vous mets donc le script complet</p>
<pre><code>&lt;?php 
########################
#                      #
# █████   ████   █████  #
# ██  ██ ██  ██ ██  ██ #
# ██  ██ ██  ██ ██  ██ #
# █████  ██  ██  █████  #
# ██  ██ ██  ██ ██  ██ #
# ██  ██ ██  ██ ██  ██ #
# ██  ██  ████  ██  ██ #
#                      #
########################
# Ror: avatar generator
# @author: bronco@warriordudimanche.net
# howto: use get vars to generate an avatar (once generated, it'll be saved in avatars/ folder)
# ?str=[string] (required)
# ?sz= [integer] avatar's size (opt.) 
# ?c1= [string] avatar's color (opt.)
# ?c2= [string] avatar's background color (opt.)

###############################
#                             #
#  ░░░░  ░   ░░  ░░░░  ░░░░░░ #
#   ░░   ░░  ░░   ░░   ░ ░░ ░ #
#   ░░   ░░░ ░░   ░░     ░░   #
#   ░░   ░░░░░░   ░░     ░░   #
#   ░░   ░░ ░░░   ░░     ░░   #
#   ░░   ░░  ░░   ░░     ░░   #
#  ░░░░  ░░   ░  ░░░░   ░░░░  #
#                             #
###############################

if (!is_dir('avatars')){
    mkdir('avatars');
}
$avatar_filename='';

if (!empty($_GET['c1'])){
    $c1=strip_tags($_GET['c1']);
    $avatar_filename.='-c1='.$c1;
    $c1=separatRGB($c1);
}
if (!empty($_GET['c2'])){
    $c2=strip_tags($_GET['c2']);
    $avatar_filename.='-c2='.$c2;
    $c2=separatRGB($c2);
}
if (!empty($_GET['sz'])){
    $size=intval(strip_tags($_GET['sz']));
}
if (empty($size)){$size=128;}
$avatar_filename='x'.$size.$avatar_filename.'.png';
$dotsize=$size/9;

##################################################################
#                                                                #
# ░░░░░░ ░░  ░░ ░   ░░  ░░░░  ░░░░░░  ░░░░   ░░░░  ░   ░░  ░░░░  #
# ░░     ░░  ░░ ░░  ░░ ░░  ░░ ░ ░░ ░   ░░   ░░  ░░ ░░  ░░ ░░  ░░ #
# ░░     ░░  ░░ ░░░ ░░ ░░       ░░     ░░   ░░  ░░ ░░░ ░░  ░░    #
# ░░░░░  ░░  ░░ ░░░░░░ ░░       ░░     ░░   ░░  ░░ ░░░░░░   ░░   #
# ░░     ░░  ░░ ░░ ░░░ ░░       ░░     ░░   ░░  ░░ ░░ ░░░    ░░  #
# ░░     ░░  ░░ ░░  ░░ ░░  ░░   ░░     ░░   ░░  ░░ ░░  ░░ ░░  ░░ #
# ░░      ░░░░  ░░   ░  ░░░░   ░░░░   ░░░░   ░░░░  ░░   ░  ░░░░  #
#                                                                #
##################################################################

function separatRGB($color){
    $color=str_replace('#','',$color);
    if (strlen($color)==3){
        $color=$color[0].$color[0].$color[1].$color[1].$color[2].$color[2];
    }
    $RGB=array();
    $RGB['r']=hexdec(substr($color, 0,2));
    $RGB['g']=hexdec(substr($color, 2,2));
    $RGB['b']=hexdec(substr($color, 4,2));  
    return $RGB;
}

function drawLine($linenb,$pattern,$size){
    global $image,$couleur_avatar,$couleur_fond;
    for ($i=0;$i&lt;9;$i++){
        $x=$i*$size;
        $y=$linenb*$size;
        if ($pattern[$i]==1){
            imagefilledrectangle ( $image , $x,$y  , $x+$size ,$y+$size , $couleur_avatar );
        }else{
            imagefilledrectangle ( $image , $x,$y  , $x+$size ,$y+$size ,$couleur_fond);
        }
    }
}

###########################################################
#                                                         #
#  ░░░░  ░░░░░░ ░   ░░ ░░░░░░ ░░░░░   ░░░░  ░░░░░░ ░░░░░░ #
# ░░  ░░ ░░     ░░  ░░ ░░     ░░  ░░ ░░  ░░ ░ ░░ ░ ░░     #
# ░░     ░░     ░░░ ░░ ░░     ░░  ░░ ░░  ░░   ░░   ░░     #
# ░░ ░░░ ░░░░░  ░░░░░░ ░░░░░  ░░░░░  ░░░░░░   ░░   ░░░░░  #
# ░░  ░░ ░░     ░░ ░░░ ░░     ░░  ░░ ░░  ░░   ░░   ░░     #
# ░░  ░░ ░░     ░░  ░░ ░░     ░░  ░░ ░░  ░░   ░░   ░░     #
#  ░░░░  ░░░░░░ ░░   ░ ░░░░░░ ░░  ░░ ░░  ░░  ░░░░  ░░░░░░ #
#                                                         #
###########################################################
if (!empty($_GET['str'])){
    $h1=hash('crc32',$_GET['str']);
    $h2=hash('crc32b',$_GET['str']);

    if (empty($c1)){$c1 = separatRGB($h1);}
    if (empty($c2)){$c2 = separatRGB($h2);}

    $s=$h1.$h2[0];
    $file='avatars/'.$s.$avatar_filename;
    if (is_file($file)){
        header ("Content-type: image/png");
        exit(file_get_contents($file));

    }

    $image = @ImageCreate ($size, $size) or die ("Erreur lors de la création de l'image");
    $couleur_fond   = ImageColorAllocate ($image, $c1['r'], $c1['g'], $c1['b']);
    $couleur_avatar = ImageColorAllocate ($image, $c2['r'], $c2['g'], $c2['b']);

    $a[dechex(0)]='000010000';
    $a[dechex(16)]='111111111';

    for ($i=1;$i&lt;=15;$i++){
        $bin=decbin($i);
        $bin=str_repeat('0', 4-strlen($bin)).$bin;
        $a[dechex($i)]=$bin.'1'.strrev($bin);
    }

    for ($i=0;$i&lt;9;$i++){
        drawLine($i,$a[$s[$i]],$dotsize);
    }

    header ("Content-type: image/png");

    ImagePng($image,$file);
    chmod($file,0644);
    ImagePng($image);
}

?&gt;</code></pre>
<p>Le script est <a href="https://github.com/broncowdd/Ror/archive/master.zip">téléchargeable ici</a></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article793#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article792/5ab8e5ff21fd8
title: J’aime le web, pas les GAFAM (et les réacs) - Chez Sammy
uri: J-aime-le-web-pas-les-GAFAM-(et-les-réacs)-Chez-Sammy
url: https://sammyfisherjr.net/blog/spip.php?article255
content:
./plugins//WDDWebLinks/default_image.jpg<p>Effectivement, je n'avais pas poussé ma lecture plus que ça, occupé aux solutions anti GAFAM je lisais en diagonale, et ça m'avait fait louper ce qui pouvait poser problème: merci Sammy !<br />
<br /></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article792#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article795/5ab9f2588abb2
title: Plugin pluXML: ROR-le-plugin
uri: Plugin-pluXML-ROR-le-plugin
url: http://repo.warriordudimanche.net/ZIPFILES/RoR.zip
content:
<img src="media/ce02c79b.icon.png" data-original-source="http://www.warriordudimanche.net/data/medias/icon.png" style="width:100%;height:auto"/><p>Après <a href="http://warriordudimanche.net/article793/ror-un-generateur-d-avatars-auto-hebergeable-en-un-script">le script d'hier</a>, permettant de générer un avatar via une «API» simple, j'ai bricolé un plugin pour pluXML qui se charge de la même chose.<br />
<br />
Comme la version standalone, ROR le plugin crée un avatar (ou charge un avatar déjà créé) sur l'appel du hook <br /></p>
<pre><code>eval($plxShow-&gt;callHook("showAvatar"));</code></pre>
<p><br />
J'ai toutefois ajouté une page de config pour pouvoir en affiner le comportement.<br /></p>
<img src="media/1fde598a.configROR.png" data-original-source="http://www.warriordudimanche.net/data/medias/images//configROR.png" alt="image"/>
<p>On peut spécifier:</p>
<ul>
<li>la taille en px de l'avatar généré</li>
<li>les couleurs de premier plan et d'arrière plan (si on souhaite que les avatars s'accordent à un design)</li>
<li>le nom de l'admin, au cas où -comme c'est mon cas- vous voulez que l'admin ait un avatar différent.</li>
<li>le code html correspondant à l'avatar des visiteurs et celui pour l'avatar de l'admin (ce qui éviter d'aller mettre les doigts dans le code) (ce n'est pas sale) (#DSL  <img class="smile normal" src="media/615d8db3.dsl.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/dsl.png"/> )</li>
</ul>
<p>Donc, vous pourrez modifier le script themes/VOTRETHEME/commentaires.php pour ajouter le hook comme suit:</p>
<pre><code>&lt;div id="&lt;?php $plxShow-&gt;comId(); ?&gt;" class="comment &lt;?php $plxShow-&gt;comLevel(); ?&gt;"&gt;
    &lt;?php eval($plxShow-&gt;callHook("showAvatar")) ?&gt; # &lt;--- c'est là 
    &lt;div id="com-&lt;?php $plxShow-&gt;comIndex(); ?&gt;" class="&lt;?php $plxShow-&gt;comAuthor(); ?&gt;"&gt;
</code></pre>
<img class="smile xbig" src="media/81ad13f2.chocapics.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/chocapics.jpg"/> 
<p>Allez dans l'épais du saigneur pis tout ça...</p>
<img class="smile xbig" src="media/34677495.bisou.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/bisou.jpg"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article795#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article794/5ab97dec395a8
uri: GitHub-broncowdd-pluxml-plugin-generator-Une-appli-pour-générer-l
url: https://github.com/broncowdd/pluxml-plugin-generator
title:
GitHub - broncowdd/pluxml-plugin-generator: Une appli pour générer les fichiers et le dossier d'un plugin, le tout préconfiguré et prêt à coder.

content:
./plugins//WDDWebLinks/default_image.jpg<p>Juste un mot en passant pour annoncer une maj de mon générateur de plugin pour pluxml (v0.9)<br />
Ajouts:<br /></p>
<ul>
<li>ajout des paramètres de config dans les propriétés de la classe (private)<br /></li>
<li>ajout de la récupération des valeurs de variables de config dans le constructeur de la classe <br /></li>
<li>ajout des index &quot;nom_de_parametre&quot; dans le fichier de langue<br /></li>
<li>ajout de la traduction des noms de parametre dans la page de config<br /></li>
<li>ajout de l'icône du plugin dans la page de config<br /></li>
<li>petits changements cosmétiques dans la page de config.<br />
<br />
<img class="smile xbig" src="media/34677495.bisou.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/bisou.jpg"/></li>
</ul>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article794#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article796/5aba22a63854d
title: Albert DUPONTEL critique l'éducation - septembre 2013 - YouTube
uri: Albert-DUPONTEL-critique-l-e-ducation-septembre-2013-YouTube
url: https://www.youtube.com/watch?v=tFPiDpo0mL0&amp;feature=youtu.be
content:
<img src="media/5c16e8de.l-critique-l-e-ducation-septembre-2013-youtube-maxresdefault.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/albert-dupontel-critique-l-e-ducation-septembre-2013-youtube-maxresdefault.jpg" style="width:100%;height:auto"/><p>Comment un homme né en 1964, dont la scolarité s'est déroulée entre 1968 et 1980, critique l'éducation d'aujourd'hui avec les critères d'avant-hier, de façon péremptoire, sans recul et sans nuance.<br />
Morceaux choisis:</p>
<ol>
<li>
<p><strong><em>«dès l'école, on nous met déjà en compétition»</em></strong>: vous faites sans doute référence aux notes -dont je rappelle que ceux qui les demandent, ce sont les parents et élèves, pas les enseignants-. Ces notes sont depuis longtemps mises au second plan au profit de compétences du socle commun, validées ou pas en fin d'année. Donc, la compétition, personne n'en veut, à commencer par les profs, qui ne font RIEN pour l'entretenir et cherchent systématiquement à valoriser chaque gamin (et des fois, faut chercher tant le môme n'a fourni aucun effort, ne serait-ce que de bonne volonté...) </p>
</li>
<li>
<p><strong><em>«c'est pas parce qu'on est un cancre qu'on est un raté»</em></strong>: PERSONNE n'a JAMAIS utilisé devant moi le terme raté, en 21 ans de maison... Ni cancre par ailleurs. Je vous laisse seul responsable du choix du vocabulaire pour des mômes qui font face à des difficultés parfois insurmontables. Votre notion même de «raté» sous-entend que pour vous, il y a les «réussis» d'un côté et les «ratés» de l'autre... Encore une notion qui vous est propre et qu'on ne retrouve pas dans l'enseignement.<br /></p>
</li>
<li>
<p><strong><em>«l'histoire de France, on nous apprend à l'apprendre et pas à la juger»</em></strong>: vraiment ?!, le prof d'histoire géo ne fait pas réfléchir sur l'histoire et ne la met pas en perspective ?! Il n'est là que pour faire apprendre des dates ?! Qu'appelez-vous «juger» l'histoire ? Procéder comme vous le faites avec l'éducation ?
« 5° les représentations du monde et l'activité humaine : ce domaine est consacré à la <strong>compréhension des sociétés dans le temps et dans l'espace, à l'interprétation de leurs productions culturelles et à la connaissance du monde social contemporain</strong> . » (<a href="http://www.education.gouv.fr/pid285/bulletin_officiel.html?cid_bo=87834">Socle commun collège</a>)
«Ainsi, l'histoire et la géographie poursuivent la construction par les élèves de leur rapport au temps et à l'espace, les rendent conscients de leur inscription dans le temps long de l'humanité comme dans les différents espaces qu'ils habitent. Les élèves découvrent comment la démarche historique permet d'apporter des réponses aux interrogations et apprennent à distinguer histoire et fiction. La géographie leur permet de passer progressivement d'une représentation personnelle et affective des espaces à une connaissance plus objective du monde en élargissant leur horizon et en questionnant les relations des individus et des sociétés avec les lieux à différentes échelles.» <a href="http://www.education.gouv.fr/pid285/bulletin_officiel.html?cid_bo=94708">BO94708</a>
Alors, oui ,sans doute l'enseignement de l'histoire est perfectible, mais de là à dire autant de conneries...</p>
</li>
<li>
<p><strong><em>«souvent, les types brillants à l'école rament complètement dans la vie derrière»</em></strong>: affirmation au doigt mouillé, sans aucune forme d'argumentation... à dégager (si des «gens brillants» rament dans la recherche d'emploi, que dire des «cancres» dont vous parlez ? Faites un petit tour dans le monde, allez voir qui rame vraiment, ceux qui ont du mal à bouffer et faites quelques stats, moi je vous attends ici...)</p>
</li>
<li>
<p><strong><em>«un gosse qui court dans la cour de récré, je suis sûr qu'il serait intéressé de savoir comment ça [le corps humain] fonctionne»</em></strong>: Car bien entendu, on n'apprend pas aux enfants comment fonctionne le corps humain...  <img class="smile normal" src="media/73a2ceae.facepalm.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/facepalm.png"/> On se contente de leur faire apprendre des paragraphes du livre par coeur...  <img class="smile normal" src="media/a6b12ec8.furieux.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/furieux.png"/>  Mais dans quel monde vivez-vous ?! On part d'observations, et questionnements qu'on fait naître chez le môme pour l'amener à déduire de lui-même, en découvrant un raisonnement scientifique et ordonné, le comment et le pourquoi.
«L'enseignement des sciences et de la technologie au cycle 3 a pour objectif de faire acquérir aux élèves une première culture scientifique et technique indispensable à la description et la compréhension du monde et des grands défis de l'humanité. Les élèves apprennent à adopter une approche rationnelle du monde en proposant des explications et des solutions à des problèmes d'ordre scientifique et technique. Les situations où ils mobilisent savoir et savoir-faire pour mener une tâche complexe sont introduites progressivement puis privilégiées, tout comme la démarche de projet qui favorisera l'interaction entre les différents enseignements.»<a href="http://www.education.gouv.fr/pid285/bulletin_officiel.html?cid_bo=94708">encore le BO94708</a></p>
</li>
<li>
<p><strong><em>«on leur fait faire calcul mental récitation: on les formate pour un système dans l'espoir de les rendre plus productifs»</em></strong>: Ha ?! parce que savoir réciter une comptine ou compter ça rend plus productif ? A l'heure d'internet et des ordinateurs ?! Vous avez remis en question vos opinions récemment ?!
Alors, non, quand on demande aux élèves de savoir compter et de pouvoir retenir quelque chose par coeur, c'est pour les rendre autonomes, notamment face au reste de leur scolarité mais également dans leur vie de tous les jours (combien d'entre-nous parviennent encore à retenir quelque-chose par coeur ?!). Mais peut-être M. Dupontel considère-t-il que savoir compter et mémoriser facilement est un formatage inacceptable de l'être humain... Ne vous inquiétez pas, le smartphone est en train de réduire tout ça en poussière de toutes façons.</p>
</li>
<li>
<p><strong><em>«on les transforme en consommateurs ou en prédateurs, les meilleurs deviennent des prédateurs»</em></strong>: Bon, il va falloir arrêter de picoler à un moment. Si les gens deviennent des prédateurs, c'est à cause de la façon dont on les a élevés, pas à cause du système scolaire... en tout cas, pas en France.</p>
</li>
<li>
<p><strong><em>«j'ai un gamin, j'arrive pas à l'éduquer... il est tout le temps dans ses jeux vidéos, il lit pas un bouquin, c'est une catastrophe»</em></strong>: Peut-être qu'à force d'entendre que l'école c'est de la merde, il a fini par le retenir... ça me fait penser aux parents qui annulent les sanctions prises contre leur gamin et qui après se plaignent que l'enseignant n'a pas d'autorité...
Remettez-vous en question.
Les miens, de mômes, aiment lire, aiment les jeux vidéos, sont curieux et cherchent à comprendre ce qui les entoure, veulent rire, jouer, écoutent en classe, veulent faire leur boulot du mieux possible, savent se remettre en question et discuter, adorent bricoler, écrire des histoires, dessiner, jouer au billard, à la pétanque, pêcher dans les flaques, se promener... (je ne sais pas ce que la vie me réserve, mais jusque là, mes enfants sont merveilleux !)
Ben on s'intéresse à eux, ils passent en premier, on joue avec eux depuis toujours, on leur lit des histoires, on leur explique pourquoi ils peuvent avoir tort ou raison, on valorise...</p>
</li>
<li>
<p><strong><em>«tout est fait pour que l'individu ne se rencontre pas dans une vie car s'il développe un sens critique et un jugement il devient ingouvernable»</em></strong>: Relent conspirationniste légèrement nauséabond. Beurk. Je rappelle que le but de l'école en général et en particulier du cycle 4 et du lycée, c'est de former des citoyens (c'est dans tous les programmes) justement en développant leur sens critique. Mais bon, ça doit être une erreur.
On va me dire que le système scolaire tend à reproduire les inégalités, ce qui n'est pas complètement faux, mais ce n'est pas la faute de l'éducation nationale et des enseignants mais plus celle de la pression sociale. Nous, on fait ce qu'on peut, on se remet en question, on s'adapte aux mômes malgré des conditions de boulot souvent défavorables et des gamins qui sont de plus en plus allergiques à la moindre bonne volonté et ont de moins en moins de compétences, même d'ordre extrascolaires (genre colorier, découper, jouer à un jeu de société etc) ou de facultés de concentration.</p>
</li>
<li><strong><em>«que ce soient les commerçants, les religieux ou les politiques, ils n'ont aucun intérêt à ce que l'individu se trouve»</em></strong>: au delà du cocktail plutôt étrange, sorte de triumvirat de la malfaisance, je note que vous ne faites plus mention de «l'école»</li>
</ol>
<img src="media/7e534dee.Bernie750.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images//Bernie750.jpg" alt="image"/>
<p>Entendons-nous bien, M. Dupontel, je ne vous reproche pas d'avoir un avis sur la question de l'enseignement, si passéiste, mal informé ou partisan soit-il... </p>
<p>Ce que je vous reproche, c'est de décréter des vérités, le doigt accusateur brandi, sans les soumettre à un esprit critique -que vous vantez pourtant et qui devrait vous pousser à commencer par la mise à jour de ce que vous croyez savoir des contenus enseignés: il faut vraiment que vous ne vous soyez jamais intéressé à ce que faisait votre fils de 16 ans, que vous n'ayez jamais ouvert un de ses cahiers, pour être à ce point à côté de la plaque (d'ailleurs, si vous vous en moquez, pourquoi s'y intéresserait-il lui-même ?)</p>
<p>Ce que je vous reproche, c'est «d'enfoncer des portes» déjà largement «ouvertes» dans l'opinion publique, friande de jugements à l'emporte-pièce et d'idées préconçues. Sans compter que votre notoriété donne un poids particulièrement catastrophique à vos paroles.</p>
<p>Vous avez le droit de vous exprimer, mais vous portez la responsabilité d'aller dans le sens du problème et pas de la solution en dénigrant une école dans laquelle de moins en moins de gens croient malgré les efforts de ceux qui la composent, au grand plaisir de tous ceux qui n'attendent qu'une chose, de la démolir comme le reste du service public... vous savez, ceux qui sont les amis des commerçants que vous accusiez des pires maux (commerçants qui cherchent de plus en plus à envahir l'espace sacré de l'éducation).</p>
<p>Repensez-y, M. Dupontel, discutez-en avec les gens concernés, remettez à plat vos opinions... ces propos ne sont pas dignes de quelqu'un qui valorise l'esprit critique.</p>
<p><br/><br/><div class="img_source"><a href="media/fc992ee4.maxresdefault.jpg" data-original-source="https://i.ytimg.com/vi/1z-853Uuozg/maxresdefault.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article796#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article797/rebucon-2
title: Rébucon #2
uri: Rébucon-2
content:
./plugins//WDDWebLinks/default_image.jpg<p>Le rébucon numéro 2: encore plus con.</p>
<img src="media/e9a9b797.rebucon2.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images//rebucon2.jpg" alt="image"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article797#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article799/koitesce-31
title: Koitesce #31
uri: Koitesce-31
content:
<img src="media/9a6466ad.koitesce.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/titres/koitesce.jpg" style="width:100%;height:auto"/><p style="text-align:center">Mais koitesce donc que ce truc-là ?!
<img src="media/eef7a561.2018-04-01-155929.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images//2018-04-01-155929.jpg" alt="image"/></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article799#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article800/rebucon-3
title: Rébucon #3
uri: Rébucon-3
content:
./plugins//WDDWebLinks/default_image.jpg<img src="media/5e8b7052.rebucon3.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images//rebucon3.jpg" alt="image"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article800#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article802/appel-aux-dons-pour-la-chirurgie-de-liam-neeson
title: Appel aux dons pour la chirurgie de Liam Neeson !
uri: Appel-aux-dons-pour-la-chirurgie-de-Liam-Neeson
content:
./plugins//WDDWebLinks/default_image.jpg<p>Personne ne s'en est rendu compte mais ça fait dix piges que Liam Neeson a un flingue qui est resté collé à sa main... dans l'indifférence générale !</p>
<img src="media/6322786d.neeson.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images//neeson.jpg" alt="image"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article802#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article801/5ac367c4e9f84
title: Grid Layout Cheatsheet (pense-bête) - Alsacreations
uri: Grid-Layout-Cheatsheet-(pense-bête)-Alsacreations
url: https://www.alsacreations.com/outils/lire/1763-grid-layout-cheat-sheet-pense-bete.html
content:
<img src="media/82c8cdbd.rid-layout-cheatsheet-pense-bete-alsacreations-maxresdefault.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/grid-layout-cheatsheet-pense-bete-alsacreations-maxresdefault.jpg" style="width:100%;height:auto"/><p>Utile ça: une cheatsheet pour grid ! <br /></p>
<img class="smile xbig" src="media/03909da5.wouhou.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/wouhou.jpg"/>
<p>Copie locale: <a href="media/1d95df00.grid-cheatsheet.pdf" data-original-source="http://www.warriordudimanche.net/data/medias/images//grid-cheatsheet.pdf" >grid-cheatsheet.pdf</a></p>
<div class="via"><span title="Source du lien">Via https://links.kalvn.net/</span></div><br/><br/><div class="img_source"><a href="media/959fb866.maxresdefault.jpg" data-original-source="https://i.ytimg.com/vi/v5KzBPUEgGQ/maxresdefault.jpg">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article801#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article803/5ac4920562640
title: VIDEO. Des sorties de classe au musée ? Non, dans un magasin Apple !
uri: VIDEO-Des-sorties-de-classe-au-musée-Non-dans-un-magasin-Apple
url:
https://www.francetvinfo.fr/societe/education/numerique-a-l-ecole/video-des-sorties-de-classe-au-musee-non-dans-un-magasin-apple_2688262.html

content:
./plugins//WDDWebLinks/default_image.jpg<p>Lu en diagonale: effectivement, si c'est bien comme ça que ça s'est passé, c'est à vomir et les «enseignants» responsables de ça sont des connards.<br />
<br /></p>
<blockquote>
<p>Inacceptable pour Paul Devin. Cet inspecteur de l’Éducation nationale, s’appuie sur un document de 2001 : un “Code de bonne conduite” pour les professeurs. “Ce document rappelle à tous les enseignants ce qu’est le principe de neutralité. C’est-à-dire qu’un fonctionnaire, dans l’exercice de ses fonctions, ne peut pas faire de la promotion pour un objet commercial, s'indigne le secrétaire général du SNPI-FSU. Il n’y a pas besoin d’Apple pour enseigner.”<br />
<br />
<br />
Inacceptable pour moi aussi.</p>
</blockquote>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article803#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article829/5b17840f91881
uri: Regina-Francorum-sur-Twitter-Ça-fait-un-bail-que-j-avais-envie-de-f
url: https://twitter.com/_Kabouka_/status/1004032111316258822
title:
Regina Francorum sur Twitter : Ça fait un bail que j'avais envie de faire un petit thread sur l'incroyable misogynie et toxicité de toute une partie des fans de Star Wars. La haine envers la respo chez Disney, Kathleen Kennedy, la misogynie rampante, à peine camouflées derrière le "on lutte contre les corpo".

content:
<img src="media/982aa195.peine-camouflees-derriere-le-on-lutte-contre-les-corpo-giphy.gif" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/regina-francorum-sur-twitter-ca-fait-un-bail-que-j-avais-envie-de-faire-un-petit-thread-sur-l-incroyable-misogynie-et-toxicite-de-toute-une-partie-des-fans-de-star-wars-la-haine-envers-la-respo-chez-disney-kathleen-kennedy-la-misogynie-rampante-a-peine-camouflees-derriere-le-on-lutte-contre-les-corpo-giphy.gif" style="width:100%;height:auto"/><blockquote>
<p>[...] Et au milieu, étonnamment, c'est les meufs qui trinquent. En premier lieu le personnage de Rey, mais surtout celui de Rose (gnagna elle ne sert à rien dans le film vs gnagna ils l'ont trop mise au centre), évidemment parce que c'est une femme racisée et que ça les enrage.<br />
<br />
<br />
[...]Et du coup comme les enfants gâtés qu'ils sont, au lieu de se poser des questions, ils gueulent sur les meufs et sont très contents d'avoir réussi à les harceler, les effrayer, les faire taire. Une histoire vieille comme le monde. Tout ça pour des sabres laser.<br />
<br />
<br />
Quand on est misogyne, raciste, intolérant, tout sujet est bon pour justifier sa xénophobie et sa volonté de préserver son pré carré.<br />
Les sabres lasers, ce n'est qu'un prétexte de plus dont se servent les connards...<div class="via"><span title="Source du lien">Via <a href="https://www.seven-ash-street.fr/links/?cCRD7A">https://www.seven-ash-street.fr/links/?cCRD7A</a></span></div><br/><br/><div class="img_source"><a href="media/7a0d0fae.giphy.gif" data-original-source="https://media0.giphy.com/media/l2JJKs3I69qfaQleE/giphy.gif">Source image</a></div></p>
</blockquote>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article829#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article828/5b11035ec56b5
title: To learn who rules over you, find out who you can't criticize. - 9GAG
uri: To-learn-who-rules-over-you-find-out-who-you-can-t-criticize-9GAG
url: https://9gag.com/gag/avORZm5
content:
<img src="media/04811f59.-over-you-find-out-who-you-can-t-criticize-9gag-avORZm5_700b.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/to-learn-who-rules-over-you-find-out-who-you-can-t-criticize-9gag-avORZm5_700b.jpg" style="width:100%;height:auto"/><p><img src="media/04811f59.-over-you-find-out-who-you-can-t-criticize-9gag-avORZm5_700b.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/to-learn-who-rules-over-you-find-out-who-you-can-t-criticize-9gag-avORZm5_700b.jpg" alt="alt" /></p>
<p><br/><br/><div class="img_source"><a href="media/45f32f5c.avORZm5_700b.jpg" data-original-source="https://img-9gag-fun.9cache.com/photo/avORZm5_700b.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article828#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article827/5b10ef51c0457
title: Redirection vers une autre instance · Issue #40 · broncowdd/googol
uri: Redirection-vers-une-autre-instance-Issue-40-broncowdd-googol
url: https://github.com/broncowdd/googol/issues/40
content:
<img src="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/redirection-vers-une-autre-instance-issue-40-broncowdd-googol-images" style="width:100%;height:auto"/><p>Le fil de conversation Github à propos du bannissement du serveur hébergeant Googol.<br />
Les utilisateurs se sont sans doute rendu compte du fait que les cas où le script ne renvoyait pas de résultats se multipliaient ces dernières semaines.<br />
<br />
C'est dû au fait que google semble avoir durci ses paramètres en matière de bannissement (ou alors googol envoie de plus en plus de requêtes <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/> )<br />
<br />
je copiecolle mon dernier commentaire à ce propos:<br />
«En fait, googol envoie ta recherche à google.fr, récupère la page, la parse pour récupérer les infos et recrée une page propre et sans traçage ou pub. Le problème, c'est que si google.fr reçoit trop de requêtes depuis la même IP, il considère que ce n'est pas un utilisateur mais un robot et envoie une page contenant le captcha à remplir à la place de la page contenant les résultats: or, cette page est reçue par googol (et pas par ton navigateur); comme il ne trouve aucune info, il dit qu'il n'y a pas de résultats. <br />
Le souci, c'est que même si googol te fournissait la page captcha, ça ne servirait à rien puisque l'IP serait la tienne et pas celle du serveur hébergeant googol... Dead end. <br />
La seule solution que j'avais trouvé c'était de rediriger vers un autre moteur de recherche ou une autre instance de googol le temps d'être unban: toutefois, il faudrait un réseau de googol plus important pour diluer le nombre de requêtes globales. »<br />
<br />
Du coup, je me suis dit que ce pourrait être ça la solution: qu'on augmente la quantité d'instances de googol...<br />
<br />
Des volontaires ? ;-)<br/><br/><div class="img_source"><a href="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTc47CM_LUAsMgR3Fn2TiWrjSFoCLWbl86DvqPjRi-3uMqwhm0M">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article827#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article826/5b1033b266a1b
title: Yod'Art - La créativité en mode Jedi
uri: Yod-Art-La-créativité-en-mode-Jedi
url: http://yodart.warriordudimanche.net/
content:
<img src="media/61098a4e.a-creativite-en-mode-jedi-img_20180531_182216_THUMB__320x320.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/yod-art-la-creativite-en-mode-jedi-img_20180531_182216_THUMB__320x320.jpg" style="width:100%;height:auto"/><p>Un petit lien pour le site de ma fille dans lequel elle partagera ses créations <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/><br />
<img class="smile xbig" src="media/b6b77daa.classe.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/classe.jpg"/> <br />
<br />
[mode papa tout fier ON]<br/><br/><div class="img_source"><a href="media/49a80422.img_20180531_182216_THUMB__320x320.jpg" data-original-source="http://yodart.warriordudimanche.net/data/medias/images//img_20180531_182216_THUMB__320x320.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article826#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article825/5b0fcc0280eee
title: RÉPONSE A GUY CARLIER, L’HUMORISTE CACHÉ DANS UN RAYON - Les liens du Lapin Masqué
uri: RÉPONSE-A-GUY-CARLIER-L-HUMORISTE-CACHÉ-DANS-UN-RAYON-Les-liens
url: https://www.mypersonnaldata.eu/shaarli/?Trms8w
content:
./plugins//WDDWebLinks/default_image.jpg<p>Comme toujours, rien à ajouter à ce qu'a dit Kevin. Merci...<br />
<br />
Ferme ta grosse gueule Guy... tu dis de la merde</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article825#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article824/5b0814c194541
uri: Got-Toddlered-Parents-Share-Photos-Of-Them-Before-And-After-Having-Ki
url: https://www.boredpanda.com/before-after-having-children-got-toddlered-mike-julianelle/
title:
Got Toddlered: Parents Share Photos Of Them Before And After Having Kids, And The Difference Is Hilarious | Bored Panda

content:
<img src="media/a6e35b34.hildren-got-toddlered-mike-julianelle-003-5ae85dd9202d8__700.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/got-toddlered-parents-share-photos-of-them-before-and-after-having-kids-and-the-difference-is-hilarious-bored-panda-before-after-having-children-got-toddlered-mike-julianelle-003-5ae85dd9202d8__700.jpg" style="width:100%;height:auto"/><div class="face2"><div class="bubble">Mouhouhaha ! c'est tellement ça ! Je pourrais faire les mêmes !</div></div><div class="via"><span title="Source du lien">Via https://www.sammyfisherjr.net/Shaarli/?WlisuQ</span></div><br/><br/><div class="img_source"><a href="media/3753579e.hildren-got-toddlered-mike-julianelle-003-5ae85dd9202d8__700.jpg" data-original-source="https://static.boredpanda.com/blog/wp-content/uploads/2018/05/before-after-having-children-got-toddlered-mike-julianelle-003-5ae85dd9202d8__700.jpg">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article824#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article823/5b03bc6a44fab
title: 30 raisons d'aimer Benoit Pruneau (@bpruneau@framapiaf.org) - Framapiaf (clickbait title :-)
uri: 30-raisons-d-aimer-Benoit-Pruneau-(-bpruneau-framapiaf-org)-Framapia
url: https://framapiaf.org/@bpruneau
content:
<img src="media/9e77367c.it-pruneau-bpruneau-framapiaf-org-framapiaf-72643259a038814b.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/benoit-pruneau-bpruneau-framapiaf-org-framapiaf-72643259a038814b.jpg" style="width:100%;height:auto"/><p>Si vous ne le connaissez pas encore et que vous aimez les jeux de mots, suivez Benoit Pruneau sur le mammouth... morceaux choisis:</p>
<p>1.«J'ai battu mon record au cube Rubik. 33 mètres.»</p>
<p>2.«</p>
<ul>
<li>Auriculaire</li>
<li>Annulaire</li>
<li>Majeur</li>
<li>Index</li>
<li>Pouce
Voilà, j'ai révisé, je suis prêt pour la journée des doigts de l'Homme.»</li>
</ul>
<p>3.«Une promesse, c'est comme quand tu vas pisser. Tant que tu la tiens, tout ira bien.»
«Selon une étude assez incomplète, la plupart des hommes.»</p>
<p>4.«</p>
<ul>
<li>Yarque! Y'a quoi dedans?</li>
<li>Cèdre, chêne, sapin, bouleau, érable et hêtre.</li>
<li>Hein?</li>
<li>Ben c'est une tarte aux 6 troncs...»</li>
</ul>
<p>5.«Mon ordinateur n'est pas si lent que ça, pour un John Deere.»</p>
<p>6.«Avoir l'air bête, aujourd'hui, n'est plus aussi facile qu'avant.
La concurrence est de plus en plus rude.»</p>
<p>7.«Bon, moi mon problème, c'est que j'ai soit un problème de motivation, soit un problème de temps, mais jamais les deux en même temps. Le premier disparaît quand le second fait surface.»</p>
<p>8.«&quot;Il ramène une fille différente chez lui à tous les soirs et dévoile sa méthode!&quot;
Il les kidnappe...»</p>
<p>9.«Je suis censé avoir un shampoing qui ralentit la chute des cheveux.
Je constate que c'est un bon shampoing.
Maintenant, j'ai le temps de les voir tomber.»</p>
<p>10.«Hé oui, je suis encore devant l'ordi. De toutes façons, j'ai essayé derrière, et on voit pas grand' chose...»</p>
<p>11.«Selon le médecin, mon fils aurait un hyper-attachement maternel.
Logique ! Sa mère et moi on s'est rencontré sur Internet. Alors, forcément, ça crée des hyperliens.»</p>
<p>12.«</p>
<ul>
<li>De toutes façons, l'accent circonflexe, y servait à rien.</li>
<li>T'es sur?</li>
<li>Euh... une chaise, pourquoi?»</li>
</ul>
<p>13.«Hier soir j'ai passé l'aspirateur sur le tapis du salon, pour constater que finalement, c'est du bois flottant. Ok, ça faisait longtemps...»</p>
<p>14.«Personne ne peut prétendre travailler DANS le public, à moins d'être le douanier qui fait les fouilles.»</p>
<p>15.«Je déteste ces stylos qui fonctionnent mal quand j'essaie d'écrire quelque chose, et qui fonctionnent très bien quand je fais des ronds dans le coin de la feuille.»</p>
<p>16.«Je constate que finalement il n'y a que 2 cas où on se connecte en admin avec Linux:</p>
<ol>
<li>Pour corriger une grosse niaiserie.</li>
<li>Pour faire la dite niaiserie.»</li>
</ol>
<p>17.«</p>
<ul>
<li>Les gens compétitifs me font rire!</li>
<li>Moi aussi!</li>
<li>Haha</li>
<li>Hahaha</li>
<li>Hahahaha</li>
<li>Hahahahaha...»</li>
</ul>
<p>18.«J'aimerais être dans la tête du gars chez Youtube qui a conçu l'algorithme qui suggère un vidéo de hamsters après un film sur l'Apartheid.»</p>
<p>19.«Les chiffres parlent d'eux-mêmes. Ils sont égocentriques.»</p>
<p>20.«Les gens sont capables d'abandonner un animal sur l'autoroute, mais un produit dont le code à barres ne passe pas à la caisse, jamais.»</p>
<p>21.«Forcément, s'il y a des humains qui naissent avec des becs de lièvre, il doit y avoir des lièvres qui naissent avec des bouches d'humain. C'est logique.»</p>
<p>22.«Vous conservez le Nutella :
☐ Au frigo
☐ Dans l'armoire
☒ Dans les fesses»</p>
<p>23.«Microsoft abandonne MS Paint dans sa prochaine version de Windows.
C'est une mauvaise nouvelle.
Pas qu'il n'y ait plus MS Paint, mais qu'il va y avoir une nouvelle version de Windows...»</p>
<p>24.«Les gars qui font des sites web avec quatre popups de pub à fermer pour voir le contenu: Un beau jour, vous ferez une crise cardiaque et l'ambulance qui ira vous porter à l'hôpital s'arrêtera à tous les feux rouges.»</p>
<ol>
<li>«Au marché devant le marchand de fraise, je discute avec une petite dame âgée tonique et rigolote qui nous dit qu'elle a 86 ans. On parle du temps.
&quot;Avec cette chaleur, cette année, je n'ai pas eu beaucoup d'œufs me dit-elle.&quot; Et moi qui lui répond :
&quot; A votre âge, c'est déjà bien que vous pondiez encore.&quot;
Eclat de rire général et une barquette de fraises gratuite pour moi. #HumourPower»</li>
</ol>
<p>26.«Plein de gens vont courir dans le parc près de chez moi. Pour les aider à être plus performants, j'y vais aussi, mais avec une machette. C'est moi, ça. Toujours prêt à aider les gens.»</p>
<p>27.«</p>
<ul>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
<li>Chut.</li>
</ul>
<p>Deux bibliothécaires qui se disputent.»</p>
<p>29.«Si on me demandait de me décrire en un seul mot, je répondrais:
&quot;Ne suit pas les directives&quot;.»</p>
<p>30.«Comme je dis très souvent au travail... Lorem ipsum dolor sit amet, consectetur adipiscing elit.»</p>
<div class="face2"><div class="bubble">«Mouhouhaha», j'ai envie de dire...</div></div>
<p><br/><br/><div class="img_source"><a href="media/82eaf5e2.72643259a038814b.jpg" data-original-source="https://framapiaf.org/system/accounts/avatars/000/007/811/original/72643259a038814b.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article823#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article822/5afc489fc7c70
title: The Good, the Bad and the Ugly - The Danish National Symphony Orchestra (Live) - YouTube
uri: The-Good-the-Bad-and-the-Ugly-The-Danish-National-Symphony-Orchestr
url: https://www.youtube.com/watch?v=KkM71JPHfjk
content:
<img src="media/445fd5aa.duel.gif" data-original-source="http://www.warriordudimanche.net/data/medias/duel.gif" style="width:100%;height:auto"/><p>Depuis quelques jours on voit passer la vidéo d'Italo Vegliante, le gars à casquette qui te fait du Morricone tout seul avec <del>sa bite et son couteau</del> sa guitare et sa voix: le gars est vraiment très bon (et le truc est moins simple qu'il n'y paraît de prime abord: même si les accords sont basiques, la rythmique en elle-même est plus délicate)<br />
<br />
Je remets la video là, pour les ceusses qui ne l'auraient pas encore vue:<br /></p>
<iframe  src="https://www.youtube.com/embed/c6Am_AzjDUg?list=RDc6Am_AzjDUg" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe><br />
<br />
<br />
A la fin du morceau, youtube me propose une autre vidéo en lien avec la musique de Morricone: Le bon, la brute et le truand par le Danish National Symphony Orchestra, en live.<br />
<br />
<img src="media/d3c7803f.drame.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images//drame.jpg" alt="image"/>
<br />
Oui, parce qu'il faut savoir que j'aime vraiment les westerns de cette époque en particulier grâce à leur musique... elle m'exalte, me submerge, me pénètre (ce n'est pas sale): c'est simple, quand chaque instrument et chaque voix s'est placée, des larmes d'exaltation me viennent aux coins des yeux (ça doit-être le foie, comme dirait Achille Talon)<br />
<br />
Et là... ben ça a été encore plus fort: en voyant ces personnes interpréter leur partition, la puissance et la pureté de cette musique apparaît encore mieux.<br />
 <img class="smile xbig" src="media/db783c70.cebo.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/cebo.jpg"/> <br />
Monsieur Morricone: Merci pour votre musique.  <img class="smile normal" src="media/c43f2a25.sad.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/sad.png"/> <br />
<br />
<iframe  src="https://www.youtube.com/embed/KkM71JPHfjk" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article822#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article821/5afa870848679
title: Comment faire de la pâte fimo maison: la recette 100% naturelle
uri: Comment-faire-de-la-pâte-fimo-maison-la-recette-100-naturelle
url: https://www.latelierdiy.fr/comment-faire-de-la-pate-fimo-maison/
content:
<img src="media/018484dc.imo-maison-la-recette-100-naturelle-pate-fimo-maison-coloree.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/comment-faire-de-la-pate-fimo-maison-la-recette-100-naturelle-pate-fimo-maison-coloree.jpg" style="width:100%;height:auto"/><p>résumé:<br /></p>
<blockquote>
<p><br /></p>
<ol>
<li>Dans une casserole, mélangez une dose de maïzena avec 2 doses de bicarbonate de soude.<br /></li>
<li>Délayez le tout avec une dose d’eau.<br /></li>
<li>Faites chauffer sur feu doux et laissez l’eau s’évaporer, tout en remuant avec une spatule en bois.<br /></li>
<li>Lorsque le mélange se détache de la paroi, cela veut dire qu’il a assez chauffé.<br /></li>
<li>Avec la spatule, transvasez la pâte dans un bol et laissez-là refroidir quelques minutes.<br />
<br/><br/><div class="img_source"><a href="media/892875c5.pate-fimo-maison-coloree.jpg" data-original-source="https://www.latelierdiy.fr/wp-content/uploads/2016/06/pate-fimo-maison-coloree.jpg">Source image</a></div></li>
</ol>
</blockquote>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article821#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article820/5af964871486b
title: Comment utiliser yield et les générateurs en Python ? | Sam & Max
uri: Comment-utiliser-yield-et-les-générateurs-en-Python-Sam-Max
url: http://sametmax.com/comment-utiliser-yield-et-les-generateurs-en-python/
content:
<img src="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/comment-utiliser-yield-et-les-generateurs-en-python-sam-max-generateur-electrique-puissant-3000-watts-groupe-electrogene-a-essence-2752566" style="width:100%;height:auto"/><p>Je ne connaissais pas les générateurs en Python (bon, je ne connais pas encore grand chose dessus, c'est vrai): ça me semble un bon moyen d'économiser de la RAM sur des traitements d'un gros volume de données...<br />
à creuser.<br />
<br />
(+ <a href="http://apprendre-python.com/page-iterateurs-iterator-generateur-generator-python">http://apprendre-python.com/page-iterateurs-iterator-generateur-generator-python</a> )<br/><br/><div class="img_source"><a href="https://www.manomano.fr/groupe-electrogene/generateur-electrique-puissant-3000-watts-groupe-electrogene-a-essence-2752566">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article820#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article819/5af94341f3ac5
title: Benoît Hamon sur Twitter
uri: Benoît-Hamon-sur-Twitter
url: https://twitter.com/benoithamon/status/995930209923854336
content:
<img src="media/80589f20.benoit-hamon-sur-twitter-DdJBPfEXUAAO3Dj.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/benoit-hamon-sur-twitter-DdJBPfEXUAAO3Dj.jpg" style="width:100%;height:auto"/><blockquote>
<p>&quot;J'adore&quot; tous ces hypocrites qui exaltent la valeur Travail pour rejeter le revenu universel d'existence mais justifient le partage incroyablement inégalitaires des bénéfices au profit des actionnaires, au détriment de l'investissement, de l'emploi et du Travail.<br />
<br />
<br />
<img class="smile xbig" src="media/92d159cb.conlepeuple.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/conlepeuple.jpg"/> <div class="via"><span title="Source du lien">Via <a href="https://nicolas-delsaux.hd.free.fr/Shaarli/">https://nicolas-delsaux.hd.free.fr/Shaarli/</a></span></div><br/><br/><div class="img_source"><a href="media/07f41321.DdJBPfEXUAAO3Dj.jpg" data-original-source="https://pbs.twimg.com/media/DdJBPfEXUAAO3Dj.jpg">Source image</a></div></p>
</blockquote>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article819#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article818/5af8301d771b6
title: Jacques Ruellan - De l'eau à la lumière
uri: Jacques-Ruellan-De-l-eau-à-la-lumière
url: http://jacquesruellan.fr/
content:
<img src="media/6a1f8720.jacquesruellan-fr-data-medias-paysages-bretagneepave-3-redim.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/http-jacquesruellan-fr-data-medias-paysages-bretagneepave-3-redim.jpg" style="width:100%;height:auto"/><p>De l'aquarelle ...</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article818#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article817/rebucon-5
title: Rébucon #5
uri: Rébucon-5
content:
./plugins//WDDWebLinks/default_image.jpg<p><img class="smile normal" src="media/b8e47026.omg.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/omg.png"/>oohhh ! Comment tu parles ?!
Oui, c'est très con... <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/></p>
<img src="media/c257e5a9.rebucon5.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images//rebucon5.jpg" alt="image"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article817#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article816/5adf5e6d535ac
uri: Cette-artiste-laisse-le-public-lui-faire-ce-qu-il-veut-pendant-6-heu
url: http://www.feroce.co/marina-abramovic/
title:
Cette artiste laisse le public lui faire ce qu’il veut pendant 6 heures. Ce qu’un spectateur fait à la fin est complètement fou.

content:
<img src="media/a6502cbd.t-completement-fou-8e6bcf9d7dd04b6e49deb46e05d1760d-800x442.jpeg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/cette-artiste-laisse-le-public-lui-faire-ce-quil-veut-pendant-6-heures-ce-quun-spectateur-fait-a-la-fin-est-completement-fou-8e6bcf9d7dd04b6e49deb46e05d1760d-800x442.jpeg" style="width:100%;height:auto"/><blockquote>
<p>On déchire ses vêtements avec des lames de rasoirs et un homme la coupe au niveau du cou avant de boire son sang. Certains l'agressent sexuellement. Mais la torture n'est pas terminée, elle va d'ailleurs s'intensifier. <br />
<br />
Youtube/Marina Abramovic Institute<br />
<br />
&quot;Pendant la troisième heure, on a déchiré ses vêtements avec des lames de rasoir. Pendant la quatrième heure, on a commencé à la couper avec. Elle a été agressée sexuellement&quot;, raconte le critique d'art américain Thomas McEvilley, qui a assisté à la performance. <br />
<br />
Marina Abramović se souvient des deux dernières heures : &quot;Je me suis sentie violée, ils ont arraché mes vêtements, ils m'ont enfoncé des épines de rose dans le ventre, ont pointé un pistolet sur ma tête.&quot; <br />
<br />
<br />
<br />
Étonnamment, une fois les six heures écoulées, le &quot;public&quot; ne peut plus la regarder en face. Elle est redevenue un être humain à leurs yeux.<br />
<br />
&quot;Ce travail révèle ce qu'il y a de plus horrible chez les gens. Cela montre à quelle vitesse quelqu'un peut se décider à te blesser lorsqu'il y est autorisé. Cela montre à quel point il est facile de déshumaniser quelqu'un qui ne se défend pas. Cela montre que la majorité des gens 'normaux' peuvent devenir très violents en public si on leur en donne la possibilité.&quot; C'est ce que dit l'artiste avec ses propres mots. Et malheureusement, elle a bien raison. <br />
<br />
<br />
L'humanité ?!<br />
<img class="smile xbig" src="media/9b7c9718.jvoispas.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/jvoispas.jpg"/> <br />
<br />
<br />
<br/><br/><div class="img_source"><a href="media/6c03125d.8e6bcf9d7dd04b6e49deb46e05d1760d-800x442.jpeg" data-original-source="http://files.ferocecdn.com/wp-content/uploads/2017/06/8e6bcf9d7dd04b6e49deb46e05d1760d-800x442.jpeg">Source image</a></div></p>
</blockquote>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article816#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article815/5add97c8a550a
title: Doigt d’honneur au chef de l’État
uri: Doigt-d-honneur-au-chef-de-l-État
url: https://lundi.am/Du-doigt-d-honneur-au-chef-de-l-Etat-au-doigt-d-honneur-de-l-Etat
content:
<img src="media/bc275a4e.doigt-dhonneur-au-chef-de-letat-macron-doigt-dhonneur.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/doigt-dhonneur-au-chef-de-letat-macron-doigt-dhonneur.jpg" style="width:100%;height:auto"/><p>Selon que vous serez puissant ou misérable ...<br />
<br />
Habituez-vous au message officieux: «fermez tous vos gueules!»<br/><br/><div class="img_source"><a href="media/1d1ad390.macron-doigt-dhonneur.jpg" data-original-source="http://lagauchematuer.fr/wp-content/uploads/2017/09/macron-doigt-dhonneur.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article815#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article814/5add89d647ba1
title: Le bicarbonate de soude un véritable ennemi de l’industrie pharmaceutique
uri: Le-bicarbonate-de-soude-un-véritable-ennemi-de-l-industrie-pharmace
url: https://www.altersante.fr/le-bicarbonate-de-soude-un-veritable-ennemi-de-lindustrie-pharmaceutique/
content:
<img src="media/7b0796ef.e-ennemi-de-lindustrie-pharmaceutique-poudre-de-perlimpinpin.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/le-bicarbonate-de-soude-un-veritable-ennemi-de-lindustrie-pharmaceutique-poudre-de-perlimpinpin.jpg" style="width:100%;height:auto"/><p>Bon, autant je veux bien accepter certaines vertus avérées du bicarbonate, autant je ne prendrai pas ce site au sérieux; rien que les titres putaclics des autres articles en disent long</p>
<blockquote>
<ul>
<li>Les médecins lancent un avertissement : Si vous utilisez du papier d’aluminium, arrêtez ou faites face à des conséquences mortelles...
<ul>
<li>La mystérieuse « maladie X » pourrait être la prochaine épidémie mondiale meurtrière, avertit l’OMS…</li>
<li>Vous n’achèterez plus ces 8 produits lorsque vous saurez de quoi ils sont faits</li>
<li>Thyroïde : quand on invente des maladies pour vendre des médicaments...</li>
<li>Filtrez et purifiez l'eau du robinet avec ces 3 méthodes économiques et naturelles</li>
<li>Un boulanger bio explique pourquoi le blé et le gluten sont devenus toxiques</li>
<li>Un rapport explosif italien sur les vaccins montre qu’Agnès Buzyn a menti ! Et les conclusions sont terrifiantes ! La...</li>
<li>Repérez une personne toxique avec ces 11 signes classiques</li>
<li>les risques sanitaires du téflon ont été couvert bien trop longtemps</li>
<li>7 transformations corporelles extrêmes issues de traditions ancestrales</li>
</ul></li>
</ul>
</blockquote>
<p>Joli florilège de conneries et de bullshit alarmiste avec des vrais morceaux d'antivac dedans...</p>
<img class="smile xbig" src="media/35f1b6ea.cdlamerde.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/cdlamerde.jpg"/> 
<div class="img_source"><a href="media/5b28c376.poudre-de-perlimpinpin.jpg" data-original-source="http://www.laboutiqueinsolite.com/1757-thickbox_default/poudre-de-perlimpinpin.jpg">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article814#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article813/5adc7dc2454b4
title: Emmanuel Macron humilié par un deputé belge. - YouTube
uri: Emmanuel-Macron-humilié-par-un-deputé-belge-YouTube
url: https://www.youtube.com/watch?v=6xVA5fsELYQ
content:
<img src="media/f66d5366.uel-macron-humilie-par-un-depute-belge-youtube-maxresdefault.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/emmanuel-macron-humilie-par-un-depute-belge-youtube-maxresdefault.jpg" style="width:100%;height:auto"/><p>C'est beau, j'en chialerais... Je me le sauvegarde dans un coin.<br />
<img class="smile xbig" src="media/ff93db46.dtc.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/dtc.jpg"/> <div class="via"><span title="Source du lien">Via Erase</span></div><br/><br/><div class="img_source"><a href="media/666c8fc0.maxresdefault.jpg" data-original-source="https://i.ytimg.com/vi/RFHvOvrCbLs/maxresdefault.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article813#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article812/5ad6feb0c645b
title: 14.04 - Missing nemo right-click
uri: 14-04-Missing-nemo-right-click
url: https://askubuntu.com/questions/532714/missing-nemo-right-click-extract-compress-files
content:
<img src="media/bf470196.-nemo-right-click-corail-personnage-dans-le-monde-de-nemo-02.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/14-04-missing-nemo-right-click-corail-personnage-dans-le-monde-de-nemo-02.jpg" style="width:100%;height:auto"/><p>Si le menu contextuel «compresser» disparaît de Nemo: <br />
<br /></p>
<blockquote>
<p>Okay, I've tried lots of &quot;solutions&quot; but none of them work, so I went and dug out how things work, and here's how I did it on Ubuntu 14.04 and Nemo 2.2.2...<br />
<br />
Open up terminal and type cd ~/.local/share/nemo/actions/<br />
Create a new file/action for Compress by typing nano compress.nemo_action<br />
<br />
Paste this contents into newly created file<br />
<br />
[Nemo Action]<br />
Active=true<br />
Name=Compress...<br />
Comment=compress %N<br />
Exec=file-roller -d %F<br />
Icon-Name=gnome-mime-application-x-compress<br />
Selection=Any<br />
Extensions=any;<br />
<br />
Save the file and exit (CTRL+X, and just Enter)<br />
Create a new file/action for &quot;Extract here&quot; by typing nano extracthere.nemo_action<br />
<br />
Paste this contents into newly created file<br />
<br />
[Nemo Action]<br />
Active=true<br />
Name=Extract here<br />
Comment=Extract here<br />
Exec=file-roller -h %F<br />
Icon-Name=gnome-mime-application-x-compress<br /></p>
<h1>Stock-Id=gtk-cdrom<br /></h1>
<p>Selection=Any<br />
Extensions=zip;7z;ar;cbz;cpio;exe;iso;jar;tar;tar;7z;tar.Z;tar.bz2;tar.gz;tar.lz;tar.lzma;tar.xz;<br />
<br />
Save the file and exit (CTRL+X, and just Enter)<br />
You're done. If you still don't have Compress/Extract here options in Nemo, just restart or log out/in.<br />
<br/><br/><div class="img_source"><a href="media/a951ce6a.corail-personnage-dans-le-monde-de-nemo-02.jpg" data-original-source="https://pixar-planet.fr/wp-content/uploads/2010/04/corail-personnage-dans-le-monde-de-nemo-02.jpg">Source image</a></div></p>
</blockquote>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article812#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article811/5ad5de05b7298
title: SNCF : D'OÙ VIENT (VRAIMENT) LA DETTE ?
uri: SNCF-D-OÙ-VIENT-(VRAIMENT)-LA-DETTE
url: https://hooktube.com/watch?v=iqp9hqaID54
content:
<img src="media/6f497b0a.sncf-d-ou-vient-vraiment-la-dette-mq1.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/sncf-d-ou-vient-vraiment-la-dette-mq1.jpg" style="width:100%;height:auto"/><p>A regarder... vite.<br/><br/><div class="img_source"><a href="media/f5bb4c44.mq1.jpg" data-original-source="https://i1.ytimg.com/vi/vT2EmD3bSi4/mq1.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article811#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article810/5ad1bb137335e
title: La loi instaurant un « secret des affaires » passe en toute discrétion à l'Assemblée - Basta !
uri: La-loi-instaurant-un-secret-des-affaires-passe-en-toute-discrét
url: https://www.bastamag.net/La-loi-instaurant-un-secret-des-affaires-passe-en-toute-discretion-a-l
content:
<img src="media/6260aeda.ires-passe-en-toute-discretion-a-l-assemblee-basta-arton6655.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/la-loi-instaurant-un-secret-des-affaires-passe-en-toute-discretion-a-l-assemblee-basta-arton6655.jpg" style="width:100%;height:auto"/><blockquote>
<p>Sous prétexte de lutter plus efficacement contre l’espionnage industriel, ce texte crée un droit général au secret pour les entreprises, qui leur permet potentiellement de traîner devant les tribunaux quiconque porterait à la connaissance du public une information sur leurs activités sur laquelle elles auraient préféré maintenir l’omerta.<br />
<br />
C’est donc une épée de Damoclès qui pèse désormais sur les lanceurs d’alerte, les salariés et leurs syndicats, les journalistes, les chercheurs et les associations de protection des consommateurs et de l’environnement.<br />
<br />
[...] les institutions européennes ont en revanche catégoriquement refusé de restreindre la portée de ce texte aux seules situations concurrentielles, autrement dit aux cas où un acteur économique chercherait effectivement à acquérir des informations commerciales sensibles pour son propre gain. Ce qui laisse la porte ouverte à tous les abus [...]<br />
<br />
Le secret des affaires est à bien des égards une invention française. Des propositions de loi en ce sens, préparées par un petit milieu de spécialistes autoproclamés de « l’intelligence économique », ont été présentées à plusieurs reprises ces dernières années à l’Assemblée nationale ou au Sénat, sans succès. La dernière tentative date de 2015 et de la loi Macron, dans laquelle avaient été introduits subrepticement des articles sur le secret des affaires<br />
<br />
<br />
Un travail d’enquête approfondi mené par l’ONG bruxelloise Corporate Europe Observatory montre comment un petit groupe de multinationales essentiellement françaises et états-uniennes (Alstom, Michelin, Solvay, Safran, Nestlé, DuPont, GE et Intel...) ont orchestré l’élaboration de la directive en relation étroite avec la Commission européenne et des cabinets d’avocats d’affaires internationaux<br />
<br />
<br />
<br />
Oui, je rappelle que Macron n'est ni de gauche.  <img class="smile normal" src="media/51a82175.corbeau.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/corbeau.png"/> <br />
<br /></p>
<div class="via"><span title="Source du lien">Via https://www.sammyfisherjr.net/Shaarli/</span></div><br/><br/><div class="img_source"><a href="https://www.bastamag.net/local/adapt-img/740/10x/IMG/arton6655.jpg?1521620696">Source image</a></div>
</blockquote>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article810#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article866/5bbb2e438146c
title: jerry wham / framework-sigesth · GitLab
uri: jerry-wham-framework-sigesth-GitLab
url: https://framagit.org/jerrywham/framework-sigesth
content:
./plugins//WDDWebLinks/default_image.jpg<img class="smile normal" src="media/b8e47026.omg.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/omg.png"/> oooh ! un Framework from scratch ! <br />
GG mon copain ! <br />
Faut que je trouve du temps pour regarder \o/
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article866#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article865/5bb9e78d79c12
title: Problème d'entraînement de fil avec une Prusa i3
uri: Problème-d-entraînement-de-fil-avec-une-Prusa-i3
url: https://ultimaker.com/en/products/ultimaker-cura-software
content:
<img src="media/bdb13a23.30mms.png" data-original-source="http://www.warriordudimanche.net/data/medias/30mms.png" style="width:100%;height:auto"/><p>Dernièrement, je suis passé de Slic3r à Cura (ce sont les logiciels qui permettent de transformer les fichiers 3d stl en gcode pour l'imprimante).<br />
<br />
J'étais très satisfait du changement en matière d'ergonomie mais peu de temps après, j'ai eu un problème de buse bouchée -ou du moins le croyais-je: au bout d'un moment, le PLA ne coulait plus de la buse et l'impression était foutue.<br />
<br />
Après avoir changé la buse, aucun changement. Puis je me suis rendu compte que c'était davantage un problème d'entraînement du fil: il semblait se bloquer et n'accédait plus au bloc de chauffe.<br />
<br />
En fait, mon imprimante (et mes bobines de fil) étaient normaux... simplement, cura propose par défaut une vitesse d'impression de 60 mm/s et ce paramètre n'apparaît qu'avec l'onglet configuration personnalisée (alors que sous slic3r, plus austère, tout est affiché)<br />
<br />
Donc, à 60 mm/s, ma prusa ne semblait pas arriver à suivre, alors qu'une fois passé à 30, plus aucun problème.<br />
<br /></p>
<img class="smile big" src="media/2ec5b231.bazinga.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/big/bazinga.png"/> <br />
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article865#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article864/5bb850b129ef9
title: regex - How do I match accented characters with PHP preg? - Stack Overflow
uri: regex-How-do-I-match-accented-characters-with-PHP-preg-Stack-Over
url: https://stackoverflow.com/questions/2133758/how-do-i-match-accented-characters-with-php-preg
content:
<img src="media/3af82b25.xkcd-regex.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/xkcd-regex.jpg" style="width:100%;height:auto"/><p>Bon à savoir ça: pour filtrer les caractères non alphabétiques en conservant les accents, il suffit d'ajouter la directive «u» à la fin de la regex.<br />
(en ayant précisé la locale voulue...quand même.)<br /></p>
<pre><code><br />
$str = 'perché';<br />
setlocale(LC_ALL, 'fr_FR@euro');<br />
echo preg_match('#^\w+$#u', $str);<br />
</code></pre><br />
 <img class="smile normal" src="media/8cb82c2e.content.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/content.png"/> <br />
<p>sinon, on peut aussi utiliser les <a href="http://php.net/manual/en/regexp.reference.unicode.php">Unicode character properties</a></p>
<pre><code>
\p{L}
</code></pre>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article864#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article863/5bb45c4ef1b81
uri: Après-ça-tu-risques-d-avoir-beaucoup-de-mal-à-me-convaincre-que
url: https://twitter.com/efoulon1/status/1046788728356851718
title:
Après ça, tu risques d’avoir beaucoup de mal à me convaincre que les corridas c’est sympa, c’est le folklore et que de toute façon, avant la mise à mort ces animaux vivent super bien

content:
<img src="media/bfa04086.-a-mort-ces-animaux-vivent-super-bien-CORRIDA-TAUREAU-AGONIE.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/apres-ca-tu-risques-davoir-beaucoup-de-mal-a-me-convaincre-que-les-corridas-cest-sympa-cest-le-folklore-et-que-de-toute-facon-avant-la-mise-a-mort-ces-animaux-vivent-super-bien-CORRIDA-TAUREAU-AGONIE.jpg" style="width:100%;height:auto"/><p>Ben oui: la corrida, c'est un spectacle sadique regardée par des imbéciles sadiques.<br />
Attention, la vidéo est assez dure...<br />
<br/><br/><div class="img_source"><a href="media/5b88c928.CORRIDA-TAUREAU-AGONIE.jpg" data-original-source="http://img.over-blog.com/300x199/5/23/68/10/CHIENS/CORRIDA-TAUREAU-AGONIE.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article863#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article862/5bb459c7077df
title: Le désenchantement du logiciel
uri: Le-désenchantement-du-logiciel
url: https://blog.romainfallet.fr/desenchantement-logiciel/
content:
<img src="media/c2d8b905.t-du-logiciel-landscape-1453913826-delish-creamy-spaghetti-3.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/le-desenchantement-du-logiciel-landscape-1453913826-delish-creamy-spaghetti-3.jpg" style="width:100%;height:auto"/><p>Ha... je suis pas le seul que ça agace <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/><br />
<br />
<br />
«L’application web Google Inbox développée par Google, qui tourne dans le navigateur Chrome de la même firme, met 13 secondes pour ouvrir un courriel de taille moyenne.»<br />
<br />
«Windows 10 met 30 minutes à se mettre à jour.»<br />
<br />
«Les éditeurs de texte modernes ont plus de latence qu’un Emacs vieux de 42 ans. Des éditeurs de texte !»<br />
<br />
«Et puis, il y a le poids. Les applications web pourraient s’ouvrir jusqu’à 10 fois plus vite si on bloquait simplement toutes les publicités.»<br />
<br />
«Le système Android sans aucune application installée pèse quasiment 6 Go. Prenez juste une seconde pour vous rendre compte à quel point ce chiffre est énorme.»<br />
<br />
«Windows 95 pesait 30 Mo. Aujourd’hui, on a des pages web plus lourdes que ça ! Windows 10 pèse 4 Go, ce qui est 133 fois plus lourd. Est-ce qu’il en est 133 fois supérieur pour autant ?»<br />
<br />
«L’application clavier de Google consomme constamment 150 Mo de mémoire. Est-ce qu’une application qui dessine 30 caractères sur un écran est réellement cinq fois plus complexe que Windows 95 tout entier ?»<br />
<br />
«Ce sont les composants informatiques qui eux sont de plus en plus rapides et qui exécutent des logiciels de plus en plus lents, toujours avec les mêmes fonctionnalités»<br />
<br />
«[...] chaque application est devenue au moins deux fois plus lourde pour aucune raison apparente. Il n’y a pas de fonctionnalités supplémentaires. Elles ne sont pas plus rapides, ni plus optimisées. Elles n’ont pas l’air différentes. Elles sont juste… plus lourdes ?»<br />
<br />
<br />
«On dirait simplement que plus personne n’est intéressé à faire de la qualité, rapide, efficace, durable et qui puisse devenir les fondations d’autres choses.»<br />
<br />
«Et les dépendances ? On en parle ? Les développeurs utilisent souvent des packages de solutions complètes pour résoudre les plus simples des problèmes, sans considérer leur coût.» <br />
<br />
<br />
«Ceci n’est pas de l’ingénierie. C’est de la programmation de paresseux.»<div class="via"><span title="Source du lien">Via La river</span></div><br/><br/><div class="img_source"><a href="media/d4737582.landscape-1453913826-delish-creamy-spaghetti-3.jpg" data-original-source="http://del.h-cdn.co/assets/16/04/1600x800/landscape-1453913826-delish-creamy-spaghetti-3.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article862#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article861/5bab23dd1715b
title: Discours créationniste chrétien- Tronche de Fake #1 (Abbé Frament) - YouTube
uri: Discours-créationniste-chrétien-Tronche-de-Fake-1-(Abbé-Frament)
url: https://www.youtube.com/watch?v=uUlqETF9Oss
content:
<img src="media/e57bdc65.sciencefaith.png" data-original-source="http://www.warriordudimanche.net/data/medias/sciencefaith.png" style="width:100%;height:auto"/><ul>
<li>«les images faciles sont propices à travestir la réalité et on devrait en bannir l'usage...»</li>
<li>«il convient donc d'être humble et prudent et de ne pas se risquer à des affirmations péremptoires si on ne veut pas être démenti par des gens mieux informés.»</li>
</ul>
<p>Amen... si j'ose dire <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/></p>
<p>Je connais des gens comme cet abbé, des cousins créationnistes, eux aussi... Ils sont capables d'accumuler une quantité de bullshit, de pseudo vocabulaire scientifique et d'approximations erronées au paragraphe carré absolument confondante. Quitte même à affirmer le contraire de la réalité. Et ça ne sert à rien de discuter avec eux: tout leur «argumentaire» étant basé sur la Bible ou la déformation des propos des autres...</p>
<p>En même temps, qu'attendre de gens qui n'ont lu sérieusement qu'un livre dans leur vie (et un roman de fiction de surcroît)</p>
<p>(au passage, si des créationnistes veulent répondre à ce billet, n'hésitez pas à le faire... ailleurs.)</p>
<img class="smile xbig" src="media/d31b484b.youredoingwrong.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/youredoingwrong.jpg"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article861#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article860/5ba4b9f0e2427
title: SCP-1616 - Fondation SCP
uri: SCP-1616-Fondation-SCP
url: http://fondationscp.wikidot.com/scp-1616
content:
./plugins//WDDWebLinks/default_image.jpg<p>Heu... on est bien d'accord que ce n'est pas un site sérieux, hein...<br />
<a href="https://fr.wikipedia.org/wiki/Fondation_SCP">https://fr.wikipedia.org/wiki/Fondation_SCP</a><div class="via"><span title="Source du lien">Via Riduidel</span></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article860#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article859/5ba4a30a42b85
title: DWService - Accès à distance, Administration à distance, Support à distance
uri: DWService-Accès-à-distance-Administration-à-distance-Support-à
url: https://www.dwservice.net/fr/home.html
content:
./plugins//WDDWebLinks/default_image.jpg<p>Cha a l'air bon Cha !<br />
Une alternative à NoMachine également...<br />
Je testerai !<div class="via"><span title="Source du lien">Via <a href="http://sebsauvage.net/links/?jLoq0Q">http://sebsauvage.net/links/?jLoq0Q</a></span></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article859#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


title: Le bracelet ÉGALITÉ en or à 250€, c'est une belle illustration de la présidence
uri: Le-bracelet-ÉGALITÉ-en-or-à-250-c-est-une-belle-illustration-de
feed_id:
http://www.warriordudimanche.net/article858/le-bracelet-egalite-en-or-a-250e-c-est-une-belle-illustration-de-la-presidence

content:
<img src="media/4c6b186e.https-i-ytimg-com-vi-2y-cg5uokwhqdefault.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/https-i-ytimg-com-vi-2y-cg5uokwhqdefault.jpg" style="width:100%;height:auto"/><img src="media/61c7a9a4.egalite.png" data-original-source="http://www.warriordudimanche.net/data/medias/images//egalite.png" alt="image"/>
<p>J'adore le premier commentaire : c'est tellement ça !</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article858#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article857/5b9b6ae3a2169
uri: Comment-interdire-ce-qui-l-est-déjà-sans-l-interdire-vraiment
title:
Comment interdire ce qui l’est déjà, sans l’interdire vraiment ? (ça parle du portable à l’école) – Róka – Parlons droit

url:
https://anyroka.fr/comment-interdire-ce-qui-lest-deja-sans-linterdire-vraiment-ca-parle-du-portable-a-lecole/

content:
<img src="media/0128897f.nt-ca-parle-du-portable-a-lecole-roka-parlons-droit-13914723.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/comment-interdire-ce-qui-lest-deja-sans-linterdire-vraiment-ca-parle-du-portable-a-lecole-roka-parlons-droit-13914723.jpg" style="width:100%;height:auto"/><p>Oui, ça ne changera rien dans les faits à part qu'on pourra venir nous emmerder quand on cherchera à en faire une utilisation pédagogique et intelligente.<br />
En gros, au lieu d'enseigner un usage raisonné et fonctionnel, on l'interdit.<br />
Oui, c'est assez con...<br /></p>
<div class="via"><span title="Source du lien">Via http://links.bill2-software.com/shaarli/?muNa0A</span></div><br/><br/><div class="img_source"><a href="https://s1.qwant.com/thumbr/0x0/9/4/6206e225418a67ee40948c1517517c546bf5619a963e49c998348c5379da27/13914723.jpg?u=https%3A%2F%2Fwww.francetvinfo.fr%2Fimage%2F75eixny5t-31ad%2F908%2F510%2F13914723.jpg&q=0&b=1&p=0&a=1">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article857#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article856/5b9a3a614134b
title: Apprendre le JavaScript : Fetch
uri: Apprendre-le-JavaScript-Fetch
url:
https://www.grafikart.fr/formations/debuter-javascript/fetch?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+Grafikart+%28Grafikart.fr%29

content:
<img src="media/ea8f0699.apprendre-le-javascript-fetch-1.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/apprendre-le-javascript-fetch-1.jpg" style="width:100%;height:auto"/><p>C'est carrément plus simple que  XMLHttpRequest !  <img class="smile normal" src="media/b8e47026.omg.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/omg.png"/> <br />
<br />
(rappel sur les <a href="https://www.grafikart.fr/formations/debuter-javascript/promise-async-await">promises</a> )<br/><br/><div class="img_source"><a href="media/0e348e78.1.jpg" data-original-source="https://www.grafikart.fr/uploads/avatars/1/1.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article856#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article855/5b9a3531738e3
title: Voici une mannequin obèse et pleine de bourrelets
uri: Voici-une-mannequin-obèse-et-pleine-de-bourrelets
url:
https://web.nouvelobs.com/rue89/nos-vies-intimes/20180906.OBS1906/voici-une-mannequin-obese-et-pleine-de-bourrelets.html

content:
<img src="media/1f8aa30b.voici-une-mannequin-obese-et-pleine-de-bourrelets-16616408.JPG" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/voici-une-mannequin-obese-et-pleine-de-bourrelets-16616408.JPG" style="width:100%;height:auto"/><p>ça me rappelle toujours la réplique de Clavier dans Le père noël est une ordure:<br />
<br />
"Ben oui, je suis un pot à tabac et j'ai des poils qui me poussent sous le maquillage, mais je réclame le droit de vivre !"<br />
<br />
A tous les gens qui décrètent le beau, l'esthétique, le à-la-mode, le comment il faut être, le qui c'est qui est laid/gros/etc...<br />
On vous emmerde.<br />
<br />
Vous pouvez décréter que cette jeune femme est obèse: on s'en bat les steaks parce que ce n'est pas vous qui décidez de ce que les autres sont. Vos critères, vous pouvez en faire un plug anal, ça vous élargira les zones érogènes à défaut des idées (pis "quand on peut faire plaisir et pis qu'ça débarrasse")...<br />
<br />
<br />
<br /></p>
<div class="via"><span title="Source du lien">Via SebSauvage</span></div><br/><br/><div class="img_source"><a href="media/551d44a4.16616408.JPG" data-original-source="https://media.nouvelobs.com/referentiel/633x306/16616408.JPG">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article855#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article854/5b89058a763d9
title: Badgen – Pour générer vos badges SVG
uri: Badgen-Pour-générer-vos-badges-SVG
url: https://korben.info/badgen-pour-generer-vos-badges-svg.html
content:
<img src="media/7cfb552f.badgen-pour-generer-vos-badges-svg-korben20180718073054-5-3.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/badgen-pour-generer-vos-badges-svg-korben20180718073054-5-3.png" style="width:100%;height:auto"/><p>Sympa: un générateur de badges appelable via une URL.<br />
<br />
<br/><br/><div class="img_source"><a href="media/f14bbd73.korben20180718073054-5-3.png" data-original-source="https://korben.info/app/uploads/2018/08/korben20180718073054-5-3.png">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article854#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article853/5b8903377ddf7
title: Chômage : ça va saigner – Revue PARTAGE
uri: Chômage-ça-va-saigner-Revue-PARTAGE
url: http://revue-partage.eu/chomage-ca-va-saigner
content:
./plugins//WDDWebLinks/default_image.jpg<p>@HowTommy: c'est Rupin des Bois <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article853#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article852/linux-mint-19-mon-pense-bete-d-installation
title: Linux Mint 19: Mon pense-bête d'installation
uri: Linux-Mint-19-Mon-pense-bête-d-installation
content:
<img src="media/585563a4.index.png" data-original-source="http://www.warriordudimanche.net/data/medias/index.png" style="width:100%;height:auto"/><h3>Update de la distro</h3>
<pre><code>
sudo aptitude update && sudo aptitude safe-upgrade
</code></pre>
<h3>Ajout du PPA de jdownloader</h3>
<pre><code>
sudo add-apt-repository ppa:jd-team/jdownloader && sudo apt-get update
</code></pre>
<h3>Install de logiciels</h3>
<pre><code>
sudo apt-get install apache2 php7.2 libapache2-mod-php php7.2-gd php7.2-curl php7.2-mbstring php7.2-xml chromium-browser-l10n gparted syncthing jdownloader filezilla gpart inkscape calibre
</code></pre>
<h3>Dégagement des logiciels inutiles</h3>
<pre><code>
sudo aptitude purge banshee brasero brasero-common brasero-cdrkit hexchat hexchat-common espaeak espeak-data libespeak1 libsonic0 libspeechd2 python3-speechd speech-dispatcher speech-dispatcher-audio-plugins gnome-orca virtualbox-guest-utils virtualbox-guest-dkms virtualbox-guest-x11 mate-screensaver mate-screensaver-common  tomboy toshset brltty mono-runtime-common avahi-daemon xscreensaver-data-extra xscreensaver-data xscreensaver-gl-extra xscreensaver-gl icedtea-netx-common xplayer xplayer-common
</code></pre>
<h3>Configuration de PHP/Apache</h3>
<pre><code>
sudo xed /etc/php/7.2/apache2/php.ini
</code></pre>
<h3>Modifier les valeurs suivantes:</h3>
<pre><code>
post_max_size = 20M
upload_max_filesize = 1000M
error_reporting = -1
display_errors = On
zend.multibyte = On
</code></pre>
<h3>Déplacer le var/www vers ~/www</h3>
<pre><code>
mkdir ~/www
mkdir ~/www/html
sudo chmod 777 ~/www
sudo mv /var/www /var/www_old
sudo ln -s ~/www /var/www
</code></pre>
<p>Source: <a href="https://lehollandaisvolant.net/linux/checklist/#maj">la liste de Timo</a></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article852#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article851/5b81da5bab249
uri: Quand-ça-marche-touche-à-rien-Si-tu-touches-fais-des-backups-Si
title:
Quand ça marche, touche à rien. Si tu touches, fais des backups. Si t'as des backups, vérifie que tu les as pas effacés pour gagner de la place. (DUCON)

content:
<img src="media/008986c2.es-as-pas-effaces-pour-gagner-de-la-place-ducon-Face-punch1.jpeg" data-original-source="http://www.warriordudimanche.net/data/medias/images/quand-ca-marche-touche-a-rien-si-tu-touches-fais-des-backups-si-t-as-des-backups-verifie-que-tu-les-as-pas-effaces-pour-gagner-de-la-place-ducon-Face-punch1.jpeg" style="width:100%;height:auto"/><p>J'ai testé la suppression des applis google via adb et ça marche parfaitement bien...
Un peu trop: emporté par mon élan et la proverbiale pétulance qui me caractérise et qui n'a d'égale que ma consternante inconséquence, j'ai viré malencontreusement un package important : <strong><em>com.android.providers.contacts </em></strong></p>
<img class="smile xbig" src="media/4fa2ab92.touchepas.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/touchepas.jpg"/> 
Du coup, disparition de mes contacts, impossible d'en créer de nouveaux... bref, la merde.
Après avoir TOUT essayé, j'ai décidé de faire une restauration d'usine. Moi, pas con, me dis-je, je retire ma sd 128Go du tél après un backup de tous mes sms/applis etc sur ladite carte.
<p>Voilà mes données à l'abri, pensais-je.</p>
<img class="smile big" src="media/84e42744.genius.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/big/genius.png"/> 
<p>Ben non, en fait. Après restauration d'usine, ma carte n'était plus reconnue.
Parce qu'en fait, je ne savais pas que Android 7 chiffrait la carte lors du formatage, ce connard. Même si tu demandes rien.</p>
<img class="smile medium" src="media/10f95c48.kiddinme2.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/medium/kiddinme2.png"/> 
<p>Rassurez-vous, via adb on peut récupérer la clé dans un répertoire du téléphone... oui oui, celui que je viens juste de RESTAURER BORDEL !</p>
<p>Donc me voilà grosjean comme devant: plus de SMS, plus de contacts, plus de photos... plus rien.
Mon dernier backup de photos datait du début de l'année... 6 mois de tofs perdues.</p>
<img class="smile xbig" src="media/a3a4715f.wrong.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/wrong.jpg"/> 
<p>Moralité: quand ça marche et que t'es pas limité par la place, TOUCHE A RIEN DUCON.</p>
<p><em>PAN</em></p><div class="img_source"><a href="media/007f3dc6.Face-punch1.jpeg" data-original-source="http://ayllax.com/wp-content/uploads/2011/02/Face-punch1.jpeg">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article851#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article850/5b814911657f3
uri: chown-Changer-le-propriétaire-et-le-groupe-d-un-fichier-ou-dossier
title:
chown - Changer le propriétaire et le groupe d'un fichier ou dossier en ligne de commande - www.octetmalin.net

url:
http://www.octetmalin.net/linux/tutoriels/chown-changer-proprietaire-groupe-fichier-dossier-repertoire-en-ligne-de-commande.php

content:
<img src="media/2110c7b5.ier-en-ligne-de-commande-www-octetmalin-net-help-and-support.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/chown-changer-le-proprietaire-et-le-groupe-d-un-fichier-ou-dossier-en-ligne-de-commande-www-octetmalin-net-help-and-support.png" style="width:100%;height:auto"/><p>A l'occasion d'une réinstall, je me suis aperçu du fait que mon home était en lecture seule: impossible de changer ça même via un sudo chmod...<br />
<br />
Ben en fait, c'est tout con, il suffit de redéfinir le nom du propriétaire du dossier ~/ à la main via un<br />
<br />
<br /></p>
<pre><code><br />
sudo chown [nom] ~/<br />
</code></pre><br />
Pis c'est tout...<br />
<br />
Comme ma mémoire est elle aussi en lecture seule, je me le note ici...<br />
<br />
<br/><br/><div class="img_source"><a href="media/dafbaa99.help-and-support.png" data-original-source="https://thecrowdedhouse.net.au/wp-content/uploads/2018/01/help-and-support.png">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article850#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article849/5b6962e2362f7
title: Illustrations | unDraw
uri: Illustrations-unDraw
url: https://undraw.co/illustrations
content:
<img src="media/e658fb3e.illustrations-undraw-32b535e5a569e638e1182a3cc14ee9af.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/illustrations-undraw-32b535e5a569e638e1182a3cc14ee9af.jpg" style="width:100%;height:auto"/><p>«A constantly updated collection of beautiful svg images that you can use completely free and without attribution.»<br />
Des illustrations en svg dont on peut choisir la couleur, histoire de l'adapter à son projet.<br/><br/><div class="img_source"><a href="media/d0883caa.32b535e5a569e638e1182a3cc14ee9af.jpg" data-original-source="https://i.pinimg.com/originals/32/b5/35/32b535e5a569e638e1182a3cc14ee9af.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article849#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article848/5b6962294abd4
title: CSS-only double-click
uri: CSS-only-double-click
url: https://codepen.io/MartijnCuppens/pen/GZWgaQ
content:
./plugins//WDDWebLinks/default_image.jpg<p>Utiliser le double-clic via CSS uniquement... astucieux</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article848#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article847/5b67150a17892
title: Astuce : Les template strings en JavaScript
uri: Astuce-Les-template-strings-en-JavaScript
url: https://www.alsacreations.com/astuce/lire/1764-Les-template-strings-en-JavaScript.html
content:
<img src="media/a6954199.astuce-les-template-strings-en-javascript-template-strings.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/astuce-les-template-strings-en-javascript-template-strings.png" style="width:100%;height:auto"/><p>L'usage de base consiste à imbriquer des variables dans les chaînes, entre ${ et }. Elles se verront "remplacées" par leur valeur au moment de l'exécution.<br /></p>
<pre><code><br />
<br />
var kiwis = 3;<br />
const message = `J'ai ${kiwis} kiwis dans mon panier`;<br />
// Résultat : J'ai 3 kiwis dans mon panier<br />
</code></pre><br />
<br />
On retrouve ici le même concept qu'en PHP avec les chaînes de texte entre guillemets doubles qui interprètent les variables : <pre><code><br />
echo "Ma variable : $kiwis";<br />
</code></pre><br/><br/><div class="img_source"><a href="media/038e5a41.template-strings.png" data-original-source="https://wesbos.com/wp-content/uploads/2016/10/template-strings.png">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article847#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article881/5bfe559dd73f3
title: Des gilets jaunes en Alsace piégés par une soupe aux laxatifs | Le Huffington Post
uri: Des-gilets-jaunes-en-Alsace-piégés-par-une-soupe-aux-laxatifs-Le-H
url:
https://www.huffingtonpost.fr/2018/11/23/des-gilets-jaunes-en-alsace-pieges-par-une-soupe-aux-laxatifs_a_23598093/

content:
<img src="media/7a2d2094.tp-auto-img-v4-skyrock-net-0453-17790453-pics571622626_small.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/http-auto-img-v4-skyrock-net-0453-17790453-pics571622626_small.jpg" style="width:100%;height:auto"/><p>Là, je me demande toujours comment une personne peut arriver à faire une telle saloperie aux autres sans jamais se dire à aucun moment «non, c'est pas bien de faire ça»<br />
<br />
Comment je dis souvent aux élèves qui me font remarquer une dégradation quelconque au collège:<br />
<div class="face1"><div class="bubble">« On ne peut pas lutter contre les cons, ils sont trop nombreux; on en est réduit à les supporter ou à les éviter, comme les crottes de chiens sur les trottoirs.»</div></div><br />
<br />
<br/><br/><div class="img_source"><a href="https://o.aolcdn.com/images/dims3/GLOB/crop/4474x2239+0+373/resize/630x315!/format/jpg/quality/85/https%3A%2F%2Fmedia-mbst-pub-ue1.s3.amazonaws.com%2Fcreatr-uploaded-images%2F2018-11%2F9749cc50-ef23-11e8-b8eb-abab7f8b81af">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article881#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article880/5bfe465b955db
title: VOUS DÉCHIREZ LA FRANCE ! - YouTube
uri: VOUS-DÉCHIREZ-LA-FRANCE-YouTube
url:
https://www.youtube.com/watch?feature=share&v=DOzEMaJWHZk&fbclid=IwAR3mRP4-BevwVm4TmMTUEmybbhEw0AcjWX3GFAkwmR_ZS-_q3P6SG9GsHcQ&app=desktop

content:
<img src="media/61cf664e.government-session-at-the-national-assembly-in-paris_5930514.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/vous-dechirez-la-france-youtube-member-of-parliament-francois-ruffin-of-la-france-insoumise-france-unbowed-political-party-attends-the-questions-to-the-government-session-at-the-national-assembly-in-paris_5930514.jpg" style="width:100%;height:auto"/><p>«M. Macron, Ce qui les [les gilets jaunes] unit c'est l'aversion qu'ils vous portent»<br />
<br/><br/><div class="img_source"><a href="media/2a928382.government-session-at-the-national-assembly-in-paris_5930514.jpg" data-original-source="https://static.lexpress.fr/medias_11583/w_2048,h_1146,c_crop,x_0,y_130/w_640,h_360,c_fill,g_north/v1502966618/member-of-parliament-francois-ruffin-of-la-france-insoumise-france-unbowed-political-party-attends-the-questions-to-the-government-session-at-the-national-assembly-in-paris_5930514.jpg">Source image</a></div></p>
<p>Le texte (<a href="https://francoisruffin.fr/vous-dechirez-le-contrat-social/">https://francoisruffin.fr/vous-dechirez-le-contrat-social/</a> )</p>
<blockquote>
<p>Voici donc, Monsieur le président, votre budget de la honte.Voici votre budget de la colère.</p>
</blockquote>
<p>Ce fut, l’année dernière, votre geste inaugural, votre entrée en matière : pour vos amis millionnaires, vous avez supprimé l’Impôt de Solidarité sur la Fortune.
C’était une promesse de campagne, pour la financer, justement, votre campagne. J’en ai recueilli le témoignage : que garantissiez-vous à vos généreux mécènes, à tout bout de champ, d’un dîner lucratif au suivant ?</p>
<p>La fin de l’ISF. En échange, les financiers vous signaient à tire-larigot des chèques de 7 500 €. Dès votre entrée à l’Elysée, vous teniez cet engagement, et assuriez à vos donateurs un retour sur investissement.
Avec l’ISF, mais pas seulement. Avec également la flat tax. Avec aussi la taxe sur les hauts salaires effacée. Avec encore une ristourne « spéciale Brexit » pour les banquiers. Avec enfin une baisse de l’impôt sur les sociétés.</p>
<p>A vos copains et coquins, vous avez distribué les milliards, les yeux fermés, sans compter.</p>
<p>Et en même temps, en même temps, dès qu’on vous parle del’hôpital abandonné, des EHPAD sous-dotés, des élèves handicapés, des tribunauxengorgés, des commissariats délabrés, dès qu’on plaide pour la santé, pour l’éducation,pour la police, pour la justice,
vous répondez : « déficit public ». Vous brandissez ce spectreterrifiant : « Quelle dette allons-nous laisser à nos enfants? »
Hypocrite que vous êtes ! Charlatan de l’endettement !
Elles sont bien sélectives, vos pudeurs de père-la-rigueur.</p>
<p>En même temps, en même temps surtout, pour enrichir les riches, comment avez-vous procédé ? Vous avez appauvri les pauvres,
ou les modestes. Vous avez gratté cinq euros sur les APL des locataires, vous avez éliminé 240 000 contrats aidés,
vous avez relevé la CSG des retraités.
Il fallait oser.
A ce point, il fallait oser.</p>
<p>Une injustice aussi évidente, aussi criante, il fallait oser.
Mais vous osez tout, et c’est à ça qu’on vous reconnaît.</p>
<p>Cette année, vous pouviez corriger le tir.
Vous pouviez rectifier votre budget.
Au contraire, vous creusez le même sillon, le sillon de l’injustice : pour les pauvres, ce sera le gel des pensions, des allocations, et cette taxe sur l’essence. Pour les riches, pour leurs firmes, ce sera la suppression de l’exit tax, et le CICE doublé.</p>
<p>C’est si excessif, tellement abusif.
Ca touche au porte-monnaie, certes, au « pouvoir d’achat », mais pas seulement.</p>
<p>C’est l’orgueil d’un peuple qui en est blessé, son honneur : on se moque de lui, son propre chef de l’Etat se moque de lui. Car à cette injustice, à cette évidence de l’injustice, comme on jette du sel sur une plaie, vous ajoutez l’arrogance de l’injustice, à grand renfort de « gens qui ne sont rien », de « feignants », de « Gaulois réfractaires », de « vous n’avez qu’à traverser la rue » et autres « pognon de dingue », comme des provocations renouvelées.</p>
<p>Vous avez déchiré le contrat social.
Vous vous êtes assis dessus.
Vous l’avez piétiné.
Vous en avez fait des confettis.
Et c’est la France que, aujourd’hui, vous déchirez.</p>
<p>Avant même votre élection, à la veille du second tour, je vous adressais – je cite – une « Lettre ouverte à un président déjà haï » :</p>
<pre><code>« Vous êtes haï, je vous écrivais, vous êtes haï, vous êtes haï.
Je vous le martèle parce que, avec votre cour, avec votre campagne, avec la bourgeoisie qui vous entoure, vous êtes frappé de surdité sociale. Vous n’entendez pas le grondement : votre heure, houleuse, sur le parking des Whirlpool, n’était qu’un avant-goût. C’est un fossé de classe qui, face à vous, se creuse. »</code></pre>
<p>Avec douze fois « vous êtes haï » en une trentaine de lignes, je vous prévenais avec un rien d’insistance. Et stylistiquement parlant, je ne porte pas ce texte en bandoulière, comme une fierté littéraire. Sur le fond, néanmoins, je n’en renie rien, l’avertissement sonnait juste:</p>
<p>Vous êtes aujourd’hui haï, massivement haï.
C’était en germe hier, on assiste désormais à la moisson. Le fossé s’esttransformé en gouffre.</p>
<p>Vous l’avez palpée par vous-même, cette haine, de la Lorraine aux Ardennes, de la Marne à la Somme, lors de votre semaine d’ « itinérance mémorielle ». Vous avez fait le jovial, « j’aime aller au contact », « je reviendrai plus souvent », mais ce ressentiment, dans votre propre peuple, a bien dû vous meurtrir.
Et je l’espère : vous alerter
Depuis dix jours, surtout, qu’est-ce qui rassemble les « gilets jaunes » ? Qu’est-ce qui les unit, bien plus que le gasoil ? Qu’est-ce qui, par-delà mille différences, leur fait un trait commun ?
Vous.
L’aversion que vous provoquez.
L’aversion que votre caste provoque.
Quel slogan entonne-t-on, sur les ronds-points, à peine un micro tendu ? « Macron démission ! Macron démission ! »</p>
<p>Comment,dès lors, sortir de cette impasse ?</p>
<p>Voici le discours que je vous propose, pour demain soir :</p>
<pre><code>Françaises, Français,
Je vous ai entendu.
Je vous ai compris.
J’ai changé.
J’en ai pris conscience, soudain, cette nuit, une révélation.
Je me suis trompé :
La politique ne se fait pas au CAC 40.
Nous devons mener la transition écologique.
Nous devons la mener avec l’exigence de justice sociale.
Nous devons la mener avec un renouveau démocratique.
C’est une rupture dans mon quinquennat.
C’est un nouveau chemin, que nous ouvrons pour le pays.
Voilà la feuille de route que, dès ce soir, je confie au Premier ministre, à tout le gouvernement.</code></pre>
<p>Ce serait un changement de cap.
Et voici les trois mesures que, dans la foulée, d’urgence, j’annoncerais pour recoudre la France :</p>
<p>Première mesure.
Rendez l’ISF d’abord !
Traquez la fraude fiscale sans pitié, tous les yachts immatriculés à Malte, tous les jets privés à Jersey, tous les Google Apple Facebook Amazon que vous recevez avec les honneurs à l’Elysée, [RALENTIR] tous vos amis qui optimisent, qui panamisent, qui caïmanisent,
qui luxembourgisent.
C’est un poison.
C’est un poison pour la société, ces 60, 80, 100 milliards enlevés au fisc.
C’est un poison, pas seulement pour les finances, mais surtout, surtout, pour le moral de la nation.
Comment croire au bien commun quand les privilégiés, les PDG, les premiers de cordée, que vous donnez en exemple, trichent, volent, s’affranchissent de la loi commune ?
C’est tous les Français qui en sont écoeurés, dégoûtés, découragés.</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article880#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article879/ouach-sur-twitter
uri: Ouach-sur-twitter-Merci-à-Franck-Lepage-de-dire-les-choses-simplement
title:
Ouach sur twitter:Merci à Franck Lepage de dire les choses simplement. Je partage complètement sa lecture du mouvement des GiletsJaunes. Et merde au mépris de classe, d'où qu'il vienne, mais un peu plus quand il vient des intellos de gauche.

content:
<img src="media/1bc316a6.fr-images-2018-11-2617622038lpw-17622037-article-jpg_5759542.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/https-www-lepoint-fr-images-2018-11-2617622038lpw-17622037-article-jpg_5759542.jpg" style="width:100%;height:auto"/><p>Un post très intéressant qui cite Lordon.</p>
<p>Effectivement, toute critique qui généralise et caricature à outrance pour s'auto confirmer relève du mépris de classe et de la mauvaise foi (au mieux)</p>
<p>Toutefois, j'ai le sentiment qu'on ne peut pas critiquer ce mouvement de façon raisonnée sans passer pour un «bobo gauchisse méprisant et intello qui ne sait rien du peuple» et ça me semble aussi grave que le mépris de classe.</p>
<p>Je trouve répugnante la position de beaucoup de médias -et de commentateurs anonymes- qui ne montrent ou ne citent que ce qui leur permet de corroborer leurs dires, quitte à omettre voire à <a href="https://www.liberation.fr/checknews/2018/11/26/bfm-tv-a-t-elle-montre-une-zone-des-champs-elysees-en-travaux-affirmant-a-tort-que-les-gilets-jaunes_1694289">mentir carrément</a>... Vous noterez au passage l'utilisation des articles définis au lieu d'indéfinis comme dans la phrase « certains pavés ont bien été enlevés (et jetés) par les gilets jaunes.» ... LES, pas DES... généralisation à outrance.</p>
<p>Oui, on cite les cas isolés de dérapages, de racisme, de dénonciation etc pour ternir l'image du mouvement... Le procédé n'est pas nouveau et permet de préparer l'opinion pour légitimer un éventuel usage <del>de la violence</del> des forces de l'ordre.
Oui, cette façon de procéder est totalement à l'avantage du gouvernement et oui, mille fois oui, elle est inacceptable.</p>
<p>Toutefois, comme je le disais dans mon post précédent, ce mouvement - qui se dit lui-même apolitique - est sans aucun doute très hétérogène.
Je pense qu'on peut, sans tomber dans la généralisation et le mépris de classe, avancer qu'il reflète sans doute le profil politique de ceux qui le composent... Je vous renvoie <a href="https://www.interieur.gouv.fr/Elections/Les-resultats">au site du ministère</a> pour vérifier le pourcentage obtenu par la Lepen dans chaque département... SPOILER: un bon tiers des inscrits (pas des votants) en général...</p>
<p>Est-ce du mépris de classe de dire qu'il y a une vraie composante d'extrême droite dans ce mouvement...? (une personne sur trois.)</p>
<p>Est-ce du mépris de classe de craindre la colère de cette frange de la population ?</p>
<p>Est-ce du mépris de classe de refuser d'être assimilé à ces personnes et de dire que ces personnes ne défilent certainement pas pour les mêmes raisons que les autres ?</p>
<p>Est-ce du mépris de classe de considérer que ces personnes, qui appellent à la solidarité pour leur mouvement, refusent ou ont refusé la solidarité aux autres luttes ?</p>
<p>Si l'on élève des critiques contre un mouvement populaire cela veut-il dire que l'on est contre la lutte en général, contre cette lutte en particulier et pour le maintien de ses privilèges ?! 
Ben non.</p>
<p>Ne montrer que ce qui sert son propos est autant une imposture intellectuelle que de refuser de prendre en considération un fait relativement incontestable...</p>
<p>Il semblerait que se soit formé une <a href="https://www.liberation.fr/direct/element/des-gilets-jaunes-creent-une-delegation-officielle-et-publient-leurs-revendications_90453/">délégation de Gilets Jaunes</a>: voilà qui me semble aller dans le bon sens... reste à voir ce qu'ils vont en faire. En tout cas, les demandes ont l'air d'aller dans le sens d'une baisse des taxes et pas vers un usage plus rationnel et moral des impôts divers payés par les français.
Comme je le pensais, la désignation opaque de porte-paroles ne semble d'ores et déjà pas du goût de tous:</p>
<blockquote>
<p>cette nomination spontanée de huit représentants du mouvement n’est pas du goût de tous les partisans du mouvement. « Gilet jaune » à Toulouse, Benjamin Cauchy, déplore ainsi un certain « sectarisme » et une « radicalisation » chez ces « porte-paroles autoproclamés ». Même scepticisme pour ce groupe Facebook de « gilets jaunes » parisiens qui parle d’un « coup de force ». « Nous ne savons pas qui a voté pour ces personnes. (…) Ces 8 porte-paroles nous imposent donc à tous ce choix sans avoir fait de vote et de véritables concertations ». <a href="https://www.20minutes.fr/societe/2380863-20181126-gilets-jaunes-annonce-delegation-officielle-cree-dissensions-mouvement">source</a></p>
</blockquote>
<p>Et oui: s'il était si facile de faire se mettre d'accord sur le changement, ce serait déjà fait et il n'y aurait pas de partis politiques (qui tentent en théorie de regrouper les partisans d'une même action politique)</p>
<p><img src="media/627d8a10.Si20tu20votes20FN.png" data-original-source="http://egoweb.o2switch.net/tshirt/Si%20tu%20votes%20FN.png" alt="fn" /></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article879#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article878/5bf90e09846ad
uri: Jeremy-G-Hoo-c-est-un-scandale-Ils-t-ont-pas-obligé-à-porter-le
url: https://framapiaf.org/@JeremyG/101121648850381359
title:
@Jeremy G : Hoo c'est un scandale ! Ils t'ont pas obligé à porter le gilet mauvais goût quand même ?! Quel toupet !! Moi j'en ai vu un....! Si tu savais...! Regarde moi ça : une honte !! youtu.be/RsN6rYkxeHQ

content:
<img src="media/d31f627c.ntent-uploads-2018-04convergence-des-luttes-potere-al-popolo.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/https-poterealpopolo-org-wp-content-uploads-2018-04convergence-des-luttes-potere-al-popolo.jpg" style="width:100%;height:auto"/><p>Attention, post très long.</p>
<p>Mouhouhaha... Comme tu es drôle mon petit JeremyG. Alors, tout d'abord:</p>
<h1>A propos de ton message:</h1>
<ol>
<li>
<p>je n'ai pas pesté contre les gilets jaunes (les gens) parce que les gilets jaunes (le vêtement) seraient de mauvais goût, merci de ne pas caricaturer, ça ne sert pas ton propos. Si c'est là la seule chose que tu as retenu de la vidéo, je pense que tu devrais la réécouter.</p>
</li>
<li>
<p>Si, il y a des endroits dans lesquels les manifestants ne te laissent passer QUE SI TU METS TON GILET JAUNE... c'est intolérable. Je n'ai pas envie de substituer une oppression à une autre, merci bien. Alors oui, tu me diras que ce n'est pas la majorité. Tu as raison, merci de reconnaître qu'il y a des disparités inacceptables et inquiétantes dans ce mouvement.</p>
</li>
<li>
<p>je n'ai jamais dit que c'était «une honte» de manifester...</p>
</li>
<li>
<p>je n'ai jamais prétendu que ce mouvement était illégitime, seulement qu'il ne se réveille qu'au bout de plusieurs années de mises à mal de tous nos droits. J'ai, moi aussi, manifesté et fait la grève de nombreuses années. Sans soutien de la population.</p>
</li>
</ol>
<h1>La vidéo que tu proposes</h1>
<p>Tu me postes une vidéo d'une personne que j'apprécie par ailleurs, merci beaucoup. Je vais donc y réagir.</p>
<h2>I: Les NOPE !</h2>
<ol>
<li>
<p>Ce n'est pas parce qu'on n'est pas dans un parti politique qu'on ne soutient pas de partis politiques... oui, désolé, mais l'immense majorité des gens n'est pas inscrite dans un parti ça n'empêche pas qu'il y a une frange de la population non négligeable qui considère que Lepen est la solution; ce n'est pas de la propagande médiatique, ça s'appelle les élections.</p>
</li>
<li>
<p>C'est un mouvement qui s'est revendiqué comme «apolitique» «ni de gauche ni de droite» etc. Ce qui veut dire majoritairement de droite, en général... #traduisons-les</p>
</li>
<li>
<p>La mobilisation et la lutte, je suis <strong><em>totalement pour</em></strong>, mais il est indiscutable que «la goutte qui a fait déborder le vase», c'est bien le prix du carburant. Tout le reste, ça passait: les atteintes aux droits, aux acquis sociaux (pardon, aux privilèges), la surveillance de masse, l'état d'urgence permanent, les atteintes au service public etc... pour ne parler que de la politique intérieure.</p>
</li>
<li>
<p>Désolé, mais recevoir des leçons de morale et de solidarité de la part de gens qui ne sont pas bougé le cul pour les autres voire même qui ont dénigré les combats des autres auparavant («pris en otage» «scandaleux» «faignants» «privilégiés»...) me paraît inacceptable (propos entendus à de multiples reprises dans la vraie vie, pas dans les médias).</p>
</li>
<li>
<p>Point extrêmement important: ce n'est pas parce qu'on est en train de manifester son mécontentement <strong><em>en même temps</em></strong> qu'on le fait pour <strong><em>les mêmes raisons</em></strong> et qu'on est <strong><em>compatibles</em></strong>... désolé mais NON, je ne manifesterai pas aux côtés de gens d'extrême droite, de gens de la manif pour tous...
<strong>Ce n'est pas parce que tout le monde gueule que tous gueulent avec les mêmes intentions.</strong></p>
</li>
<li>
<p>Ce n'est pas «catégorisable» : pourquoi, c'est mal de vouloir catégoriser et donc comprendre un mouvement ? Comprendre, ça veut déjà dire savoir ce qui compose ce mouvement, tant du point de vue humain que du point de vue des courants politiques qui le poussent, car il y a toujours de la politique dedans. Catégoriser et contextualiser un mouvement, ce n'est pas forcément réac ou «prosystème» Ce n'est pas une question de «logiciel», c'est une question de sens critique. Ne surtout pas contextualiser, c'est la méthode la plus chère au FN.</p>
</li>
<li>
<p>Désolé, mais les propos entendus dans la réalité - et pas seulement dans les médias-vendus-et-tous-pourris-au-service-du-système - montrent qu'il y a quand même des tendances inacceptables... il faut regarder les choses en face. Et quand une personne me dit «les médias», en général, sans recul et en les foutant tous dans le même panier, ça a le même impact sur moi que le «tous pourris tous pareils» si cher au FN et à ses électeurs.</p>
</li>
<li>
<p>«La majorité des gens, peu importe leur étiquette, en ont ras-le-cul»: c'est un fait... mais ce que je trouve toujours inacceptable, c'est le «peu importe leur étiquette». (au passage, c'est un peu en contradiction avec le postulat de départ qui voulait que ce soit un mouvement apolitique, mais bon)</p>
</li>
<li>
<p>«tout est possible» : oui, c'est bien le seul aspect qui <strong><em>peut être</em></strong> positif... mais bon, on revient à mon propos du début: avec une proportion difficile à évaluer de pro-FN dedans (comme çaymal de catégoriser), ça pourrait s'avérer très très mauvais, en fin de compte.</p>
</li>
<li>
<p>au passage, écouter les médias sans se contenter de la vision qu'ils donnent (forcément partisane) c'est se faire dicter ce qu'on doit penser ? Tiens, ce ne serait pas une façon de nous expliquer comment on doit penser ça ?! oups.</p>
</li>
<li>
<p>«Les gens commencent à se parler et à se foutre ensemble»: tiens, c'est vrai que c'est nouveau ça... et nuit debout ? </p>
</li>
<li>
<p>Heu, mettre les gauchos et les fachos/complotistes dans le même panier, je ne peux pas être d'accord, désolé.</p>
</li>
<li>
<p>Il y a peu-être une différence entre critiquer (médire d') un mouvement en traitant de beauf ceux qui le composent et critiquer (émettre des critiques argumentées) afin de faire comprendre les choses qui sont inacceptables. On entend régulièrement que tous les gilets jaunes ne sont pas pareils, merci d'accepter qu'il en aille de même de ceux qui les critiquent, car oui, on a le droit de critiquer ce mouvement.</p>
</li>
<li>
<p>«traiter les gens de racistes, on ne parle pas de ça, là» : oui, donc la convergence des luttes, une autre fois, quoi. Ben non, désolé, le racisme, le sexisme, l'inégalité, l'homophobie etc, ça doit toujours être d'actualité, surtout pour un mouvement qui se revendique comme global. Et désolé, c'est parfaitement cohérent de dénoncer le racisme ET d'exiger le droit de bouffer, se chauffer, vivre décemment... c'est même complémentaire, je te laisse deviner pourquoi.</p>
</li>
<li>
<p>je trouve dommage que la personne de la vidéo, d'habitude très rigoureuse dans son argumentation, se laisse aller à singer les critiques (14:46) Ce n'est pas DU TOUT une opposition BOBO/BEAUFS. Sa colère est légitime mais elle l'a empêchée de construire son propos de façon plus mesurée et moins généraliste.</p>
</li>
</ol>
<h2>II: Les Oui.</h2>
<p>Comprenons-nous bien:</p>
<ol>
<li>
<p>oui, je suis pour le mouvement populaire en général quand il va dans le bon sens (selon moi): solidarité, égalité, fraternité liberté... autant de raisons qui n'ont PAS POUSSÉ ces gens à se manifester avant.</p>
</li>
<li>
<p>oui, je suis SOLIDAIRE des mouvements de grève, systématiquement. On a le droit de manifester son mécontentement et ce n'est pas à moi de juger et condamner au prétexte que je trouverais les grévistes «privilégiés» Je suis toujours du côté de ceux qui luttent.</p>
</li>
<li>
<p>oui, je suis entièrement d'accord avec elle pour dire que c'est insupportable payer ses impôts pour voir l'argent dilapidé à soutenir des ordures, favoriser des salopards, creuser les inégalités etc... ça, c'est une bonne raison de gueuler. Attention, une précision toutefois: je <strong><em>VEUX</em></strong> payer des impôts, c'est la base de la solidarité et ça veut dire que je suis assez privilégié pour pouvoir en payer pour aider ceux qui ont moins de chance que moi. Je ne suis <strong><em>PAS CONTRE</em></strong> la hausse du prix du carburant si ça sert à financer l'écologie, la transition énergétique et la recherche contre le cancer et pour les énergies propres. Je suis même prêt à être plus taxé encore si dans la foulée plus personne ne dort dehors, ne crève de froid ou ne se noie en méditerranée... Dommage, les gilets jaunes n'en parlent pas... Eux, ils ont juste démarré leur mouvement parce que l'essence était trop chère.</p>
</li>
<li>
<p>oui, je serais entièrement POUR tout mouvement populaire (pas populiste) qui cherche l'égalité pour tous (ce qui devrait être un pléonasme): pour le féminisme, pour l'égalité des droits quelque soient l'orientation sexuelle/la spiritualité/etc... Dommage, je n'ai pas le sentiment que ce soit une priorité pour les gilets jaunes... ça ne doit pas faire partie de leur «raz-le-cul» général.</p>
</li>
<li>
<p>Oui, je suis d'accord avec elle dans le constat qu'elle fait du syndicalisme et de la convergence des luttes: cependant, je ne crois pas que dans les gilets jaunes, la convergence des luttes soit <strong><em>REELLEMENT</em></strong> à l'ordre du jour.</p>
</li>
<li>
<p>Oui, enfin des gens se bougent: mais encore une fois, ce n'est pas parce qu'on s'oppose à Macron qu'on le fait pour les mêmes raisons. </p>
</li>
<li>
<p>Oui, le gouvernement a intérêt à diviser les gens précisément pour éviter une convergence. Pour autant, ça ne signifie pas qu'il faut s'allier à n'importe qui sous la même bannière «le peuple» </p>
</li>
<li>
<p>«le coût de la vie» / «la hausse des salaires» : Tout-à-fait d'accord ! C'est même ce point particulier qui me fait dire que la tendance profonde du mouvement paraît plus de droite que de gauche... A droite, on demande les baisses des taxes, à gauche des hausses de salaire... Choisis ton camp, camarade.</p>
</li>
</ol>
<h2>En conclusion</h2>
<p>Je suis d'accord avec elle pour beaucoup de choses, et je me sentirais à ma place à ses côtés dans une manifestation (d'ailleurs, j'écoute souvent ses vidéos).</p>
<p>Toutefois, je crains qu'elle ne minimise les fameuses «divisions» qu'il faudrait «surmonter». Il y a des divisions qui sont insurmontables. Petit rappel: dans ma commune rurale et  populaire, plus de 50% de votants FN. Et ce n'est PAS DU TOUT un cas isolé. </p>
<p>Désolé, mais non, je ne PEUX PAS laisser croire que je suis d'accord avec des gens réacs, homophobes, racistes, sexistes, qui n'appellent à la solidarité que lorsqu'ils en sont les bénéficiaires... Même s'ils ne représentaient qu'un tiers du mouvement. Or, un manifestant sur trois, ça peut donner une suite très dangereuse à ce mouvement.</p>
<h2>« Oué, tu critiques mais qu'est-ce que tu proposes ?»</h2>
<p>Si le prix de l'essence n'est pas leur seule préoccupation, s'ils veulent vraiment une convergence des luttes, s'ils sont réellement solidaires, s'ils veulent vraiment une société plus égalitaire et plus juste (ce que je suis prêt à croire), ce qui serait bien ce serait qu'ils fassent fermer leur gueule à tous ceux qui les critiquent et qu'ils prennent la parole pour s'expliquer et rétablir la vérité sur leur mouvement, ne serait-ce que pour éviter que le gouvernement ne cherche à nous diviser.</p>
<p>Seulement pour ça, il faudrait des porte paroles, un genre de structure minimale et là, bim! on retomberait dans un genre de «système»... et surtout, ils devraient se mettre d'accord entre eux à l'échelle nationale. <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/> 
Je pense que là, on verrait que ce mouvement n'est pas du tout homogène.</p>
<p>Surtout, mon petit JeremyG, ne te sens pas obligé de me répondre surtout si c'est pour continuer sur le ton qui a été le tien dans ton message <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/> 
Allez, je ne t'en veux pas,</p>
<img class="smile xbig" src="media/34677495.bisou.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/bisou.jpg"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article878#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article877/5bf7d15486f48
title: Brutalist Web Design
uri: Brutalist-Web-Design
url: https://brutalist-web.design/
content:
<img src="media/810c9ad3.brutalist-web-design-washington-dc-ec-02-station-small.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/brutalist-web-design-washington-dc-ec-02-station-small.jpg" style="width:100%;height:auto"/><p><br /></p>
<ul>
<li>Content is readable on all reasonable screens and devices.<br /></li>
<li>Only hyperlinks and buttons respond to clicks.<br /></li>
<li>Hyperlinks are underlined and buttons look like buttons.<br /></li>
<li>The back button works as expected.<br /></li>
<li>View content by scrolling.<br /></li>
<li>Decoration when needed and no unrelated content.<br /></li>
<li>Performance is a feature.<br /><div class="via"><span title="Source du lien">Via https://nicolas-delsaux.hd.free.fr/Shaarli/?8b3qGw</span></div><br/><br/><div class="img_source"><a href="media/54c5a988.washington-dc-ec-02-station-small.jpg" data-original-source="https://brutalist-web.design/images/washington-dc-ec-02-station-small.jpg">Source image</a></div>
</li>
</ul>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article877#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article876/5bf27edfa0760
title: 67 000 cartes historiques superbes, à télécharger en ultra haute résolution
uri: 2018-11-28-
url:
http://www.laboiteverte.fr/67-000-cartes-historiques-superbes-a-telecharger-en-ultra-haute-resolution/

content:
./plugins//WDDWebLinks/default_image.jpg<p>Tiens, intéressant ça...</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article876#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article875/probleme-de-chargement-avec-un-wiko-wim-lite
title: Problème de chargement avec un Wiko Wim lite
uri: Problème-de-chargement-avec-un-Wiko-Wim-lite
content:
<img src="media/0502c5b2.warriordudimanche-net-thumbsd5c2d629ffce56df2999e68e156071fb.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/http-googol-warriordudimanche-net-thumbsd5c2d629ffce56df2999e68e156071fb.jpg" style="width:100%;height:auto"/><p>Bon, en bon poissard et pour des raisons qui impliquent plus ou moins directement mon petit dernier, mon wiko ne se chargeait plus: la prise micro usb semblait avoir un faux contact et avec le temps, même en tortillant la prise, plus moyen de le recharger...</p>
<img src="media/bff817bb.2018-11-11-101449.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images//2018-11-11-101449.jpg" alt="image"/>
<p><span class="sm">On voit que la prise est abîmée et les bornes très en retrait et «rapées»</span></p>
<p><p style="text-align:center"></p>
<img class="smile xbig" src="media/2f186608.danslamerde.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/danslamerde.jpg"/> 
 </p>
<p>Ce constat posé, il ne reste pas grand-chose à tenter:</p>
<ul>
<li>Solution 1: changer mon smartphone (encore); même si je n'achète plus tellement du neuf, j'ai tendance à dire «merde, ya sûrement un coup à jouer avant»</li>
<li>Solution 2: changer la prise micro usb. Oui.</li>
</ul>
<p>Vous me connaissez assez pour savoir que plus une intervention tient du bricolage improvisé plus je la trouve séduisante, je me lance donc à le recherche d'une prise idoine à mon propos dans mon merdier personnel de trucs-qu'on-jette-pas-pasqu'on-sait-jamais-ça-peut-servir.
<p style="text-align:center"></p>
<img src="media/6e23a222.yapuka.png" data-original-source="http://www.warriordudimanche.net/data/medias/images//yapuka.png" alt="image"/>
</p><h1>Étape 1: ouvrir le wiko wim lite</h1>
<h3>(et c'est pas fait pour)</h3>
<p>Manifestement, les designers font exprès de te foutre les bâtons dans les trous quand tu veux réparer.
En fait, on peut y arriver, mais il faut savoir que la coque de ce modèle est clipsée ET COLLÉE: donc, ne craignez pas de péter le bouzin et utilisez un outil adapté, genre les outils pour le démontage de portables de ce type ↴
<p style="text-align:center"><img src="media/95f432a5.51NRCBtiHLL.jpg" data-original-source="http://warriordudimanche.net/data/medias/images/51NRCBtiHLL.jpg" alt="" /></p></p>
<p>Il suffit de soulever légèrement la coque depuis la trappe de la carte SD/SIM, d'y glisser la pointe de l'outil en plastique et de le glisser le long des bords; ça déclipse/décolle.
Attention quand même: le lecteur d'empreintes de la coque est relié à la carte-mère par une nappe qu'il faudra déclipser.</p>
<h1>Étape 2: retirer les caches de protection</h1>
<img src="media/91192002.104_1988.jpeg" data-original-source="http://www.warriordudimanche.net/data/medias/images//104_1988.jpeg" alt="image"/>
<p>Là, c'est simple: on dévisse et on tire doucement, ça vient, on enlève.</p>
<img src="media/7fd0a649.104_1989.jpeg" data-original-source="http://www.warriordudimanche.net/data/medias/images//104_1989.jpeg" alt="image"/>
<img src="media/b3165d39.104_1990.jpeg" data-original-source="http://www.warriordudimanche.net/data/medias/images//104_1990.jpeg" alt="image"/>
<h1>Étape 3: l'extraction de la carte</h1>
<p>Après avoir débranché le petit fil noir sur le côté droit, on va faire levier douououououououcement pour décoller la carte sans la déformer. </p>
<img src="media/b6f0e732.encorecolle.png" data-original-source="http://www.warriordudimanche.net/data/medias/images//encorecolle.png" alt="image"/>
<p>On maintient la pression sans trop forcer et le tout se décolle.</p>
<img src="media/26801850.104_1991.jpeg" data-original-source="http://www.warriordudimanche.net/data/medias/images/ProblmedechargementavecunWikoWimlite-14-11-2018-10h36/104_1991.jpeg" alt="image"/>
<img src="media/449f1ee0.104_1992.jpeg" data-original-source="http://www.warriordudimanche.net/data/medias/images/ProblmedechargementavecunWikoWimlite-14-11-2018-10h36/104_1992.jpeg" alt="image"/>
<img src="media/21bc28a0.104_1993.jpeg" data-original-source="http://www.warriordudimanche.net/data/medias/images/ProblmedechargementavecunWikoWimlite-14-11-2018-10h36/104_1993.jpeg" alt="image"/>
<p><span class="sm">Je l'ai eue...</span></p>
<img src="media/612e7ab4.104_1995.jpeg" data-original-source="http://www.warriordudimanche.net/data/medias/images/ProblmedechargementavecunWikoWimlite-14-11-2018-10h36/104_1995.jpeg" alt="image"/>
<p><span class="sm">là, c'est ce qu'il reste</span></p>
<h1>Étape 4: Dessoudage de la prise fautive.</h1>
<img src="media/75943df0.jusquela.png" data-original-source="http://www.warriordudimanche.net/data/medias/images//jusquela.png" alt="image"/>
<p>Jusque là, on pouvait encore reculer. Mais après, ce sera chaud patate.</p>
<img src="media/2093315c.cpiti.png" data-original-source="http://www.warriordudimanche.net/data/medias/images//cpiti.png" alt="image"/>
<p>Pour dessouder, c'est mieux si vous avez des petits doigts et de la tresse à dessouder. (Pour les petits doigts, c'était mort)
Ensuite, il faut savoir que le mélange utilisé dans les soudures industrielles est plus résistant à la chaleur et on risque de cramer le tout en voulant insister. Donc, en général, on ajoute un peu d'étain par dessus la soudure et ça permet de fondre le mélange.</p>
<img src="media/7c061b86.104_1997.jpeg" data-original-source="http://www.warriordudimanche.net/data/medias/images/ProblmedechargementavecunWikoWimlite-14-11-2018-10h36/104_1997.jpeg" alt="image"/>
<h1> Étape 5: souder la nouvelle prise</h1>
<h3>Le plus dur.</h3>
<p>Alors là, il va falloir faire bien attention:</p>
<ol>
<li>au sens du câblage</li>
<li>au sens de la prise (vers le haut ou vers la bas <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/> )</li>
<li>à ne pas faire baver les soudures parce que oui, c'est VACHEMENT PETIT.</li>
</ol>
<p>Pour le sens du câblage, j'ai pas tellement mouillé la chemise vu qu'au point où j'en suis, je me fous de brancher mon tél pour transférer des données... ça ne m'a fait que deux bornes à souder: celles du chargement.</p>
<img src="media/a8188b9c.micro-usb-pinout.jpg.e469f03c83d0684c9bb4707540160a31.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images//micro-usb-pinout.jpg.e469f03c83d0684c9bb4707540160a31.jpg" alt="image"/>
<p>Je vois à vos narines frémissantes que vous brûlez de me poser la question donc, oui, c'est chiant de souder des trucs aussi petits et oui, il faut savoir se contenter d'une soudure un peu crade pourvu qu'elle fonctionne; petite illustration au microscope:</p>
<img src="media/08639277.2018-11-11-112350.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/ProblmedechargementavecunWikoWimlite-14-11-2018-10h36/2018-11-11-112350.jpg" alt="image"/>
<img src="media/e26537dc.2018-11-11-112409.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/ProblmedechargementavecunWikoWimlite-14-11-2018-10h36/2018-11-11-112409.jpg" alt="image"/>
<img src="media/1b4c449d.2018-11-11-112436.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/ProblmedechargementavecunWikoWimlite-14-11-2018-10h36/2018-11-11-112436.jpg" alt="image"/>
<p>Oui, c'est vraiment sale, mais bon, ça se verra pas <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/></p>
<h1>Enfin: on remonte le tout</h1>
<p>Là, c'est plus simple. 
Faut quand-même savoir que la coque fera des histoires pour se reclipser, mais insistez, passée les premières réticences, elle finira par céder à vos arguments.</p>
<img class="smile xbig" src="media/e680a27a.gfini.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/gfini.jpg"/> 
<p>Au bout du compte, mon téléphone remarche parfaitement et ça m'a coûté peanuts.</p>
<img src="media/0e451b02.likeaboss.png" data-original-source="http://www.warriordudimanche.net/data/medias/images//likeaboss.png" alt="image"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article875#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article874/5beaf8cc4b33b
title: Bronco : @SammyFisherJr Je l'ai notée celle-là ^^ bisou !
uri: Bronco-SammyFisherJr-Je-l-ai-notée-celle-là-bisou
url: https://framapiaf.org/@bronco/101064605448512933
content:
./plugins//WDDWebLinks/default_image.jpg<p><p style="text-align:center"><img src="media/f40102c0.giletsjaunes.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/BroncoSammyFisherJrJelainotecellelbisou-13-11-2018-17h15/giletsjaunes.png" alt="image"/>
</p>
<p style="text-align:center"><img src="media/f46c722c.bagnole.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/BroncoSammyFisherJrJelainotecellelbisou-13-11-2018-17h15/bagnole.png" alt="image"/>
</p></p>
<img class="smile xbig" src="media/43063a86.toijtaime.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/toijtaime.jpg"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article874#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article873/5beaa72386b18
title: Prix du carburant : petit manuel à lire avant de débattre
uri: Prix-du-carburant-petit-manuel-à-lire-avant-de-débattre
url:
https://www.lemonde.fr/les-decodeurs/article/2018/11/09/petit-manuel-a-lire-avant-de-debattre-de-la-hausse-des-prix-du-carburant_5381196_4355770.html

content:
<img src="media/a5509282.rant-petit-manuel-a-lire-avant-de-debattre-201512171539-full.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/prix-du-carburant-petit-manuel-a-lire-avant-de-debattre-201512171539-full.jpg" style="width:100%;height:auto"/><p>Très intéressant.<div class="via"><span title="Source du lien">Via <a href="https://nicolas-delsaux.hd.free.fr/Shaarli/?vkefIA">https://nicolas-delsaux.hd.free.fr/Shaarli/?vkefIA</a></span></div><br/><br/><div class="img_source"><a href="media/2d7bc1eb.201512171539-full.jpg" data-original-source="https://static.ladepeche.fr/content/media/image/large/2015/12/17/201512171539-full.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article873#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article872/5bea971476f9d
title: A Bunch of Options for Looping Over querySelectorAll NodeLists | CSS-Tricks
uri: A-Bunch-of-Options-for-Looping-Over-querySelectorAll-NodeLists-CSS-T
url: https://css-tricks.com/a-bunch-of-options-for-looping-over-queryselectorall-nodelists/
content:
./plugins//WDDWebLinks/default_image.jpg<p>Différentes façons de parcourir une nodelist en JS</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article872#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article871/5be940beb0c3c
title: Les Blagues les plus trash (humoristes anglophones, sous-titrés) - YouTube
uri: Les-Blagues-les-plus-trash-(humoristes-anglophones-sous-titrés)-Yo
url: https://www.youtube.com/watch?v=NhSOxVC8GkI
content:
./plugins//WDDWebLinks/default_image.jpg<img class="smile xbig" src="media/9b0d9b9c.tcon.jpg" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/xbig/tcon.jpg"/> <br />
Trash... J'ai ri. Beaucoup.<br />
<br />
<div class="via"><span title="Source du lien">Via https://www.leosyx.org/shaarli/?intF4Q</span></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article871#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article870/5be6b09223553
title: James Hill,«Do you believe ?»
uri: James-Hill-Do-you-believe
url: https://www.youtube.com/watch?v=2gyxeXW_2T8
content:
<img src="media/813650c4.-Play-Uke-Magazine-How-To-Beginner-Lesson-Songwriter-750x500.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/james-hill-James-Hill-Ukulele-Tips-Strum-Play-Uke-Magazine-How-To-Beginner-Lesson-Songwriter-750x500.jpg" style="width:100%;height:auto"/><img class="smile normal" src="media/26a2c0f5.oooh.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/oooh.png"/> Le mec :<br />
1- est très drôle<br />
2- est très talentueux<br />
3- est très naturel et décontracté<br />
4- et joue... tous les instruments de son groupe en même temps su son uke.<br />
...<br />
<br />
salaud !<br />
  <img class="smile normal" src="media/575b3a8c.tartagueule.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/tartagueule.png"/> 
<p>et il joue aussi avec des baguettes : <a href="https://www.youtube.com/watch?v=RylxBtEM0sI">https://www.youtube.com/watch?v=RylxBtEM0sI</a></p>
<div class="via"><span title="Source du lien">Via Bill's2link</span></div><br/><br/><div class="img_source"><a href="media/3889b7c1.-Play-Uke-Magazine-How-To-Beginner-Lesson-Songwriter-750x500.jpg" data-original-source="http://www.ukulelemag.com/wp-content/uploads/2016/06/James-Hill-Ukulele-Tips-Strum-Play-Uke-Magazine-How-To-Beginner-Lesson-Songwriter-750x500.jpg">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article870#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article869/5be69424b5ffb
title: Appel à candidature (Page 1) / Annonces officielles / Forum PluXml.org
uri: Appel-à-candidature-(Page-1)-Annonces-officielles-Forum-PluXml-or
url: https://forum.pluxml.org/viewtopic.php?pid=57840#p57840
content:
<img src="media/1c75f44f.default_image.jpg" data-original-source="http://www.warriordudimanche.net/plugins//WDDWebLinks/default_image.jpg" style="width:100%;height:auto"/><p>Stéphane, l'auteur de PluXML, cherche des gens qui souhaiteraient reprendre le flambeau...<br />
Ce serait chouette que ce CMS ne disparaisse pas.<br />
<br />
Anyone ?<br/><br/>
EDIT: En fait il semblerait que quelqu'un se soit porté volontaire  <img class="smile normal" src="media/575b3a8c.tartagueule.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/tartagueule.png"/> </p>
<blockquote>
<p>Il s'agit de P3ter, membre actuel de l'équipe. J'ai une entière confiance en lui. Il saura faire vivre PluXml pour continuer à le faire évoluer et à répondre à vos attentes. Une nouvelle équipe va être mise en place et merci à tous ceux qui se sont déjà proposé pour y participer. N'hésitez pas à en (re)parler ici ou a prendre contact directement avec lui (p3ter @ pluxml.org).</p>
</blockquote>
<p>Plus d'infos sont à venir... On vous tient au courant !</p>
<div class="img_source"><a href="media/4cbedf91.Appel-a-candidature.png" data-original-source="https://www.geves.fr/wp-content/uploads/Appel-a-candidature.png">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article869#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article868/5bdabef2257d8
title: Le serrage de mains du matin - HowTommy | Liens et actu en vrac
uri: Le-serrage-de-mains-du-matin-HowTommy-Liens-et-actu-en-vrac
url: http://liens.howtommy.net/?9_Ve8g
content:
<img src="media/82b37dff.rrage-de-mains-du-matin-howtommy-liens-et-actu-en-vrac-check.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/le-serrage-de-mains-du-matin-howtommy-liens-et-actu-en-vrac-check.jpg" style="width:100%;height:auto"/><p>«Paix et félicité, John Spartan» <br />
<img src="media/fd6cca37.paixetfelicite.jpg" data-original-source="http://www.warriordudimanche.net/data/images/demolitionman/paixetfelicite.jpg" alt="alt" /><br />
<br />
On y est : <a href="http://www.warriordudimanche.net/article209/paix-et-felicite-jusque-la-tout-va-bien-jusque-la-tout-va-bien">http://www.warriordudimanche.net/article209/paix-et-felicite-jusque-la-tout-va-bien-jusque-la-tout-va-bien</a><br/><br/><div class="img_source"><a href="media/455737b8.check.jpg" data-original-source="http://www.warriordudimanche.net/data/images/demolitionman/check.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article868#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article867/5bc09994d567d
title: Reparation du moteur d'essuie glace de la clio 3 - Mais merde ! (je m'excuse)
uri: Reparation-du-moteur-d-essuie-glace-de-la-clio-3-Mais-merde-(je-m
url: http://forum-auto.caradisiac.com/pole-technique/mecanique-electronique/sujet567140.htm
content:
<img src="media/64f56d45.ctronique-forum-technique-passage-de-cable-scenic-annee-1999.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/reparation-du-moteur-d-essuie-glace-de-la-clio-3-mecanique-electronique-forum-technique-passage-de-cable-scenic-annee-1999.jpg" style="width:100%;height:auto"/><p>Tiens ?! Voilà que mes essuie-glaces ne fonctionnent plus qu'en vitesse rapide et qu'ils s'arrêtent n'importe où... <br />
Encore une galère.<br />
<p style="text-align:center"><img src="http://meme.warriordudimanche.net/index.php?pic=That-moment-as-a-kid.jpg&amp;t=&#039;tain%20je%20sortais%20juste%20du%20garage&amp;w=&amp;pos=bottom&amp;c=white" alt="meme" /><br /></p>
Vue que les fusibles sont bons, je cherche d'où ça vient... Ben en fait, il faut savoir que sur les clio3, le moteur est au niveau du bac de récupération d'eau, sous le pare-brises. Du coup, quand la [toute petite] durite se bouche, le bac se remplit et ... le moteur baigne dans la flotte.<br /><p style="text-align:center">
<img src="http://meme.warriordudimanche.net/index.php?pic=cfeab45805f174a47149b6ae697269c6217f9c38272736dff552737121f0ec18.jpg&amp;t=Et%20si%20on%20mettait%20le%20moteur%20des%20essuie-glaces%20DANS%20le%20bac%20de%20r%C3%A9cup%C3%A9ration%20?!&amp;w=256&amp;pos=bottom&amp;c=black" alt="meme" /><br /></p>
<br />
Donc, avant que ça ne marche plus, pensez à faire passer un fil de fer dans la durite qui se trouve sous le capot, sous la grille du côté passager.<br /></p>
<img src="media/969dba64.DSC00209.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/Reparationdumoteurdessuieglacedelaclio3McaniquelectroniqueFORUMTechnique-12-10-2018-14h42/DSC00209.jpg" alt="image"/>
<img src="media/67103204.DSC00198.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/Reparationdumoteurdessuieglacedelaclio3McaniquelectroniqueFORUMTechnique-12-10-2018-14h42/DSC00198.jpg" alt="image"/>
<p>Quand ça a déjà pété, il y a encore un truc à essayer avant d'aller chez renault pour y lâcher 500 balles de plus.
<p style="text-align:center">
<img src="http://meme.warriordudimanche.net/index.php?pic=vdr6321.png&amp;t=Quand%20je%20viens%20de%20payer%20la%20facture%20Renault&amp;w=&amp;pos=bottom&amp;c=black" alt="meme" /></p><br /></p>
<h2>Une solution</h2>
<h3>(pas encore testée)</h3>
<h4>(les fautes sont dans le texte original  <img class="smile normal" src="media/7dc3b52a.sifflotte.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/sifflotte.png"/> )</h4>
<p><p style="text-align:center"><img src="http://meme.warriordudimanche.net/index.php?pic=freemanhead2.jpg&amp;t=Attention,%20%C3%A7a%20va%20%C3%AAtre%20un%20peu%20long&amp;w=256&amp;pos=bottom&amp;c=black" alt="meme" /></p></p>
<blockquote>
<p>Vous aurez besoin de graisse, d'une pate d'étancheité (joint bleu /exp) de tournevis torx, d'un tournevis plat, d'une clé à pipe de 10, d'une clé plate de 13, d'un marteau moyen, d'une cale à poncer avec du papier de verre grain 240,d'une clé à molette et d'un peu d'huile de coude.<br />
<br /></p>
<ol>
<li>dans l'habitacle sous le volant côté droit ouvrez la trappe a fusible. à l'aide du schema reperer le fusible avec le symbole d'essuie glace (comptez les lignes pour ne pas vous tromper). Verifiez l'état d'un fusible jaune de 20 Ampères, le remplacer en cas de doute, mais dans tous les cas poncez legerement les plots metalique à l'aide du papier de verre et remettez le en place.<br /></li>
<li>Contact mit, essayer d'actionner le balayage, si ça remarche seul le fusible était en cause et vous ne serez amené à aller plus avant que si le nouveau fusible saute de nouveau.<br />
<br />
Dans le cas ou fusible échangé ou poncé le systeme d'essuyage ne fonctionne toujours pas suivre les etapes suivantes.<br />
<br />
Ouvrir le capot moteur, reperer l'emplacement du systeme d'essuyage qui se situe logiquement à la base des deux balais.<br />
Oter les capuchons enjoliveurs sur les écrous a la base des deux essuie glaces, deposer les deux ecrous, deposer les deux essuie glace. Le mecanisme d'essuyage et le moteur se trouvent juste en dessous protegés par un enjoliveur en plastique noir qui recouvre tout le bas du pare brise.<br />
Reperez les deux attaches rapide qui se situent à droite et a gauche, à l'aide du tournevis plat soulevez la piece centrale puis tirez l'ensemble vers le haut pour l'oter completement. Retirer maintenant en le soulevant le gros joint d'etancheité qui se situe entre cet enjoliveur et le compartiment moteur. Avec le tournevis plat soulevez delicatement la base de l'enjoliveur ainsi degagée, puis tirez delicatement l'ensemble vers vous. Si vous me suivez bien vous venez d'oter l'enjoliveur et avez maintenant devant vous toute la base du pare brise decouverte qui surplombe une goutiere. Si celle ci est remplie d'eau profitez du moment pour reperer les deux durites d'evacuation . tirez les vers vous et debouchez les soigneusement, remettez les en place en respectant leur sens (des picots de detrompage vous y aideront)<br />
Il y'a un second enjoliveur plus petit a retirer, il suffit de soulever la partie avant qui est fixée par trois picots en plastique puis de la tirer vers vous. Maintenant vous voyez le mecanisme d'essuyage constitué du moteur et de l'embiellage(=manivelle reliée au moteur+2 bielles).<br />
Nous allons parler de la reparation de ce moteur, si le systeme d'embiellage (bielles ou manivelle)est cassé , ce qui est possible quoique peu probable ce qui va suivre ne vous interesse guère, tentez simplement de retouver l'embiellage à la casse voir chez un revendeur de pièces.<br />
<br />
Venons en à ce moteur!!!<br /></li>
<li>à l'aide du tournevis torx desserez sans les retirer les deux vis de fixation du moteur.<br /></li>
<li>à l'aide de la clé à pipe de 10 deposez les vis de fixation du mecanisme sur la caisse.<br /></li>
<li>debranchez la prise d'alimentation du moteur electrique en pressant le poussoir contre le corps de la prise tout en tirant (travaillez sans precipitation afin de ne pas endommager cet element)<br />
4)terminez de devisser le moteur puis apres avoir separé les deux elements, recuperez le tout vers l'avant. à ce stade rien de compliqué prenez simplement votre temps pour ne rien abimer et tout ira trés bien.<br />
<br />
Nous allons maintenant entretenir l'embiellage .<br />
<br />
1)Concernant l'embiellage( = bielles + manivelle), reperez toutes les rotules où ont lieu les mouvements graissez les, et verifiez que vous avez obtenu un mouvement plus libre.<br />
<br />
Au tour du moteur.<br />
Il se compose d'un carter en metal gris recouvert d'un cache en plastique noir maintenu par des pattes et d'une cloche noire fixée à l'aide de deux vis torx.<br />
A l'interieur du carter, sous le couvercle se situent trois engrenages.Le plus gros situé au centre est solidaire de la tige sur laquelle la manivelle etait fixée.<br />
Dans la cloche se situent un rotor des aimants, un porte charbon.<br />
<br />
Les problèmes de fonctionement de ce moteur sont probablement dû à une oxydation de ses elements constitutifs. Nous allons donc devoir les demonter et les nettoyer, egalement nous allons tacher de retablir des contacts electriques francs.<br />
<br />
Lancons nous,<br />
<br />
1)Apres avoir reperé les elements d'attache du couvercle en plastique noir les soulever a l'aide du tournevis et le deposer.<br /></li>
<li>vous verrez trois engrenages ( 2 blancs un noir) tirez fermement les deux plus petits vers le haut pour les deposer.<br />
3)tournez maintenant le carter, a l'aide d'un tournevis plat et fin faites levier pour soulever et oter la bague de maintien qui retient le dernier engrenage progressez en modifiant les points de levier. retirez ensuite la rondelle puis en tapant doucement sur la tete expulsez le dernier engrenage du carter.<br />
4)A ce stade retirez une partie de la graisse que vous remplacerez par de la neuve<br />
5)A l'aide du tournevis torx devissez les vis de fixation de la cloche et separez là du carter en tirant fermement mais delicatement.<br />
6)Il y'a probablement de l'eau dans cette cloche retirez la<br />
7)a l'aide d'une grosse pince tirez fortement vers le haut le rotor qui se trouve encore dans la cloche ( tirez sur la partie vis sans l'abimer et surtout n'endomager aucun element de la bobine)<br /></li>
<li>inspectez l'etat de cet element, si les plaquettes qui recouvrent les bobines sont oxydées vous venez de trouver une partie du problème, avec la cale à poncer recouverte de papier de verre grain 240 poncez pour retirer cette rouille jusqu'a ce que les plaquettes redeviennent argenté. Travaillez en respectant la forme arrondie de ces elements.<br /></li>
<li>poncez maintenant les petits poles en cuivre qui se trouvent au sommet du rotor, cessez dés que la couleur marron rouge du cuivre est apparente.<br />
10)avec une pointe fine repassez sur les traits de separations de ces poles pour les degagez puis avec le papier absorbant oter toute la poussière et les residuts<br />
11)sur le gros engrenage se trouve une petite plaque en metal doré, grattez là à l'aide d'un tournevis fin et plat pour garantir des contact electriques francs au remontage<br /></li>
<li>sur le couvercle noir, poncez toutes les extremitées rondes des bornes deux au centre et trois sur le bord. Procedez delicatement mais jusqu'a faire reaparaitre sa couleur au metal . N'oubliez surtout pas une toute petite borne inversée qui se trouve a la peripherie du couvercle.<br />
13)sur le carter dans le compartiment où se trouvaient les engrenages vous remarquerez trois petites bornes nettoyez les puis retracez les separations a l'aide d'une pointe fine et debarassez les residus. Grattez ces trois cosses pour permettre le retablissement de contact francs et repoussez les trés legerement en imprimant sur la partie haute un mouvement qui les ramene en direction de l'emplacement de la cloche. Soyez trés delicat et procedez lentement, cette étape si elle n'est pas indispensable garantira le parfait contact avec les trois bornes du couvercle lors du remontage. Dans le même ordre d'idée augmentez legerement l'écart des deux bornes du couvercle pour garantir un contact franc avec la piece metalique qui se situe sur le gros engrenage et la petite borne sans oublier de gratter le carter à l'endroit ou elle repose.<br />
9)poncez legerement les aimants fixés dans la cloche et nettoyez parfaitement celle ci avec du papier absorbant il ne doit plus y'a voir d'eau ni de residus.<br /></li>
<li>disposez une noix de graisse au fond de la cloche dans l'assise du rotor.<br /></li>
<li>graissez la queue du rotor et replacez le bien au fond dans la cloche.<br /></li>
<li>graissez la partie haute du rotor entre les poles en cuivre et la partie vis<br /></li>
<li>lors du demontage les ressorts qui assurent la poussée des charbons contre les poles en cuivre de la bobine les ont sans doute expulsés hors de leur logement il va falloir les remettre ce qui est facile quoique délicat.<br />
Pour se faire munissez vous d'un tournevis plat, d'une pince a bec fin et de trois tiges metaliques fines (exp trombones depliés). procedez successivement de la même manière pour chacun des charbons. Reperez bien l'orientation du biseau des logements des charbons, les biseaux des charbons devront êtres orientés dans le même sens.A l'aide du tournevis comprimez delicatement le ressort dans son logement tandis qu'avec la pince à bec fin vous presenterez dans le bon sens le charbon de facon a ce que le ressort ne puisse plus s'echapper. A ce stade aidez vous de la tige metalique que vous passerez dans le cordon electrique qui retien le charbon. Tirez delicatement vers l'arriere, et vous verrez le charbon comprimer le ressort tout en reintegrant son logement.Vous n'aurez plus qu'a fixer la tige sur les petites paroies du carter, si tout c'est bien passé, le ressort reste en position reculée dans son logement. Operez de la même facon pour les deux autres charbons et respectez bien le sens des biseaux.(dans le cas d'une usure totale des charbons j'imagine qu'un depaneur télé pourrait en souder des neufs ou vous même qui sait?)<br /></li>
<li>les trois charbons étant retenu par leur cordons et les tiges fixées au carter, graissez le trou par lequel la tete du rotor passera. Presentez enfin la tête du rotor qui se trouve dans la cloche, et introduisez la delicatement dans le carter. Si les charbons sont bien maintenus vous ne devriez avoir aucune difficulté. Quand la cloche est trés proche du carter otez delicatement les tiges en les tirant. Les cordons ainsi relachés, les ressorts seront libérés, et repousseront automatiquement les charbons contre les pôles de la bobine.<br /></li>
<li>A ce stade poussez bien la cloche contre le carter mais avant de reposer les deux vis faites tourner la cloche contre le carter pour verifier qu'il n'y a aucun point de blocage. Vous constaterez peut être en faisant cela que la cloche semble mieux se positioner dans un sens que dans l'autre si tel est le cas pensez à remonter dans le sens où les deux elements semblent le mieux s'associer. Reposez les deux vis sans les serrer. Vous laisserez entre la cloche et le carter un espace d'1.5 millimetre environ. Dans cet espace poussez du joint etanche ( joint bleu/ exp) puis terminez de visser à fond. Essuyez l'exedent de joint, et rejouissez vous d'avoir rendu étanche cette partie du moteur.<br />
16)Reposez dans le carter le gros engrenage prealablement graissé, tournez le carter et remettez la rondelle puis a l'aide du marteau reposez la rondelle de maintien (comme pour le demontage il faut presenter la rondelle sur l'axe puis effectuer des frappes succesives diametralement opposées, avec un peu de patience et de perseverance cela ira trés bien.)<br /></li>
<li>Disposez maintenant les deux petits engrenages, eux aussi bien graissés, ils sont de diametres differents ne pas forcer mais essayer tranquilement pour trouver leur emplacement respectif.<br />
18)Reperez la tranchée qui parcourt toute la peripherie de la paroie interne du couvercle en plastique, remplissez la sans deborder de produit etanche. Essuyez tout exedent de produit surtout sur la bordure interieure. Reposez le cache sur le carter, en verifiant la bonne fixation des attaches.<br /></li>
<li>A ce stade nettoyez l'ensemble du moteur ainsi remonté et precipitez vous vers votre voiture, branchez la prise du moteur d'essuie glace, priez un bon coup, croisez les doigts, puis pour être sûr mettez la voiture en marche et actionnez le commodo en vitesse maxi. Si ca fonctionne vous venez de faire des economies!!!!!!!!, Sinon revoyez votre copie notamment en renettoyant bien tous les plots de contact dans le carter et en les ecartant bien pour assurer des contacts francs n'oubliez pas la toute petite cosse sur le couvercle plastique qui vient se poser sur le carter elle devra être ecartée et le carter gratté pour un contact parfait.<br />
Refaites un essai ça devrait aller. Sinon pensez a reverifier tous vos fusibles ce que vous auriez dû faire dés le depart.<br /></li>
<li>Remontez alors tous les elements du systeme dans l'ordre inverse de la dépose<br /></li>
<li>Notez bien que pour un reglage correct vous devrez actionner l'essuyage puis l'eteindre. Enssuite vous pourrez remonter le mecanisme.<br />
Surtout positionez la manivelle completement vers la gauche (si vous faites face au vehicule) ceci est important pour qu'à la mise en fonction du systeme les balais ne fassent pas un mouvement de descente.<br /></li>
<li>au remontage le petit enjoliveur possède des picots que vous devrez repositionner soigneusement dans la baie de pare brise, puis ses trois picots. le grand enjoliveur ne pose pas de problemes particulier ne pas oublier les deux agraffes rapides puis le gros joint d'etancheité qui necessite un peu de logique et d'atention.<br /></li>
<li>Remontez enfin les balais d'essuie glace en les positionant bien au bas du pare brise.<br />
24 Verifiez le bon fonctionement , et peaufinez les reglages si necessaire.<br/><br/><div class="img_source"><a href="media/9df29c4e.passage-de-cable-scenic-annee-1999.jpg" data-original-source="http://forum.web-automobile.com/images/passage-de-cable-scenic-annee-1999.jpg">Source image</a></div></li>
</ol>
</blockquote>
<p><a href="http://forum-auto.caradisiac.com/marques/renault/sujet104042.htm">Source des photos mécaniques</a></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article867#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


uri: Comment-reconnaître-en-quelques-questions-simples-si-vous-avez-affair
feed_id:
http://www.warriordudimanche.net/article937/comment-reconnaitre-en-quelques-questions-simples-si-vous-avez-affaire-a-une-pseudomedecine-ou-a-quelque-chose-de-legitime

title:
Comment reconnaître en quelques questions simples si vous avez affaire à une pseudomédecine ou à quelque chose de légitime ?

content:
<img src="media/1f5c610e.culture.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/titres/culture.jpg" style="width:100%;height:auto"/><h1>En résumé:</h1>
<ol>
<li>Y a t il un inventeur de la technique ? Est ce que ses écrits / paroles / conférence sont paroles d'évangile ?</li>
<li>La thérapie en question prétend elle couvrir l'ensemble des maladies ?</li>
<li>La pratique est elle centenaire ou millénaire, mais n'a pas fait ses preuves ou reste t elle très controversée ?</li>
<li>Existe t il un complot international pour empêcher son utilisation ?
5.Le thérapeute en question fait il également le diagnostic en utilisant des outils non conventionnels ?</li>
<li>Vous avez une maladie grave ou chronique ou mal étiquetée... Votre thérapeute vous explique t il que d'une manière ou d'une autre, vous l'avez voulu, causé ou mérité ?</li>
<li>La théorie de votre thérapeute "bouleverse / révolutionne" t elle la compréhension de matières scientifiques telles que la biologie, la physique ou la chimie, l'anatomie ou la physiologie</li>
<li>Le fondateur de la thérapeutique en question est il comparé à Galilée ? Brûlé par ses pairs avant qu'on se rende compte qu'il avait finalement raison</li>
<li>Le thérapeute dénigre t il les soins qui vous ont été donné et vous incite t il à les abandonner ?</li>
<li>Est ce que le succès de la thérapeutique est clairement défini ou est il suffisamment flexible pour parer à toute éventualité</li>
<li>Mon thérapeute vous explique t il qu'il faut aider "votre corps à s'autoguérir" ou à se "débarasser des toxines" ou à "booster votre système immunitaire" ou à "équilibrer votre balance intérieure" ?</li>
<li>Votre thérapeute fait il appel à une célébrité, un prix nobel ou à un livre quelconque pour légitimer sa pratique ?</li>
<li>Votre thérapeute essaie t il de se donner des titres ou des références qu'il n'a pas ?</li>
<li>Votre thérapeute vous parle t il de phénomènes "énergétiques" "magnétiques" "naturels" ou "quantiques" pour se donner une contenance ?</li>
<li>Votre thérapeute utilise t il des anecdotes pour justifier sa pratique ?</li>
<li>question joker: "Peux-tu m'expliquer comment ça fonctionne ?" S'il ne sait pas répondre, méfie toi. Si dans la réponse, il est question d'ondes, d'énergie, méfie toi. S'il ne sait pas l'expliquer vulgairement, méfie toi.</li>
</ol>
<img src="http://www.warriordudimanche.net/data/medias/images//FireShot Capture 003 - Asclépios sur Twitter _ _Comment reconnaître en quelques questions si_ - twitter.com.png" alt="image"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article937#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article931/5c6d518d78179
title: Quidams
uri: Quidams
url: http://quidam.warriordudimanche.net/
content:
<img src="media/938485a5.computing.gif" data-original-source="http://www.warriordudimanche.net/data/medias/images/titres/computing.gif" style="width:100%;height:auto"/><p>suite à <a href="https://sebsauvage.net/links/?pwXZJw">https://sebsauvage.net/links/?pwXZJw</a> , j'ai bricolé une page pour télécharger un zip contenant le nombre d'images voulues (10-1000)<br />
<a href="http://quidam.warriordudimanche.net/">http://quidam.warriordudimanche.net/</a><br />
<br />
c'est basique mais ça fait le taf <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/><br />
<br />
Tous au troll !<br /></p>
<p>EDIT: le github: <a href="https://github.com/broncowdd/quidam">https://github.com/broncowdd/quidam</a></p>
<p>EDIT2: en complément <a href="https://framagit.org/snippets/3226">https://framagit.org/snippets/3226</a> (pas de moi <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/>)</p>
<p>EDIT3: j'ai dû adapter l'url de récupération de l'image qui avait changée et provoquait des erreurs. (merci à Bobinours au passage)</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article931#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article936/5c76302d500b1
title: Vue Unicons
uri: Vue-Unicons
url: https://antonreshetov.github.io/vue-unicons/
content:
<img src="media/62264578.vue-unicons-logo.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/vue-unicons-logo.png" style="width:100%;height:auto"/><p>Comme je regarde en ce moment du côté de vue.js <a href="https://www.youtube.com/watch?v=g7YKecZhFRA&amp;list=PLjwdMgw5TTLW-mAtlR46VajrKs4dep3y0">via les tutos de Grafikart</a>, ça tombe bien...<br />
<br />
Hop, de côté pour plus tard<br /></p>
<div class="via"><span title="Source du lien">Via https://links.kalvn.net/?DpyKNw</span></div><br/><br/><div class="img_source"><a href="https://fr.vuejs.org/images/logo.png?_sw-precache=cf23526f451784ff137f161b8fe18d5a">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article936#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article935/5c762f8434930
uri: Le-Comité-International-Olympique-(CIO)-envisage-d-organiser-des-épr
title:
Le Comité International Olympique (CIO) envisage d'organiser des épreuves de tirs de LBD aux prochains jeux de Tokyo 2020 - Science Info

url:
http://www.scienceinfo.fr/le-comite-international-olympique-cio-envisage-dorganiser-des-epreuves-de-tirs-de-lbd-aux-prochains-jeux-de-tokyo-2020/

content:
<img src="media/5ceec6ec.okyo-2020-science-info-lbd-flashball-jeux-olympiques-660x330.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/le-comite-international-olympique-cio-envisage-d-organiser-des-epreuves-de-tirs-de-lbd-aux-prochains-jeux-de-tokyo-2020-science-info-lbd-flashball-jeux-olympiques-660x330.jpg" style="width:100%;height:auto"/><p>Merci pour ça, copain ! C'est mon rire du matin !  <img class="smile normal" src="media/a873be48.mdr.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/mdr.png"/>  J'ai ri (jaune, bien entendu <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/>)<br />
<br />
«Les chiffres sont éloquents : 89 % des tirs de LBD réalisés par nos forces de l’ordre lors des rassemblements de Gilets Jaunes atteignent le visage des manifestants avec un taux d’éborgnage particulièrement spectaculaire.»<br />
<br />
«Des cibles mobiles habillées de gilets jaunes sont déjà en cours d’élaboration. L’éborgnage de ces dernières pourrait remporter le maximum de points alors que les impacts dans les jambes ou les bras n’auraient quasiment aucun incidence sur le score.»<br />
<br />
<br /></p>
<div class="via"><span title="Source du lien">Via Liandri</span></div><br/><br/><div class="img_source"><a href="media/f4214ec3.lbd-flashball-jeux-olympiques-660x330.jpg" data-original-source="http://www.scienceinfo.fr/wp-content/uploads/2019/02/lbd-flashball-jeux-olympiques-660x330.jpg">Source image</a></div>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article935#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article934/5c6fd9356ee50
title: Les voix, mes voix et moi – Dandelion – Medium - Choses vues, sur le web et ailleurs
uri: Les-voix-mes-voix-et-moi-Dandelion-Medium-Choses-vues-sur
url: https://www.sammyfisherjr.net/Shaarli/?W90HVg
content:
./plugins//WDDWebLinks/default_image.jpg<p>J'ai lu je ne sais plus où que les personnes qui entendent des voix dans leur tête auraient un problème qui se situerait dans la zone du cerveau chargée de distinguer le soi du non soi: ils «entendraient» ainsi certaines de leurs propres pensées et les percevraient comme étrangères.<br />
<br />
Fascinant et terrifiant... déjà que je parle tout seul, si en plus je me réponds, c'est le bouquet !</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article934#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


title: Histoires de pamplemousses, de saucisses, d'amandes et de... bite de cochon.
uri: Histoires-de-pamplemousses-de-saucisses-d-amandes-et-de-bite-de-c
feed_id:
http://www.warriordudimanche.net/article933/histoires-de-pamplemousses-de-saucisses-d-amandes-et-de-bite-de-cochon

content:
<img src="media/7d5a4227.maxresdefault.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/maxresdefault.jpg" style="width:100%;height:auto"/><p>Aujourd'hui, à la caisse du supermarché du coin, la jeune caissière regarde les pamplemousses d'un air désemparé, lève les yeux et demande: «c'est quoi ?»</p>
<img class="smile normal" src="media/51a82175.corbeau.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/corbeau.png"/> 
<p>non, mais, des PAMPLEMOUSSES...  <img class="smile normal" src="media/9447f58d.wow.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/wow.png"/> </p>
<p>Je vis dans un monde où des gens n'ont jamais vu de pamplemousses (tout en bossant dans un magasin qui en vend)</p>
<h1>Si seulement c'était un fait isolé, mais non:</h1>
<ul>
<li>une autre fois, c'étaient des amandes que la caissière ne reconnaissait pas. Des pitins de fucking AMANDES... ya pas plus con qu'une amande.</li>
<li>Il y a quelques semaines, à la cantine, une élève de cinquième ne comprenait même pas le <strong>concept</strong> de saucisse. Un collègue lui explique qu'il s'agit de porc. Sourcils en accent circonflexes de la part de la môme. Mon collègue ajoute: «c'est du cochon». Et là, après un temps de réflexion visiblement infructueux, elle finit par demander: «c'est sa <strong><em>bite</em></strong> ?»
Donc, celle-ci ignore ce qu'est une saucisse mais voit très bien en quoi consiste une bite.</li>
</ul>
<p>Les plus taquins se rappelleront de la blague de la capote et de la véranda, on n'en est pas loin.</p>
<h1>la question qui me vient: pourquoi ?</h1>
<p>Après un légitime et bref passage en PLS mentale, histoire d'évacuer ma consternation, je me demande comment c'est possible...
La seule explication qui me vient, de bite en blanc [gag], c'est que ce que je considère comme des denrées de consommation courante sont des aliments de luxe pour ces personnes (et je culpabilise aussitôt pour ma réaction première).</p>
<h1>Mais non, quand même, faut pas pousser:</h1>
<p>J'aimerais bien sûr éviter le mépris de classe, la condescendance etc. </p>
<p>Mais bon...</p>
<ol>
<li>même si on n'a pas les moyens d'acheter un truc, on en a déjà VU (ces mêmes personnes n'ont pas les moyens d'acheter un Iphone mais savent bien ce que c'est et peuvent le reconnaître)</li>
<li>les deux caissières en question portaient des vêtements pas spécialement bon marché et étaient bien maquillées, ongles faits... Si on en est à ne pas pouvoir se payer un pamplemousse, on fait l'impasse sur les produits d'une nécessité plus «discutable», il me semble (mais c'est peut-être un point de vue de privilégié, j'en suis conscient).</li>
<li>autant l'élève était encore jeune, donc naïve (quoique), autant les caissières sont adultes... </li>
<li>les caissières bossent dans un magasin qui VEND ces denrées. Elles les ont même probablement mises en rayon (c'est un petit supermarché de village)... faut-il se foutre éperdument de ce qu'on fait pour ne même pas LIRE LE NOM des trucs qu'on place sur les gondoles.</li>
</ol>
<p>Il s'agit à mon sens davantage d'ignorance plus ou moins volontaire, dans le sens ou on ne prête AUCUN intérêt à ce qui nous entoure, que d'une impossibilité sociale/culturelle/intellectuelle/héritée/systémique dont ces personnes seraient victimes.
Ça correspond d'ailleurs à une impression que je ressens depuis des années avec mes élèves: plus le temps passe et plus la proportion d'élèves impossible à intéresser grandit. Ils ne s'étonnent de rien, regardent le monde avec désintérêt voire mépris.</p>
<p>Je laisse le «pourquoi» en suspend...</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article933#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article932/5c6fb682072d0
title: Raccourcisseur d’URL minimaliste basé sur Go!
uri: Raccourcisseur-d-URL-minimaliste-basé-sur-Go
url: https://github.com/yomli/yomli-go
content:
<img src="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/raccourcisseur-durl-minimaliste-base-sur-go-68747470733a2f2f617070732e796f6d2e6c692f676f2f73637265656e73686f74732f73637265656e312e706e67" style="width:100%;height:auto"/><p><a href="https://yom.li/">Yomli</a>, un visiteur de ce site, a forké et laaaaargement amélioré <a href="http://warriordudimanche.net/article720/go-un-raccourcisseur-d-url">Go!</a>, le raccourcisseur d'url que j'avais bricolé il y a un moment.<br />
<br />
C'est du très beau boulot, du coup, je partage !<br />
<br /></p>
<ul>
<li>Intégration des QRCodes envoyés par une API externe.<br /></li>
<li>Bouton « Copier dans le presse-papier » (nécessite javascript).<br /></li>
<li>Interface d'administration tout-en-un :<br /><ul>
<li>Importer/exporter au format JSON.<br /></li>
<li>Copier des liens simplement.<br /></li>
<li>Voir les QRCodes associés.<br /></li>
<li>Purger l'ensemble des URL…<br /></li>
</ul>
</li>
<li>Sécurisation avec auto_restrict.<br /><ul>
<li>Possibilité de choisir quelle partie rendre privée : la suppression des liens, l'ajout, les deux, voire totalement ouvert.<br /></li>
<li>Dans tous les cas, la redirection est accessible à tout le monde.<br /></li>
</ul>
</li>
<li>Interface de gestions des liens utilisateur :<br /><ul>
<li>Importer/exporter au format JSON.<br /></li>
<li>Afficher les liens stockés dans le navigateur.<br /></li>
</ul>
</li>
<li>Réorganisation des fichiers.<br /></li>
<li>Fichier de configuration dans le même répertoire que la base, permettant une sauvegarde simplifiée.<br /></li>
<li>Les URL peuvent être au format mydomain.tld/go/code en plus de mydomain.tld/go/?code (.htaccess, demande un serveur Apache).<br /></li>
<li>Appel externe par requête GET : <a href="https://mydomain.tld/?url=http://long.url&amp;code=foobar">https://mydomain.tld/?url=http://long.url&amp;code=foobar</a>.<br /></li>
<li>Nouveau logo.<br />
<br/><br/><div class="img_source"><a href="https://camo.githubusercontent.com/aaec2df83c3efff8f0f9bd948ebbaf263b9239ab/68747470733a2f2f617070732e796f6d2e6c692f676f2f73637265656e73686f74732f73637265656e312e706e67">Source image</a></div></li>
</ul>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article932#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article930/5c6d101c1be4b
title: Pourrir les bases de reconnaissance faciales de Facebook - Liens en vrac de sebsauvage
uri: Pourrir-les-bases-de-reconnaissance-faciales-de-Facebook-Liens-en-vr
url: https://sebsauvage.net/links/?pwXZJw
content:
<img src="media/ed4cabc5.coming-article5447196-ece-alternates-s615bbad-tattoos-no-pen.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/titres/http-i2-mirror-co-uk-incoming-article5447196-ece-alternates-s615bbad-tattoos-no-pen.jpg" style="width:100%;height:auto"/><p>excellent !<br />
<br />
avec <a href="http://warriordudimanche.net/article928/5c6adb414fe5f">ça pour commencer</a></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article930#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article929/5c6adf3847339
title: Focus : javaScript Reduce()
uri: Focus-javaScript-Reduce()
url: https://www.linkedin.com/pulse/focus-javascript-reduce-j%C3%A9r%C3%B4me-pisi/
content:
<img src="media/c0d20c94.javascript.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/titres/javascript.png" style="width:100%;height:auto"/><p>Je ne connaissais pas reduce() en js.<br /></p>
<pre><code>
var arr = [10, 20 ,30, 91, 45, 70] 
<p>var laPlusgrosse = arr.reduce(function(acc, curr){
return Math.max(acc, curr)
}, 0)</p>
<p>console.log(laPlusgrosse)
</code></pre></p>
<p>Bon à savoir</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article929#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article928/5c6adb414fe5f
title: (Image JPEG, 1024 × 1024 pixels) - Redimensionnée (99%)
uri: (Image-JPEG-1024-1024-pixels)-Redimensionnée-(99-)
url: https://thispersondoesnotexist.com/
content:
<img src="media/938485a5.computing.gif" data-original-source="http://www.warriordudimanche.net/data/medias/images/titres/computing.gif" style="width:100%;height:auto"/><p>Pour récupérer une banque de visages qui n'existent pas pour vos applis, par exemple:<br />
<br />
<br />
<br /></p>
<pre><code>
    $nb=count(glob('*.jpg'));
    if (!empty($_GET['nb'])){
        $_GET['nb']=intval($_GET['nb']);
    }else{
        $_GET['nb']=5;
    }
<pre><code>for ($i=0;$i&lt;=$_GET['nb'];$i++){
    $pic=file_get_contents('https://thispersondoesnotexist.com/');
    file_put_contents('face'.($nb+$i).'.jpg', $pic);
}</code></pre>
<p>// localhost/TEST/personsBank/?nb=100
</code></pre><br />
<br />
<br />
(pour moi, c'est en cours <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/>)<br /></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article928#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article927/5c6a875726530
title: Spurious Correlations
uri: Spurious-Correlations
url: http://www.tylervigen.com/spurious-correlations
content:
<img src="media/6362765a.spurious-correlations-2009-10-30-bad-comics-on-mars.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/spurious-correlations-2009-10-30-bad-comics-on-mars.jpg" style="width:100%;height:auto"/><p>Oh, merci, j'avais perdu ce site... <br />
Je ressortirai certaines perles à l'occasion de dîners de famille... <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/><br />
Certaines sont hilarantes  <img class="smile normal" src="media/a873be48.mdr.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/mdr.png"/> <br/><br/><div class="img_source"><a href="media/5e8ff60d.2009-10-30-bad-comics-on-mars.jpg" data-original-source="https://i0.wp.com/www.asandiford.com/wp-content/uploads/2010/04/2009-10-30-bad-comics-on-mars.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article927#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article926/adresse-la-savoyarde-au-praz-de-lys
title: Adresse: La Savoyarde, au Praz de Lys
uri: Adresse-La-Savoyarde-au-Praz-de-Lys
content:
<img src="media/46904cfa.img_20190216_143335.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/img_20190216_143335.jpg" style="width:100%;height:auto"/><h2><span class="red">Je précise de suite, ce n'est pas un article sponsorisé </span></h2>
<p>Pendant ma semaine au ski, veinard que je suis, le temps a été superbe, la neige parfaite et le wifi absent...</p>
<p>On a appris en arrivant que la Savoyarde, le resto en dessous de l'appart, avait été repris depuis décembre et que ça valait vraiment le coup d'y aller. J'y suis allé. Ben c'est vrai.</p>
<p>La suite en détails., c'est par là ↴</p><h2>Bon, on va situer un peu, déjà.</h2>
<p>Le Praz de Lys est une petite station plutôt familiale près de Taninges et Sommand.</p>
<img src="media/466bde50.PrazDeLysSommand.10.gif" data-original-source="http://www.warriordudimanche.net/data/medias/images//PrazDeLysSommand.10.gif" alt="image"/>
<p>Les restaurants dans les zones touristiques se divisent en gros en deux catégories:</p>
<ol>
<li>Les vendeurs de bouffe dont le seul boulot consiste à décongeler des machins avant de les cuire pour te faire payer un max.</li>
<li>Les lieux dans lesquels on sent que cuisiner, c'est avant tout une passion qu'on pratique avec l'envie de bien faire.</li>
</ol>
<img src="media/e634cf85.IMG_20190216_143254.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/AdresseLaSavoyardeauPrazdeLys-17-02-2019-13h50/IMG_20190216_143254.jpg" alt="image"/>
<p><strong><em>La Savoyarde se classe en bonne place dans cette seconde catégorie</em></strong>.</p>
<h2>Oui, mais pourquoi ?</h2>
<p>Tout d'abord, il est très bien placé, juste en face d'un champ de neige où les enfants peuvent aller jouer si les adultes prennent leur temps ( <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/> ), orienté plein soleil et au pied des apparts.</p>
<p>La carte est assez variée pour que tout-un-chacun y trouve son bonheur et les prix sont très raisonnables, spécialement quand on considère la qualité de ce qui est servi. En gros, on a mangé à 11 pour 200€. Oui.</p>
<p>Les plats sont <strong><em>vraiment</em></strong> bons: après discussion avec le cuisinier, que j'ai pu féliciter de vive voix pendant sa pause, j'ai appris que tout est <strong><em>fait maison</em></strong>. Il bosse seul, prépare les plats pour une centaine de couverts (je vous laisse imaginer) et arrive à 5h45 le matin pour commencer à préparer.</p>
<p>Il ne s'agit pas de cuisine prétentieuse où l'on vous sert une portion famélique avec deux traits de sauce et une feuille de laitue pour combler: les portions sont copieuses, les plats savoureux et souvent inventifs (voir les desserts du jour ou la crème brûlée aux pralines, ma favorite).</p>
<img src="media/4199e6cc.IMG_20190214_125200.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/AdresseLaSavoyardeauPrazdeLys-17-02-2019-13h50/IMG_20190214_125200.jpg" alt="La crozyflette"/>
<img src="media/75aee5dd.IMG_20190216_142550.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/AdresseLaSavoyardeauPrazdeLys-17-02-2019-13h50/IMG_20190216_142550.jpg" alt="La crème brûlée aux pralines"/>
<p>L'équipe au service est très sympathique et attentionnée sans être envahissante. De plus, et il est bon de le noter quand on est papa de famille nombreuse, <strong><em>ils acceptent les tablées d'enfants le sourire aux lèvres</em></strong> et font tout pour que les petits attendent le moins possible. 
Pour m'être fait refouler de plusieurs restos, notamment à Collioure ou Argelès, c'est agréable de voir des personnes aussi accueillantes.</p>
<p>Autre fait à mentionner, contrairement à plusieurs autres établissements de la station, <strong><em>ils acceptent les réservations</em></strong>.</p>
<p>Il paraît que certains se sont plaints d'une certaine lenteur de service. 
Alors, comme je l'ai dit à la personne qui nous a servis et qui s'inquiétait de savoir si on n'avait pas trop attendu: ça ne me dérange pas d'attendre un peu pour aussi bien manger avec des produits frais et maison. Ceux qui sont pressés n'ont qu'à aller bouffer un kébab ou un macdo, c'est fait pour eux là-bas. Ici, on n'a pas peur de prendre son temps et du plaisir.</p>
<hr />
<h2>Pour résumer</h2>
<p>C'est une table qu'il ne faut pas manquer si vous êtes dans le coin et je leur renouvelle mes félicitations. Je cours sur tripadvisor pour y laisser un commentaire.</p>
<p>Ne changez rien !</p>
<p><a href="https://www.facebook.com/Lasavoyarde/">Leur page facebook</a></p>
<img src="media/81f0c829.48403896_2269720873305891_1895311291824734208_n.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images//48403896_2269720873305891_1895311291824734208_n.jpg" alt="image"/>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article926#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article925/5c693c346d30f
title: Une page se tourne | Green Effect
uri: Une-page-se-tourne-Green-Effect
url: https://www.green-effect.fr/une-page-se-tourne
content:
<img src="media/b4b6286e.une-page-se-tourne-green-effect-prof-absent.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/une-page-se-tourne-green-effect-prof-absent.jpg" style="width:100%;height:auto"/><p>«Mais je sais simplement que je n'arrive plus à vouloir changer le monde derrière mon écran d'ordinateur, le cul au chaud vissé sur une chaise.»<br />
<br />
Et voilà ! Et voilà !<br />
Je me barre une semaine en déco totale, je reviens et c'est le merdier !<br />
Pars pas copain ! <br />
<br />
Je trouve que tu es très courageux de te retrousser les manches et d'agir concrètement pour plus d'humanité.<br />
Au passage, Calais, c'est pas un peu loin de chez toi ?<br />
<br />
Je t'envoie plein d'amitié pour cette nouvelle direction.<br />
<br />
<br/><br/><div class="img_source"><a href="media/f061a460.prof-absent.jpg" data-original-source="https://cache.magicmaman.com/data/photo/w800_c18/3x/prof-absent.jpg">Source image</a></div></p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article925#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article924/5c5c15946cd91
title: Active graphics card Unknown after upgrade to Linux Mint 18 - Unix & Linux Stack Exchange
uri: Active-graphics-card-Unknown-after-upgrade-to-Linux-Mint-18-Unix-L
url:
https://unix.stackexchange.com/questions/297738/active-graphics-card-unknown-after-upgrade-to-linux-mint-18

content:
<img src="media/c7ab6c66.astuce.png" data-original-source="http://www.warriordudimanche.net/data/medias/images/titres/astuce.png" style="width:100%;height:auto"/><p>Si vous avez plusieurs moniteurs sous linux mint et qu'un beau jour, il n'y en a qu'un qui s'allume et qu'il est marqué comme inconnu, c'est peut-être votre pilote Nvidia qui a chié dans la colle.<br />
<br />
<br />
<br /></p>
<pre><code>sudo apt-get purge bumblebee*
sudo apt-get purge bbswitch*
sudo apt-get purge nvidia*
sudo apt-get --purge autoremove
</code></pre><br />
<br />
Redémarrez pis voilà.<br />
<br />
De rien <img class="smile normal" src="media/96bbb317.satisfait.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/satisfait.png"/><br />
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article924#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article923/5c5bf4c19b28d
uri: Liste-à-puce-des-raisons-pour-lesquelles-vous-devez-arrêter-de-dire
title:
Liste à puce des raisons pour lesquelles vous devez arrêter de dire « tiret du 6 » ou « tiret du 8 » - Tech - Numerama

url:
https://www.numerama.com/tech/458477-liste-a-puce-des-raisons-pour-lesquelles-vous-devez-arreter-de-dire-tiret-du-6-ou-tiret-du-8.html

content:
<img src="media/13093929.numerama-What-Should-Be-Preferred-in-URLs-Dash-or-Underscore.jpg" data-original-source="http://www.warriordudimanche.net/data/medias/images/_WEBLINKS/liste-a-puce-des-raisons-pour-lesquelles-vous-devez-arreter-de-dire-tiret-du-6-ou-tiret-du-8-tech-numerama-What-Should-Be-Preferred-in-URLs-Dash-or-Underscore.jpg" style="width:100%;height:auto"/><blockquote>
<p>Les jeunes n’ont jamais vu un clavier physique Windows Azerty de leur vie à part sur les vieux Compaq de la salle de technologies du collège : pensez-y<br />
<br />
Amen  <img class="smile normal" src="media/19d081e7.pleure.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/pleure.png"/> <div class="via"><span title="Source du lien">Via <a href="http://mayaweb.fr/links/?GDWcHA">http://mayaweb.fr/links/?GDWcHA</a></span></div><br/><br/><div class="img_source"><a href="media/385de19b.What-Should-Be-Preferred-in-URLs-Dash-or-Underscore.jpg" data-original-source="https://magenticians.com/wp-content/uploads/2016/09/What-Should-Be-Preferred-in-URLs-Dash-or-Underscore.jpg">Source image</a></div></p>
</blockquote>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article923#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article922/subnautica
title: Subnautica, moi, je dis, il est bien.
uri: Subnautica-moi-je-dis-il-est-bien
content:
<img src="http://www.warriordudimanche.net/data/medias/http-images-akamai-steamusercontent-com-ugc-25708421444180805504EF1B092D7E4B5E8EBAC127FDB7979A9FB884A6" style="width:100%;height:auto"/><p>En ce moment, je joue à subnautica et je dois bien admettre que j'adore m'y plonger 
<div class="face2"><div class="bubble">
<p style="text-align:center">
<img src="media/a4bc79d8.99991ed286e86f3402e21f4c56a59f8131d8e0e5.jpg" data-original-source="http://meme.warriordudimanche.net/generated_pics/99991ed286e86f3402e21f4c56a59f8131d8e0e5.jpg" alt="alt" />
</p>
</div></div></p>
<p>Il y a pléthore de tests, d'avis etc sur le jeu, donc je me contenterai juste de dire pourquoi il me semble aussi bien:</p>
<ol>
<li>Il est <em>beau</em>: non, mais vraiment beau. Pas dans le sens hyperréaliste qu'on a l'impression d'être mouillé quand on joue, mais beau comme coloré et poétique... à mon sens, un jeu n'a pas à être photoréaliste, il doit faire marcher l'imagination... et là, c'est jackpot.
Les créatures sont belles, recherchées, souvent mignonnes (à part ces saloperies d'araignées à 4 pattes inspirées à n'en pas douter d'Half life), l'ambiance sonore est magnifique... que du bon.</li>
<li>Il est globalement non violent: ici, pas de tchac tchac poutm poum, pas de gros motherfucking guns, pas d'explosifs... il y a très peu d'armes et elles sont non létales pour la plupart des créatures.</li>
<li>la difficulté est très bien dosée: on ne se décourage jamais mais on apprend à être prudent quand même.</li>
<li>le monde n'est pas foncièrement agressif - bonne leçon de vie - mais il ne vous pardonnera jamais certaines erreurs.</li>
<li>Vous sentez que jamais vous n'êtes chez vous: on n'a pas une mentalité de conquérant, mais de survivant, et ça, ben j'aime.</li>
<li>la progression est très bien dosée aussi: le système de blueprints n'est pas nouveau, mais la façon de se les procurer est originale et vous pousse à fouiller les épaves dans l'espoir de trouver toutes les pièces. On voit de plus que la progression technologique est très bien pensée: le joueur est rarement bloqué dans ses découvertes mais on entretient l'envie de trouver des nouvelles choses.</li>
<li>il y a des cheatcodes simples: si, si, je mets ça dans les points positifs et j'explique. Quand on a peu de temps pour jouer, ça fait parfois chmir de se retaper trois bornes à la nage pour miner deux diamants où tout paumer parce qu'on s'est fait buter sans avoir sauvegardé. Dans ce cas, F3, Entrée et hop, on a une série de commandes pour se sortir de la mouise et ne pas perdre des heures de jeu. Bien entendu, je déconseille d'utiliser les cheats pour débloquer des trucs qu'on n'a pas découvert... ça démolit l'intérêt du jeu.</li>
<li>il y a un mode créatif, comme dans minecraft... ajouté au fait que c'est non violent par principe, ça fait un excellent jeu pour des petits (mon môme de huit ans adore !)</li>
<li>ça a beau être openworld, il y a quand-même un scénar. Discret, logique, pas trop directif et bien mené. </li>
<li>c'est un jeu <em>calme</em>...  <img class="smile normal" src="media/fef22c4f.dodo.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/dodo.png"/> </li>
<li>j'adore qu'on me souhaite la bienvenue en m'appelant «cap'tain». Oui.</li>
<li>le système de craft est bien pensé aussi: on a besoin d'appareils différents selon ce qu'on doit réaliser: un pour les ingrédients et petits objets quotidiens, un pour améliorer les objets, un pour les véhicules, un pour les meubles/bâtiments... ça a l'air compliqué, mais en fait c'est logique et ça évite les menus surchargés dans une seule interface</li>
<li>le crafting des bâtiments/objets est simplifié pour que ce soit un plaisir de construire (ici, on est loin du cauchemar du craft à la Fallout 4 <img class="smile normal" src="media/73a2ceae.facepalm.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/facepalm.png"/> ). Les éléments qui doivent se connecter se connectent pis c'est marre.</li>
<li>les commandes sont <em>simples</em> et bien pensées: les mêmes boutons produisent les mêmes actions. point.</li>
<li>les véhicules sont chouettes et le mode de pilotage est différent si c'est un petit véhicule ou un gros. Je vous laisse découvrir mais ça m'amène au dernier point</li>
<li>il y a une excellent immersion -re gag- dans ce jeu: le pilotage du gros submersible est juste... parfait.</li>
</ol>
<p>Si vous avez des envies de commentaire, c'est par là...</p>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article922#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


feed_id: http://www.warriordudimanche.net/article921/comprehensive-python-cheatsheet
title: Comprehensive Python Cheatsheet
uri: Comprehensive-Python-Cheatsheet
content:
<img src="media/6e212e0b.https-gto76-github-io-python-cheatsheet-webimage_888.jpeg" data-original-source="http://www.warriordudimanche.net/data/medias/https-gto76-github-io-python-cheatsheet-webimage_888.jpeg" style="width:100%;height:auto"/><p>Je me copie-colle ici pour mémoire: c'est tellement bien fait !</p><h1>Comprehensive Python Cheatsheet</h1>
<p><sup><a href="https://raw.githubusercontent.com/gto76/python-cheatsheet/master/README.md">Download text file</a>
or <a href="https://github.com/gto76/python-cheatsheet">Fork me on GitHub</a>.
</sup></p>
<p><img src="media/3a151725.image_888.jpeg" data-original-source="http://www.warriordudimanche.net/web/image_888.jpeg" alt="Monty Python" /></p>
<h2>Main</h2>
<pre><code class="language-python">if __name__ == '__main__':
    main()</code></pre>
<h2>List</h2>
<pre><code class="language-python">&lt;list&gt; = &lt;list&gt;[from_inclusive : to_exclusive : step_size]
&lt;list&gt;.append(&lt;el&gt;)
&lt;list&gt;.extend(&lt;collection&gt;)
&lt;list&gt; += [&lt;el&gt;]
&lt;list&gt; += &lt;collection&gt;</code></pre>
<pre><code class="language-python">&lt;list&gt;.sort()
&lt;list&gt;.reverse()
&lt;list&gt; = sorted(&lt;collection&gt;)
&lt;iter&gt; = reversed(&lt;list&gt;)</code></pre>
<pre><code class="language-python">sum_of_elements  = sum(&lt;collection&gt;)
elementwise_sum  = [sum(pair) for pair in zip(list_a, list_b)]
sorted_by_second = sorted(&lt;collection&gt;, key=lambda el: el[1])
sorted_by_both   = sorted(&lt;collection&gt;, key=lambda el: (el[1], el[0]))
flattened_list   = list(itertools.chain.from_iterable(&lt;list&gt;))
list_of_chars    = list(&lt;str&gt;)
product_of_elems = functools.reduce(lambda out, x: out * x, &lt;collection&gt;)
no_duplicates    = list(dict.fromkeys(&lt;list&gt;))</code></pre>
<pre><code class="language-python">index = &lt;list&gt;.index(&lt;el&gt;)  # Returns first index of item. 
&lt;list&gt;.insert(index, &lt;el&gt;)  # Inserts item at index and moves the rest to the right.
&lt;el&gt; = &lt;list&gt;.pop([index])  # Removes and returns item at index or from the end.
&lt;list&gt;.remove(&lt;el&gt;)         # Removes first occurrence of item.
&lt;list&gt;.clear()              # Removes all items.   </code></pre>
<h2>Dictionary</h2>
<pre><code class="language-python">&lt;view&gt; = &lt;dict&gt;.keys()
&lt;view&gt; = &lt;dict&gt;.values()
&lt;view&gt; = &lt;dict&gt;.items()</code></pre>
<pre><code class="language-python">value  = &lt;dict&gt;.get(key, default)            # Returns default if key does not exist.
value  = &lt;dict&gt;.setdefault(key, default)     # Same, but also adds default to dict.
&lt;dict&gt; = collections.defaultdict(&lt;type&gt;)     # Creates a dictionary with default value of type.
&lt;dict&gt; = collections.defaultdict(lambda: 1)  # Creates a dictionary with default value 1.</code></pre>
<pre><code class="language-python">&lt;dict&gt;.update(&lt;dict&gt;)                        # Or: dict_a = {**dict_a, **dict_b}.
&lt;dict&gt; = dict(&lt;list&gt;)                        # Initiates a dict from list of key-value pairs.
&lt;dict&gt; = dict(zip(keys, values))             # Initiates a dict from two lists.
&lt;dict&gt; = dict.fromkeys(keys [, value])       # Initiates a dict from list of keys.</code></pre>
<pre><code class="language-python">value = &lt;dict&gt;.pop(key)                         # Removes item from dictionary.
{k: v for k, v in &lt;dict&gt;.items() if k in keys}  # Filters dictionary by keys.</code></pre>
<h3>Counter</h3>
<pre><code class="language-python">&gt;&gt;&gt; from collections import Counter
&gt;&gt;&gt; colors = ['blue', 'red', 'blue', 'yellow', 'blue', 'red']
&gt;&gt;&gt; counter = Counter(colors)
Counter({'blue': 3, 'red': 2, 'yellow': 1})
&gt;&gt;&gt; counter.most_common()[0][0]
'blue'</code></pre>
<h2>Set</h2>
<pre><code class="language-python">&lt;set&gt; = set()
&lt;set&gt;.add(&lt;el&gt;)
&lt;set&gt;.update(&lt;collection&gt;)
&lt;set&gt; |= {&lt;el&gt;}
&lt;set&gt; |= &lt;set&gt;</code></pre>
<pre><code class="language-python">&lt;set&gt;  = &lt;set&gt;.union(&lt;coll.&gt;)                 # Or: &lt;set&gt; | &lt;set&gt;
&lt;set&gt;  = &lt;set&gt;.intersection(&lt;coll.&gt;)          # Or: &lt;set&gt; &amp; &lt;set&gt;
&lt;set&gt;  = &lt;set&gt;.difference(&lt;coll.&gt;)            # Or: &lt;set&gt; - &lt;set&gt;
&lt;set&gt;  = &lt;set&gt;.symmetric_difference(&lt;coll.&gt;)  # Or: &lt;set&gt; ^ &lt;set&gt;
&lt;bool&gt; = &lt;set&gt;.issubset(&lt;coll.&gt;)              # Or: &lt;set&gt; &lt;= &lt;set&gt;
&lt;bool&gt; = &lt;set&gt;.issuperset(&lt;coll.&gt;)            # Or: &lt;set&gt; &gt;= &lt;set&gt;</code></pre>
<pre><code class="language-python">&lt;set&gt;.remove(&lt;el&gt;)   # Throws error.
&lt;set&gt;.discard(&lt;el&gt;)  # Doesn't throw error.</code></pre>
<h3>Frozenset</h3>
<h4>Is hashable and can be used as a key in dictionary.</h4>
<pre><code class="language-python">&lt;frozenset&gt; = frozenset(&lt;collection&gt;)</code></pre>
<h2>Range</h2>
<pre><code class="language-python">range(to_exclusive)
range(from_inclusive, to_exclusive)
range(from_inclusive, to_exclusive, step_size)
range(from_inclusive, to_exclusive, -step_size)</code></pre>
<pre><code class="language-python">from_inclusive = &lt;range&gt;.start
to_exclusive   = &lt;range&gt;.stop</code></pre>
<h2>Enumerate</h2>
<pre><code class="language-python">for i, el in enumerate(&lt;collection&gt; [, i_start]):
    ...</code></pre>
<h2>Named Tuple</h2>
<pre><code class="language-python">&gt;&gt;&gt; Point = collections.namedtuple('Point', 'x y')
&gt;&gt;&gt; p = Point(1, y=2)
Point(x=1, y=2)
&gt;&gt;&gt; p[0]
1
&gt;&gt;&gt; p.x
1
&gt;&gt;&gt; getattr(p, 'y')
2
&gt;&gt;&gt; p._fields  # Or: Point._fields
('x', 'y')</code></pre>
<h2>Iterator</h2>
<pre><code class="language-python">&lt;iter&gt; = iter(&lt;collection&gt;)
&lt;iter&gt; = iter(&lt;function&gt;, to_exclusive)</code></pre>
<h4>Skips first element:</h4>
<pre><code class="language-python">next(&lt;iter&gt;)
for element in &lt;iter&gt;:
    ...</code></pre>
<h4>Reads input until it reaches an empty line:</h4>
<pre><code class="language-python">for line in iter(input, ''):
    ...</code></pre>
<h4>Same, but prints a message every time:</h4>
<pre><code class="language-python">from functools import partial
for line in iter(partial(input, 'Please enter value: '), ''):
    ...</code></pre>
<h2>Generator</h2>
<p><strong>Convenient way to implement the iterator protocol.</strong></p>
<pre><code class="language-python">def step(start, step_size):
    while True:
        yield start
        start += step_size</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; stepper = step(10, 2)
&gt;&gt;&gt; next(stepper), next(stepper), next(stepper)
(10, 12, 14)</code></pre>
<h2>Type</h2>
<pre><code class="language-python">&lt;type&gt; = type(&lt;el&gt;)  # &lt;class 'int'&gt; / &lt;class 'str'&gt; / ...</code></pre>
<pre><code class="language-python">from numbers import Number, Integral, Real, Rational, Complex
&lt;bool&gt; = isinstance(&lt;el&gt;, Number)</code></pre>
<pre><code class="language-python">&lt;bool&gt; = callable(&lt;el&gt;)</code></pre>
<h2>String</h2>
<pre><code class="language-python">&lt;str&gt;  = &lt;str&gt;.strip()           # Strips all whitespace characters.
&lt;str&gt;  = &lt;str&gt;.strip('&lt;chars&gt;')  # Strips all passed characters.</code></pre>
<pre><code class="language-python">&lt;list&gt; = &lt;str&gt;.split()                       # Splits on any whitespace character.
&lt;list&gt; = &lt;str&gt;.split(sep=None, maxsplit=-1)  # Splits on 'sep' str at most 'maxsplit' times.
&lt;str&gt;  = &lt;str&gt;.join(&lt;list&gt;)                  # Joins elements using string as separator.</code></pre>
<pre><code class="language-python">&lt;str&gt;  = &lt;str&gt;.replace(old_str, new_str)
&lt;bool&gt; = &lt;str&gt;.startswith(&lt;sub_str&gt;)      # Pass tuple of strings for multiple options.
&lt;bool&gt; = &lt;str&gt;.endswith(&lt;sub_str&gt;)        # Pass tuple of strings for multiple options.
&lt;int&gt;  = &lt;str&gt;.index(&lt;sub_str&gt;)           # Returns first index of a substring.
&lt;bool&gt; = &lt;str&gt;.isnumeric()                # True if str contains only numeric characters.
&lt;list&gt; = textwrap.wrap(&lt;str&gt;, width)      # Nicely breaks string into lines.</code></pre>
<h3>Char</h3>
<pre><code class="language-python">&lt;str&gt; = chr(&lt;int&gt;)  # Converts int to unicode char.
&lt;int&gt; = ord(&lt;str&gt;)  # Converts unicode char to int.</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; ord('0'), ord('9')
(48, 57)
&gt;&gt;&gt; ord('A'), ord('Z')
(65, 90)
&gt;&gt;&gt; ord('a'), ord('z')
(97, 122)</code></pre>
<h2>Regex</h2>
<pre><code class="language-python">import re
&lt;str&gt;   = re.sub(&lt;regex&gt;, new, text, count=0)  # Substitutes all occurrences.
&lt;list&gt;  = re.findall(&lt;regex&gt;, text)            # Returns all occurrences.
&lt;list&gt;  = re.split(&lt;regex&gt;, text, maxsplit=0)  # Use brackets in regex to keep the matches.
&lt;Match&gt; = re.search(&lt;regex&gt;, text)             # Searches for first occurrence of pattern.
&lt;Match&gt; = re.match(&lt;regex&gt;, text)              # Searches only at the beginning of the text.
&lt;iter&gt;  = re.finditer(&lt;regex&gt;, text)           # Returns all occurrences as match objects.</code></pre>
<ul>
<li><strong>Parameter <code>'flags=re.IGNORECASE'</code> can be used with all functions.</strong></li>
<li><strong>Parameter <code>'flags=re.DOTALL'</code> makes dot also accept newline.</strong>  </li>
<li><strong>Use <code>r'\1'</code> or <code>'\\\\1'</code> for backreference.</strong>  </li>
<li><strong>Use <code>'?'</code> to make operators non-greedy.</strong>   </li>
</ul>
<h3>Match Object</h3>
<pre><code class="language-python">&lt;str&gt;   = &lt;Match&gt;.group()   # Whole match.
&lt;str&gt;   = &lt;Match&gt;.group(1)  # Part in first bracket.
&lt;tuple&gt; = &lt;Match&gt;.groups()  # All bracketed parts.
&lt;int&gt;   = &lt;Match&gt;.start()   # Start index of a match.
&lt;int&gt;   = &lt;Match&gt;.end()     # Exclusive end index of a match.</code></pre>
<h3>Special Sequences</h3>
<p><strong>Use capital letter for negation.</strong></p>
<pre><code class="language-python">'\d' == '[0-9]'          # Digit
'\s' == '[ \t\n\r\f\v]'  # Whitespace
'\w' == '[a-zA-Z0-9_]'   # Alphanumeric</code></pre>
<h2>Format</h2>
<pre><code class="language-python">&lt;str&gt; = f'{&lt;el_1&gt;}, {&lt;el_2&gt;}'
&lt;str&gt; = '{}, {}'.format(&lt;el_1&gt;, &lt;el_2&gt;)</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; Person = namedtuple('Person', 'name height')
&gt;&gt;&gt; person = Person('Jean-Luc', 187)
&gt;&gt;&gt; f'{person.height:10}'
'       187'
&gt;&gt;&gt; '{p.height:10}'.format(p=person)
'       187'</code></pre>
<h3>General Options</h3>
<pre><code class="language-python">{&lt;el&gt;:&lt;10}       # '&lt;el&gt;      '
{&lt;el&gt;:&gt;10}       # '      &lt;el&gt;'
{&lt;el&gt;:^10}       # '   &lt;el&gt;   '
{&lt;el&gt;:-&gt;10}      # '------&lt;el&gt;'
{&lt;el&gt;:&gt;0}        # '&lt;el&gt;'</code></pre>
<h3>String Options</h3>
<p><strong><code>'!r'</code> calls object's repr() method, instead of format(), to get a string.</strong></p>
<pre><code class="language-python">{'abcde'!r:&lt;10}  # "'abcde'   "</code></pre>
<pre><code class="language-python">{'abcde':.3}     # 'abc'
{'abcde':10.3}   # 'abc       '</code></pre>
<h3>Number Options</h3>
<pre><code class="language-python">{1.23456:.3f}    # '1.235'
{1.23456:10.3f}  # '     1.235'</code></pre>
<pre><code class="language-python">{ 123456:10,}    # '   123,456'
{ 123456:10_}    # '   123_456'
{ 123456:+10}    # '   +123456'
{-123456:=10}    # '-   123456'
{ 123456: }      # ' 123456'
{-123456: }      # '-123456'</code></pre>
<pre><code class="language-python">{65:c}           # 'A'
{3:08b}          # '00000011' -&gt; Binary with leading zeros.
{3:0&lt;8b}         # '11000000' -&gt; Binary with trailing zeros.</code></pre>
<h4>Float presentation types:</h4>
<ul>
<li><strong><code>'f'</code> - Fixed point: <code>.&lt;precision&gt;f</code></strong></li>
<li><strong><code>'%'</code> - Percent: <code>.&lt;precision&gt;%</code></strong></li>
<li><strong><code>'e'</code> - Exponent</strong></li>
</ul>
<h4>Integer presentation types:</h4>
<ul>
<li><strong><code>'c'</code> - character</strong></li>
<li><strong><code>'b'</code> - binary</strong></li>
<li><strong><code>'x'</code> - hex</strong></li>
<li><strong><code>'X'</code> - HEX</strong></li>
</ul>
<h2>Numbers</h2>
<h3>Basic Functions</h3>
<pre><code class="language-python">&lt;num&gt;  = pow(&lt;num&gt;, &lt;num&gt;)  # Or: &lt;num&gt; ** &lt;num&gt;
&lt;real&gt; = abs(&lt;num&gt;)
&lt;real&gt; = round(&lt;real&gt; [, ndigits])</code></pre>
<h3>Constants</h3>
<pre><code class="language-python">from math import e, pi</code></pre>
<h3>Trigonometry</h3>
<pre><code class="language-python">from math import cos, acos, sin, asin, tan, atan, degrees, radians</code></pre>
<h3>Logarithm</h3>
<pre><code class="language-python">from math import log, log10, log2
&lt;float&gt; = log(&lt;real&gt; [, base])  # Base e, if not specified.</code></pre>
<h3>Infinity, nan</h3>
<pre><code class="language-python">from math import inf, nan, isinf, isnan</code></pre>
<h4>Or:</h4>
<pre><code class="language-python">float('inf'), float('nan')</code></pre>
<h3>Random</h3>
<pre><code class="language-python">from random import random, randint, choice, shuffle
&lt;float&gt; = random()
&lt;int&gt;   = randint(from_inclusive, to_inclusive)
&lt;el&gt;    = choice(&lt;list&gt;)
shuffle(&lt;list&gt;)</code></pre>
<h2>Datetime</h2>
<pre><code class="language-python">from datetime import datetime, strptime
now = datetime.now()
now.month                     # 3
now.strftime('%Y%m%d')        # '20180315'
now.strftime('%Y%m%d%H%M%S')  # '20180315002834'
&lt;datetime&gt; = strptime('2015-05-12 00:39', '%Y-%m-%d %H:%M')</code></pre>
<h2>Arguments</h2>
<p>*<em>`'</em>'` is the splat operator, that takes a list as input, and expands it into actual positional arguments in the function call.**</p>
<pre><code class="language-python">args   = (1, 2)
kwargs = {'x': 3, 'y': 4, 'z': 5}
func(*args, **kwargs)  </code></pre>
<h4>Is the same as:</h4>
<pre><code class="language-python">func(1, 2, x=3, y=4, z=5)</code></pre>
<h4>Splat operator can also be used in function declarations:</h4>
<pre><code class="language-python">def add(*a):
    return sum(a)</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; add(1, 2, 3)
6</code></pre>
<h4>And in few other places:</h4>
<pre><code class="language-python">&gt;&gt;&gt; a = (1, 2, 3)
&gt;&gt;&gt; [*a]
[1, 2, 3]</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; head, *body, tail = [1, 2, 3, 4]
&gt;&gt;&gt; body
[2, 3]</code></pre>
<h2>Inline</h2>
<h3>Lambda</h3>
<pre><code class="language-python">lambda: &lt;return_value&gt;
lambda &lt;argument_1&gt;, &lt;argument_2&gt;: &lt;return_value&gt;</code></pre>
<h3>Comprehension</h3>
<pre><code class="language-python">&lt;list&gt; = [i+1 for i in range(10)]         # [1, 2, ..., 10]
&lt;set&gt;  = {i for i in range(10) if i &gt; 5}  # {6, 7, 8, 9}
&lt;dict&gt; = {i: i*2 for i in range(10)}      # {0: 0, 1: 2, ..., 9: 18}
&lt;iter&gt; = (i+5 for i in range(10))         # (5, 6, ..., 14)</code></pre>
<pre><code class="language-python">out = [i+j for i in range(10) for j in range(10)]</code></pre>
<h4>Is the same as:</h4>
<pre><code class="language-python">out = []
for i in range(10):
    for j in range(10):
        out.append(i+j)</code></pre>
<h3>Map, Filter, Reduce</h3>
<pre><code class="language-python">from functools import reduce
&lt;iter&gt; = map(lambda x: x + 1, range(10))            # (1, 2, ..., 10)
&lt;iter&gt; = filter(lambda x: x &gt; 5, range(10))         # (6, 7, 8, 9)
&lt;int&gt;  = reduce(lambda out, x: out + x, range(10))  # 45</code></pre>
<h3>Any, All</h3>
<pre><code class="language-python">&lt;bool&gt; = any(&lt;collection&gt;)                  # False if empty.
&lt;bool&gt; = all(el[1] for el in &lt;collection&gt;)  # True if empty.</code></pre>
<h3>If - Else</h3>
<pre><code class="language-python">&lt;expression_if_true&gt; if &lt;condition&gt; else &lt;expression_if_false&gt;</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; [a if a else 'zero' for a in (0, 1, 0, 3)]
['zero', 1, 'zero', 3]</code></pre>
<h3>Namedtuple, Enum, Class</h3>
<pre><code class="language-python">from collections import namedtuple
Point     = namedtuple('Point', 'x y')
point     = Point(0, 0)</code></pre>
<pre><code class="language-python">from enum import Enum
Direction = Enum('Direction', 'n e s w')
Cutlery   = Enum('Cutlery', {'fork': 1, 'knife': 2, 'spoon': 3})</code></pre>
<pre><code class="language-python"># Warning: Objects will share the objects that are initialized in the dictionary!
Creature  = type('Creature', (), {'p': Point(0, 0), 'd': Direction.n})
creature  = Creature()</code></pre>
<h2>Closure</h2>
<p><strong>We have a closure in Python when:</strong></p>
<ul>
<li><strong>A nested function references a value of its enclosing function and then</strong> </li>
<li><strong>the enclosing function returns the nested function.</strong></li>
</ul>
<pre><code class="language-python">def get_multiplier(a):
    def out(b):
        return a * b
    return out</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; multiply_by_3 = get_multiplier(3)
&gt;&gt;&gt; multiply_by_3(10)
30</code></pre>
<ul>
<li><strong>If multiple nested functions within enclosing function reference the same value, that value gets shared.</strong></li>
<li><strong>To dynamicaly acces functions first free variable use <code>'&lt;function&gt;.__closure__[0].cell_contents'</code>.</strong></li>
</ul>
<h4>Or:</h4>
<pre><code class="language-python">from functools import partial
&lt;function&gt; = partial(&lt;function&gt;, &lt;argument_1&gt; [, &lt;argument_2&gt;, ...])</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; multiply_by_3 = partial(operator.mul, 3)
&gt;&gt;&gt; multiply_by_3(10)
30</code></pre>
<h3>Nonlocal</h3>
<p><strong>If variable is assigned to anywhere in the scope, it is regarded as a local variable, unless it is declared as global or nonlocal.</strong></p>
<pre><code class="language-python">def get_counter():
    a = 0
    def out():
        nonlocal a
        a += 1
        return a
    return out</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; counter = get_counter()
&gt;&gt;&gt; counter(), counter(), counter()
(1, 2, 3)</code></pre>
<h2>Decorator</h2>
<p><strong>A decorator takes a function, adds some functionality and returns it.</strong></p>
<pre><code class="language-python">@decorator_name
def function_that_gets_passed_to_decorator():
    ...</code></pre>
<h3>Debugger Example</h3>
<p><strong>Decorator that prints function's name every time it gets called.</strong></p>
<pre><code class="language-python">from functools import wraps

def debug(func):
    @wraps(func)
    def out(*args, **kwargs):
        print(func.__name__)
        return func(*args, **kwargs)
    return out

@debug
def add(x, y):
    return x + y</code></pre>
<ul>
<li><strong>Wraps is a helper decorator that copies metadata of function add() to function out().</strong></li>
<li><strong>Without it <code>'add.__name__'</code> would return <code>'out'</code>.</strong></li>
</ul>
<h3>LRU Cache</h3>
<p><strong>Decorator that caches function's return values. All function's arguments must be hashable.</strong></p>
<pre><code class="language-python">from functools import lru_cache

@lru_cache(maxsize=None)
def fib(n):
    return n if n &lt; 2 else fib(n-1) + fib(n-2)</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; [fib(n) for n in range(10)]
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
&gt;&gt;&gt; fib.cache_info()
CacheInfo(hits=16, misses=10, maxsize=None, currsize=10)</code></pre>
<h3>Parametrized Decorator</h3>
<pre><code class="language-python">from functools import wraps

def debug(print_result=False):
    def decorator(func):
        @wraps(func)
        def out(*args, **kwargs):
            result = func(*args, **kwargs)
            print(func.__name__, result if print_result else '')
            return result
        return out
    return decorator

@debug(print_result=True)
def add(x, y):
    return x + y</code></pre>
<h2>Class</h2>
<pre><code class="language-python">class &lt;name&gt;:
    def __init__(self, a):
        self.a = a
    def __repr__(self):
        class_name = type(self).__name__
        return f'{class_name}({self.a!r})'
    def __str__(self):
        return str(self.a)

    @classmethod
    def get_class_name(cls):
        return cls.__name__</code></pre>
<h3>Constructor Overloading</h3>
<pre><code class="language-python">class &lt;name&gt;:
    def __init__(self, a=None):
        self.a = a</code></pre>
<h3>Inheritance</h3>
<pre><code class="language-python">class Person:
    def __init__(self, name, age):
        self.name = name
        self.age  = age

class Employee(Person):
    def __init__(self, name, age, staff_num):
        super().__init__(name, age)
        self.staff_num = staff_num</code></pre>
<h3>Comparable</h3>
<ul>
<li><strong>If eq() method is not overridden, it returns <code>'id(self) == id(other)'</code>, which is the same as <code>'self is other'</code>.</strong></li>
<li><strong>That means all objects compare not equal by default.</strong></li>
</ul>
<pre><code class="language-python">class MyComparable:
    def __init__(self, a):
        self.a = a
    def __eq__(self, other):
        if isinstance(other, type(self)):
            return self.a == other.a
        return False </code></pre>
<h3>Hashable</h3>
<ul>
<li><strong>Hashable object needs both hash() and eq() methods and it's hash value should never change.</strong></li>
<li><strong>Hashable objects that compare equal must have the same hash value, meaning default hash() that returns <code>'id(self)'</code> will not do.</strong></li>
<li><strong>That is why Python automatically makes classes unhashable if you only implement eq().</strong></li>
</ul>
<pre><code class="language-python">class MyHashable:
    def __init__(self, a):
        self.__a = copy.deepcopy(a)
    @property
    def a(self):
        return self.__a
    def __eq__(self, other):
        if isinstance(other, type(self)):
            return self.a == other.a
        return False 
    def __hash__(self):
        return hash(self.a)</code></pre>
<h3>Sequence</h3>
<ul>
<li><strong>Methods do not depend on each other, so they can be skipped if not needed.</strong></li>
<li><strong>Any object with defined getitem() is considered iterable, even if it lacks iter().</strong><pre><code class="language-python">class MySequence:
  def __init__(self, a):
      self.a = a
  def __len__(self):
      return len(self.a)
  def __getitem__(self, i):
      return self.a[i]
  def __iter__(self):
      for el in self.a:
          yield el</code></pre>
</li>
</ul>
<h3>Callable</h3>
<pre><code class="language-python">class Counter:
    def __init__(self):
        self.a = 0
    def __call__(self):
        self.a += 1
        return self.a</code></pre>
<h3>Copy</h3>
<pre><code class="language-python">from copy import copy, deepcopy
&lt;object&gt; = copy(&lt;object&gt;)
&lt;object&gt; = deepcopy(&lt;object&gt;)</code></pre>
<h2>Enum</h2>
<pre><code class="language-python">from enum import Enum, auto

class &lt;enum_name&gt;(Enum):
    &lt;member_name_1&gt; = &lt;value_1&gt;  
    &lt;member_name_2&gt; = &lt;value_2_a&gt;, &lt;value_2_b&gt;
    &lt;member_name_3&gt; = auto()

    @classmethod
    def get_member_names(cls):
        return [a.name for a in cls.__members__.values()]</code></pre>
<pre><code class="language-python">&lt;member&gt; = &lt;enum&gt;.&lt;member_name&gt;
&lt;member&gt; = &lt;enum&gt;['&lt;member_name&gt;']
&lt;member&gt; = &lt;enum&gt;(&lt;value&gt;)
name     = &lt;member&gt;.name
value    = &lt;member&gt;.value</code></pre>
<pre><code class="language-python">list_of_members = list(&lt;enum&gt;)
member_names    = [a.name for a in &lt;enum&gt;]
member_values   = [a.value for a in &lt;enum&gt;]
random_member   = random.choice(list(&lt;enum&gt;))</code></pre>
<h3>Inline</h3>
<pre><code class="language-python">Cutlery = Enum('Cutlery', ['fork', 'knife', 'spoon'])
Cutlery = Enum('Cutlery', 'fork knife spoon')
Cutlery = Enum('Cutlery', {'fork': 1, 'knife': 2, 'spoon': 3})</code></pre>
<h4>Functions can not be values, so they must be wrapped:</h4>
<pre><code class="language-python">from functools import partial
LogicOp = Enum('LogicOp', {'AND': partial(lambda l, r: l and r),
                           'OR' : partial(lambda l, r: l or r)})</code></pre>
<h2>Exceptions</h2>
<pre><code class="language-python">while True:
    try:
        x = int(input('Please enter a number: '))
    except ValueError:
        print('&lt;img class="smile normal" src="media/b8e47026.omg.png" data-original-source="http://www.warriordudimanche.net/plugins/WDD_replace/img/normal/omg.png"/&gt;ps!  That was no valid number.  Try again...')
    else:
        print('Thank you.')
        break</code></pre>
<h4>Raising exception:</h4>
<pre><code class="language-python">raise ValueError('A very specific message!')</code></pre>
<h3>Finally</h3>
<pre><code class="language-python">&gt;&gt;&gt; try:
...     raise KeyboardInterrupt
... finally:
...     print('Goodbye, world!')
Goodbye, world!
Traceback (most recent call last):
  File "&lt;stdin&gt;", line 2, in &lt;module&gt;
KeyboardInterrupt</code></pre>
<h2>System</h2>
<h3>Command Line Arguments</h3>
<pre><code class="language-python">import sys
script_name = sys.argv[0]
arguments   = sys.argv[1:]</code></pre>
<h3>Print Function</h3>
<pre><code class="language-python">print(&lt;el_1&gt;, ..., sep=' ', end='\n', file=sys.stdout, flush=False)</code></pre>
<ul>
<li><strong>Use <code>'file=sys.stderr'</code> for errors.</strong></li>
</ul>
<h4>Pretty print:</h4>
<pre><code class="language-python">&gt;&gt;&gt; from pprint import pprint
&gt;&gt;&gt; pprint(dir())
['__annotations__',
 '__builtins__',
 '__doc__', ...]</code></pre>
<h3>Input Function</h3>
<ul>
<li><strong>Reads a line from user input or pipe if present.</strong></li>
<li><strong>The trailing newline gets stripped.</strong></li>
<li><strong>The prompt string is printed to standard output before reading input.</strong></li>
</ul>
<pre><code class="language-python">&lt;str&gt; = input(prompt=None)</code></pre>
<h4>Prints lines until EOF:</h4>
<pre><code class="language-python">while True:
    try:
        print(input())
    except EOFError:
        break</code></pre>
<h3>Open Function</h3>
<p><strong>Opens file and returns a corresponding file object.</strong></p>
<pre><code class="language-python">&lt;file&gt; = open(&lt;path&gt;, mode='r', encoding=None)</code></pre>
<h4>Modes:</h4>
<ul>
<li><strong><code>'r'</code>  - Read (default).</strong></li>
<li><strong><code>'w'</code>  - Write (truncate).</strong></li>
<li><strong><code>'x'</code>  - Write or fail if the file already exists.</strong></li>
<li><strong><code>'a'</code>  - Append.</strong></li>
<li><strong><code>'w+'</code> - Read and write (truncate).</strong></li>
<li><strong><code>'r+'</code> - Read and write from the beginning.</strong></li>
<li><strong><code>'a+'</code> - Read and write from the end.</strong></li>
<li><strong><code>'b'</code>  - Binary mode.</strong></li>
<li><strong><code>'t'</code>  - Text mode (default).</strong></li>
</ul>
<h4>Read Text from File:</h4>
<pre><code class="language-python">def read_file(filename):
    with open(filename, encoding='utf-8') as file:
        return file.readlines()</code></pre>
<h4>Write Text to File:</h4>
<pre><code class="language-python">def write_to_file(filename, text):
    with open(filename, 'w', encoding='utf-8') as file:
        file.write(text)</code></pre>
<h3>Path</h3>
<pre><code class="language-python">from os import path, listdir
&lt;bool&gt; = path.exists(&lt;path&gt;)
&lt;bool&gt; = path.isfile(&lt;path&gt;)
&lt;bool&gt; = path.isdir(&lt;path&gt;)
&lt;list&gt; = listdir(&lt;path&gt;)</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; from glob import glob
&gt;&gt;&gt; glob('../*.gif')
['1.gif', 'card.gif']</code></pre>
<h3>Command Execution</h3>
<pre><code class="language-python">import os
&lt;str&gt; = os.popen(&lt;command&gt;).read()</code></pre>
<h4>Or:</h4>
<pre><code class="language-python">&gt;&gt;&gt; import subprocess
&gt;&gt;&gt; a = subprocess.run(['ls', '-a'], stdout=subprocess.PIPE)
&gt;&gt;&gt; a.stdout
b'.\n..\nfile1.txt\nfile2.txt\n'
&gt;&gt;&gt; a.returncode
0</code></pre>
<h3>Recursion Limit</h3>
<pre><code class="language-python">&gt;&gt;&gt; import sys
&gt;&gt;&gt; sys.getrecursionlimit()
1000
&gt;&gt;&gt; sys.setrecursionlimit(5000)</code></pre>
<h2>JSON</h2>
<pre><code class="language-python">import json
&lt;str&gt;    = json.dumps(&lt;object&gt;, ensure_ascii=True, indent=None)
&lt;object&gt; = json.loads(&lt;str&gt;)</code></pre>
<h4>To preserve order:</h4>
<pre><code class="language-python">from collections import OrderedDict
&lt;object&gt; = json.loads(&lt;str&gt;, object_pairs_hook=OrderedDict)</code></pre>
<h3>Read File</h3>
<pre><code class="language-python">def read_json_file(filename):
    with open(filename, encoding='utf-8') as file:
        return json.load(file)</code></pre>
<h3>Write to File</h3>
<pre><code class="language-python">def write_to_json_file(filename, an_object):
    with open(filename, 'w', encoding='utf-8') as file:
        json.dump(an_object, file, ensure_ascii=False, indent=2)</code></pre>
<h2>Pickle</h2>
<pre><code class="language-python">import pickle
&lt;bytes&gt;  = pickle.dumps(&lt;object&gt;)
&lt;object&gt; = pickle.loads(&lt;bytes&gt;)</code></pre>
<h3>Read Object from File</h3>
<pre><code class="language-python">def read_pickle_file(filename):
    with open(filename, 'rb') as file:
        return pickle.load(file)</code></pre>
<h3>Write Object to File</h3>
<pre><code class="language-python">def write_to_pickle_file(filename, an_object):
    with open(filename, 'wb') as file:
        pickle.dump(an_object, file)</code></pre>
<h2>SQLite</h2>
<pre><code class="language-python">import sqlite3
db = sqlite3.connect(&lt;filename&gt;)
...
db.close()</code></pre>
<h3>Read</h3>
<pre><code class="language-python">cursor = db.execute(&lt;query&gt;)
if cursor:
    &lt;tuple&gt; = cursor.fetchone()  # First row.
    &lt;list&gt;  = cursor.fetchall()  # Remaining rows.</code></pre>
<h3>Write</h3>
<pre><code class="language-python">db.execute(&lt;query&gt;)
db.commit()</code></pre>
<h2>Bytes</h2>
<p><strong>Bytes object is immutable sequence of single bytes. Mutable version is called bytearray.</strong></p>
<pre><code class="language-python">&lt;bytes&gt; = b'&lt;str&gt;'
&lt;int&gt;   = &lt;bytes&gt;[&lt;index&gt;]
&lt;bytes&gt; = &lt;bytes&gt;[&lt;slice&gt;]
&lt;bytes&gt; = b''.join(&lt;coll_of_bytes&gt;)</code></pre>
<h3>Encode</h3>
<pre><code class="language-python">&lt;bytes&gt; = &lt;str&gt;.encode(encoding='utf-8')
&lt;bytes&gt; = &lt;int&gt;.to_bytes(length, byteorder='big|little', signed=False)
&lt;bytes&gt; = bytes.fromhex(&lt;hex&gt;)</code></pre>
<h3>Decode</h3>
<pre><code class="language-python">&lt;str&gt;   = &lt;bytes&gt;.decode('utf-8') 
&lt;int&gt;   = int.from_bytes(&lt;bytes&gt;, byteorder='big|little', signed=False)
&lt;hex&gt;   = &lt;bytes&gt;.hex()</code></pre>
<h3>Read Bytes from File</h3>
<pre><code class="language-python">def read_bytes(filename):
    with open(filename, 'rb') as file:
        return file.read()</code></pre>
<h3>Write Bytes to File</h3>
<pre><code class="language-python">def write_bytes(filename, bytes_obj):
    with open(filename, 'wb') as file:
        file.write(bytes_obj)</code></pre>
<h2>Struct</h2>
<ul>
<li><strong>Module that performs conversions between Python values and a C struct, represented as a Python bytes object.</strong></li>
<li><strong>Machine’s native type sizes and byte order are used by default.</strong></li>
</ul>
<pre><code class="language-python">from struct import pack, unpack, calcsize
&lt;bytes&gt; = pack('&lt;format&gt;', &lt;value_1&gt; [, &lt;value_2&gt;, ...])
&lt;tuple&gt; = unpack('&lt;format&gt;', &lt;bytes&gt;)</code></pre>
<h3>Example</h3>
<pre><code class="language-python">&gt;&gt;&gt; pack('&gt;hhl', 1, 2, 3)
b'\x00\x01\x00\x02\x00\x00\x00\x03'
&gt;&gt;&gt; unpack('&gt;hhl', b'\x00\x01\x00\x02\x00\x00\x00\x03')
(1, 2, 3)
&gt;&gt;&gt; calcsize('&gt;hhl')
8</code></pre>
<h3>Format</h3>
<h4>For standard sizes start format string with:</h4>
<ul>
<li><strong><code>'='</code> - native byte order</strong></li>
<li><strong><code>'&lt;'</code> - little-endian</strong></li>
<li><strong><code>'&gt;'</code> - big-endian</strong></li>
</ul>
<h4>Use capital letter for unsigned type. Standard size in brackets:</h4>
<ul>
<li><strong><code>'x'</code> - pad byte</strong></li>
<li><strong><code>'c'</code> - char (1)</strong></li>
<li><strong><code>'h'</code> - short (2)</strong></li>
<li><strong><code>'i'</code> - int (4)</strong></li>
<li><strong><code>'l'</code> - long (4)</strong></li>
<li><strong><code>'q'</code> - long long (8)</strong></li>
<li><strong><code>'f'</code> - float (4)</strong></li>
<li><strong><code>'d'</code> - double (8)</strong></li>
</ul>
<h2>Array</h2>
<p><strong>List that can only hold elements of predefined type. Available types are listed above.</strong></p>
<pre><code class="language-python">from array import array
&lt;array&gt; = array(&lt;typecode&gt; [, &lt;collection&gt;])</code></pre>
<h2>Deque</h2>
<p><strong>A thread-safe list with efficient appends and pops from either side. Pronounced “deck”.</strong></p>
<pre><code class="language-python">from collections import deque
&lt;deque&gt; = deque(&lt;collection&gt;, maxlen=None)</code></pre>
<pre><code class="language-python">&lt;deque&gt;.appendleft(&lt;el&gt;)
&lt;deque&gt;.extendleft(&lt;collection&gt;)  # Collection gets reversed.
&lt;el&gt; = &lt;deque&gt;.popleft()
&lt;deque&gt;.rotate(n=1)               # Rotates elements to the right.</code></pre>
<h2>Threading</h2>
<pre><code class="language-python">from threading import Thread, RLock</code></pre>
<h3>Thread</h3>
<pre><code class="language-python">thread = Thread(target=&lt;function&gt;, args=(&lt;first_arg&gt;, ))
thread.start()
...
thread.join()</code></pre>
<h3>Lock</h3>
<pre><code class="language-python">lock = RLock()
lock.acquire()
...
lock.release()</code></pre>
<h2>Hashlib</h2>
<pre><code class="language-python">&gt;&gt;&gt; import hashlib
&gt;&gt;&gt; hashlib.md5(&lt;str&gt;.encode()).hexdigest()
'33d0eba106da4d3ebca17fcd3f4c3d77'</code></pre>
<h2>Itertools</h2>
<ul>
<li><strong>Every function returns an iterator and can accept any collection and/or iterator.</strong></li>
<li><strong>If you want to print the iterator, you need to pass it to the list() function!</strong></li>
</ul>
<pre><code class="language-python">from itertools import *</code></pre>
<h3>Combinatoric iterators</h3>
<pre><code class="language-python">&gt;&gt;&gt; combinations('abc', 2)
[('a', 'b'), ('a', 'c'), ('b', 'c')]

&gt;&gt;&gt; combinations_with_replacement('abc', 2)
[('a', 'a'), ('a', 'b'), ('a', 'c'), 
 ('b', 'b'), ('b', 'c'), 
 ('c', 'c')]

&gt;&gt;&gt; permutations('abc', 2)
[('a', 'b'), ('a', 'c'), 
 ('b', 'a'), ('b', 'c'), 
 ('c', 'a'), ('c', 'b')]

&gt;&gt;&gt; product('ab', [1, 2])
[('a', 1), ('a', 2), 
 ('b', 1), ('b', 2)]

&gt;&gt;&gt; product([0, 1], repeat=3)
[(0, 0, 0), (0, 0, 1), (0, 1, 0), (0, 1, 1), 
 (1, 0, 0), (1, 0, 1), (1, 1, 0), (1, 1, 1)]</code></pre>
<h3>Infinite iterators</h3>
<pre><code class="language-python">&gt;&gt;&gt; i = count(5, 2)
&gt;&gt;&gt; next(i), next(i), next(i)
(5, 7, 9)

&gt;&gt;&gt; a = cycle('abc')
&gt;&gt;&gt; [next(a) for _ in range(10)]
['a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a']

&gt;&gt;&gt; repeat(10, 3)
[10, 10, 10]</code></pre>
<h3>Iterators</h3>
<pre><code class="language-python">&gt;&gt;&gt; chain([1, 2], range(3, 5))
[1, 2, 3, 4]

&gt;&gt;&gt; compress('abc', [True, 0, 1])
['a', 'c']

&gt;&gt;&gt; # islice(&lt;collection&gt;, from_inclusive, to_exclusive) 
&gt;&gt;&gt; islice([1, 2, 3], 1, None)
[2, 3]

&gt;&gt;&gt; people = [{'id': 1, 'name': 'Bob'}, 
              {'id': 2, 'name': 'Bob'}, 
              {'id': 3, 'name': 'Peter'}]
&gt;&gt;&gt; groups = groupby(people, key=lambda a: a['name'])
&gt;&gt;&gt; {name: list(group) for name, group in groups}
{'Bob':   [{'id': 1, 'name': 'Bob'}, 
           {'id': 2, 'name': 'Bob'}], 
 'Peter': [{'id': 3, 'name': 'Peter'}]}</code></pre>
<h2>Introspection and Metaprograming</h2>
<p><strong>Inspecting code at runtime and code that generates code. You can:</strong></p>
<ul>
<li><strong>Look at the attributes</strong></li>
<li><strong>Set new attributes</strong></li>
<li><strong>Create functions dynamically</strong></li>
<li><strong>Traverse the parent classes</strong></li>
<li><strong>Change values in the class</strong></li>
</ul>
<h3>Variables</h3>
<pre><code class="language-python">&lt;list&gt; = dir()      # Names of in-scope variables.
&lt;dict&gt; = locals()   # Dict of local variables. Also vars().
&lt;dict&gt; = globals()  # Dict of global variables.</code></pre>
<h3>Attributes</h3>
<pre><code class="language-python">class Z:
    def __init__(self):
        self.a = 'abcde'
        self.b = 12345</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; z = Z()

&gt;&gt;&gt; vars(z)
{'a': 'abcde', 'b': 12345}

&gt;&gt;&gt; getattr(z, 'a')
'abcde'

&gt;&gt;&gt; hasattr(z, 'c')
False

&gt;&gt;&gt; setattr(z, 'c', 10)</code></pre>
<h3>Parameters</h3>
<pre><code class="language-python">from inspect import signature
sig          = signature(&lt;function&gt;)
no_of_params = len(sig.parameters)
param_names  = list(sig.parameters.keys())</code></pre>
<h3>Type</h3>
<p><strong>Type is the root class. If only passed the object it returns it's type. Otherwise it creates a new class (and not the instance!).</strong></p>
<pre><code class="language-python">type(&lt;class_name&gt;, &lt;parents_tuple&gt;, &lt;attributes_dict&gt;)</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; Z = type('Z', (), {'a': 'abcde', 'b': 12345})
&gt;&gt;&gt; z = Z()</code></pre>
<h3>Meta Class</h3>
<p><strong>Class that creates class.</strong></p>
<pre><code class="language-python">def my_meta_class(name, parents, attrs):
    attrs['a'] = 'abcde'
    return type(name, parents, attrs)</code></pre>
<h4>Or:</h4>
<pre><code class="language-python">class MyMetaClass(type):
    def __new__(cls, name, parents, attrs):
        attrs['a'] = 'abcde'
        return type.__new__(cls, name, parents, attrs)</code></pre>
<h3>Metaclass Attribute</h3>
<p><strong>When class is created it checks if it has metaclass defined. If not, it recursively checks if any of his parents has it defined and eventually comes to type.</strong></p>
<pre><code class="language-python">class MyClass(metaclass=MyMetaClass):
    def __init__(self):
        self.b = 12345</code></pre>
<h2>Operator</h2>
<pre><code class="language-python">from operator import add, sub, mul, truediv, floordiv, mod, pow, neg, abs, \
                     eq, ne, lt, le, gt, ge, \
                     not_, and_, or_, \
                     itemgetter, attrgetter, methodcaller</code></pre>
<pre><code class="language-python">import operator as op
product_of_elems = functools.reduce(op.mul, &lt;list&gt;)
sorted_by_second = sorted(&lt;list&gt;, key=op.itemgetter(1))
sorted_by_both   = sorted(&lt;list&gt;, key=op.itemgetter(1, 0))
LogicOp          = enum.Enum('LogicOp', {'AND': op.and_, 'OR' : op.or_})
last_el          = op.methodcaller('pop')(&lt;list&gt;)</code></pre>
<h2>Eval</h2>
<h3>Basic</h3>
<pre><code class="language-python">&gt;&gt;&gt; from ast import literal_eval
&gt;&gt;&gt; literal_eval('1 + 2')
3
&gt;&gt;&gt; literal_eval('[1, 2, 3]')
[1, 2, 3]
&gt;&gt;&gt; ast.literal_eval('abs(1)')
ValueError: malformed node or string</code></pre>
<h3>Using Abstract Syntax Trees</h3>
<pre><code class="language-python">import ast
from ast import Num, BinOp, UnaryOp
import operator as op

legal_operators = {ast.Add:    op.add, 
                   ast.Sub:    op.sub, 
                   ast.Mult:   op.mul,
                   ast.Div:    op.truediv, 
                   ast.Pow:    op.pow, 
                   ast.BitXor: op.xor,
                   ast.USub:   op.neg}

def evaluate(expression):
    root = ast.parse(expression, mode='eval')
    return eval_node(root.body)

def eval_node(node):
    node_type = type(node)
    if node_type == Num:
        return node.n
    if node_type not in [BinOp, UnaryOp]:
        raise TypeError(node)
    operator_type = type(node.op)
    if operator_type not in legal_operators:
        raise TypeError(f'Illegal operator {node.op}')
    operator = legal_operators[operator_type]
    if node_type == BinOp:
        left, right = eval_node(node.left), eval_node(node.right)
        return operator(left, right)
    elif node_type == UnaryOp:
        operand = eval_node(node.operand)
        return operator(operand)</code></pre>
<pre><code class="language-python">&gt;&gt;&gt; evaluate('2 ^ 6')
4
&gt;&gt;&gt; evaluate('2 ** 6')
64
&gt;&gt;&gt; evaluate('1 + 2 * 3 ** (4 ^ 5) / (6 + -7)')
-5.0</code></pre>
<h2>Coroutine</h2>
<ul>
<li><strong>Similar to Generator, but Generator pulls data through the pipe with iteration, while Coroutine pushes data into the pipeline with send().</strong>  </li>
<li><strong>Coroutines provide more powerful data routing possibilities than iterators.</strong>  </li>
<li><strong>If you built a collection of simple data processing components, you can glue them together into complex arrangements of pipes, branches, merging, etc.</strong>  </li>
</ul>
<h3>Helper Decorator</h3>
<ul>
<li><strong>All coroutines must be "primed" by first calling next().</strong>  </li>
<li><strong>Remembering to call next() is easy to forget.</strong>  </li>
<li><strong>Solved by wrapping coroutines with a decorator:</strong>  </li>
</ul>
<pre><code class="language-python">def coroutine(func):
    def out(*args, **kwargs):
        cr = func(*args, **kwargs)
        next(cr)
        return cr
    return out</code></pre>
<h3>Pipeline Example</h3>
<pre><code class="language-python">def reader(target):
    for i in range(10):
        target.send(i)
    target.close()

@coroutine
def adder(target):
    while True:
        item = (yield)
        target.send(item + 100)

@coroutine
def printer():
    while True:
        item = (yield)
        print(item)

reader(adder(printer()))  # 100, 101, ..., 109</code></pre>
<p><br><br></p>
<h1>Libraries</h1>
<h2>Progress Bar</h2>
<pre><code class="language-python"># $ pip3 install tqdm
from tqdm import tqdm
from time import sleep
for i in tqdm([1, 2, 3]):
    sleep(0.2)
for i in tqdm(range(100)):
    sleep(0.02)</code></pre>
<h2>Plot</h2>
<pre><code class="language-python"># $ pip3 install matplotlib
from matplotlib import pyplot
pyplot.plot(&lt;data_1&gt; [, &lt;data_2&gt;, ...])
pyplot.savefig(&lt;filename&gt;, transparent=True)
pyplot.show()</code></pre>
<h2>Argparse</h2>
<pre><code class="language-python">from argparse import ArgumentParser
desc   = 'calculate X to the power of Y'
parser = ArgumentParser(description=desc)
group  = parser.add_mutually_exclusive_group()
group.add_argument('-v', '--verbose', action='store_true')
group.add_argument('-q', '--quiet',   action='store_true')
parser.add_argument('x', type=int, help='the base')
parser.add_argument('y', type=int, help='the exponent')
args   = parser.parse_args()
answer = args.x ** args.y

if args.quiet:
    print(answer)
elif args.verbose:
    print(f'{args.x} to the power {args.y} equals {answer}')
else:
    print(f'{args.x}^{args.y} == {answer}')</code></pre>
<h2>Table</h2>
<h4>Prints CSV file as ASCII table:</h4>
<pre><code class="language-python"># $ pip3 install tabulate
import csv
from tabulate import tabulate
with open(&lt;filename&gt;, encoding='utf-8') as file:
    lines   = csv.reader(file, delimiter=';')
    headers = [header.title() for header in next(lines)]
    table   = tabulate(lines, headers)
    print(table)</code></pre>
<h2>Curses</h2>
<pre><code class="language-python"># $ pip3 install curses
from curses import wrapper

def main():
    wrapper(draw)

def draw(screen):
    screen.clear()
    screen.addstr(0, 0, 'Press ESC to quit.')
    while screen.getch() != 27:
        pass

def get_border(screen):
    from collections import namedtuple
    P = namedtuple('P', 'x y')
    height, width = screen.getmaxyx()
    return P(width - 1, height - 1)</code></pre>
<h2>Image</h2>
<h4>Creates PNG image of greyscale gradient:</h4>
<pre><code class="language-python"># $ pip3 install pillow
from PIL import Image
width  = 100
height = 100
size   = width * height
pixels = [255 * i/size for i in range(size)]

img = Image.new('L', (width, height), 'white')
img.putdata(pixels)
img.save('test.png')</code></pre>
<h3>Modes</h3>
<ul>
<li><strong><code>'1'</code> - 1-bit pixels, black and white, stored with one pixel per byte.</strong></li>
<li><strong><code>'L'</code> - 8-bit pixels, greyscale.</strong></li>
<li><strong><code>'RGB'</code> - 3x8-bit pixels, true color.</strong></li>
<li><strong><code>'RGBA'</code> - 4x8-bit pixels, true color with transparency mask.</strong></li>
<li><strong><code>'HSV'</code> - 3x8-bit pixels, Hue, Saturation, Value color space.</strong></li>
</ul>
<h2>Audio</h2>
<h4>Saves a list of floats with values between -1 and 1 to a WAV file:</h4>
<pre><code class="language-python">import wave, struct
samples = [struct.pack('&lt;h', int(a * 30000)) for a in &lt;list&gt;]
wf = wave.open('test.wav', 'wb')
wf.setnchannels(1)
wf.setsampwidth(2)
wf.setframerate(44100)
wf.writeframes(b''.join(samples))
wf.close()</code></pre>
<h3>Plays Popcorn</h3>
<pre><code class="language-python"># pip3 install simpleaudio
import simpleaudio, math, struct
from itertools import chain, repeat
F  = 44100
S1 = '71♪,69,,71♪,66,,62♪,66,,59♪,,,'
S2 = '71♪,73,,74♪,73,,74,,71,,73♪,71,,73,,69,,71♪,69,,71,,67,,71♪,,,'
get_pause = lambda seconds: repeat(0, int(seconds * F))
sin_f     = lambda i, hz: math.sin(i * 2 * math.pi * hz / F)
get_wave  = lambda hz, seconds: (sin_f(i, hz) for i in range(int(seconds * F)))
get_hz    = lambda n: 8.176 * 2 ** (int(n) / 12)
parse_n   = lambda note: (get_hz(note[:2]), 0.25 if len(note) &gt; 2 else 0.125)
get_note  = lambda note: get_wave(*parse_n(note)) if note else get_pause(0.125)
samples_f = chain.from_iterable(get_note(n) for n in f'{S1}{S1}{S2}'.split(','))
samples_b = b''.join(struct.pack('&lt;h', int(a * 30000)) for a in samples_f)
simpleaudio.play_buffer(samples_b, 1, 2, F)</code></pre>
<h2>Url</h2>
<pre><code class="language-python">from urllib.parse import quote, quote_plus, unquote, unquote_plus</code></pre>
<h3>Encode</h3>
<pre><code class="language-python">&gt;&gt;&gt; quote("Can't be in URL!")
'Can%27t%20be%20in%20URL%21'
&gt;&gt;&gt; quote_plus("Can't be in URL!")
'Can%27t+be+in+URL%21'</code></pre>
<h3>Decode</h3>
<pre><code class="language-python">&gt;&gt;&gt; unquote('Can%27t+be+in+URL%21')
"Can't+be+in+URL!"
&gt;&gt;&gt; unquote_plus('Can%27t+be+in+URL%21')
"Can't be in URL!"</code></pre>
<h2>Scraping</h2>
<pre><code class="language-python"># $ pip3 install requests beautifulsoup4
&gt;&gt;&gt; import requests
&gt;&gt;&gt; from bs4 import BeautifulSoup
&gt;&gt;&gt; url   = 'https://en.wikipedia.org/wiki/Python_(programming_language)'
&gt;&gt;&gt; page  = requests.get(url)
&gt;&gt;&gt; doc   = BeautifulSoup(page.text, 'html.parser')
&gt;&gt;&gt; table = doc.find('table', class_='infobox vevent')
&gt;&gt;&gt; rows  = table.find_all('tr')
&gt;&gt;&gt; link  = rows[11].find('a')['href']
&gt;&gt;&gt; ver   = rows[6].find('div').text.split()[0]
&gt;&gt;&gt; link, ver
('https://www.python.org/', '3.7.2')</code></pre>
<h2>Web</h2>
<pre><code class="language-python"># $ pip3 install bottle
from bottle import run, route, post, template, request, response
import json</code></pre>
<h3>Run</h3>
<pre><code class="language-python">run(host='localhost', port=8080)
run(host='0.0.0.0', port=80, server='cherrypy')</code></pre>
<h3>Static Request</h3>
<pre><code class="language-python">@route('/img/&lt;image&gt;')
def send_image(image):
    return static_file(image, 'images/', mimetype='image/png')</code></pre>
<h3>Dynamic Request</h3>
<pre><code class="language-python">@route('/&lt;sport&gt;')
def send_page(sport):
    return template('&lt;h1&gt;{{title}}&lt;/h1&gt;', title=sport)</code></pre>
<h3>REST Request</h3>
<pre><code class="language-python">@post('/odds/&lt;sport&gt;')
def odds_handler(sport):
    team = request.forms.get('team')
    home_odds, away_odds = 2.44, 3.29
    response.headers['Content-Type'] = 'application/json'
    response.headers['Cache-Control'] = 'no-cache'
    return json.dumps([team, home_odds, away_odds])</code></pre>
<h4>Test:</h4>
<pre><code class="language-python"># $ pip3 install requests
&gt;&gt;&gt; import requests
&gt;&gt;&gt; url = 'http://localhost:8080/odds/football'
&gt;&gt;&gt; data = {'team': 'arsenal f.c.'}
&gt;&gt;&gt; response = requests.post(url, data=data)
&gt;&gt;&gt; response.json()
['arsenal f.c.', 2.44, 3.29]</code></pre>
<h2>Profile</h2>
<h3>Basic</h3>
<pre><code class="language-python">from time import time
start_time = time()  # Seconds since Epoch.
...
duration = time() - start_time</code></pre>
<h3>High Performance</h3>
<pre><code class="language-python">from time import perf_counter as pc
start_time = pc()    # Seconds since restart.
...
duration = pc() - start_time</code></pre>
<h3>Timing a Snippet</h3>
<pre><code class="language-python">from timeit import timeit
timeit('"-".join(str(a) for a in range(100))', 
       number=10000, globals=globals(), setup='pass')</code></pre>
<h3>Line Profiler</h3>
<pre><code class="language-python"># $ pip3 install line_profiler
@profile
def main():
    a = [*range(10000)]
    b = {*range(10000)}
main()</code></pre>
<h4>Usage:</h4>
<pre><code class="language-text">$ kernprof -lv test.py
Line #      Hits         Time  Per Hit   % Time  Line Contents
==============================================================
     1                                           @profile
     2                                           def main():
     3         1       1128.0   1128.0     27.4      a = [*range(10000)]
     4         1       2994.0   2994.0     72.6      b = {*range(10000)}</code></pre>
<h3>Call Graph</h3>
<h4>Generates a PNG image of call graph with highlighted bottlenecks:</h4>
<pre><code class="language-python"># $ pip3 install pycallgraph
from pycallgraph import output, PyCallGraph
from datetime import datetime
time_str = datetime.now().strftime('%Y%m%d%H%M%S')
filename = f'profile-{time_str}.png'
drawer = output.GraphvizOutput(output_file=filename)
with PyCallGraph(output=drawer):
    &lt;code_to_be_profiled&gt;</code></pre>
<h2>NumPy</h2>
<p><strong>Array manipulation mini language. Can run up to 100 times faster than equivalent Python code.</strong></p>
<pre><code class="language-python"># $ pip3 install numpy
import numpy as np</code></pre>
<pre><code class="language-python">&lt;array&gt; = np.array(&lt;list&gt;)
&lt;array&gt; = np.arange(from_inclusive, to_exclusive, step_size)
&lt;array&gt; = np.ones(&lt;shape&gt;)
&lt;array&gt; = np.random.randint(from_inclusive, to_exclusive, &lt;shape&gt;)</code></pre>
<pre><code class="language-python">&lt;array&gt;.shape = &lt;shape&gt;
&lt;view&gt;  = &lt;array&gt;.reshape(&lt;shape&gt;)
&lt;view&gt;  = np.broadcast_to(&lt;array&gt;, &lt;shape&gt;)</code></pre>
<pre><code class="language-python">&lt;array&gt; = &lt;array&gt;.sum(&lt;axis&gt;)
indexes = &lt;array&gt;.argmin(&lt;axis&gt;)</code></pre>
<ul>
<li><strong>Shape is a tuple of dimension sizes.</strong></li>
<li><strong>Axis is an index of dimension that gets collapsed.</strong></li>
</ul>
<h3>Indexing</h3>
<pre><code class="language-bash">&lt;el&gt;       = &lt;2d_array&gt;[0, 0]        # First element.
&lt;1d_view&gt;  = &lt;2d_array&gt;[0]           # First row.
&lt;1d_view&gt;  = &lt;2d_array&gt;[:, 0]        # First column. Also [..., 0].
&lt;3d_view&gt;  = &lt;2d_array&gt;[None, :, :]  # Expanded by dimension of size 1.</code></pre>
<pre><code class="language-bash">&lt;1d_array&gt; = &lt;2d_array&gt;[&lt;1d_row_indexes&gt;, &lt;1d_column_indexes&gt;]
&lt;2d_array&gt; = &lt;2d_array&gt;[&lt;2d_row_indexes&gt;, &lt;2d_column_indexes&gt;]</code></pre>
<pre><code class="language-bash">&lt;2d_bools&gt; = &lt;2d_array&gt; &gt; 0
&lt;1d_array&gt; = &lt;2d_array&gt;[&lt;2d_bools&gt;]</code></pre>
<ul>
<li><strong>If row and column indexes differ in shape, they are combined with broadcasting.</strong></li>
</ul>
<h3>Broadcasting</h3>
<p><strong>Broadcasting is a set of rules by which NumPy functions operate on arrays of different sizes and/or dimensions.</strong></p>
<pre><code class="language-python">left  = [[0.1], [0.6], [0.8]]  # Shape: (3, 1)
right = [ 0.1 ,  0.6 ,  0.8 ]  # Shape: (3)</code></pre>
<h4>1. If array shapes differ, left-pad the smaller shape with ones:</h4>
<pre><code class="language-python">left  = [[0.1], [0.6], [0.8]]  # Shape: (3, 1)
right = [[0.1 ,  0.6 ,  0.8]]  # Shape: (1, 3) &lt;- !</code></pre>
<h4>2. If any dimensions differ in size, expand the ones that have size 1 by duplicating their elements:</h4>
<pre><code class="language-python">left  = [[0.1, 0.1, 0.1], [0.6, 0.6, 0.6], [0.8, 0.8, 0.8]]  # Shape: (3, 3) &lt;- !
right = [[0.1, 0.6, 0.8], [0.1, 0.6, 0.8], [0.1, 0.6, 0.8]]  # Shape: (3, 3) &lt;- !</code></pre>
<h4>3. If neither non-matching dimension has size 1, rise an error.</h4>
<h3>Example</h3>
<h4>For each point returns index of its nearest point (<code>[0.1, 0.6, 0.8] =&gt; [1, 2, 1]</code>):</h4>
<pre><code class="language-python">&gt;&gt;&gt; points = np.array([0.1, 0.6, 0.8])
[ 0.1,  0.6,  0.8]
&gt;&gt;&gt; wrapped_points = points.reshape(3, 1)
[[ 0.1],
 [ 0.6],
 [ 0.8]]
&gt;&gt;&gt; distances = wrapped_points - points
[[ 0. , -0.5, -0.7],
 [ 0.5,  0. , -0.2],
 [ 0.7,  0.2,  0. ]]
&gt;&gt;&gt; distances = np.abs(distances)
[[ 0. ,  0.5,  0.7],
 [ 0.5,  0. ,  0.2],
 [ 0.7,  0.2,  0. ]]
&gt;&gt;&gt; i = np.arange(3)
[0, 1, 2]
&gt;&gt;&gt; distances[i, i] = np.inf
[[ inf,  0.5,  0.7],
 [ 0.5,  inf,  0.2],
 [ 0.7,  0.2,  inf]]
&gt;&gt;&gt; distances.argmin(1)
[1, 2, 1]</code></pre>
<h2>Basic Script Template</h2>
<pre><code class="language-python">#!/usr/bin/env python3
#
# Usage: .py
# 

from collections import namedtuple
from enum import Enum
import re
import sys


def main():
    pass


###
##  UTIL
#

def read_file(filename):
    with open(filename, encoding='utf-8') as file:
        return file.readlines()


if __name__ == '__main__':
    main()
</code></pre>
				<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/>
					<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/>
					<script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"></script>
					<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});</script><br/><hr/><a href="http://www.warriordudimanche.net/article921#comments" title="commenter ou voir les commentaires sur ce lien"><small>&#9658; Commentaires</small></a>


