#OnVautMieuxQueCa

Des youtubeur⋅euses lancent un appel à témoignagne contre le projet de réforme du code du travail.

C’est l’occasion pour moi de raconter quelques situations que j’ai subit alors que j’étais fraîchement salarié dans une SSII, elle sont bien sûr sans commune mesure par rapport à ce que d’autres peuvent subir, mais elle sont suffisamment ubuesques pour valoir la peine d’être racontée.

« Je m’appelle pas Samson. »

Pour mon premier entretien de placement en régie, j’ai été confronté à deux personnes : Un chef de projet sur le départ (mais encore décisionnaire) et l’admin qui le remplaçerait dans l’année.

Tout s’est bien passé jusqu’au moment où l’admin me demande : « Et heu, juste par curiosité, bon, tes cheveux là, si on te demande de les couper pour venir chez nous tu répondrais quoi ? »

J’avais beau être jeune et impressionnable, j’ai tout de même répondu que ça ne me rendrais pas plus compétent et que donc ça ne risquait pas d’arriver.

« Nan continue à la main. »

La personne qui était de matin (on était aux 3-8) devait tous les jours se connecter sur une dizaine de serveurs (toujours les mêmes) et lancer divers commandes (toujours les mêmes) puis remplir un fichier Excel à envoyer aux admins en leur spécifiant quelles valeurs étaient incorrectes.

La procédure prenait à peu près 2 heures et on avait droit aux froncements de sourcils de rigeur si le fichier n’était pas envoyé avant l’arrivée des dis admins.

Personellement, quand je vois des trucs répétitifs qui prennent deux heures à faire tous les matins, j’ai tendance à vouloir automatiser.

En quelques semaines j’avais donc fait des petits scripts et un modèle de fichier qui faisaient le job en 15 minutes (copié collé dans le fichier Excel compris). En prime les valeurs problématiques étaient colorées en rouge histoire d’attirer l’attention.

Il n’aura fallu que deux jours à recevoir le fichier une vingtaine de minute avant mon arrivée pour que je me prenne un joli savon de la part de l’admin qui m’avait dans le nez au motif qu’on me paie pour faire mon boulot, pas pour gagner du temps et glander sur ma chaise ensuite.

«T’as 30 minutes pour intervenir en cas d’astreinte. »

Dans ce même projet, les collègues plus expérimentés avaient des périodes d’astreinte.

Ils devaient donc prendre le téléphone pro le week-end et devaient impérativement se rendre sur place en moins d’une demi heure à la moindre alerte.

Même celui qui habitait à 40 minutes par la nationale, 25 minutes par l’autoroute (payante, non remboursée).

Comment lui a-t-on conseillé de faire ? « Ben t’as qu’à attendre dans ta voiture comme ça t’es prêt à partir. »

« Tu peux aller te rassoir maintenant. »

Ayant été déclaré persona non grata un mois à peine après le remplacement du chef de projet par l’admin qui m’avait dans le nez, il a bien fallu que mon manager me place ailleurs pour que je ne grève pas trop son bonus. Il m’a donc envoyé chez un autre client.

Je bossais toujours en 3-8, toujours avec le bas de la chaîne hiérarchique entièrement consitutée de gars en régie avec les admins internes, eux ; Mais cette fois c’était un open-space, et quand une alerte survenait, il était tentant de rester regarder l’admin chercher la cause du problème.

Histoire de peut-être apprendre des trucs et progresser.

Mais non, « T’es pas payé pour me regarder bosser »

« Non, pas de cadeau pour lui, il est externe »

Enfin, chaque année à l’approche de Noël et de Pâques, le client offrait des chocolats à ses employés.

Quelqu’un (probablement un stagiaire) devait donc parcourir l’usine avec un chariot remplit de lapins en chocolats ou de boîtes de pralinés et en laisser un par poste de travail.

Arrivant dans l’open-space, le préposé fait donc sa besogne en déposant un chocolat sur le bureau de chacun des admins alors en réunion, puis s’approche du bureau des techniciens.

Voyant ça par la vitre de la salle de réunion, le chef d’équipe se précipite alors dans l’open space pour l’informer : « Ben non, eux c’est des externes, il y ont pas droit. »

BPowerLogo

Franchement, vous trouvez pas qu’on vaut mieux que ça ?

 

Facebook pour Android, tueuse de smartphone

Cette semaine j’ai installé la dernière version de Resurrection Remix sur mon Galaxy S3.

J’ai fait la totale :

Avec ça le S3 tourne avec la dernière version de Lollipop et il tourne bien.

Enfin… Jusqu’au moment d’installer les appli Facebook et Facebook Messenger où c’est la catastrophe. Son temps de réaction s’effondre et la batterie fond à vue d’œil.
J’ai même parfois l’impression que c’est au sens propre tellement le CPU se met à chauffer.

J’avais déjà des soupçons depuis la dernière réinstallation complète de mon téléphone et ce coup ci c’était la goutte de trop et j’ai finalement fait ce que j’aurais du faire depuis longtemps : Je les ai virées.

Facebook t’abuses un peu quand même.

Déjà à l’installation on peut se douter qu’il y a un truc chelou. Parce que les permissions demandées font juste peur.

Moi quand je vois ça, je m'en fout parce que j'utilise XPrivacy, mais j'ai de la peine pour les gens qui ne savent pas comment se couvrir.

Moi quand je vois ça, je m’en fout parce que j’utilise XPrivacy, mais j’ai de la peine pour les gens qui ne savent pas comment se couvrir.

Ensuite le poids téléchargé est un peu effrayant lui aussi.

20 Mo pour une appli de messagerie et 44Mo pour une autre qui va bêtement appeler une API ? J'imagine que le code espion ça pèse lourd…

20 Mo pour une appli de messagerie et 44Mo pour une autre qui va bêtement appeler une API ? J’imagine que le code espion ça pèse lourd…

Et puis passé le quart d’heure nécessaire à l’installation (véridique) la place occupé sur la partition /data est juste ÉNORME !

Yep, le code espion ça pèse vraiment très lourd en fait.

Yep, le code espion ça pèse vraiment très lourd en fait.

C’est lent, ça met des plombes à s’installer, ça pèse une tonne. Est-ce que ça vaut le coup de les garder juste pour avoir de quoi glandouiller dans le bus en allant ou en rentrant du boulot ?

Ben non. Hop, à la benne. Et là miracle : Mon téléphone est rapide à nouveau.

Connaissant Facebook j’imagine sans peine que ses applis écoutent en permanence tout ce qu’elles peuvent et que si ça ne se voit pas trop sur les téléphone récents, quand il commence à faire son âge ça fini par se remarquer.

Heureusement il y a un remplaçant : Face Slim

Face Slim qui porte décidément bien son nom, qui est Libre, disponible sur F-Droid et qui consiste en fait à afficher la version mobile de Facebook dans un navigateur intégré en fournissant aussi un moyen d’être notifié ainsi que quelques raccourcis.

Télécharger Face Slim sur F-Droid

Le fichier d’installation fait 800Ko, installée elle occupe 2,55Mo et elle réagit à la vitesse de la 3G. Juste ce qu’on attend d’une telle appli en fait.

Comme ça je peux laisser libre cours à mes bas instincts et continuer de profiter d’un téléphone rapide.

 

Écrire avec VIM, pusher sur GitHub, publier sur WordPress

Résumé des épisodes précédents

Depuis à peu près un an mon code s’écrit dans VIM. Un VIM avec plein de plugins, mais un VIM quand même.

Depuis j’ai installé VIMperator qui permet l’utilisation de Firefox au clavier, VIM-style, je suis passé de XFCE4 à GNOME3 à i3wm et je me tâte sérieusement à installer muttator pour Thunderbird.

Et c’est tellement confortable que je n’arrive juste plus à m’en passer. Qu’on me demande d’utiliser un SublimeText, un IntelliJ ou un Notepad++ et je me met à pester devant tant d’inefficacité.

Ça a l’air un peu prétentieux dit comme ça et je me souviens très bien de ce que je trouve agaçant chez la plupart des évangélistes VIM : Ils oublient très souvent que passer à VIM c’est un investissement conséquent.

Il faut désapprendre à peu près tout ce qu’on sait sur les éditeurs de texte, apprendre une palanquée de raccourcis clavier et supporter d’être parfaitement inefficace pendant des semaines, voire des mois.

Impossible donc de jeter la pierre à celles et ceux qui n’ont pas le temps ou l’envie de s’y mettre.

Mais bref, je suis passé à VIM et je ne peux pas revenir en arrière. Du coup l’écriture d’article dans l’éditeur WordPress je kiffais moyen et j’avais commencé à écrire mes articles dans un fichier .md, des fois synchronisé sur ownCloud, des fois posé un peu n’importe ou sur mon disque dur.

C’était un joyeux bordel et je devais toujours me coltiner le copier-coller dans WordPress. Pour corriger l’orthographe, la grammaire ou réécrire des bouts c’était soit dans l’éditeur, soit à nouveau un copier-coller sur le PC. Bref, c’était chiant.

Et puis j’ai entendu parler de Jekyll qui permet d’écrire son blog en markdown et de générer des fichiers HTML qui vont bien.

Sauf que Aldarone.fr c’est pas juste mon blog, c’est aussi un réseau WordPress multisite qui héberge d’autres blogs, je peux pas simplement virer WordPress pour le remplacer par Jekyll. Il aurait aussi fallu gérer la conservation des URLs et tout. Bref, c’était chiant.

La solution

Heureusement parmi les plugins WordPress il y a à boire et à manger, j’ai donc fini par trouver mon graal : WordPress GitHub Sync

Après la création d’un dépôt dédié sur Github, l’autorisation du plugin à y accéder et à être notifié quand le dépôt change, voila tous mes articles regroupés sur Aldarone/aldarone.fr

