PROJET AUTOBLOG


le hollandais volant

Site original : le hollandais volant

⇐ retour index

La politique retarde l’horloge de nos fours

vendredi 9 mars 2018 à 10:49

En fait, tous les fours/horloges/réveils en Europe sont retardés de quelques minutes depuis quelques semaines. La cause est un conflit politico-énergétique en Europe de l’Est.

La raison est que les horloges de ces appareils n’utilisent pas un cristal de quartz (comme les montres) ou le GPS (comme les téléphones) pour rester à l’heure, mais la précision de la fréquence 50 Hz du secteur : ils comptent une seconde qui passe pour chaque cinquante oscillation de la tension.

Or, quand la demande en énergie sur le réseau électrique augmente, la fréquence a une tendance à très légèrement baisser, et comme tout le réseau en Europe est interrelié, une surcharge en Espagne, par exemple, a des répercutions sur la fréquence du signal au Danemark ou en Turquie, et donc une incidence visible sur l’horloge de votre four.

C’est exactement le phénomène qui se produit ici : en l’occurrence, les tensions politiques entre la Serbie et le Kosovo font que le premier qui achète de l’énergie au second s’est vu refuser une partie de son courant.
Du coup, les besoins en énergie de la Serbie ont été « pompées » sur tout le reste du réseau européen, déséquilibrant ainsi tout le circuit et réduisant alors légèrement la fréquence, passant ainsi à 49,9 Hz, par exemple.

Pour ceux que ça amuse : ce lien de SwissGrid montre la fréquence du réseau électrique en Suisse en temps réel, ainsi que le retard (en secondes) que le réseau a accumulé (à cet instant, il est à 49,982 Hz et le retard est de 342 secondes). Il serait marrant de regarde en plein été (quand la demande d’électricité sera moins forte) et voir le si le retard a été rattrapé, voire compensé.


Ceci est un cas très intéressant sur les causes de certains phénomènes et les conséquences des conflits politiques.

On dit qu’il faut toujours différentier la causalité de la corrélation, et c’est vrai : certains phénomènes peuvent être liés, mais ça ne veut pas dire que l’un est la cause de l’autre.
Ici, le phénomène de causalité est assez improbable : je suis en admiration sur le fait qu’un conflit politique entre le Kosovo et la Serbie arrivent à retarder des horloges au Danemark…

Un autre exemple (personnel) qui me vient en tête sur ce genre de causalité improbable, c’est quand j’ai eu un gros pic de visites sur mon article « Pourquoi se déshydrate-t-on en buvant de l’eau de mer ».
En fait, suite à un épisode d’un sorte de "Koh-Lanta" où des participants s’étaient déshydratés alors même qu’ils avaient de l’eau de mer à disposition, les téléspectateurs avaient recherché en masse pourquoi il ne fallait pas boire l’eau salée sur les moteurs de recherche et un grand nombre de personnes étaient arrivés sur mon blog.

Évitement fiscal

mardi 6 mars 2018 à 19:15

Évitement fiscal.
Ça y est, c’est le nouveau terme qu’ils emploient.

Évitement.

ÉVITEMENT.

Je rêve.

Aux journalistes, médias, politiciens, ministres et tous les autres : quand on parle des rapaces qui planquent leurs thunes dans les paradis fiscaux pour ne pas avoir à contribuer aux dépenses nécessaires au fonctionnement de la société dont ils profitent, la moindre des putains de choses serait de ne pas minimiser leur action qui pourrit la vie des gens.

MERDE.

Merci.

Les trucs qui me font détester votre site web en 2017

mercredi 1 novembre 2017 à 07:16

photo of an agry cat
Quatre années et demie après mon premier article à ce sujet, je me permets de mettre à jour la liste ici, vu que les mœurs ont évoluées et les pratiques de web-design de merde également.

Les popup pour la newsletter

