Présents à la réunion, en fonction de l'ordre d'arrivée :
Olivier (M),
moi,
Emmanuel (un nouveau, aucun rapport avec Emmanuel S),
Théo,
Nils,
Jérôme,
Nicolas,
Jérôme,
Laurent (G),
Charles,
Simon de la Quadrature du Net,
un participant dont je n'ai pas appris le nom,
Laurent (B),
Dam's,
et David (L).
Nous avons mangé des salades aux lardons, ou au Saint-Félicien,
de l'andouillette, du saucisson de Lyon et de la bavette.
Nous avons bu diverses bières, dont de l'Orval,
ainsi que de la vodka et deux Ricard et une limonade.
Avec la venue de Simon, il a été question de
la Quadrature du Net.
Nous avons également parlé d'Internet,
et d'informatique.
Quant à Perl, il en a été question dans certains
sujets concernant Internet.
Simon ne s'est pas contenté d'apporter les
« Pi-shirts » promis, il nous a évoqué
les dernières actualités concernant les sujets
qui occupent la
Quadrature du Net.
En ce moment, le Parlement européen participe à la discussion
sur un projet de traité nommé
« ACTA »,
destiné à lutter contre la contrefaçon. Il s'agit autant du
piratage des logiciels informatiques que de la contrefaçon
des chemises Lacoste et des briquets Cartier.
Or, il se trouve que les députés européens ont dû
signer un accord de non-divulgation, destiné à les
empêcher de communiquer au public la teneur du projet
de loi avant qu'il soit voté. Certains ont trouvé
cela si scandaleux qu'ils ont décidé de passer outre
la consigne contre la divulgation et de
laisser sortir certains passages du projet.
Pour cela, il y a eu paraît-il des scènes dignes de James Bond,
avec des députés ouvrant leur dossier sur les genoux
cachés par leur pupitre et photographiant en douce
les documents pour les diffuser ensuite.
Le résultat a été que le
Parlement Européen
a décidé que la discussion du projet se ferait au grand jour
de façon démocratique, ou bien le projet de traité serait
rejeté d'office s'il n'y a pas de discussion ouverte.
Le processus démocratique a été sauvé, mais il reste
encore du travail pour la Quadrature du Net.
Lors du vote de la
loi HADOPI deuxième version
et du vote de la
loi LOPPSI,
certaines chaînes de
télévision ont montré une Assemblée Nationale
active, assidue, débordant de monde, participant
aux débats. La vérité est très différente :
il n'y avait que quelques dizaines de députés
lors du vote de cette loi. En conséquence de quoi,
la Quadrature du Net a porté l'affaire devant le
CSA
qui a jugé que les chaînes en cause devraient
diffuser un démenti aux heures de grande écoute.
Simon évoque un homme d'affaires américain, qui
finance les associations comme la sienne avec les
bénéfices qu'il effectue à la bourse. Cet individu
veut bien donner de l'argent à l'association, mais
à la condition expresse qu'il ne soit pas le seul
à contribuer. Non pas qu'il cherche à économiser ses
deniers personnels, mais il souhaite que l'association
ne devienne pas le porte-parole de ses requêtes à lui,
mais qu'elle continue à défendre les intérêts de
plusieurs classes de la population.
Simon nous donne la liste des membres de la
Quadrature du Net. Il y a un seul permanent qui,
jusqu'à présent, ne touchait pas de salaire.
Heureusement pour lui, avec la campagne d'appel
au financement de l'association, il y a un peu plus
de réserves financières et donc, ce permanent peut
disposer d'un salaire régulier. Précédemment, il
ne recevait que le remboursement des notes de frais.
Et à part ce permanent, il y a quelques
autres personnes, dont
Simon, qui travaillent, à temps partiel.
Nils s'est récemment intéressé à
Skyblog.
Comme le nom le laisse deviner, ce
site a été créé par l'informaticien
de Skyrock,
qui n'a pas prévu l'ampleur
et le succès de ce site, D'ailleurs, cela
se voit lorsque l'on examine l'aspect technique
du site. Ainsi, les commentaires ajoutés à un
billet sont simplement des paragraphes de
texte séparés par des balises <p>.
Il n'y a pas de structure, comme des listes
« à puces » <ul> <li>.
Un autre aspect de cette impression de
bricolage est que l'ajout d'un commentaire
n'est pas immédiat. Il faut attendre une période
de baisse de charge, pour que le serveur puisse
consacrer un peu de CPU à regénérer les pages HTML
dans lesquelles des commentaires ont été ajoutés.
De même, il existe un moteur de recherche pour
Skyblog. Ce moteur a été écrit par une société
extérieure, dont c'est la compétence principale.
On observe que les résultats des requêtes
que l'on soumet au moteur de recherche ne reflètent
pas l'état actuel du site, mais l'état de la veille.
Nils pense donc, avec un peu de mauvaise foi,
que tous les soirs, l'informaticien de Skyblog
constitue une archive .tar.gz des fichiers
modifiés et qu'il envoie cette archive à la
société qui s'occupe du moteur de recherche.
Le public de Skyblog est nettement séparé
du public de
Facebook.
Les adolescents vont sur Skyblog tandis
que leurs parents vont sur Facebook.
Les adolescents préfèrent éviter
Facebook, car leurs parents s'y trouvent
déjà et, dans le cas où un adolescent ouvrirait
un compte sur Facebook, inévitablement son père
ou sa mère lui soumettrait une proposition d'amitié,
proposition que l'adolescent aurait du mal
à refuser. En conséquence de quoi, les parents
pourraient surveiller l'activité de leur enfant
sur Internet, ou plus précisément sur le web 2.0.
Tandis que Skyblog n'attire pas les parents, donc
cela permet aux adolescents d'avoir leur
domaine réservé loin du regard inquisiteur de
leurs parents.
Il existe néanmoins une catégorie d'adultes
qui fréquentent Skyblog : les professeurs
de lycée, qui tentent de savoir un peu ce
que pensent leurs élèves. On différencie aisément
le blog d'un professeur du blog d'un lycéen.
Le blog d'un lycéen est écrit en style
SMS
tandis que le blog d'un professeur est écrit
en français correct et le sujet principal
de ce blog est la détérioration de l'orthographe
chez les jeunes.
Skyblog n'est pas seulement utilisé par les adolescents
français, mais également par les adolescents
québecois. C'est ainsi que Nils a lu sur un
blog l'interjection « KR1S » qu'il a
eu du mal à interpréter, jusqu'au moment où
il a réalisé que c'était l'écriture en mode
SMS
du juron québecois « Christ ! »
Il espère voir un jour écrit « Tabernacle! »
en mode
SMS,
mais il craint que sa recherche n'aboutisse
jamais, car c'est trop long à écrire, donc peu compatible
avec l'attitude SMS de Skyblog.
Quelqu'un d'autre intervient pour signaler qu'il
utilise la barre d'outils de
Google
lorsqu'il surfe sur le web. Cette barre d'outils
comporte un bouton permettant de traduire les
pages web d'une langue étrangère à votre langue
maternelle. Et pour vous faciliter la vie,
Google analyse la page que vous visualisez pour
en deviner le langage et vous proposer cette langue
par défaut. Le problème, c'est que lorsque cet intervenant
consulte le blog d'une adolescente, la barre d'outils
propose une traduction allemand -> français, alors
que le blog est écrit en français. En fait, compte
tenu du mode SMS, notamment du remplacement systématique
de « qu » par « K », on peut comprendre
que Google puisse avoir des problèmes pour identifier
la langue utilisée.
Lorsqu'il analyse une page web, Nils cherche à différentier
les parties purement techniques concernant la navigation
des parties intéressantes, porteuses de contenu de
la page web. Pour cela, un critère assez simple à
mettre en œuvre est de compter le nombre de lettres
et le nombre de caractères de ponctuation :
si la ponctuation est plus importante que les lettres,
c'est un élément technique de navigation à laisser tomber,
si les lettres sont plus nombreuses que la ponctuation,
c'est du texte porteur de sémantique. Sauf que dans le
cas de Skyblog, cela ne fonctionne pas. Non seulement
il y a l'utilisation du style
SMS,
mais en plus
les bloggueurs usent et abusent de certains signes
de ponctuation, n'hésitant pas à conclure leur
billet par une ligne entière de points d'exclamation.
Cela dit, on peut s'interroger sur l'application de
l'expression « porteur de sémantique »
appliquée à ce genre de billet.
Un autre obstacle à l'analyse du texte est la
coutume consistant à écrire un texte en dégradé
de couleur. Cette technique consiste à insérer des
balises <span> pour chaque caractère.
Curieusement, on peut constater que dans ces
balises, les couleurs sont spécifiées par un
triplet hexadécimal plutôt que par le nom
en clair (mais en anglais) de la couleur souhaitée.
Sur Skyblog, circulent des questionnaires que
les adolescents s'empressent de remplir, alors
que les questions sont très inquisitrices sur la
vie privée du questionné. Et Nils a pu constater
que certains utilisateurs de Skyblog ont adopté
un login très proche de leur
identité de tous les jours, donc ces questionnaires
représentent une réelle menace pour la protection
de la vie privée de ces utilisateurs. Cela n'a
nullement empêché ces adolescents de répondre
au questionnaire. Nils fait remarquer que dans la
version québecoise du questionnaire, figure
une question du genre « quel est le prof
que vous détestez le plus ? ». Et les
adolescents ne voient aucun inconvénient à répondre
à cette question, pas plus qu'aux autres.
D'autre part, si jamais un professeur cherche à
savoir s'il est mentionné sur Internet et lance
une recherche sur Google, que pensera-t-il si
la seule mention de son nom figure dans la
réponse à cette question ?
Une coutume curieuse en vigueur sur Skyblog est
la course aux commentaires. Chacun cherche à
avoir le plus possible de commentaires sur ses
billets. Du coup, certains utilisateurs proposent
des échanges du genre « Pour chaque commentaire
que vous ajoutez à mon blog, j'en mets trois sur le
vôtre. »
Certains utilisateurs sont tellement avides de
commentaires qu'ils proposent ce marché avec un
rapport de 8 commentaires donnés pour chaque
commentaire reçu.
Aucune considération n'est apportée
au contenu sématique desdits commentaires.
On trouve un phénomène analogue sur
Twitter.
Certains utilisateurs de Twitter cherchent
à accumuler les followers.
Certains ont plus d'un millier de
followers et pourtant,
n'ont jamais reçu de twit
qui leur soit directement adressé.
Un participant évoque :le filtrage des adresses
web lorsque l'on est en Chine. Il semblerait qu'il
soit impossible d'accéder aux adresses en
.org.
De même, il est impossible de lire les pages
web des abonnés de
Free,
sans doute à cause du nom subversif
de ce fournisseur d'accès.
Est-ce que le logiciel de filtrage
est capable de reconnaître les mots subversifs
dans d'autres langages que l'anglais et apparaissant
dans une sous-chaîne, comme
agendadulibre.fr ?
De nombreux sites web chinois consistent
simplement en un script
JavaScript,
il n'y a même pas la séparation
du <head> et
du <body>.
Pourquoi une telle organisation ?
Toujours est-il que cela explique l'intérêt
des perleurs chinois pour
WWW::Mechanize.
Nils évoque l'analyse des sites web entièrement en
JavaScript
ou entièrement en
Flash.
En effet, sa tâche est compliquée
par le fait qu'il ne dispose pas de la structure HTML.
Il est obligé de se contenter d'extraire les chaînes
de caractères en dur dans le source
JavaScript.
Mais il n'est pas toujours possible dans ce cas de
savoir si la chaîne de caractères apparaîtra dans
le <head> généré
ou dans le <body> généré, ni si elle
apparaîtra en tant que texte affiché ou en tant qu'attribut
d'une balise <a href='...'>
par exemple. Et pour
Flash,
c'est encore plus compliqué, car
il y a plusieurs versions de
Flash,
incompatibles entre elles.
Emmanuel et Nils évoquent une autre classe de pages web
pour lequelles l'analyse est ardue :
les pages web formatées à grands coups de
tables
emboîtées. Typiquement, une telle page
web contient une
table
à trois colonnes, la colonne
centrale contenant le texte intéressant de la page
et les deux colonnes extérieures assurant simplement
des fonctions de navigation. Mais ce n'est pas toujours
le cas et d'autre part, il arrive que cette
table
à trois colonnes soit déjà emboîtée dans une autre
table. Et finalement, peut-être y a-t-il des données
tabulaires pour lesquelles la balise <table>
est justifiée ? Pour identifier ce dernier cas,
il existe un critère heuristique assez simple.
Si la table comporte des cellules d'en-tête
<th>, il s'agit de données tabulaires.
S'il n'y a que des cellules <td>,
la table sert uniquement à formater l'affichage
de la page web.
Si j'ai bien compris,
Drupal
insère des balises sémantiques dans
les pages web générées. Cela
serait donc très bien pour Nils, qui verrait
son travail d'extraction et d'analyse facilité
grâce à ces indications sur la sémantique de la page
web. Sauf que la pénétration de Drupal
sur le web français est très faible.
Emmanuel a défini une base de données en
MySQL
sans spécifier aucune clé primaire. Il ne voit
pas l'intérêt de spécifier une clé primaire pour
une table, sachant que l'on peut déclarer que
tel ou tel index rejette les doublons sans pour
autant que ce soit la clé primaire de la table.
De même, les clés étrangères peuvent fonctionner
sans que l'on ait défini de clé primaire pour aucune
des tables concernées par la relation de clé étrangère.
Ensuite, Emmanuel a voulu utiliser
Catalyst
pour accéder à sa base de données dans une
application web et cela n'a pas fonctionné.
Pourquoi ? Parce que Catalyst,
tout comme la plupart des ORM,
se base sur les clés primaires pour
identifier les relations entre tables.
La notion de clé primaire est purement sémantique
et les ORM tirent partie de cette sémantique
pour éviter que les utilisateurs
soient obligés de spécifier les relations
entre tables lors du paramétrage de l'ORM.
Il a été question de
Dancer,
créé par
Alexis Sukrieh,
que certains ont rencontrés à diverses
conférences.
Dancer
est un framework
léger pour du web dynamique. Si nécessaire,
il est possible de le compléter par un
outil de formattage tel que
Template Toolkit 2.
Quelqu'un a évoqué une manière de bloquer un serveur
Apache.
Lorsque Apache est lancé, il crée un certain
nombre de processus fils, appelés
processus workers,
pour permettre des connexions multiples.
Disons 100 workers
pour fixer les idées. Pour bloquer
Apache, la méthode consiste à ouvrir
100 connexions HTTP avec le serveur
et à ne plus rien envoyer sur ces
connexions. Ainsi, si une demande de connexion
arrive d'un client légitime, elle sera
refusée, Apache ayant épuisé son quota.
L'attaque est vicieuse dans la mesure où
elle ne provoque pas un accroissement de la
charge CPU ou de la mémoire utilisée, elle est
donc indécelable avec les outils de surveillance
du système. Et en supposant que l'administrateur
Apache se soit rendu compte du blocage, le
seul moyen de débloquer la situation consiste
à couper la totalité des connexions.
Or, parmi les 100 connexions établies,
il y en a peut-être quelques-unes, 3 ou 4,
provenant de clients légitimes...
Google conserve les logs de tout
ce qui passe chez eux : requêtes soumises
au moteur de recherche,
messages reçus sur les comptes
Gmail
et ainsi de suite.
Ce que les gens ne réalisent pas forcément,
c'est que cela s'applique également aux
conversations tenues sur
GoogleTalk,
qui sont considérées par la plupart
des gens comme du domaine du volatil
et de l'éphémère. Et GoogleTalk
est plus facile à traiter et à analyser
que des écoutes téléphoniques qui,
rappelons-le, ne sont jamais utilisées.
Et rappelons également que certains présidents
de la République Française ont annoncé
lors de leur entrée en fonction après avoir
été élus qu'ils faisaient détruire les
archives des écoutes téléphoniques.
Tâche très simple, puisque les écoutes
téléphoniques n'existent pas.
Il existe un risque inverse, avec
Gmail,
celui de voir disparaître ses archives personnelles
sans pouvoir les récupérer. Même si comme indiqué
plus haut, Google conserve la trace de toutes
les informations qui passe dans ses mains,
on n'est pas à l'abri d'une panne de machine avec perte
de données. Ou bien, ainsi que cela s'est passé avec
Caramail,
le site web sur lequel vous avez externalisé
votre vie privée ferme boutique sans crier
gare et les archives de votre vie privée
disparaissent dans l'oubli.
Il a été question d'Unicode
et des encodages
UTF-nn.
Par exemple, en
UTF-8,
il existe, ou plutôt il existait, plusieurs
façons différentes d'encoder certains
caractères. Rien à voir avec la décomposition
de certains caractères, comme par exemple
« é » = U+00E9 = U+0065 + U+0301,
mais avec la décomposition
U+00E9 -> 0xC3A9.
Si j'ai bien compris, dans certains cas,
l'ancienne spécification d'UTF-8 permettait
d'obtenir une séquence d'octets comportant
des octets nuls, donc des chaînes propices
à des failles de sécurité dans les programmes
écrits en C. La nouvelle
version évite l'utilisation d'octets nuls.
Olivier évoque un nouvel encodage,
UTF-7.5.
Cet encodage a pour but une compatibilité
avec ISO-8859-1. Dans cet encodage, les
codepoints
U+0000 à U+007F et de U+00A0
à U+00FF sont codés sur un seul octet
et les autres codepoints
sont codés uniquement avec les octets
0x80 à 0x9F, correspondant à des caractères
de contrôle inusités en pratique.
Nils évoque la cohabitation entre le Latin-1
et le Latin-9. La seule différence entre ces
deux codages est que le Latin-9 comporte le
« œ » et le symbole de l'euro,
qui remplacent des caractères peu utilisés
du Latin-1. En pratique, les serveurs web
ignorent complètement la différence entre ces
deux codages et envoient des pages en Latin-9
en précisant dans les en-têtes HTTP ou HTML
que c'est du Latin-1. Et malgré cela, certains
navigateurs web affichent correctement les
« œ » et les euros !
Il a été question des anciens Unix,
comme AIX, QENIX et SCO, mais j'ai oublié
le détail de la conversation.
Je me souviens simplement qu'Olivier
a signalé que la détermination du fuseau
horaire sur HP-UX est assez inhabituelle,
voire tordue et que cela justifie l'écriture
d'un module Perl pour cela.
Module
qu'il a donc écrit lui-même.