À partir de maintenant il me suffit d’enregistrer un fichier .md sur la branche master avec un peu de YAML dans l’en-tête pour définir son titre et son statut de publication pour que ce dernier soit automatiquement créé dans WordPress. De même, à chaque modification depuis l’administration, WPGHS fera un commit dans le dépôt pour répercuter les changements.

Tout n’est pas parfait et à l’heure actuelle je dois encore me rendre dans l’administration pour envoyer les images et gérer les catégories, les tags et l’image d’en tête, mais je vais pas trop me plaindre non plus.

Et qu’est-ce que ça implique ?

Déjà, écrire son blog dans un dépôt Git c’est intéressant en terme de suivi de modifications. C’est en tout cas plus pratique que le système moisi de révisions intégré à WordPress.

En terme de sauvegarde c’est assez chouette aussi puisque tous mes articles depuis le début du blog ont été placés dans le dépôt et les prochains seront eux aussi conservés dans un format facilement exploitable si un jour je change de plateforme.

Enfin, comme le dépôt est public, mes brouillons seront visibles dessus avant publication, je pourrais les faire relire et corriger plus facilement.

Je ne compte pas désactiver le système de tickets ni de pull request donc les lecteurs et lectrices qui savent utiliser GitHub pourront proposer des corrections et modifications très simplement avec une PR, les autres pourront ouvrir un ticket pour signaler les erreurs.

Dans tous les cas, améliorer mon workflow d’écriture m’a donné un petit boost de motivation et je devrais publier plus régulièrement pendant un moment.

À la prochaine !

 

Brocoup de bruit pour rien – Much ado for Brothing

À la fin de la semaine passée, une nouvelle inquiétante (pour ne pas dire catastrophique) a commencé à se répandre sur les internets :
Mozilla agirait de concert avec les féministes pour faire peser une insupportable censure sur le géant Google.

Voyez plutôt :

Google a annoncé fin septembre, le 22, un nouvel algorithme de compression nommé Brotli, capable d’offrir une compression équivalente à LZMA ou bzip2
pour des performances approchant celles de deflate. Qui dit nouveau format dit également nouvelle extension de fichier, c’est pourquoi, en suivant une convention
aussi vieille que techniquement dépassée, il fut tout naturellement proposé de tronquer le nom de l’algorithme à 3 caractères, donnant ainsi l’extension .bro
aux fichiers compressés par brotli.

C’est là que le bat blesse et que les vilaines féministes entrent en jeu pour exercer une pression terrible sur la personne ayant fait cette proposition,
forçant ainsi le malheureux développeur à s’auto-censurer pour ne pas subir plus de harcèlement de la part de ces furies.

Pour lutter contre la pensée unique qui émane de leur action, je décide ce soir, en dépit des risques, de reproduire ici les vifs échanges ayant eu lieu sur le bugtracker de Mozilla :

  1. Jyrki Alakuijala :

    In https://datatracker.ietf.org/doc/draft-alakuijala-brotli/ section 12. ‘IANA Considerations’ we are making a reservation for content encoding type ‘bro’, not ‘brotli’.

    We are hoping to establish a file ending .bro for brotli compressed files, a command line tool ‘bro’ for compressing and uncompressing brotli files, and a accept/content encoding type ‘bro’.

    bro is short for brotli — there are no hidden meanings in it, just practicality: less typing, less bytes to upload/download, shorter compressed filenames.

    Dans la section 12 du document « Préparations pour l’IANA » nous réservons le type d’encodage de contenu « bro » et non « brotli »

    Nous espérons fournir une extension en .bro pour les fichiers compressés par brotli, un outil en ligne de commande « bro » pour compresser et décompresser les fichiers brotli, ainsi qu’un type d’encodage « bro »

    Bro est le diminutif de brotli, il n’y a pas de sens caché, jsute de la praticité : Moins de caractères, moins d’octets à envoyer ou recevoir, des noms de fichier plus courts.

  2. Patrick McManus :

    Thanks for pointing that out jyrki, can I talk you out of it? Certainly not too late to change the draft registration.

    « bro » has a gender problem, even though the dual meaning is unintentional. It comes of misogynistic and unprofessional due to the world it lives in. I received a series of ‘bro’ jokes in response to my posting about this new feature.

    Best to avoid it rather than spending time defending an arbitrary nickname.

    My interest is only in content-encoding interop.

    Merci pour cette précision jyrki, est-ce que je peux rajouter quelque chose ? Il n’est certainement pas trop tard pour modifier le brouillon d’enregistrement.

    « bro » va poser un problème de genre, même si le double sens n’est pas volontaire. Il semble misogyne et peu professionnel en raison du monde dans lequel nous vivons. J’ai déjà reçu une série de « blague de bro » en réponse à mon annonce de cette nouvelle fonctionnalité.

    Il vaut mieux l’éviter plutôt que de perdre du temps à défendre un surnom arbitraire.

    Mon seul intérêt réside dans l’interopérabilité des encodages de contenu.

  3. Jyrki Alakuijala :

    would you be fine with ‘br’ ?

    Est-ce que « br » conviendrait ?

  4. Patrick McManus :

    sounds good – thanks. I’ll make that change and let the content-provider I know is working with this know.

    Ça m’a l’air bien, merci. Je vais répercuter ce changement et je vais prévenir les fournisseurs de contenu qui travaillent dessus.

  5. Jyrki Alakuijala :

    No, thank you for the advice. It is always better to fix things like this as early as possible.

    Non, merci à toi pour le conseil. C’est toujours mieux de corriger ce genre de choses le plus tôt possible.

Quelle pression insupportable pèse sur les épaules de ce malheureux Jyrki.

dramatic look

Un peu de sérieux s’il vous plait.

Depuis cet instant, nous pouvons voir fleurir les articles incendiaires écris par des hommes se sentant menacés par une modification mineure dans un brouillon de spécification.

Sur gHacks on peut ainsi lire :

While it does not really matter in the end if the extension is called bro or br or something else, bro should not be offensive to anyone especially since barely anyone will ever come into contact with it in first place. People who are offended by a file extension, or think others might be offended by it, should get their priorities straight as there are bigger fish to fry.

Dans un même paragraphe, l’auteur est capable d’affirmer que ça n’a aucune espèce d’importance puis de conclure que les féministes devraient revoir leurs priorités. Pourquoi s’affoler, en faire un article et s’opposer de tout son poids contre un changement qui n’aurait pas la moindre importance ?

Du côté de Reddit, ça titre comme ça :

Google removes .bro file extension from project for possibly being offensive and/or misogynistic according to feminists

Alors qu’il s’agit d’une discussion entre deux hommes dont aucun ne déclare spécifiquement qu’ils sont féministes.

Sur Slashdot, on prétend que le sujet fait controverse depuis l’annonce de Brotli :

Several weeks ago, Google launched Brotli, a new open source compression algorithm for the web. Since then, controversy broke out over the choice of ‘bro’ as the content encoding type.

Si on regarde la chronologie des fait, c’est n’est absolument pas le cas :

Brotli a été annoncé le 22 septembre. Le premier commentaire que je cite plus haut a été posté le 05 octobre, la proposition de passer à .br plutôt que .bro a été émise, acceptée et commitée le 06 octobre. Le post sur Slashdot est arrivé le 10 octobre, soit 4 jours après « la bataille »

C’est aussi à partir de ce moment que l’on trouve en trouve des traces sur Reddit et que les commentaires du ticket Bugzilla ainsi que du commit validant la modification commencent à se faire troller.

Qualifier ces évènements de controversés revient à utiliser une définition très particulière du mot « controverse » quand toute cette histoire n’est qu’une discussion sur un coin de table pendant la rédaction d’un brouillon qui a été ensuite montée en épingle par les conservateurs et les réactionnaires. Un cas d’école illustrant parfaitement leur maitrise du FUD et de l’astroturfing.

Je laisserai donc le mot de la fin au développeur qui a effectué la modification :

Even if we don’t understand why people are upset from our cultural standpoint, they would be (unnecessarily) upset and this is enough reason not to use it.

Même si, de notre point de vue culturel, nous ne comprenons pas pourquoi cela dérangerait des gens, illes le seraient sans nécessité et c’est une raison suffisante pour de pas utiliser cette extension.

 

Que fait Firefox sur le réseau quand on le démarre et faut-il y remédier ?

En lien avec les évènements relatés dans mon article précédent « Une avalanche de FUD sur Mozilla et Firefox. » Oros a conduit une petite étude du comportement d’un Firefox fraîchement installé et en a tiré un fichier de configuration à appliquer pour le rendre complètement silencieux.

Cependant, je trouve non seulement que son analyse manque cruellement d’explications et que son fichier de configuration propose des valeurs qui vont beaucoup trop loin à mon goût, d’autant que ces choix ont pour seule justification le fait de faire taire Firefox. Cette approche est donc dommageable et on voit déjà des partages affolés de la part de gens pour qui « requête réseau » signifie que Firefox vends leurs données personnelles à des grosses corporations :

Je vais donc détailler un peu à quoi correspondent les requêtes listées ainsi que ce qui se trouve dans ce fichier de configuration et, quand c’est le cas, pourquoi j’estime qu’une telle désactivation est problématique.

Pour les requêtes réseaux, je n’ai pas leur contenu et ne pourrai donc pas en expliquer certaines mais les noms de domaine des autres sont pour la plupart assez parlants.

1 : www.mozilla.org.
1 : snippets.cdn.mozilla.net.
1 : geo.mozilla.org.
1 : location.services.mozilla.com.
1 : search.services.mozilla.com.
1 : self-repair.mozilla.org.
1 : aus4.mozilla.org.
3 : search.yahoo.com.
3 : ff.search.yahoo.com.
1 : ciscobinary.openh264.org.
1 : clients1.google.com.
1 : safebrowsing.google.com.
53 : safebrowsing-cache.google.com.
1 : ocsp.digicert.com.

