Journal Simuler un clic avec libevdev et uinput

Posté par  . Licence CC By‑SA.
70
2
sept.
2021

Préambule

Samedi 7 août, 14h UTC+2 : une pluie de tous les enfers se déchaîne. Il pleut tout l’après-midi, mais c’est la tempête surtout pendant une demi heure. Le sol est inondé. Les gens courent, l’imper sur lequel je comptais jette l’éponge, mon téléphone pas étanche dans la poche de l’imper pas étanche est mouillé et c’est le drame : il ne s’allume plus.

Dimanche 8 août. Le téléphone refonctionne (son module wifi et Bluetooth démarre bien quand bon lui (…)

Communiquer avec le serveur depuis un navigateur Web : XHR, SSE et WebSockets

112
18
avr.
2021
Internet

Dans cette dépêche, nous allons faire un tour d’horizon de différentes manières de communiquer avec un serveur depuis une application Web, avec un petit peu d’histoire, avant de rentrer plus profondément dans le fonctionnement des WebSockets, que nous allons démystifier. Nous digresserons ensuite à propos de la gestion (problématique) des requêtes longues et de HTTP 2 avec Apache, et nous discuterons d’une manière de limiter la casse. La dépêche contient quelques morceaux raisonnables mais l’absurdité est latente.

Supposons que nous ayons une application Web qui a besoin de recevoir des évènements du serveur pour voir si quelque chose s’est passé. À tout hasard, un jeu de société en ligne. Ce jeu a besoin d’envoyer les coups des joueurs et joueuses, et de recevoir les coups des autres.

Le serveur ne peut pas contacter le navigateur. Celui-ci est peut-être derrière un pare-feu, et de toute façon il n’y a pas de méthode pour cela. Le modèle du web, c’est une requête HTTP de la part du navigateur, et le serveur sert cette requête. Et puis, à la base, une requête = un chargement de page.

Mais des techniques sont apparues pour abuser de ce modèle, puis les standards se sont mis à intégrer des méthodes pour mener ces abus en toute sérénité.

Journal Trivabble s'offre un nom de domaine

Posté par  . Licence CC By‑SA.
Étiquettes :
30
12
mar.
2021

Pour celles et ceux qui ne connaissent pas, Trivabble est un jeu libre en réseau où il faut aligner des mots en lignes ou en colonnes sur une grille dont certaines cases sont spéciales et faire un max de points possible. Vous connaissez probablement le principe. Rythme effréné et doses d’adrénaline garanties. Bref, ça a été présenté ici dans cette dépêche et dans les articles qui ont suivi.

Préambule

Que ne serait un bon journal sans son intro totalement (…)

Journal FOSDEM 2021 : c'est ce weekend !

Posté par  . Licence CC By‑SA.
Étiquettes :
23
1
fév.
2021

Salut lecteur, lectrice,

FOSDEM 2021, c'est ce weekend (les 6 et 7 février) et ça, vous le saviez peut-être déjà grâce à la dépêche parue plus tôt dans la soirée. Et si vous n'aviez pas percuté, eh bien ce journal est là pour vous, avec l'info dans le titre pour accrocher le regard des gens qui parcourent leurs flux RSS et qui ouvrent sélectivement les nouvelles.

Mais au fait, qu'est-ce que FOSDEM ?

Pour celles et ceux qui ne (…)

Journal Piano Quick & Dirty

Posté par  . Licence CC By‑SA.
Étiquettes :
24
10
oct.
2020

Il y a 5 ans, j'ai voulu apprendre un chant que ma chorale avait fait l'année avant que je les rejoigne. À ma disposition, il y avait la partition, mes souvenirs auditifs et pas d'enregistrement. Ma voix n'était pas la voix principale de ce chant donc ça peut être un peu contre intuitif à apprendre. J'ai donc reproduit la partition sur MuseScore pour la jouer.

Je n'ai pas d'instrument non plus et avoir quelque chose pour jouer des notes rapidement (…)

Journal Réception d'un MMS difficile

Posté par  . Licence CC By‑SA.
74
4
oct.
2020

Incipit

Un alignement de planètes quelconques (ou un alignement quelconque de planètes, comme vous préférez) a rendu impossible une réception de MMS sur le téléphone que j'utilise, un vieil appareil bas de gamme sur Android 6 abandonné par la personne à qui il appartient (c'est pour donner le contexte, rendre les choses concrètes et augmenter le nombre de mots, mais ça n'a pas du tout d'intérêt pour la suite).

En général ça fonctionne, mais là, non : je reçois un (…)

Journal Psychologie d'un parseur Javascript