Le grand gagnant cette année. Oui, vous voulez mon e-mail, on a compris. Mais vous ne l’aurez pas.
Vos popup sont chiantes, m’empêchent de lire, me freinent dans ce que je fais et m’obligent à dégainer la souris alors que je fais tout avec mon clavier. Arrêtez.

Idem pour les popup demandant à vous suivre sur les réseaux sociaux.
De tout façon, si on tombe sur votre site, c’est probablement déjà via Facebook ou Twitter, donc on est probablement déjà abonnés et si ce n’est pas le cas, alors on peut le faire depuis Facebook ou Twitter. Et puis si ce n’est pas le cas, c’est sûrement qu’il y a une bonne raison aussi.

Personne n’a rien contre un simple bouton avec un lien « suivez nous sur Facebook » ou « abonnez vous sur Twitter ». Pas la peine, d’en rajouter une couche…

Les popup pour les applications mobile

Même remarque pour les applications mobile des sites web. Non, je ne veux pas installer une application pour lire un article de votre site : j’ai déjà une application pour ça et ça s’appelle mon navigateur.

Je ne veux pas installer 15 navigateurs pour lire 15 sites différents, ok ? (Car avouez que tout ce que font ce genre d’appli, c’est récupérer la page web et l’afficher à l’écran, rien de plus…).
Gardez les heures-hommes de votre staff pour faire un travail de rédacteur, pas une énième appli pleine de pub sans valeur ajoutée.

La redirection vers site mobile

Ça aussi, c’est super chiant : oui le mobile et le desktop sont deux mondes différents et dans certains cas il y a besoin d’avoir des expériences utilisateurs spécifiques, mais est-ce le cas pour afficher du texte à l’écran (blog, news…) ? Vous pouvez pas vous tourner vers du responsive-design plutôt ? Ah ben c’est sûr, ça demande quelques compétences supplémentaires en CSS (et donc ça se paye), mais on y gagne largement à plus long terme : un seul thème à maintenir, une seule URL, etc.

D’ailleurs, un site entièrement mobile c’est chiant lors du partage : je partage le lien mobile ou le lien desktop ? Et je ne parle pas du fait que la redirection se fait toujours dans un sens mais il n’y aucune détection dans l’autre sens (passage vers le site desktop quand on visite un site mobile depuis un PC).

La meilleure solution à mes yeux (après un site compatible desktop et mobile) reste encore de mettre un lien en bas de la page, comme le fait Wikipédia.

Flash

On est en 2017.
Flash est mort.
Get over it.

Java

On est en 2017.
Java est encore plus mort qu’avant.
Get over it.

Silverlight

On est… 2017 *paf*
Lol ?

Les lecteurs HTML5

Flash, Java et les autres ont laissé place aux nouveaux éléments HTML5 dédiés. Les navigateurs utilisent tous leur propre interface de lecteur mais qu’il est aussi possible d’outrepasser ça en JavaScript. Mais de ce cas, il faut faire ça bien, sinon… ben ça foire ! N’est-ce pas Vimeo, qui empêche la lecture d’une vidéo si on désactive la lecture automatique ?

Et bordel de merde, cessez de lancer toutes les vidéos de façon automatique ! Non seulement vous volez la bande passante que je paye (à qui j’envoie la facture, après, hein ?) mais surtout c’est emmerdant à mourir d’avoir des vidéos, sons et autres pubs qui se lancent. Heureusement ces bons vieux navigateurs ont de quoi pallier ça.

Les messages pour les cookies

Ouais alors celui-ci, je sais.
JE SAIS que c’est apparu à cause de la Loi : la loi oblige les sites-web à indiquer aux visiteurs qu’ils utilisent des cookies pour tracker les utilisateurs. L’idée n’est pas mauvaise, mais sa mise en forme est mal fichue.

Sur 80 % des sites, vous avez maintenant un bandeau « acceptez-vous les cookies ? Oui ou Oui ? ». Car effectivement, le bandeau (qui prend une place monstrueuse, surtout sur un petit écran de mobile et qui en plus se trouve en position: fixed;), ne nous laisse en fait jamais le choix : soit on accepte… soit on va se faire foutre car il n’y a jamais d’option « non ».