geo.mozilla.org et location.services.mozilla.com correspondent de manière assez évidente à un service de géolocalisation. Mozilla connait donc l’emplacement approximatif de tel navigateur. Ces requêtes disparaissent en passant browser.search.geoip.url à false cela a donc à voir avec les fonctionnalités de recherche comme nous le verrons dans le détails des options.

search.services.mozilla.com, aus4.mozilla.org et self-repair.mozilla.org sont des domaines utilisés par Mozilla pour la maintenance de Firefox : des vérifications de mises à jour pour les deux premiers et le service Heartbeat pour le dernier. Heartbeat étant le service de feedback pour Firefox (ce panneau « Rate your experience with Firefox » qu’on voit s’afficher de temps en temps.) Il permet à Mozilla de savoir combien de personnes démarrent leur Firefox chaque jour pour avoir un suivi statistique.

search.yahoo.com et ff.search.yahoo.com sont là pour fournir à Yahoo des statistiques d’utilisation. Ils ont un contrat avec Mozilla pour être le moteur de recherche par défaut, ces appels servent à justifier l’utilité de ce deal.

ciscobinary.openh264.org a rapport avec le décodage des vidéos en h264 dans le lecteur HTML5. h264 est un codec brevet et les éditeurs de logiciel qui distribuent un codec h264 doivent payer une licence pour chaque codec distribué. Ça ne s’applique pas en Europe car (pour l’instant) les brevets logiciels sont encore considérés comme nuls mais aux États-Unis notamment, il faut passer à la caisse. Pour éviter à Mozilla de devoir mettre la plupart de ses économies dans le paiement de la licence à MPEG-LA, Cisco lui fournit gracieusement un codec nommé openh264. Cet appel réseau peut donc aussi bien être présent à des fins de statistiques mais aussi de mise à jour. (Si vous allez dans les Préférences – Modules – Plugins, vous verrez le codec en question.)

Le grand nombre d’appels à Google ont rapport au service SafeBrowsing de Google (Navigation Sécurisée en français). C’est une liste noire de domaines qui contiennent ou ont contenu divers malwares ou qui pratiquent le phishing. Cela permet au navigateur de bloquer la page avant même de la charger et d’afficher une alerte mais cela implique d’envoyer l’URL visitée au service. Et ce service est tenu par Google.

Le dernier, ocsp.digicert.com, concerne le protocole OCSP (Online Certificate Status Protocol) et sert à vérifier la validité d’un certificat chez son émetteur (ici, DigiCert) afin de s’assurer qu’il n’a pas été révoqué. Ni information personnelle, ni statistique, il s’agit d’un protocole de sécurité qui va de pair avec TLS.

On remarquera aussi que, contrairement aux cris d’horreur poussés par les détracteurs de Firefox Hello et de l’intégration de Pocket, strictement aucune requête réseau ne concerne ces fonctionnalités.

Voila pour les appels réseau que j’ai pu identifier, passons maintenant aux différents blocs du fichier de configuration.

Le rafraichissement automatique de certaines pages

user_pref("accessibility.blockautorefresh",true);

On commence bien avec un réglage de bon sens. accessibility.blockautorefresh bloque le rafraichissement automatique de certaines pages. Cette fonction était sensée avant la démocratisation d’AJAX pour mettre à jour une page qui disposait d’un nouveau contenu mais la technique est usée et abusée par les sites de presse qui profitent des onglets en arrière plan pour se booster les vues et rentabiliser leurs lecteur⋅ices. Pour plus d’infos : accessibility.blockautorefresh sur Mozillazine.

Des préférences sans lien avec le réseau

user_pref("browser.cache.disk.enable", false);
user_pref("browser.download.panel.shown", true);
user_pref("browser.newtab.url","about:blank");

Ces trois-là portent plus matière à controverse puisqu’il s’agit de préférence personnelle.

Pour le premier pas de cache sur le disque signifie potentiellement moins d’accès disques (et c’est bien) mais ça signifie aussi que le cache se vide quand on ferme Firefox. Il faudra donc charger à nouveau toutes les ressources sur chaque site web. Ça veut donc dire plus de trafic réseau, plus de charge sur les serveurs et des pages qui s’affichent globalement moins vite.

Pour le second, on force Firefox à nous demander où enregistrer les fichiers qu’on télécharge au lieu de les mettre d’office dans un dossier spécifié. C’est bien quand on apprécie ce comportement, c’est moins bien quand on préfère le comportement par défaut. De plus la présence de cette ligne empêche de modifier l’option dans Préférences – Général – Téléchargement.

Idem pour le dernier du bloc, afficher about:blank à l’ouverture d’un onglet n’est peut-être pas du goût de tout le monde. Alors que about:mozilla ou about:about valent le détour.

Google SafeBrowsing

// I remove all URL because I don't want to
// connecte my PC to Google
user_pref("browser.safebrowsing.appRepURL", "");
user_pref("browser.safebrowsing.downloads.enabled", false);
user_pref("browser.safebrowsing.downloads.remote.enabled", false);
user_pref("browser.safebrowsing.enabled", false);
user_pref("browser.safebrowsing.gethashURL", "");
user_pref("browser.safebrowsing.malware.enabled", false);
user_pref("browser.safebrowsing.malware.reportURL", "");
user_pref("browser.safebrowsing.reportErrorURL", "");
user_pref("browser.safebrowsing.reportGenericURL", "");
user_pref("browser.safebrowsing.reportMalwareErrorURL", "");
user_pref("browser.safebrowsing.reportMalwareURL", "");
user_pref("browser.safebrowsing.reportPhishURL", "");
user_pref("browser.safebrowsing.reportURL", "");
user_pref("browser.safebrowsing.updateURL", "");
user_pref("browser.trackingprotection.gethashURL", "");
user_pref("browser.trackingprotection.updateURL", "");
user_pref("services.sync.prefs.sync.browser.safebrowsing.enabled",false);
user_pref("services.sync.prefs.sync.browser.safebrowsing.malware.enabled",false);

Ici on s’attaque à SafeBrowsing de Google. Il y a des pour à propos de cette désactivation : On envoie pas les URLs visitées à Google, mais il y a des contres : on ouvre laisse plus de champs à une infection par Javascript ou à un Phishing. Bref, c’est quelque chose qu’il faudrait désactiver après réflexion et pas « parce que Firefox envoie des données mon dieu ! »

Ne vous leurrez pas non plus si vous utilisez GNU/Linux, pas plus tard que début août une faille dans PDF.js permettait à un script JS de récupérer des fichiers de votre ordinateur, l’exploit visait /etc/passwd, .my.conf (coucou le mot de passe MySQL) ou encore .bash_history.

Et en aucun cas ne faites ça chez un⋅e ami⋅e ou parent⋅e qui ne maîtrise pas l’outil informatique.

Le moteur de recherche par défaut

user_pref("browser.search.defaultenginename", "DuckDuckGo");

Sur le fait de forcer DuckDuckGo comme moteur de recherche par défaut, je n’y vois personnellement aucun inconvénient mais il faudra penser à cette ligne si vous préférez utiliser autre chose. Un méta moteur comme l’instance searx de Framasoft par exemple.

La géolocalisation

user_pref("geo.enabled",false);
user_pref("browser.search.geoip.url", "");
user_pref("geo.wifi.uri", "");

Ces règles de configuration désactivent la géolocalisation du navigateur. geo.enabled permet, quand sa valeur est true, d’autoriser certains sites à géolocaliser votre navigateur pour « améliorer » le service fourni. Ça va de Facebook Messenger qui le fait à des fins commerciales et qui fait fuiter l’info à vos amis à monprochainbus.eu qui indique les arrêts de bus les plus proches sans qu’on ait rien à saisir. Dans tous les cas, Firefox vous demande l’autorisation.

De son côté, browser.search.geoip.url aide le navigateur à identifier le pays dans lequel vous vous trouvez à l’aide de la technique GeoIP. Pour cela il effectue une connexion à l’adresse https://location.services.mozilla.com/v1/country?key=%MOZILLA_API_KEY% et reçoit le nom standardisé du pays. Vous remarquerez l’envoi d’un identifiant unique %MOZILLA_API_KEY% qui identifie une installation de Firefox. Il est possible que ce soit utilisé à des fins de limitations du nombre de requêtes. Conserver l’URL en enlevant ?key=%MOZILLA_API_KEY% ne perturbe pas plus Firefox que ça, empêche Mozilla de suivre votre instance particulière de Firefox mais cela fausse aussi certainement leurs statistiques d’usage par pays.

Enfin, geo.wifi.uri aide la géolocalisation de Firefox à se montrer plus précise en utilisant Google Location Services. Firefox envoie donc votre IP, la liste des réseaux Wifi environnants et un identifiant unique régénéré toutes les deux semaines à Google pour obtenir une localisation fiable au niveau de la rue au lieu de n’avoir que GeoIP qui est fiable au niveau de la ville (et encore, parfois on a que le pays). Sans cette option, la précision prend un sacré coup ce qui peut jouer des tours aux personnes qui en ont l’utilité.

De plus comme indiqué dans ce commentaire, il est possible d’utiliser Mozilla Location Service à la place de Google Location Service pour la préférence geo.wifi.uri.

D’autres préférences sans rapport avec le réseau

user_pref("browser.search.openintab",true);
user_pref("browser.search.showOneOffButtons",false);
user_pref("browser.startup.page", 0);
user_pref("browser.tabs.warnOnClose", false);
user_pref("browser.tabs.warnOnOpen", false);
user_pref("plugins.click_to_play",true);
user_pref("general.warnOnAboutConfig",false);
user_pref("browser.urlbar.trimURLs",false);