13
9
sept.
2020

(attention : beaucoup de suppositions, peu de vérifications dans ce journal. Lisez pour le cheminement plus que pour le résultat…)

Un constat choquant

De manière tout à fait intéressante en Javascript :

++ ++ i;

Donne l'erreur suivante dans Node (V8):

SyntaxError: Invalid left-hand side expression in prefix operation`

Et, dans Firefox (SpiderMonkey):

SyntaxError: expected expression, got '++'

Alors que :

i ++ ++;

Donne l'erreur suivante dans les deux moteurs (à quelque chose près) :

SyntaxError: Unexpected
(…)

Journal MPRIS-Sync : Regardez des films ensemble par internet

Posté par  . Licence CC By‑SA.
47
5
juil.
2020

J’ai voulu regarder une série avec ma sœur, parce que c’est quand même bien sympa de s’entendre mutuellement rire pendant les épisodes.

Sauf que problème, on n’habite pas dans la même ville. Comment alors regarder en même temps, facilement, une série ensemble, sans trop de décalage avec possibilité de repasser une scène qui nous a particulièrement amusé ?

Je n’ai pas trouvé de solution libre permettant de diffuser facilement, sans gros décalage, depuis un ordinateur vers un autre ordinateur sur (…)

Journal LineageOS 17.1 (Android 10), F-Droid et géolocalisation Wifi et GSM avec microG

Posté par  . Licence CC By‑SA.
27
20
juin
2020

J'ai un téléphone sous LineageOS et la version 17.1 (Android 10) est maintenant disponible pour mon téléphone. J'utilise F-Droid et microG.

Contexte

F-Droid est un magasin d'applications libres. J'utilise ça et pas autre chose. De plus, n'installant pas les fameuses GApps (services Google), je n'ai pas le Play Store, le service de communication utilisé par plein d'applications qui utilise le cloud Google (GCM - Google Cloud Messaging / Firebase), et le service de géolocalisation Google utilisant les antennes Wifi et (…)

Journal Restaurer l’historique de zsh

Posté par  . Licence CC By‑SA.
Étiquettes :
13
25
déc.
2019

Il y a quelques jours, mon historique zsh a apparemment été vidé, peut‑être à cause d’une fausse manip dont je parlerai peut‑être. Je crois avoir rempli mon $HOME complètement, et ça n’a peut‑être pas plu à zsh.

Mes shells n’enregistraient donc plus les nouvelles commandes dans le fichier .zsh_history, et surtout, ce fichier est devenu vide. Or, je tiens à mon historique ! Il y a un tas de commandes que je rappelle simplement en tapant leurs premières lettres (…)

Journal Microsoft Edge : bientôt une version GNU/Linux

Posté par  . Licence CC By‑SA.
Étiquettes :
21
16
nov.
2019

Ivre, je viens de voir que Microsoft va publier une version de Edge pour Linux.

Ça m’a fait à peu près la même impression que recevoir une exception levée de cette manière :


    default:
        throw new Error("BUG: SOMETHING IS HORRIBLY WRONG, THIS SHOULD NEVER HAPPEN!");
    }

Je savais que je ne dormais pas assez en ce moment, mais là l’avertissement est sévère !

Bientôt, on pourra lire :

Microsoft développe une version de Cortana (…)

SimpleProtocolPlayer NG ­— jouez des sons de votre ordinateur sur votre appareil Android

Posté par  . Édité par ZeroHeure, Davy Defaud, Ysabeau, Benoît Sibaud et patrick_g. Modéré par ZeroHeure. Licence CC By‑SA.
Étiquettes : aucune
27
24
oct.
2019
Android

Il y a quelque temps, j’ai découvert SimpleProtocolPlayer, une application Android sous licence Apache 2 qui permet de lire un flux audio non compressé depuis le réseau. Cette dépêche présente l’application, ainsi que de son inclusion dans la logithèque F-Droid.

Paramétrage de SimpleProtocolPlayer

Journal Petite mise à jour de OUI Léger

Posté par  . Licence CC By‑SA.
26
7
oct.
2019

Précédemment, je présentais ici l’extension OUI Léger pour rendre le site oui.sncf plus léger et plus rapide sur Firefox.

Ce journal a eu beaucoup de succès, je vous tiens donc au courant. Aujourd’hui, j’ai amélioré quelques petites choses, des fois que des gens ici utilisent encore OUI.sncf :

  • Une image de fond est réapparue depuis le dernier journal. Elle est maintenant cachée.
  • Deux marges inutiles ont été supprimées
  • L’ajout des liens d’accès aux différentes pages en bas de la page (…)