Je bénis les extensions de navigateur comme I don’t care about cookies qui me permet de ne pas subir cette merde. Quant aux cookies, je configure mon navigateur pour qu’il ne conserve que les cookies légitimes. C’est en place dans tous les navigateurs depuis 15 ans, alors leur loi à la con, ils peuvent se la @µµ%£ dans le ¥À"{⋅Ð≥¯.
Si je suis assez grand pour cliquer sur le « oui » de votre site, je le suis également pour cliquer sur « non » dans mon navigateur.

Les sites pour tel ou tel navigateur

On est retourné 20 ans en arrière le jour où un rigolo a décidé de faire des sites spéciaux pour Google Chrome ou bien pour Microsoft Edge (étrangement, des sites qui ne marchent QUE dans Firefox, y en a pas des masse, je n’en ai encore jamais vu en fait).

Alors ouais, tous les navigateurs n’en sont pas au même point. Mais faire un site qui ne marche qu’avec un seul navigateur (alors qu’il y a en plein d’autres qui sont légitimes tout autant) c’est n’est pas faire du web, c’est créer un gadget. Pour votre business, vous voulez un gadget ou un site-web ?

Si vous n’avez pas le temps ou l’envie de vous casser le cul à apprendre à faire un site web, assumez et puis c’est tout, cas là c’est bel et bien un choix délibéré que d’être un gros fainéant. Mais ne venez pas me dire d’installer un navigateur en particulier juste pour vous. Je vous le dis : si mon navigateur n’est pas assez bon pour vous, alors votre site n’en vaut pas la peine.

Le champion ici c’est évidemment Google Chrome, qui intègre tout un tas de technos non-standards détectées par aucun autre navigateur (et que les webmasters utilisent en masse).

Et je ne parle pas des sites tout à fait fonctionnels dans tous les navigateurs mais dont l’éditeur a décidé que les utilisateurs d’autres navigateur que le leur n’ont pas le droit de lire. Ceux là peuvent clairement aller se faire voir.

Les sites qui ne marchent pas

Tout simplement un site avec un formulaire qui ne fonctionne pas, un bouton qui ne fait rien ou des tas de liens morts. Dites, ça vous arrive de tester votre site ?

Les sites anti-adblock

On est en 2017, la publicité est mo… *paf*

Ok, je pense que le message de fond n’est pas mauvais : un site est un business comme un autre et ça a un coût, surtout quand on a une équipe de rédacteurs à payer à la fin du mois. Mais il faut bien se rendre à l’évidence : au delà du problème du tracking, certains sites ont mis un tel niveau de publicité qu’il en est totalement inutilisable : la page met 2 minutes à charger, on a des popup partout, des liens débiles, des liens trompeurs… C’est juste devenu im-po-ssible. Essayez vous-même : je suis sûr que vous même utilisez un bloqueur de pub, y compris sur votre site.

À cause de ça, j’en suis à un point où je ne peux même pas dire aux sites de mettre de la pub de façon normale, car ça n’arrivera jamais et que de toute façon tout le monde a déjà un bloqueur de publicité actif et fonctionnel. Donc ça ne servirait à rien, il est trop tard maintenant, la publicité est morte de vos mains.

Les sites annonceurs ont tué leur propre business et maintenant ils pleurent. La solution, je sais pas moi, innovez ? Inventez un autre système pour gagner des thunes ? Je dis pas que c’est facile, ni simple, mais c’est 1) pas mon problème et 2) on n’a rien sans rien, surtout après avoir tout cassé (ça serait la moindre des choses que de le réparer, non ?).

Les formulaires de merde

Juste 500 caractères pour laisser une review, un commentaire ? Je dis non.

Aussi, un champ de recherche en HTML, ça peut s’agrandir, avec la souris. Alors cessez d’utiliser resize: none; : c’est débile, chiant, inutile.