Ici on retrouve à nouveau des préférences qui n’impactent pas la « vie privée », browser.search.openintab force l’ouverture d’un onglet après une recherche dans la barre de recherche, browser.search.showOneOffButtons masque les boutons des moteurs de recherche installés qui s’affichent en bas du champ de recherche, browser.startup.page définit la page qui s’affiche au démarrage du navigateur (ici elle est à 0 donc une page blanche, par défaut c’est la page d’accueil. Du coup ça fait doublon puisque précédemment on a défini la page d’accueil à about:blank), les deux directives browser.tabs suppriment respectivement l’alerte du navigateur quand on le ferme et que plusieurs onglets sont ouverts et l’avertissement quand on ouvre un nouvel onglet alors qu’il y en a déjà 15 ouverts (browser.tabs.warnOnOpen va de pair avec browser.tabs.maxOpenBeforeWarn qui est par défaut à 15)

De son côté plugins.click_to_play force l’activation des plugins à « Toujours demander » ce qui est le cas par défaut depuis Firefox 31.

user_pref("general.warnOnAboutConfig",false); supprime simplement l’avertissement qui s’affiche en visitant la page about:config (comme quand on coche la case « Ne plus me demander » de cette même page d’avertissement.)

Le dernier force l’affichage de http:// ou de https:// dans la barre d’adresse puisqu’ils sont masqués par défaut depuis Firefox 7. À ça on pourrait rajouter le passage de browser.urlbar.formatting.enabled à false qui va empêcher d’afficher le domaine en noir et les autres parties de l’URL en gris.

Les rapports de santé de Firefox

user_pref("datareporting.healthreport.service.enabled",false);
user_pref("datareporting.healthreport.uploadEnabled",false);

Le service rapport de santé est un service qui enregistre divers statistiques d’utilisation comme les derniers crashes de Firefox ou le temps de démarrage moyen. Désactiver le service empêche purement et simplement la création de tels rapports et désactiver le partage fait que Mozilla ne reçoit plus les rapport générés. S’il est compréhensible de désactiver le partage du rapport, il peut par contre s’avérer problématique de désactiver la création de ces rapports qui peuvent servir à dépanner un Firefox bancal.

Les rapports en question sont accessibles via la page about:healthreport, en cliquant sur données brutes vous pouvez voir les rapports tels qu’ils sont envoyés à Mozilla, la page en question contient également un bouton pour désactiver le partage (même effet que datareporting.healthreport.uploadEnabled) et un lien vers une page d’explication assez bien faite : Bilan de santé de Firefox – comprendre vos performances navigateur

L’injection de contenu dans le presse-papier

user_pref("dom.event.clipboardevents.enable",false);

Cette préférence désactive les évènements JavaScript oncopy, oncut et onpaste qui permettent aux sites web de manipuler le contenu du presse papier. Désactiver cette fonction n’a que du positif puisque le site sur lequel vous faites un copier-coller ne pourra pas rajouter du texte arbitraire comme un lien promotionnel après le contenu désiré.

Les suggestions de recherche

user_pref("browser.search.suggest.enabled",false);

Cette option va désactiver les suggestions de la barre de recherche. C’est ce qui permet à DuckDuckGo de vous suggérer « Les hommes les plus riches du monde » quand vous saisissez « Les hommes » ou « Les femmes les plus belles du monde » quand vous saisissez « Les femmes » (On notera au passage l’influence du patriarcat sur les suggestions de recherche…).

Pour que ça fonctionne, Firefox envoie une requête à chaque lettre tapée dans le champ de recherche. Personnellement j’ai du mal à saisir l’intérêt de désactiver les suggestions que je trouve souvent pertinentes, d’autant que quand je tape une phrase, je me fiche de savoir que mon moteur de recherche sait que j’en ai saisi chaque lettre une par une.

Sans les suggestions, Firefox se rabat sur son historique interne.

Le User Agent et ses potes

// user-agent
user_pref("general.appname.override", "");
user_pref("general.appversion.override", "");
user_pref("general.oscpu.override", "");
user_pref("general.platform.override", "");
user_pref("general.useragent.override", "Mozilla/5.0 ()");
user_pref("general.useragent.vendor", "");

Le user-agent est une chaine de caractère identifiant les différents navigateurs, leur version et leur environnement. À titre d’exemple, celui de mon Firefox est Mozilla/5.0 (X11; Linux x86_64; rv:41.0) Gecko/20100101 Firefox/41.0 On retrouve l’environnement pour lequel Firefox a été compilé, sa version, la version de son moteur, etc. Ce bloc-là masque tout ce qu’il est possible de masquer dans cette chaine et force en plus sa valeur à une chaine arbitraire et je suis plus que dubitatif sur l’utilité de dissimuler cette information.

Par contre la conséquence la plus directe est de faire baisser les statistiques d’utilisation de Firefox puisque les sites qui recensent de telles statistiques ne sauront plus par quel navigateur ils sont visités. Les parts de marché de Firefox sont déjà en baisse plus ou moins constante au profit de Chrome et contribuer à les faire diminuer pour aucun bénéfice revient à confirmer Chrome dans sa position de nouvel IE6 (et on ne veut vraiment pas amplifier le mouvement).

Bref, masquer son user-agent, sauf cas spécifiques comme par exemple à des fins de tests ou encore quand on utilise Opera et que Google fournit délibérément une version inutilisable de ses application, n’a aucun intérêt.

Mise à jour : Visiblement Google aime bien faire n’importe quoi avec les user-agents et semble empêcher le plein écran sur Youtube si general.useragent.override ne contient pas Gecko, merci à un⋅e anonyme sur OpenNews pour le signalement. (Le lien vers la question, le lien vers la réponse)

La lecture HTML5 sous windows et les DRM

user_pref("media.directshow.enabled",false);
user_pref("media.windows-media-foundation.enabled",false);

Ces deux préférences n’ont d’intérêt que sous windows et vont désactiver le lecteur interne de Firefox en ce qui concerne les fichiers mp4 et mp3. Le problème qui se pose c’est que les sites proposant un lecteur HTML5 comme SoundCloud ou Youtube vont à présent utiliser la rétro-compatibilité et se rabattront sur Flash. Ce qui est un peu paradoxal quand on pense protéger sa vie privée.

user_pref("media.eme.enabled",false);
user_pref("media.gmp-eme-adobe.enabled",false);

Celles-là ont rapport avec le support des EMEs (Encrypted Media Extension) qui sont les DRMs standardisées de HTML5. Comme les DRMs c’est purement et simplement de la merde il parait logique de désactiver leur support. Néanmoins, les sites avec EME risquent une fois encore de se rabattre sur Flash qui a lui aussi son système de DRMs, non standardisé lui. Si vous voulez éviter à tout prix les DRMs il faudra donc vous assurer de désactiver Flash également. Et de garder à l’esprit que si votre navigateur ne lit pas les fichiers que tous les autres utilisateur⋅ices arrivent à lire, ce n’est pas de sa faute.

Des fuites d’information

user_pref("media.peerconnection.enabled",false);
user_pref("network.proxy.socks_remote_dns",true);
user_pref("network.http.sendRefererHeader",0);

La première préférence à rapport à WebRTC. Ce protocole sert à la communication directe entre deux navigateurs. C’est ce qui permet par exemple de jouer en réseau ou de faire de la conférence vidéo en web. Ici, WebRTC est désactivé de force car son implémentation actuelle expose les adresses IPs locales de l’ordinateur. N’importe quel site web est donc capable de récupérer la liste de vos IPs et est susceptible de contacter d’autres ordinateurs sur le réseau avec des appels AJAX depuis votre navigateur. (Il lui faut tout de même connaître les IPs de destination.) Les proxys et les VPN verront eux aussi leurs adresses exposées. Si vous n’utilisez pas WebRTC il est donc plus sûr de désactiver cette option. Le bug concernant cette faille est visible ici [meta] ICE candidate generation control and user authorization et les développements autour sont assez actifs.

À noter que Chrome y est également vulnérable car le problème provient d’un flou dans le standard WebRTC.

La seconde force Firefox à envoyer les requêtes DNS à travers le proxy si vous en utilisez un. Avec la valeur par défaut, les requêtes sont envoyées sur le résolveur DNS de l’ordinateur et le réseau que vous essayez de contourner à l’aide d’un proxy connait tous les domaines que vous visitez.

Finalement, la dernière bloque l’envoi du referer aux sites que vous visitez. Le referer est le site de provenance quand vous cliquez sur un lien. Par exemple si je visite le Shaarli de SebSauvage et que je clique sur un lien vers le blog de Kevin, ce dernier aura la possibilité de savoir que j’ai cliqué sur un lien chez Seb pour arriver chez lui. Ce n’est valable qu’en HTTP car en HTTPS le referer n’est jamais envoyé par Firefox.

Des requêtes en avance

user_pref("network.dns.disablePrefetch",true);
user_pref("network.http.speculative-parallel-limit",0);

Ces deux-là visent à améliorer le temps de réaction de Firefox au moment de cliquer sur un lien. Ainsi, le DNS Prefetch consite à lister les liens d’une page et de résoudre les noms de domaines associés pour s’épargner la durée de résolution au moment du clic. Ça fournit à votre résolveur DNS la liste des domaines liés sur une page et le désactiver augmente le temps de réponse de Firefox de quelques millisecondes (le temps de la résolution DNS). À la fin de la journée, le gain en vitesse cumulé est appréciable et le risque en terme de vie privée est pour le moins inexistant.

Activation de Firefox Hello

user_pref("loop.enabled",true);

Cette préférence active Firefox Hello, c’est la valeur par défaut donc on empêche sa désactivation. Ce qui ne mène à rien puisque Firefox Hello est basé sur WebRTC qui a été désactivé quelques lignes avant.

