Vidéo conférence – violation de domicile

J’écris ce petit billet pour faire part de mon immense étonnement face à la ruée du monde enseignant vers les vidéoconférences pour établir un travail d’enseignement à distance pendant le confinement dû au covid.

Jusqu’à présent, j’ai pensé que le domicile était pour chacun un lieu protégé du regard d’autrui, sauf en cas de circonstances si exceptionnelle qu’un juge devait statuer pour délivrer un mandat d’investigation à des policiers tenus de rendre des comptes quant à leurs fouilles.

À l’annonce de la nécessité d’un enseignement à distance, beaucoup d’enseignants ont décidé de donner des leçons en imposant clairement aux élèves le devoir d’utiliser la vidéo et cela, en période de confinement, dans leur domicile et plus particulièrement dans leur chambre. Certains on même demandé de photographier celle-ci. Tout cela avec la bénédiction implicite des départements de l’instruction publique.

Or, non seulement les outils utilisés, comme Zoom, Skype ou Team, sont des logiciels au code fermé dont aucune garantie de confidentialité n’est donnée, à part la parole de leur propres développeurs, mais leur utilisation étant faite sous l’autorité des enseignants, on peut se demander dans quelle mesure il est possible pour des enfants, des adolescents pour lesquels il est déjà difficile d’échapper à la participation à des réseaux sociaux utilisés par leur camarades, de s’opposer à une autorité scolaire qui s’introduit ainsi dans leur foyer.

Pour moi, la réponse est clairement qu’il ne leur est pas possible de refuser. Et non seulement l’élève ne peut le faire, mais sa famille non plus. Est-il normal qu’un enseignant puisse clairement écouter ce qui se passe dans une famille, se rendre compte des discussion qui s’y déroulent, des propos qui peuvent à tort ou à raison être tenu par chacun et plus encore, s’introduire dans l’intimité de la chambre d’un enfant ou d’un adolescent ?

Il est piquant de constater que des enseignants clamant haut et fort avant le covid la nécessité du respect de la vie privée, ne voient rien à redire à l’obligation qu’il donnent à leurs élèves d’utiliser la vidéo. Car, prétendre qu’ils ont le choix n’est pas honnête.

Pour moi, l’utilisation de logiciels de vidéo-conférence, libres et à plus forte raison propriétaires, est clairement une violation de domicile sans aucune justification.

Car il est totalement possible de réaliser un enseignement à distance sans utiliser la vidéo. De plus des logiciels respectueux des données de connexion ou des messages échangés par leur biais avec les élèves existent, le plus connu étant Moodle.

22. Éditer du texte en ligne de commande

Ne tournons pas autour du pot, nous allons parler de vim et pas de emacs, même si les idées de RMS sont dans mon cœur.

Pendant longtemps, j’ai utilisé vi comme éditeur de texte en étant persuadé je j’utilisais vim. Puis un jour, après avoir configuré mutt (maileur en ligne de commande) pour utiliser vi, j’ai eu besoin de la correction orthographique. Or, tout ce que j’ai tenté de faire pour y parvenir n’a pas fonctionné jusqu’au moment où j’ai regardé si vim était bien installé. Il ne l’était pas. J’utilisais vi dans sa nudité la plus pure sous Debian. J’ai donc installé vim et beaucoup de choses sont apparues qui m’ont donné envie d’écrire cet article.

Configuration

La configuration de vim se fait dans le fichier ~/.vimrc. Voici une configuration très simple qui permet de voir comment cela fonctionne :

ab moi Machin Truc <machin.truc@chose.org>
" Un commentaire
set mouse=a
set number
set spell
set t_Co=256
map <F2> :set spell!<CR>
set spelllang=fr,en
hi SpellBad ctermfg=Red ctermbg=NONE