Des champs qui ne sont pas liés à leur <label> ? Vous avez appris à coder avec Dora l’Exploratrice ? Avec Franklin la tortue, peut-être ?

Les sites avec une redirection foireuse…

… ou inexistante.

Je tape "site.com" dans ma barre d’adresse et cela produit une erreur. Pour accéder au site, je dois mettre "www.site.fr". Généralement il y a moyen de mettre une redirection automatique avec une seule ligne dans un fichier, mais certains sites ne le font pas. C’est chiant.

Les sites avec une fausse sécurité

Les banques sont championnes pour ça : ils ont bien le petit cadenas, ils ont bien un formulaire sécurisé, mais elles ont aussi un code pin à 4 chiffres.
Vous savez combien de temps je met pour générer et afficher tous les codes à 4 chiffres possibles avec mon ordinateur ? 515 millisecondes (en JS, qui est loin d’être rapide comme langage). Voilà. C’est avec ça que vous protégez mon argent.

Alors qu’à cette vitesse, un vrai mot de passe avec chiffres, minuscules, majuscules long de 6 caractères, je mets déjà 1 mois. Long de 12 caractères, je mets 5,269 milliards d’années.

Moi je vous confie mon argent que vous protégez par une porte ouverte sans serrure, et vous, quand je me rend au guichet, vous mettez une chaîne sur le petit stylo, des fois que je vous le volerait… Vivement le bitcoin partout qu’on se passe de vous, les banques, hein.

Et ceci s’adresse aussi à tous les sites qui ont l’une de ces pratiques :

(MÀJ : oui, je sais que les banques utilisent des méthodes un peu plus poussées et pas juste un code pin. Encore heureux. Mais bon, Google, Steam, Facebook et en fait beaucoup de sites le font aussi. Je vois pas pourquoi, la sécurité d’une banque devrait toujours rester en deça de la sécurité d’un compte permettant de jouer aux jeux vidéo. Je crois que même WoW utilise des token RSA ([i]ÉDIT: Étienne me signale que Blizzard produit bien des token RSA pour WoW)…)[/i]

Les sites qui désactivent le clic-droit, le clavier ou autre

Ceux là me font rire : je ne peux pas faire un clic droit sur une image pour en conserver une copie sur mon ordi ? Ben c’est pas grave : je cherche l’image dans le code source. Pareil pour les vidéos. Pareil pour… tout ce que votre site affiche, en fait.
Ces protections sont inutiles, elle font juste perdre du temps à tout le monde.

De façon générale : laissez ma souris et mon clavier tranquille. Je n’ai pas besoin d’un menu spécial ou de raccourcis clavier redéfinis pour votre site.

Même remarque (reçue dans l’oreillette) pour le scroll : sans déconner, c’est quoi cette manie de faire un scroll latéral, ralenti, pâteux ou saccadé ? J’ai configuré ma souris pour qu’elle défile la page à la vitesse que je désire. C’est pas pour que votre site vienne imposer la votre.


Bon.
En 2017 le web n’est pas tout noir de couleur non plus. Voici quelques trucs qui me font dire que vous avez pensé à vos utilisateurs, notamment dans les formulaires :

illustration de Magnus Bråth

MySQL, SQLite ou fichiers texte ?

mercredi 11 octobre 2017 à 18:54

Le moteur de blog sur lequel tourne ce site, Blogotext, était à l’origine basé sur un stockage en fichiers XML (un sorte de balisage à la XML, plutôt).
Aujourd’hui j’utilise à la fois SQLite et le stockage sous forme de fichier contenant des données sérialisées.

En relisant l’article de Matronix sur Pluxml qui devient un peu plus lent quand le nombre d’articles s’accumulent, je me suis décidé à dresser un petit comparatif et un retour sur les formats de stockage pour un moteur de blog : XML, base64-serialisé, SQLite, MySQL.

XML, texte Base64-sérialisé