Les versions de TLS

user_pref("security.ssl3.dhe_rsa_aes_128_sha",false);
user_pref("security.ssl3.dhe_rsa_aes_256_sha",false);
user_pref("security.tls.version.max",3);
user_pref("security.tls.version.min",2);

Ces lignes concernent le protocole TLS qui définit la sécurité en HTTPS. La valeur de tls.version.min indique qu’on accepte au moins TLS1.1 et celle de tls.version.max indique qu’on accepte au plus TLS1.2 (la dernière en date). Les deux premières lignes ont rapport à SSLv3 et ne sont pas pertinentes puisque SSLv3 est antérieure à TLS1.0 et est donc désactivé.

Un bloqueur de traqueur intégré

user_pref("privacy.trackingprotection.enabled",false);

À partir de la version 35, Firefox intègre un bloqueur de traceurs basé sur la liste de Disconnect.me, il serait remarquablement efficace puisqu’une paire de chercheurs ont publié une étude à son sujet début 2015 indiquant une augmentation de 44% de la vitesse de chargement, une diminution de 39% du traffic réseau et une diminution de 66% du nombre de cookies. Cette fonction est désactivée par défaut et la valeur de cette préférence empêche ici son éventuelle activation (ce qui n’est pas très logique si notre but est d’améliorer la protection de notre vie privée avec Firefox).

La télémétrie : analyse des performances et des fonctions les plus utilisées de Firefox

user_pref("toolkit.telemetry.enabled",false);

La télémétrie permet à Mozilla de recueillir des informations importante sur le comportement de Firefox dans une vaste diversité d’environnements. Elle est désactivée par défaut dans Firefox Stable et ESR mais activée par défaut sur Beta, Developper et Aurora. La présence de cette préférence empêche son activation et on se retrouve donc à utiliser Firefox sans contribuer à son amélioration. Et c’est dommage.

Conclusion

S’il est tout à fait justifié de surveiller les usages réseaux de nos applications favorites pour veiller à ce qu’elles ne nous trahissent pas, chercher aveuglément à les bloquer est loin d’être une solution pertinente. Surtout quand cela amène à proposer une configuration à poser puis oublier présentée comme « Améliorant la vie privée » quand cette configuration mêle préférences personnelles, lignes obsolètes ou redondantes et valeurs exposant à plus de tracking ou de malwares, en dépit de quelques parties pertinentes.

Au vu du temps que m’a pris la simple recherche pour comprendre l’intérêt de ces options, je suis convaincu que la plupart des gens qui verront et appliqueront ce fichier ne feront que le survoler se retrouvant du coup avec un Firefox au fonctionnement modifié pouvant même être considéré comme défaillant (puisqu’il n’y a plus de WebRTC, plus de lecteur HTML5, plus d’optimisation du chargement de certaines pages) et j’estime qu’il y a une certaine responsabilité qui ne doit pas se limiter à une bête notice « Lisez le fichier avant de l’appliquer » quand on fournit une telle configuration sur internet. (Non, je n’aime pas trop la licence MIT non plus.)

Néanmoins, j’espère que cet article vous aura permis d’en apprendre plus sur le fonctionnement de Firefox et que vous mesurerez bien les tenants et les aboutissants des modifications de configuration que vous ferez à l’avenir.


Crédit photo: social network hub par Mathias Pastwa

 

Une avalanche de FUD sur Mozilla et Firefox.

Attention : Cet article est un peu technique et certaines notions risquent de vous échapper si vous n’avez pas quelques connaissances de base en développement web.

Depuis l’introduction d’un bouton Pocket dans Firefox il ne se passe pas une seule semaine (j’aurais pratiquement même tendance à dire « un seul jour » au point où on en est) sans que Mozilla se prenne un nouveau FUD dans la face.

Petite définition de FUD :

FUD est un acronyme signifiant « Fear, uncertainty and doubt » ou, en français : « Peur, incertitude, doute »

C’est généralement une stratégie marketing organisée par une entreprise pour dénigrer un concurrent en semant la peur, l’incertitude et le doute dans l’esprit des clients.

Il s’agit de manipuler une information pour la parsemer d’hypothèses et de conditionnel afin de la rendre angoissante. La répétition de cette manipulation ancre le FUD dans l’inconscient collectif et le rend plus efficace.

Les derniers FUD auquel Mozilla a du faire face :

Firefox Social API, ou Facebook dans mon Firefox

Celui là est assez vieux et il a fini par être oublié. En 2012, Mozilla active la Social API dans Firefox Beta et lance un appel à testeures pour essayer leur intégration de Facebook Messenger.

Cette API est très simple et se configure à l’aide d’une bête chaine en JSON passée au navigateur à l’aide d’un évènement Javascript. En gros, on indique un nom, quelques urls et l’emplacement de boutons et de cadres.

Ensuite Firefox demande confirmation aux utilisateurices pour l’activation du module et le navigateur se charge d’afficher le contenus des pages référencées dans les cadres définis.

Si vous voulez voir un exemple d’implémentation, j’ai participé en mai à l’ajout du module Social API sur Shaarli. Comme on peut le voir c’est très simple et très innocent.

Pourtant, dès cette annonce on a pu voir des inquiets s’agiter et répéter à tort et à travers que Facebook s’infiltrait dans un module propriétaire de Firefox, que c’était la fin de la protection de la vie privée par Mozilla, une pluie de pierre et de feu, sacrifices humains, copulation entre chiens et chats, etc.

En dépit du fait que Mozilla avait accompagné un article expliquant que les modules Social n’avaient accès à aucune information (à l’exception de l’URL et de la description de la page quand l’utilisateure cliquait sur « Partager » évidemment) : Being social with privacy in mind

This new functionality doesn’t give your social network access to any additional information from your browser. Again: it’s a lot like having a tab open to your social network.

Trois ans plus tard la Social API est largement tombée dans l’oubli, Facebook a supprimé la page d’activation du module et les gens ont heureusement oublié que « Facebook est intégré par défaut dans Firefox »

Firefox Hello

Un peu sur le même modèle mais beaucoup plus récent, fin 2014, Mozilla annonce l’arrivée de Firefox Hello. Un bouton permettant la discussion instantanée directement dans Firefox en utilisant le protocole WebRTC.

Pour l’occasion ils ont fait un partenariat avec TokBoxi (propriétée de Telefonica), spécialiste dans les communications WebRTC, pour utiliser leur plateforme.

Rebelote, Mozilla a vendu la vie privée de ses utilisateuricess avec une extension privatrice rendue obligatoire qui ralenti incroyablement Firefox et qui espionne leurs moindres faits et gestes.

Alors que le bouton ne fait strictement rien tant qu’on ne clique pas dessus, de même que son affichage ne ralenti par Firefox puisque les boutons de barre d’outils sont chargés de manière asynchrone.

Firefox Pocket integration

C’est cette fois en Juin 2015 que Mozilla annonce l’intégration d’un bouton Pocket dans Firefox. Pocket est un service de marque-page dont le principal intérêt est sa capacité à reformater le contenu des pages qu’on y enregistre pour qu’elles soient plus lisibles.

Ici encore, sacrifice de la vie privée, espionnage des utilisateurs, ralentissements du navigateur.

Je vais quand même faire une mention spéciale à Numérama pour le titre le plus imbécilement racoleur et mensonger qu’il m’ait été donné de voir parmis tous les articles alarmistes sur le sujet : « L’add-on Pocket imposé par Mozilla sur Firefox avait une faille »

Notez l’élément de langage : « imposé » quand le simple fait de masquer le bouton en deux clic désactive effectivement l’add-on en question. Et notez également que la faille dont il est question ici n’a absolument rien à voir avec cet addon mais plutôt avec l’infrastructure de Pocket. Pour preuve, on peut lire l’article expliquant les détails de la faille et on peut également utiliser son cerveau et réaliser que Mozilla n’a publié aucun correctif en rapport avec Pocket au moment où la faille a été corrigée.

Comme avec Firefox Hello, le bouton ne fait toujours rien tant qu’on ne clique pas dessus, son affichage ne ralenti toujours pas Firefox et le simple fait de l’enlever de la barre d’outil désactive l’exécution du code d’affichage du bouton (logique).

La signature obligatoire des add-ons

En février 2015, Mozilla annonce que Firefox refusera de lancer les add-ons qui n’ont pas été signés sur addons.mozilla.org (Aussi appelé AMO). Cette décision est motivée par la sécurité des utilisateurs et vise à analyser le code de toutes les extension Firefox afin d’interdire celles qui tenteraient des choses curieuses comme envoyer le contenu de vos fichiers ou la liste de vos mots de passe sur un serveur distant. (Oui, les add-ons peuvent faire ça.)

L’initiative vise aussi à diminuer le nombre de barres d’outils et de malware publicitaires installés par des programmes comme… Flash Player.

Si les utilisateurices de Firefox peuvent se satisfaire d’un add-on installé de base qu’il est possible de désactiver, avec la signature obligatoire on touche là au cœur même de la liberté des gens puisque la première plainte émise a été de ne plus pouvoir télécharger ses add-ons ailleurs que sur AMO, d’ouvrir la porte à la voie de la censure et de transformer Mozilla en dictature de la pensée unique (rien que ça).

Pourtant, rien de tout ça n’est fondé.

Les extensions qui sont déjà sur AMO sont déjà soumise à une procédure de vérification. Elle est manuelle, effectuée par des bénévoles, la vérification peut prendre plusieurs jours. Et ça fait bien longtemps que personne ne s’en est plain. Ces add-ons seront signés automatiquement.

Les extensions qui ne sont pas sur AMO, et là est la nouveautée, seront soumises à une vérification automatique puis signées. Si la vérification automatique échoue c’est une vérification manuelle qui aura lieu, la même que celle pour les add-ons de l’AMO. Après signature, le/la développeureuse récupère le fichier xpi de l’extension et est libre de le distribuer où bon lui semble.