La première ligne crée un alias. En tapant « moi » dans vim suivi d’un espace, le texte « moi » sera remplacé par « Machin Truc <machin.truc@chose.org> ».
Ensuite se trouve un commentaire, annoncé par des guillemets « .
mouse=a précise que la souris peut être utilisée pour placer le curseur. C’est très utile, car dans vim, on se déplace dans la ligne et non de haut en bas à travers les lignes.
number spécifie qu’on veut des numéros de lignes.
spell spécifie qu’on peut utiliser un correcteur orthographique.
t_Co=256 fait passer la console en mode 256 couleurs.
map … lie la touche F2 à une bascule qui permet de passer au ou de revenir du mode de correction orthographique.
spelllang précise évidemment la ou les langues utilisées.
hi configure la couleur du texte (rouge) d’un mot mal orthographié et de son fond (ici aucun).

Correction orthographique

Un bon article sur la correction orthographique sous vim : http://www.jdhp.org/docs/tutoriel_vim_spellfr/tutoriel_vim_spellfr.html

La correction d’un mot se fait en tapant «z=». Des propositions sont faites alors et il faut choisir l’une d’entre elle dans la liste par son numéro.

On peut corriger toutes les occurrences d’un mot avec la commande «:spellr».
On passe de faute en faute vers le bas avec «]s» et vers le haut avec «[s ».
On peut désactiver et réactiver la correction orthographique, avec «:set spell» et «:set nospell».

Éditeur de texte

Déplacements

Ici, vi et vim se confondent. Ce sont des éditeur dédié au clavier et clairement orienté vers la logique de la structure. Celle-ci fait clairement la différence entre la structure logique du texte qui fait le sens d’un paragraphe et ce que l’on voit à l’écran. Un paragraphe logique peut s’étaler sur plusieurs lignes à l’écran. À la fin de celui-ci se trouve un saut de paragraphe. Pour l’écran, il y a plusieurs saut de lignes dans ce paragraphe. Si l’éditeur de texte ne fait pas la différence entre ces sauts et un saut de paragraphe, quand vous le copierez dans un éditeur ou le texte brut est nécessaire, en HTML par exemple, le paragraphe formera plusieurs lignes et la justification sera mauvaise. De plus la numérotation ne sera pas celle des lignes logiques, c’est-à-dire celle des paragraphes, mais celle arbitraire due à la largeur de l’écran.

Cela a une grande importance pour le déplacement à l’aide des touches clavier. Pour se déplacer dans une ligne, les flèches gauche et droite ou les touches H et L respectivement permettent de se déplacer d’un caractère vers la gauche ou la droite respectivement. Entre les lignes les flèches bas et haut ou les touches J et K respectivement permettent de se déplacer d’une ligne vers le bas ou le haut respectivement.

← ou H : un caractère vers la gauche
↓ ou J : une ligne vers le bas
↑ ou K : une ligne vers le haut
→ ou L : un caractère vers la droite

Pour les déplacement dans la ligne, il faut avoir recours aux touches suivantes :

0 : curseur sur le premier caractère de la ligne
17→ ou 17L : curseur 17 caractères plus loin vers la droite
5← ou 5H : curseur 5 caractères plus loin vers la gauche
^^ : curseur sur le premier caractère de la ligne
$ : curseur sur le dernier caractère de la ligne
w : saut d’un mot vers la fin de la ligne (séparateurs de mots non alphanumériques)
b : saut d’un mot vers le début de la ligne (séparateurs de mots non alphanumériques)
W : saut d’un mot vers la fin de la ligne (séparateur de mots : espaces)
B : saut d’un mot vers le début de la ligne (séparateur de mots : espace)
( : saut vers le début de la phrase ou le début de la phrase précédente
) : saut vers le début de la phrase suivante

gg : curseur au début de la première ligne
G : curseur au début de la dernière ligne
7G : curseur au début de la 7e ligne
{ : saut vers le paragraphe précédent
} : saut vers le paragraphe suivant

H : curseur en haut de l’écran
M : curseur au milieu de l’écran
L : curseur en bas de l’écran

Modifications

21. Météo en ligne de commande

Dans le cas de la météo, les données à récupérer doivent forcément être sur internet. L’idée est donc « simplement » de les récupérer à l’aide d’un programme généraliste qui n’est pas spécifiquement dédié à la météo. Il s’agit de

CURL
cURL est une interface en ligne de commande, destinée à récupérer le contenu d’une ressource accessible par un réseau informatique.
Cette commande va nous permettre d’interroger un service externe, mais surtout elle offre une interface proche de la ligne de commande classique comme on va le voir. La première étape est donc d’installer cURL si ce n’est déjà fait :
apt-get install cURL
Puis, on peut immédiatement interroger la ressource wttr.in ainsi :
curl wttr.in
pour obtenir les prévision en un endroit non choisi.
À l’instar de la ligne de commande, on peut avoir accès au options disponibles pour ce service de la manière suivante :
curl wttr.in/:help
Le résultat est une magnifique aide, formellement très semblable à ce que peut fournir un logiciel en ligne de commande, qui va nous permettre de spécifier l’utilisation de la langue française et le lieux choisi :
curl -H "Accept-Language: fr" wttr.in/vannes
et le résultat est magnifique :

Relevons l’existence d’un autre service tout aussi simplement accessible, mais moins abouti graphiquement et qui fait appel à la commande finger, généralement dédiée à des informations sur l’utilisateur (essayez finger dans options), mais utilisée ici pour interroger un service externe :

finger vannes@graph.no

Quelques options sont décrites dans cet article si vous voulez l’utiliser, mais nous n’irons pas plus loin ici.

Algues vertes

« L’histoire interdite »

Un ouvrage passionnant, sérieux et très documenté. Présenté sous forme de bande dessinée, il ouvre une fenêtre sur les pollutions de l’agriculture intensive en Bretagne et sur les méthodes des pollueurs-non payeurs pour se dégager de toute responsabilité. Il montre comment on peut procéder pour remettre systématiquement en cause les études scientifiques, à l’instar de ce que les fabriquant de tabac ont trop souvent fait. Il montre surtout que ce type d’agriculture est totalement incompatible avec un monde non seulement respectueux de la nature, mais aussi des gens, autant paysans que passants.

L’utilisation de la bande-dessinée pour un ouvrage d’investigation est ici parfaitement adaptée à cette situation de paysages et d’hommes malades d’une productivité qui déraille. À lire absolument.

WordPress : catégorie d’accueil

Ce tout petit article pour décrire comment demander à WordPress d’afficher une catégorie d’articles en page d’accueil.

Évidemment, il ne faut pas faire afficher une page statique comme page d’accueil, mais des articles. Pour cela il faut aller dans Réglages -> Lecture et choisir « Les derniers articles ». Mais, dans ces conditions, ce sont les articles de toutes les catégories qui vont s’afficher.

Pour filtrer ceux-ci pour n’en afficher qu’une seule, il suffit d’ajouter au fichier functions.php du thème, tout à la fin :

function affiche_category($query) {
if ($query->is_home() && $query->is_main_query()) {
$query->set('category_name', 'accueil');}}
add_action('pre_get_posts', 'affiche_category');

Dans un premier temps, on y définit une fonction dont l’action sera de ne retourner que les articles de la catégorie accueil. Elle porte évidemment le nom affiche_category et reçoit une requête ($query), un article par exemple. En premier lieu, elle détermine si l’article est destiné à la page de blog de WordPress (is_home), c’est-à-dire la page principale des articles (celle-ci pourrait ne pas être la page d’accueil du site si une page statique avait été choisie pour celui-ci ; une autre fonction pourrait alors être utilisée is_front_page différence) et si la requête est principale (porte sur des articles ou page et non sur leur contenu). Si les deux conditions sont remplies, elle utilise la méthode set pour sélectionner les articles qui font partie de la catégorie dont le nom est accueil (catégorie définie préalablement par vous-même dans WordPress).

Enfin, cette fonction est déclarée comme une action à effectuer avant (pre_get_posts) la requête principale (is_main_query). Référence.

Voilà, notez que d’autres possibilités existent pour choisir une, ou plusieurs, catégories (RTFM).

Intelligence collective

Pendant cette pandémie de coronavirus, il arrive qu’on entende parler d’intelligence collective. Que beaucoup de personnes se mettent à réfléchir sur la production de respirateurs et on loue l’apparition d’intelligence collective.

La discussion ci-dessous s’y réfère explicitement et me semble intéressante par les avis contrastés auxquels elle mène en terme de reconnaissance vocale. Car, mobiliser de nombreuses ressources humaines pour traiter un problème ne suffit certainement pas à amener un collectif, aussi important soit-il, à l’intelligence. La résolution de problèmes tels que les déplacement en voitures ou l’information par la vidéo le montre clairement.

La relation entre la reconnaissance vocale et l’intelligence artificielle est aussi troublante de ce point de vue puis on y fait l’hypothèse que c’est en utilisant un grand nombre de cas qu’on pourrait contextualiser les discours. En un sens, c’est l’espoir de pouvoir utiliser une forme d’intelligence collective pour rendre le système moins con. Espoirs déçus semble-t-il. Mais ne devait-on pas s’y attendre.

Extrait de :

La reconnaissance vocale aux prises avec la réalité sociologique – Décryptualité du 6 avril 2020

Luc : Sujet du jour, on va reprendre certains éléments notamment sur cette question de l’intelligence collective qui était dans un des articles, pour parler un petit peu, notamment, de reconnaissance vocale et de la nécessité, ou pas, que les humains, que les développeurs interviennent pour qu’un système automatique soit pertinent. Le point de départ c’est un article2 que j’ai vu dans Next INpact qui reprend quelque chose publié par The Verge un magazine américain. Ils ont repéré que les outils de reconnaissance vocale identifiaient mal les mots dans 19 % des cas quand les entretiens étaient faits avec des Blancs et dans 35 % des cas quand c’était fait avec des Noirs américains. Est-ce que le système est raciste ?

Manu : Le système est peut-être raciste, en tout cas il a des comportements qui le semblent et qui maltraitent les utilisateurs du système. C’est quelque chose qu’on retrouve avec les images : les images ont l’air d’être calibrées par des gens qui sont blancs et qui n’arrivent pas à bien gérer des images de gens noirs.

Luc : Pour moi c’est comparable mais pas ce n’est pas tout à fait la même chose parce que tu ne parles pas différemment que tu sois noir ou blanc. En revanche, aux États-Unis, il y a une dimension sociologique très importante : on sait que les populations noires américaines sont très majoritairement défavorisées, donc vont potentiellement avoir des accents liés à leurs groupes sociaux qui vont être plus populaires, etc., des façons de parler, indépendamment du fait que leur peau soit noire, le phénomène physique lié à ça n’a aucun lien, c’est simplement qu’ils vont être sous-représentés dans les échantillons de gens qui vont parler ou ce genre de choses. Sur les images, par contre ?

Manu : Par contre, là ce sont les programmeurs qui vont calibrer les images et les dispositifs de prise d’images, et qui vont plutôt orienter dans un sens ou dans un autre. Souvent, quand les programmeurs mettent en place ces outils, c’est eux-mêmes qu’ils utilisent comme point de départ et c’est leur groupe, leur entourage d’une manière générale, donc ils vont calibrer en partant sur des visages blancs traditionnels.

Luc : Après, ils vont éventuellement prendre des tas de paquets de photos et ils vont aller taper dans des photos où si la population est majoritairement blanche il y aura beaucoup de gens blancs et, potentiellement, des banques de photos de trucs qui les intéressent, en tout cas qui leur semblent correctes, du coup il va y avoir des biais. Il y a eu le même type de problèmes avec la reconnaissance faciale des visages asiatiques par exemple, parce que, pareil, les systèmes sont mal alimentés. Donc il n’y a pas besoin qu’il y ait un projet derrière, c’est juste que c’est aussi le reflet du milieu social dans lequel naviguent les gens qui mettent ça en place.

Manu : J’aurais tendance à dire, c’est une expression d’informaticien, GIGO, garbage in, gabage out. En gros, si on met du caca dedans on va obtenir du caca à l’extérieur. Dans le monde du Libre, il y a des gens très intéressants qui essayent d’obtenir des données pour ensuite en faire quelque chose, notamment sur la reconnaissance vocale. On a des amis à Mozilla qui bossent là-dessus.

Luc : Il y a un projet Mozilla, c’est Common Voice3, comme la voix en anglais, voice.mozilla.org, dans lequel, selon la bonne logique du Libre où chacun apporte quelque chose et de l’intelligence collective, tout le monde peut venir contribuer, parce que, évidemment, ce genre de système a besoin de beaucoup d’échantillons et de gens qui écoutent. On peut à la fois enregistrer sa voix et écouter les échantillons enregistrés par d’autres personnes pour que le système sache si c’est un bon échantillon sur lequel travailler ou pas. On a regardé vite fait et on va vous faire écouter une partie validation d’un des échantillons sur lequel on est tombé. Pour moi il illustre très bien le problème.

Voix off : Une partie de la chanson réside dans sa sonorité, avec les thèmes « archetypique ».

Luc : Le mot « archetypique » n’existe pas, c’est archétype, ça s’écrit « ch », le mot est un peu compliqué, la personne qui parle se prend les pieds dans le tapis, elle ne connaît probablement pas le mot. Typiquement, là on voit la phrase qui fait que quelqu’un qui a un petit peu moins de culture littéraire que quelqu’un d’autre va se planter. Peut-être que cette personne aura un accent de certaines catégories sociales moins éduquées, mais qui vont avoir du mal à être représentées dans ce cas-là.

Manu : C’est quelque chose qu’on va avoir dans tous les cas et c’est là où on espère que l’intelligence collective, comment on pourrait dire, soit bien regroupée, récupérée, tamisée, pour en ressortir les bonnes informations. Ce n’est pas facile, je pense qu’il y a un gros effort à faire derrière pour éviter les biais.

Luc : Un autre truc là-dessus, j’en ai écouté plein, je me suis amusé à les valider, c’est 80 % d’hommes qui parlent. Il y a très peu de femmes dans les enregistrements de Mozilla. On voit qu’en laissant ça ouvert, finalement Mozilla récupère des gens qui sont plutôt libristes, qui sont souvent des hommes, souvent bien éduqués. Rien que dans le choix des textes, des fois il y a des noms de villes ou des noms propres étrangers, super durs à dire.

Manu : On avait eu des cas, qu’on avait trouvés amusants tous les deux, de données qui avaient été fournies à des machines et qui avaient dégénéré derrière, notamment dans des cas d’assistants conversationnels qui essayaient de discuter avec les individus sur Internet et qui étaient devenus pseudo-nazis.

Luc : Microsoft avait fait ça, ils avaient mis une IA et on pouvait aller tchatter avec parce que c’était trop cool. Évidemment tout le monde s’est amusé à la troller et en 48 heures, je crois, elle est devenue nazie, misogyne, à peu près le pire qu’on puisse imaginer, parce que c’était rigolo.

Manu : C’est là qu’on se rend que la machine elle-même, si on ne lui donne que des mauvaises informations, elle ne va pas en tirer autre chose que des mauvaises informations.

Luc : Tu pourrais trouver de bonnes conclusions avec des mauvaises informations : le propre de l’intelligence naturelle c’est d’être capable de comprendre les choses par rapport à leur contexte. Or, la machine ne comprend pas, n’a pas cette capacité-là, donc elle ne crée aucun sens. Elle se contente de faire des traitements statistiques d’une base de données. Il y a des gens qui disent « on va lui donner vraiment des tonnes et des tonnes de données, des milliards de données, du coup ça va aller ». Ce que je pense c’est qu’on peut avoir les trucs les plus puissants du monde et mettre des quantités de données pas possibles, le système ne s’en sortira jamais parce qu‘il n’est pas capable de comprendre le contexte. Il faut que quelqu’un lui mette le contexte.

Manu : Ça c’est un sujet qu’on a déjà eu entre nous, clairement.

Luc : Et on n’est pas d’accord !

Manu : Et on n’est pas d’accord ! C’est peut-être mon côté informaticien : j’ai l’impression que si on donnait à un ordinateur toutes les données du monde, à un moment donné il en retirerait une information contextualisée qui lui suffirait pour passer pour nous. Clairement passer le fameux test de Turing par exemple.

Luc : Non ! Je pense que non parce qu’elle n’est pas contextualisée. Le contexte est hyper-variable et à moins que quelqu’un soit capable de décrire le monde tout entier, constamment, de dire « dans tel contexte ceci, dans tel contexte cela », sachant que le contexte change tout le temps puisqu’on a tous des capacités à inventer des mots, à faire de la poésie, des analogies, des machins, etc., la culture change constamment, c’est une mission impossible en fait.

Manu : Moi je rétorquerai, mon côté informaticien, que oui, effectivement, on n’y arrive pas aujourd’hui. Clairement avoir un contexte qui soit malléable, évolutif, qui soit capable de prendre en compte peut-être même des choses personnelles, ça va être difficile pour l’ordinateur, mais ce n’est qu’une question de quantité. La quantité est une qualité et on peut transformer, c’est ce qu’essayent de faire les géants du Web, les Google, les Uber même avec leurs outils de conduite automatique, ils essayent, à partir de masses de données, d’en retirer quelque chose. Est-ce que ce sera une intelligence ? Non. Est-ce que ce sera quelque chose qui aura un bon sens ? Non, parce que je ne suis même pas sûr qu’on puisse définir entre nous ce qu’est un bon sens. C’est comme la conscience. Allez définir la conscience ! Moi je pense que ce n’est pas définissable, parce que peut-être même que ça n’existe pas et que nous, en tant qu’humains, finalement nous ne sommes que la masse des données qui nous constituent, de manière imparfaite parce qu’on se va se planter régulièrement, on va régulièrement se tromper dans les contextes qu’on utilise nous-mêmes, comme un ordinateur, parfois pire qu’un ordinateur, on va faire des erreurs de bon sens, dans le sens où toi tu l’entends.

Luc : C’est là-dessus qu’on n’est pas d’accord, donc on n’arrivera pas à se mettre d’accord ici. Pour moi c’est une différence fondamentale dans la façon dont l’information est traitée et on peut en mettre des tonnes, ça n’améliorera pas la situation, même si on fait des erreurs, il y a des erreurs absolument grossières qu’on ne fera pas. De la même façon que tu as même des animaux qui sont capables de catégoriser des éléments en en ayant vu très peu ; en fait, c’est cette question de la compréhension du contexte. Sauf à ce que la technologie évolue et qu’on passe sur des systèmes d’analyse qui soient radicalement différents, pour moi on va continuer comme depuis les années 50 en pensant qu’on va y arriver parce que ce sera plus puissant, qu’on aura plus de données.

Manu : Il est possible effectivement, comme on le dit depuis 60 ans, « dans 20 ans, l’intelligence artificielle sera au niveau d’un être humain ». Et aujourd’hui encore on dit souvent « dans 20 ans ça y est, on y est » . Donc c’est possible que ce soit toujours le cas, que ce soit toujours à l’infini.
En tout cas on peut se mettre d’accord, déjà aujourd’hui, c’est qu’on fait beaucoup de conneries avec l’informatique, il y a beaucoup d’algorithmes dont il faut se méfier, il y a beaucoup d’usages qui sont mauvais et, effectivement, il faut qu’on y regarde de près. Éviter que les machines deviennent racistes, qu’elles deviennent misogynes, xénophobes et qu’elles nous entraînent dans des comportements qui seront vraiment gravés dans le silicium parce que ce serait particulièrement mauvais pour nous. Là il faut y faire attention, c’est pour ça que le Libre est important.

Luc : Et garder le contrôle de l’informatique.

Manu : Exactement. Là on est d’accord, je pense, et il faut qu’on y bosse.