Ces deux formats reposent sur de simples fichiers texte : il est donc plutôt passe partout, y compris sur les rares hébergeurs qui ne proposent aucun système de base de donnée (mais parfois interdits par les hébergeurs car assez gourmands en ressources).

Le format est également adapté quand la quantité de données reste limitée : pour un blog avec des articles longs, il est préférable de s’abstenir.

Pour des liens partagés courts, force est de constater que ça reste rapide, mais je suis quand même curieux de connaître la limite de ce système. Tous les systèmes ont tendances à s’embourber quand la quantité de données devient importante, mais certains résistent mieux que d’autres (et surtout, passer de 1 ms à 2 ms pour une requête, c’est doubler le temps mais ça reste totalement invisible, alors que passer de 1 s à 2 s, ça l’est beaucoup moins).

Ces formats conviennent très bien pour les petits blogs sans commentaires, et pour tout autre gestion de donnée sans associativité entre les données (les commentaires sont en effet associés à un article et nécessitent un tri — spécifique et très long — à cause de ça).

En revanche, pour un moteur de blog, avec fonction de listage des articles, commentaires associés ou fonction de recherche, ça devient rapidement très lent au fur et à mesure que le nombre d’articles augmente.
Quand j’utilisais les fichiers XML sur ce site, avec 5000 commentaires, le temps de génération d’une page prenait jusqu’à 500 millisecondes. Ça semble rien, mais c’est énorme (c’est 20 à 100 fois la durée actuelle de génération d’une page, alors que le nombre d’articles et commentaires à triplé).

J’avais un jour testé l’utilisation d’un fichier sérialisé pour le blog : la page prenait 800 millisecondes à charger. Là aussi, c’est bien trop long, pour le visiteur qui doit attendre et pour le serveur qui est trop sollicité. C’était impensable.

SQLite & MySQL

Ces systèmes contiennent une véritable gestion des données : ils les stockent bien-sûr, mais ils peuvent aussi les trier, ordonner, rechercher et créer des liaisons (articles/commentaires) : SQL est spécifiquement fait pour ça. C’est donc parfait pour le stockage de données qui sont susceptibles de changer, d’être triées ou d’êtres liées à d’autres données de façon dynamique.

Mon blog a tourné sous MySQL à un moment, mais je suis très vite revenu à SQLite, après avoir appris à optimiser quelques trucs.
Le résultat est celui que vous voyez là : ce site tourne avec 1100 articles, 16 000 commentaires et 16 000 liens partagés, et je suis en mutualisé (donc le serveur gère également plein d’autres sites en parallèle).

Tout a été ici une question d’optimisation : choix des indexes, gestion du cache et de la mémoire, et de la façon dont on l’utilise. En PHP par exemple : une bonne gestion des boucles fait beaucoup de choses. Le nombre de requêtes SQL est également à prendre en compte : une requête pour sortir 50 articles sera largement plus rapide que 50 requêtes.

SQLite est pratique car il très simple à utiliser : pas de mot de passe, pas d’installation, pas de système client/serveur (contrairement à MySQL) : la bibliothèque logicielle pour utiliser SQLite peut être incluse dans les logiciels et être utilisée à la volée (Firefox le fait, par exemple). Il suffit de l’utiliser comme n’importe quelle fonction.
MySQL a la réputation d’être un peu plus rapide et plus complet.

Meewan me fait remarquer très justement que SQLite a un défaut par rapport au reste, c’est qu’on ne peut écrire qu’une seule chose à la fois dans la base de données SQLite. Une opération doit se terminer complètement avant que la suivante ne puisse se faire. Ceci concerne uniquement l’écriture dans la base de données (pas la lecture). En pratique, sur un blog comme le miens, ce n’est pas un problème du tout, mais sur les sites (beaucoup) plus gros où des dizaines de commentaires peuvent être écrits en même temps, cela pose problème. Il est ainsi impensable d’avoir un système similaire à Twitter, ou bien un tchat, utilisant SQLite.

Pour conclure

Je pense évidemment que chaque application a ses besoins spécifiques.