Avant signature et pendant le développement de l’add-on il faudra utiliser Firefox Aurora ou Firefox Developper Edition pour lancer des add-ons non signés.

Le point faible de tout ça reste la procédure de review manuelle. À titre d’exemple ça fait 9 mois que HTTPS Everywhere est en review sur l’AMO, étant un add-on soutenu par l’EFF ils ont pu obtenir une signature rapide en demandant directement à Mozilla mais tout le monde n’est pas l’EFF.

Mozilla est bien conscient de ça et prévoit d’améliorer le processus de vérification automatique ainsi que d’augmenter la taille des équipes salariées et bénévoles pour la vérification manuelle.

La fin des add-ons XUL et SDK

Hier, le 21 Août 2015, Mozilla annonce l’obsolescence des add-ons classiques qui utilisent XUL, des add-ons jetpack et des add-ons SDK pour introduire une nouvelle API d’add-on qui sera majoritairement compatible avec celle utilisée par Chrome et Opera mais qui sera étendue pour maintenir l’existence d’add-ons populaires existants.

La raison avancée est que les add-ons dépendant d’interface bas niveau empêchent les évolutions du navigateur. Electrolysis qui doit apporter le support du multi-process et le sandboxing des onglets a largement été retarder à cause d’incompatibilité avec des extensions très utilisées. Il est impossible de remplacer le Gecko vieillissant par Servo pour les mêmes raisons.

Mettre en place une API limitera, certes, les possibilités de développement d’add-ons mais permettra en même temps de faire des changement profonds dans le fonctionnement de Firefox sans trop s’inquiéter de voir tous les add-ons crasher dans tous les sens.

Les réactions FUDesques ne sont sont pas fait attendre et le développeur de DownThemAll! a été le premier à s’enflammer en déclarant la mort de DownThemAll, NoScript ou Greasemonkey.

Bref, c’est la fin de la personnalisation dans Firefox qui achève une transformation en clone de Chrome, transformation entamée avec l’arrivée de l’interface Australis apparue dans les nightlies fin 2013.

Dans les journaux LinuxFR c’est la panique également puisqu’on apprend ceci :

L’impossibilité d’accéder au coeur de Firefox et de son interface mènera à la disparition d’extensions extrêmement appréciées et utilisées telles que, outre DownThemAll, TreeStyleTab, NoScript, FireGestures, Drag2Go, Greasemonkey, TabMixPlus, FireFTP, FoxyProxy, AllInOne Sidebar et beaucoup d’autres.

Comprenons-nous bien : on ne parle pas ici d’un classique cassage d’API qui requiert la réécriture de certaines parties de ces extensions pour les rendre compatibles. Non, on parle d’un changement qui rendra ces extensions impossibles à implémenter en tout ou en partie.

Ou encore que l’API n’est pas officiellement publiée alors qu’il reste 18 mois à vivre aux extensions old-school.

Là encore, rien n’est fondé puisque dans l’article même de cette annonce, Mozilla donne le lien vers la documentation actuelle : WebExtensions sur laquelle figure des liens vers les modules et fonctions supportées, les fonctions qui ne sont pas encore implémentées, une mention indiquant qu’elles le seront prochainement ainsi qu’une liste de fonctions non supportées par Chrome qui seront conservées dans Firefox pour garder des extensions en vie :

We plan to add our own APIs based on the needs of existing Firefox add-ons :

  • NoScript-type functionality. This would come in the form of extensions to webRequest and possibly contentSettings.
  • Sidebars. Opera already supports sidebar functionality; Chrome may soon. We would like to be able to implement Tree Style Tabs or Vertical Tabs by hiding the tab strip and showing a tab sidebar.
  • Toolbars. Firefox has a lot of existing toolbar add-ons.
  • Better keyboard shortcut support. We’d like to support Vimperator-type functionality.
  • Ability to add tabs to about:addons.
  • Ability to modify the tab strip (Tab Mix Plus).
  • Ability to take images of frames/tabs (like canvas.drawWindow)

On voit bien que contrairement à ce qui est colporté, Mozilla est conscient de la nécessité de préserver l’existence de nombreuses extensions et qu’ils ne se priveront pas d’aller plus loins que l’API de Chrome pour le faire.

En bref, les extensions Chrome seront facilement portables sur Firefox, les extensions simple de Firefox seront facilement portable sur Chrome et les extensions plus lourdes conserveront leurs fonctionnalités avancées.

Conclusion

Je suis prêt à admettre qu’une certaine inquiétude puisse se faire sentir devant tous les changements opérés par Mozilla cette année mais il me semble qu’une fois contextualisés ces changements deviennent soit compréhensibles même si pas idéaux, soit justifiés.

Hello et Pocket résultent de partenariats commerciaux. On le sait et elle était extrêmement critiquée pour ça, Mozilla dépendait grandement du financement de Google (85% en 2011) pourtant et pour s’en détacher, c’est Yahoo qui devient le nouveau moteur par défaut en Novembre 2014 et on imagine bien qu’ils n’ont pas la puissance financière d’un Google.

Mozilla se trouve donc obligée de diversifier ses partenariat et jusqu’à présent en parvenant avec succès à protéger la vie privée de ses utilisateurices.

Du côté des add-ons, il s’agit de choix techniques qui visent à diminuer le nombre de malwares infectant le navigateur et à permettre plus facilement la réduction de dette technique présente dans Gecko.

J’ai, en revanche du mal à saisir ce qui pousse des gens qui ont tout à perdre de la défection de Firefox à propager des articles alarmistes et infondés pour manifester leur inquiétude.

Le seul effet que ces critiques ont est de ternir l’image d’un Firefox qui n’en a pas besoin et d’affaiblir le seul navigateur Libre et indépendant, poussant les gens à… utiliser Chrome.

À suivre : Les requêtes envoyées par un Firefox tout neuf.

 

Les communications chiffrées faciles en Mai 2015

Il y a un peu plus d’un an, j’ai parlé de moyens pour sécuriser nos communications sur nos téléphones mobiles. J’avais parlé de TextSecure, Redphone et Telegram.

Avec le vote de la loi sur le renseignement qui autorise maintenant le gouvernement à surveiller tout un chacun sans passer par le moindre juge, il me semble pertinent de refaire un point sur ce qui a changé ou non et sur les nouveaux moyens disponibles.

Si vous n’y connaissez rien en chiffrement, ce n’est pas grave, vous pouvez continuer à lire. Je ne présenterai que des outils qui fonctionnent immédiatement après s’être installés parce que je fais parti de celleux qui pensent qu’une bonne sécurité doit être accessible à toutes et à tous, même si on ne sait pas ce qu’est le chiffrement à courbes elliptiques (et aussi parce que les arcanes de la sécurité ont tendance à me filer mal au crane.)

Comme d’habitude, la sécurité n’est possible que lorsqu’il est possible d’examiner le code source des applications qui la mettent en place afin de pouvoir contrôler que le logiciel ne dissimule rien. Exit donc Whatsapp, Skype, Facebook, Bleep, etc. Même si ils prétendent fournir de la sécurité, on est sensé les croire sur parole sans vérification possible. Et vous avez vraiment envie de croire sur parole une entreprise capitaliste vous ?

Les logiciels dont je vais parler sont Libres, donc open-source et gratuits. Le chiffrement n’est actif qu’avec les contacts qui utilisent le même logiciel que vous.

Les messages mobiles

Cette section concerne les SMS et équivalents et se compose de trois logiciels très proches : TextSecure, SMSSecure et Signals.

Textsecure

TextSecure, la sécurité simplifiée

Celui là c’est un peu mon préféré. Il était déjà opérationnel l’an dernier et je l’utilise quotidiennement depuis ce moment là.

C’est une application pour Android qui peut remplacer (sans obligation) l’application SMS standard. Si vous décidez de conserver votre application SMS, vous recevrez les messages TextSecure dans TextSecure et les SMS dans l’application SMS.

Elle permet également d’envoyer des MMS qui seront, eux aussi, chiffrés.

Au premier lancement elle demande de saisir votre numéro de téléphone et quelques secondes plus tard vous recevez un SMS spécial qu’elle utilise automatiquement pour s’activer.

Vous pourrez dès lors envoyer des messages chiffrés aux contacts qui l’utilisent, sans même y faire attention. Le chiffrement est simplement indiqué par un petit cadenas au bas de chaque message envoyé ou reçu.

Les SMS reçus sont en vert et les messages TextSecure sont en bleu.

Concernant le mode de transport il y a plusieurs choses à savoir :

  • Les messages transitent par internet, il vous faut donc un forfait compatible (mais de nos jours pratiquement tous les forfaits incluent au moins 20Mo de données par mois et TextSecure en consomme environ 600Ko)
  • Ils transitent par les serveurs de Google puis par les serveurs d’OpenWhisper (les gens qui développement TextSecure).
    Comme les communications sont chiffrées, Google pourra uniquement voir que vous utilisez l’application (mais comme vous l’avez installée, ils se savent déjà) et de son côté OpenWhisper ne verra que l’identifiant de la personne à qui vous envoyez un message (pour lui délivrer un message, il est logique que le transporteur en connaisse l’adresse)

Télécharger TextSecure sur Google Play

Néanmoins, pour ne pas passer par Google et OpenWhisper ou pour ne pas être obligé⋅e d’utiliser internet, il y a une alternative : SMSSecure.

SMSSecure

SMS Encryption made easy

SMSSecure est très proche de TextSecure puisqu’il partage une grande partie de son code source et donc la même méthode de chiffrement.

Cette application est apparue quand les développeurs et développeuses de TextSecure ont décidé⋅es d’arrêter le support du chiffrement pour les SMS en raison d’un trop grand nombre de correctifs nécessaire qui les empêchaient de se concentrer sur l’ajout de nouvelles fonctions.

D’autres personnes ont donc copié le code source et ont supprimé tout rapport avec Google et OpenWhisper pour ne développer que la partie SMS.

L’interface est donc très proche/identique à celle de TextSecure et pour recevoir des SMS chiffrés elle doit obligatoirement remplacer votre application SMS standard. (Vous pouvez toujours utiliser TextSecure à côté.)

Elle permet également d’envoyer des MMS qui seront, eux aussi, chiffrés.

Une fois installée, il n’y a qu’à sélectionner un contact qui vous a prévenu qu’ille l’utilise et cliquer sur le petit cadenas en haut à droite. Elle va alors lui envoyer un SMS de préparation auquel son téléphone répondra automatiquement et la suite de la conversation se déroulera de manière sécurisée.

Concernant le mode de transport il y a là aussi des choses à savoir :

  • Elle utilise les SMS ; comme un message chiffré prend plus de place qu’un message classique il est possible qu’un message de moins de 140 caractères soit automatiquement coupé en plusieurs parties et que votre forfait soit décompté de plusieurs SMS. Attention donc si vous n’avez pas de SMS illimités.
  • Contrairement à TextSecure où Google peut savoir que vous l’utilisez et où OpenWhisper peut savoir à qui vous écrivez, ici c’est votre opérateur mobile et toute personne qui écoute le réseau téléphonique qui peut savoir à qui vous écrivez. À vous de choisir à qui vous préférez exposer votre liste d’interlocuteur⋅ices.

Téléchargez SMSSecure sur Google Play

Get_it_on_F-Droid

Signal

Signal - Private Messenger

Il y a un an, aucune solution libre n’existait pour les personnes possédant un iPhone. Mais maintenant il y a Signal.

Signal est l’exact équivalent de TextSecure pour Android et comme il est développée par les mêmes personnes, les gens utilisant Signal peuvent discuter en toute transparence avec les gens utilisant TextSecure.

L’application utilise la même procédure d’activation que TextSecure : Au premier lancement on saisit son numéro, on reçoit un SMS d’activation et c’est prêt.

La seule différence est qu’Apple n’autorise pas les applications tierces à accéder aux SMS, vous ne pourrez donc pas récupérer tous vos messages dans une seule application et le seul mode de transport disponible sera le même que TextSecure, avec les mêmes points à retenir que ceux cités plus haut.

Téléchargez Signal sur l'App Store

Les appels mobiles

Pour ce point, il y a une solution pour Android : RedPhone, et une solution pour iPhone : Signal (oui, la même)

RedPhone

RedPhone, la sécurité simplifiée.

Développée par OpenWhisper (les mêmes qui font TextSecure et Signal, décidément), RedPhone permet de passer des appels chiffrés via Internet. Ce ne sera donc pas décompté de votre forfait voix, mais de votre quota de données (sauf si vous êtes en Wifi, ce qui permet de s’affranchir du même coup d’une mauvaise couverture.)

L’activation se déroule comme avec TextSecure et l’usage est ensuite transparent. La réception d’appel se fait sans manipulation particulière et au moment de passer un appel, si RedPhone détecte que votre correspondant⋅e est dans son annuaire, il vous offrira le choix de sécuriser l’appel ou non.

Comme pour TextSecure, les données transitent par Google et OpenWhisper, donc Google sait que vous utilisez RedPhone et OpenWhisper sait qui vous appelez. Encore une fois, sans RedPhone c’est votre opérateur mobile qui sait qui vous appelez mais il sait également ce que vous racontez.

Télécharger RedPhone sur Google Play

Signal

Signal - Private Messenger

Pour iPhone, OpenWhisper a choisi d’unifier les usages et Signal permet également de recevoir ou d’émettre des appels vers d’autres personnes utilisant Signal ou RedPhone.

L’activation se fait en même temps que l’activation des messages et pour appeler quelqu’un il suffit de se rendre dans l’historique des messages et de cliquer sur appeler.

Téléchargez Signal sur l'App Store

La messagerie instantanée et les conférences audio/vidéo

Maintenant on s’éloigne un peu du mobile pour s’attaquer à un gros morceau de la communication en ligne : Les conférences audio / vidéo et la messagerie instantanée.

On connait tous Skype, le leader sur le marché. Il appartient à Microsoft, propose des fonctions payantes et, en dépit de la sécurisation qu’il annonce, s’avère être aussi sécurisé qu’une passoire (lien en anglais).

Pour le remplacer, il n’y a pas grand monde. Mais l’alternative la plus aboutie est Tox.

Tox

Tox me maybe

Tox est un logiciel encore incomplet mais néanmoins déjà utilisable au quotidien.

Il permet de communiquer de plusieurs manières :

  • Message texte avec une ou plusieurs personnes.
  • Conversation audio avec une ou plusieurs personnes.
  • Conversation vidéo avec une personne. (Les conférences vidéos à plusieurs sont prévues mais les développeurs galèrent un peu sur la meilleure interface possible pour ce cas.)

Après installation, Tox génère un identifiant : le ToxId. Il n’y a qu’à le communiquer à votre contact et après avoir accepté sa requête vous voila prêt⋅es à communiquer.

La communication s’effectue sans passer par aucun serveur et sans moyen de lire ou d’altérer le message pendant qu’il transite.

Cependant, comme il n’est pas tout à fait terminé il y a quelques points noirs qui seront prochainement résolus (d’ici la fin de l’année) :
* Pour accepter une requête de contact il faut être connecté⋅e. Si vous êtes déconnecté⋅e au moment où votre contact l’envoie, il devra la réémettre.
* Il est impossible d’envoyer des messages à quelqu’un qui est hors ligne car ils disparaîtront dans l’oubli.
* Il est impossible de rejoindre spontanément une conversation groupée, le seul moyen est d’y être invité⋅e.

Pour le reste tout y est : Smileys, audio, video, transfert de fichiers,…

Il est disponible sur Windows, sur MacOS et sur GNU/Linux.

Vous avez maintenant toutes les clés en main pour mettre des bâtons dans les roues de quiconque voudrait surveiller vos communications instantanées.

Ce n’est qu’en proposant à vos contacts de les utiliser que vos communications seront protégées puisqu’il n’y a qu’avec les contacts qui utilisent le même logiciel que vous que le chiffrement fonctionne. TextSecure et RedPhone sont compatibles avec Signal mais Tox ne fonctionne qu’avec les utilisateur et les utilisatrices de Tox et SMSSecure ne fonctionne qu’avec les personnes utilisant SMSSecure.

Alors n’hésitez pas, motivez vos contacts et sortez couvert⋅es !


Crédits : Lockpicking with the hackers. par Sally Crossthwaite

 

Jouer à Discworld sur un PC récent

C’est l’occasion de découvrir ou de redécouvrir ce point’n click de légende adapté de l’univers de ce grand monsieur et doublé par Eric Idle.

tumblr_mlme6myVhA1s9677oo1_500

Pour y jouer il nous faut trois choses :

  • L’émulateur de point’n click ScummVM. Si vous êtes sous GNU/Linux, il y a probablement un paquet dans le dépôt de votre distribution. Sinon, trouvez votre plateforme sur la page de téléchargement et lancez l’installation.

  • Les fichiers du jeu, que l’on peut trouver ici : LTF Abandonware France, Discworld (Prenez la version CD, pas la version automatique)

  • La musique haute qualité réalisée par James Woodcock : Discworld Enhanced SoundTrack (Vous pouvez prendre la version FLAC si vous avez de la place à perdre sur votre disque dur, sinon prenez la version OGG)

Après avoir installé ScummVM et décompressé le fichier jeu-00691-discworld_cd-pcdos.7z on obtient un fichier Discw.iso qu’il faut, lui aussi, décompresser. Ce qui nous intéresse est le dossier DISCWLD qui contient les données du jeu. Prenez ce dossier et placez le dans un endroit où vous saurez le retrouver facilement.

Prenez également les fichiers présents dans l’archive musicale (track01.ogg, track02.ogg, etc.) et placez les dans le dossier DISCWLD.

Maintenant, on va démarrer et configurer ScummVM. Une fois la fenêtre ouverte, cliquez sur option et cochez la case « Correction du rapport d’aspect », cliquez sur « OK » puis sur « Ajouter »

Vous devez maintenant chercher le dossier DISCWLD dans la liste de chemins, quand vous y êtes cliquez sur choisir, puis sélectionnez la langue avec laquelle vous voulez jouer (ce ne sont que pour les sous-titres) et terminez par « Ok. »

scummvm-ajouter

Vous êtes maintenant prêt⋅e à cliquer sur démarrer et à passer quelques heures d’amusement dans l’univers unique du Disque Monde.

Précision supplémentaire : Il est probable que vous trouviez la taille de la fenêtre un peu réduite. À l’époque on jouait à des jeux en 320×200 maintenant on a plutôt des écrans FullHD en 1920×1080, la différence de taille est… conséquente. Il est possible d’améliorer l’affichage en allant dans les options graphiques et de changer le « mode graphique. »

Le choix sera surtout une question de goût, personnellement j’aime bien le mode « HQ3x » que je trouve adapté au style cartoon du jeu mais certaines personnes le trouvent trop lissé et préfèrent une expérience plus authentique.

Amusez vous bien !

 

Fuck you ownCloud. Fuck you.

/! Ce billet contient un certain niveau de rage et de frustration envers un logiciel non coopératif et bugué. Merci d’en tenir compte lors de votre lecture. /!

Mise à jour du 09 décembre 2014, 14h