À mon niveau cependant, je n’ai pas encore eu de situations où SQLite ne suffisait pas (ceci mis à part car ça a été résolu depuis) : son avantage est d’être utilisable dans énormément de langages (que ce soit côté serveur (PHP), côté client (JS, HTML5?) et en local (Python, SH…)) et très simplement, sans gestion de mot de passe ou de nom de serveur, le tout avec une portabilité très simple puisqu’il s’agit d’un seul fichier à copier-coller.

Dans certains cas, où le nombre de données n’est pas emmené à varier beaucoup, les fichiers textes sérialisés ou le XML/Json (voire les fichiers de configuration INI ou INF) suffisent.

Note : cet article a été initialement écrit en 2015. Je l’ai déterré pour un lecteur qui m’avait demandé mon avis entre les différents formats. Les chiffres sont mis à jour et correspondent à ceux de la date de publication.

Pourquoi je souhaite une licence globale

mardi 10 octobre 2017 à 17:30

Quelques semaines après que l’UE a annoncé que le partage de fichiers protégés ne diminue en rien les ventes d’œuvres de façon légale, voilà que la Hadopi nous dit que la fermeture il y a quelques temps de Zone-Téléchargement n’avait rien changé : le partage de fichiers est toujours là et il n’a pas non plus diminué.

Vous voulez que je fasse une prédiction ?
Le téléchargement illégal ne s’effondrera que lorsque qu’acheter quelque chose soit plus simple qu’utiliser les sites de téléchargements.
Le problème c’est surtout que toutes les solutions « légales » sont une plaie à utiliser, ou alors qu’elles ne sont pas adaptées aux besoins des gens (elles sont juste une projection de ce que les « ayants-droits » souhaitent nous voir s’en contenter).

Et tout ça, ce n’est pas près de changer.

Du coup ben, on voit les artistes qui montent leur propres business (passant en dehors des circuits inadaptés), soit des sites de partage et de téléchargement de musique, financée par la pub et les abonnements.

Perso je vois deux solutions à tout ça.

La première, c’est que les « ayant droits » se sortent les doigts et montent eux-mêmes des sites de téléchargement financé par la pub : les gens veulent ce genre site, c’est pas compliqué à faire non plus et ça rapport pas mal de fric. Et du coup ce fric ira dans leurs poches. C’est pas ce qu’ils veulent ? Ça ne serait pas ce que tout le monde veut ?

Et la seconde, c’est un impôt facultatif appelée « licence globale ».
Dans ce cas, on paye une sorte de « redevance » qui nous permet de télécharger ce qu’on veut, autant qu’on veut, où on veut sans avoir à se soucier du fait que ce soit sur un site légal ou pas. De toute façon, empêcher les sites de partage et de téléchargement d’exister est voué à l’échec. Avec la licence globale : on paye genre 15€/mois et on peut télécharger autant qu’on veut. Ceux qui ne veulent pas payer, c’est pas grave, mais dans ce cas soit faut pas télécharger, soit faut assumer si on se fait prendre.

Je suis plutôt pro-licence globale : premièrement parce que cette idée est relativement simple à mettre en place administrativement (juste une case en plus sur le formulaire des impôts, et il suffira à Hadopi de regarder qui est abonné pour savoir si on chope son IP ou non) et techniquement : y a rien à faire, c’est peut-être ce qui est le plus déroutant, pour les spécialistes du brassage d’air les poches pleines dans l’hémicycle… Par ailleurs, l’argent de la licence globale sera ensuite redistribué aux artistes.

Quant à l’avantage d’une licence globale par rapport à des plateformes comme Google Play ou iTunes, c’est que l’on n’est pas prisonnier d’une plateforme précise. Si je vais chez Google Play et que que ce dernier ferme mon compte de façon arbitraire (comme écrit dans les conditions d’utilisations), alors je n’ai plus rien du tout. Alors qu’avec la licence globale, je paye et j’ai le droit d’aller où je veux tout en sachant qu’on ne viendra pas me faire chier.