J’ai reçu un mail d’un lecteur qui m’explique comment il a laissé tomber Owncloud devant le manque constant de fiabilité et est passé à SeaFile. Il donne plus de détails sur son blog : « Ownbutt, SparkleShare, Git-Annex, Seafile… Quelle solution libre pour héberger et synchroniser ses fichiers ? » et a rédigé une dépêche sur LinuxFR pour présenter la version 3 : « Seafile, un Dropbox-like libre à héberger sort en version 3 »

Effectivement ça a l’air alléchant, mais SeaFile ne propose pas encore de service CardDav, ni CalDav pour synchroniser des contacts ou des calendriers. Ayant laissé tomber mon instance Baïkal pour passer à OwnCloud, ça m’embêterait de séparer à nouveau ces services là.

Article d’origine

ownButt est un logiciel en PHP qui sert à héberger son propre service de partage de fichiers. Globalement c’est un équivalent libre de Dropbox qui fait aussi de la synchro de contacts et de calendriers.

Il y a quelques temps maintenant, les gestionnaires du projet ont annoncé en grande pompe le module de chiffrement côté serveur qui permet aux utilisateurices de s’assurer que leur hébergeur ne pourra pas voir le contenu des fichiers envoyés. (À ce point là, il est important de noter que la personne en charge de l’administration dispose d’une clé de récupération, au cas où.)

Même si je suis mon propre hébergeur, je me suis empressé d’activer ce module lors de l’installation de mon instance il y a deux ou trois mois, imaginant déjà libérer mes potes du joug de Dropbox en les rassurant sur le fait que je ne pourrais pas accéder à leurs dick- ou clit-pics sans qu’illes soient au courant.

Si vous êtes pressés je vous la fait courte : J’aurais pas dû.

yjt6EZL

J’ai donc commencé à utiliser le client de synchronisation d’abord en transférant toute ma dropbox, puis en activant l’envoi automatique de mes photos prises sur mon téléphone, puis en y mettant mes dotfiles pour y avoir accès de partout.

Jusqu’au jour où, pour une raison inconnue, le client de synchronisation d’ownButt a merdé pendant la synchro de mon dossier .atom (l’éditeur de github) et je me suis retrouvé avec MariaDB qui râlait à la DUPLICATE ENTRY dans une table.

Évidemment à ce point il y a trop de fichiers en erreur pour corriger à la main et ça me semble trop aléatoire pour être scripté rapidement.

Après recherches, des pistes semblent indiquer que c’est dû à la manière dont le module de chiffrement gère (mal) les noms de fichiers. Je me suis donc dit que j’allais juste le désactiver, qu’ownButt déchiffrerait mes fichiers au fil des accès et que j’aurais juste à supprimer mon dossier pourri et à le renvoyer.

Hahaha, naïf que je suis. Il faut lancer manuellement une requête de déchiffrement dans les options et évidemment ça prend un temps fou. Firefox laisse tomber la requête AJAX au bout d’une demi heure, mais ça continue de tourner et c’est le max execution time de PHP qui détermine le temps avant plantage (En l’occurrence, ce fut une heure)

Je ne me laisse pas démonter et je met un petit set_time_limit(0) au début du script histoire d’être sûr et je le relance en gardant un œil sur les logs dans un tmux. Deux heures plus tard il plante à nouveau Calling method ->machintruc() on a non-object

Je commence un peu à m’échauffer parce que quand on utilise des fonctions qui renvoient null ou un objet, la moindre des choses c’est de vérifier qu’on a bien un objet après l’appel à cette fonction… J’ajoute cette vérif en loguant bien les erreurs et je relance le bouzin.

Après cinq heures à mouliner1 c’est au tour de MariaDB de se plaindre : General error: 2006 MySQL server has gone away Parce que oui, le timeout il est par défaut à 300 secondes. Donc on ouvre la connexion et cinq heures plus tard il y a plus personne au bout du fil. Nouvel essai.

Après 6 heures, les logs s’arrêtent de défiler (j’ai rajouté le log du chemin de chaque fichier déchiffré histoire de voir quand ça s’arrête parce que sinon c’est le noir complet) et comme il n’y a pas d’erreur je commence à me dire que ça y est, peut-être mes galères sont terminées. Je me connecte donc à l’interface web pour voir et… « Le chiffrement était désactivé mais vos fichiers sont toujours chiffrés. Veuillez vous rendre sur vos Paramètres personnels pour déchiffrer vos fichiers. » cette cochonnerie de message est toujours là. MAIS IL Y A PAS D’ERREUR ! APACHE SE TOURNE LES POUCES !

Évidemment après vérification, une grande partie de mes fichiers est toujours chiffrée, j’ai beau relancer leur script de merde ça ne change absolument rien et le client de synchro râle toujours qu’il n’a pas pu synchroniser * fichiers en raison d’une erreur inattendue sur le serveur.

Bref, je suis bon pour tout supprimer et tout renvoyer. Ce qui avec mon accès ADSL va prendre environ… 130 heures à vitesse maxi. (ノಠ益ಠ)ノ

N’activez pas le module de chiffrement d’ownButt. Sauf si vous voulez vous prendre la tête pour rien.


  1. J’ai 7Go de données, je veux bien que ça prenne du temps, mais c’est rageant quand ça plante pour des conneries… 
 

Un troll ? Ou pas un troll ? Différentes lectures d’une capture des Simpsons

Cette après-midi je suis tombé sur un partage trollesque d’un gros malin qui voulait se payer une bonne tranche de rigolade au détriment de ces imbéciles de féministes qui prennent la tête (cliquez sur la miniature pour le lire en entier) :

L'homme et la femme sont égaux...ou pas...enfin si !

L’homme et la femme sont égaux…ou pas…enfin si !

Ce truc est « intéressant » à plusieurs égards.

D’abord parce qu’il est partagé par des gens qui généralement s’érigent contre « la dictature de la pensée unique » et qui soudain, devant des femmes qui émettent des opinions à l’évidence contradictoires, sont tellement troublés qu’ils ne peuvent plus répondre que « Lol, ces connasses arrivent même pas à être d’accord. » et que ça me fait doucement ricaner.

Ensuite parce qu’il enchaîne des arguments pouvant être vus différemment selon le contexte où ils sont énoncés.

- Hommes, femmes, c'est la même chose. - Êtes-vous en train de dire que les hommes et les femmes sont identiques ?

– Hommes, femmes, c’est la même chose.
– Êtes-vous en train de dire que les hommes et les femmes sont identiques ?

Quand cette phrase provient d’une personne identifiée comme féministe, il est évident qu’on se place dans un contexte militant énonçant les choses comme elles devraient être (selon le point de vue de la personne.)

Mais elle peut aussi être prononcé par quelqu’un de non engagé, éventuellement plein de bonne volonté qui considère que l’égalité est d’ors et déjà acquise.

On appelle ça être gender-blind et il existe un équivalent raciste : color-blind. Ce sont ces gens qui refusent de voir les inégalités et les discrimination et s’en justifient par le fait que EUX, personnellement, traitent tout le monde sur un pied d’égalité.
Par conséquent, il serait formellement impossible qu’ils puissent bénéficier du moindre privilège ou qu’ils puissent être sexistes ou racistes.

Alors que non seulement leur comportement individuel importe peu quand on parle de systèmes oppressif (et très souvent ce comportement n’est même pas remis en cause), mais en plus, à moins de vivre dans une bulle isolée il est absolument impossible de ne pas prendre part à de tels systèmes.

Réduire les problèmes systémiques à un problème de personnes est un moyen facile des les faire disparaître sous le tapis. On appelle ça la dépolitisation et, si c’est malheureusement une des pratiques courante chez celles et ceux qui ne luttent pas pour l’égalité, elle est encore plus présente chez celles et ceux qui luttent CONTRE.

Dans ce cas, c’est là que les féministes arrivent et expliquent que la situation est loin d’être égalitaire, qu’il existe des différences entre les hommes et les femmes comme par exemple dans le partage inégal des tâches ménagères, la valorisation inégales entre les activités traditionnellement dévouées aux hommes ou aux femmes, ou encore dans les différences de salaire à poste et compétences équivalentes.

C’est là aussi que des gens comme (par exemple) les anti-gender de la manif pour tous arrivent (mais ils ne sont pas les seuls) et protestent puisque selon eux les hommes et les femmes étant biologiquement différents, il est donc naturel que les unes soient traitées différemment des autres. Ils en profitent au passage pour passer sous silence que ce qui est « naturel » n’est pas si évident et intuitif à définir que ça mais aussi que nos comportements et nos actes sont très largement influencés par notre culture.

- Les femmes sont uniques dans tous les sens du terme. - Et maintenant il dit que les hommes et les femmes ne sont pas égales !

– Les femmes sont uniques dans tous les sens du terme.
– Et maintenant il dit que les hommes et les femmes ne sont pas égales !

On peut retrouver ce point de vue dans « Women are unique in every way » puisque si les femmes sont uniques mais ont toujours pour point commun d’être des femmes, elles sont bien à traiter différemment (on peut même y voir le sexisme bienveillant du galant homme qui traite chaque femme de manière exceptionnelle.) D’où la protestation : « Now he’s saying women and men aren’t equal. »

Mais en même temps, rappeler que les femmes sont chacune uniques et ne peuvent pas se cantonner à ce que la société voudrait leur imposer c’est aussi et surtout ce que disent les « social justice warriors », en généralisant aussi aux hommes, puisque selon nous, chaque unique individu a ses réactions, ses envies, ses préférences propres et il serait beaucoup plus intéressant de vivre dans une société où on ne force pas les gens à rentrer dans un moule qu’ils n’ont pas choisis pour mieux les exploiter.

Bref, ce petit extrait des Simpsons montre bien que contrairement à ce que certaines personnes aiment bien ânonner ad nauseam (« Moi je regarde les idées, pas les personnes. ») une même phrase peut vouloir dire tout et son contraire selon les intentions de son auteur.