Introducing MRSK

#mrsk #Docker #cloud

Outil proposé par Hey.com pour simplifier la gestion d’un ensemble de conteneur déployé sur différentes machines (virtuelles ou non). C’est plutôt intéressant de prime abord parce qu’on retrouve pas mal d'éléments proposés par Kubernetes mais sans avoir la complexité de Kubernetes (sans forcément critiquer Kubernetes, juste on a pas toujours besoin de ce qu’il apporte).

Rien à part Docker n’est nécessaire (et mrsk l’installera pour vous si vous êtes sous une distribution Linux debian-based (il va utiliser apt-get)), il ne fait que lancer des commandes docker via SSH en utilisant les clés SSH de la machine hôte. Dommage la limitation aux Linux debian-based mais c’est prometteur.

Lien du github du projet : github.com/mrsked/mrsk

La PS3 reçoit une nouvelle mise à jour mystère sortie de nulle part

#jeux-video #PlayStation

Nouvelle mise à jour pour la PS3. C'est improbable une mise à jour 16 ans plus tard. Par contre c'est comme d'habitude avec Sony : on ne sait pas ce qu'il y a dans la màj… Parce qu'avoir pour message "cette mise à jour du logiciel améliore les performances du système" c'est pas donner une indication sur le contenu.

Personnellement je ferai cette mise à jour qui doit au choix : mettre à jour des certificats de sécurité (les certificats pour le HTTPS expirent régulièrement, certificats pour les Blu-ray, etc.), corrige un bug assez gros sur quelques jeux, corrige un truc qui bloquait quelque part pour la suite (bug de pile d'horloge ?) ou c'est un patch pour bloquer une faille de jailbreak (qui sera contourner super vite au besoin)

Amazon lutte contre le piratage de livres électroniques… en punissant les auteurs

#Amazon #Kindle #ebook

Je crois que tout est dit : Amazon a retiré les ebooks de la vente pour des livres qui ont été piratés. Donc double peine pour les auteurs : leur livre est piraté et ils ne peuvent plus le vendre via Amazon. Alors je sais que y'a pas qu'Amazon mais ça doit représenter un gros vecteur de vente quand même…

Jeux de Netflix sur Google Play

#Netflix #jeux-video

Netflix propose une sélection de jeux-vidéos sur mobile gratuit si on a un compte Netflix (pas gratuit, mais on paie pas plus cher quoi). J'ai pas encore testé, mais je pense que ça peut valoir le coup de jeter un coup d'œil

You Don't Need a Build Step

#JavaScript #Web #Deno

Pour avoir testé sur un tout petit projet Deno + Fresh c'est assez impressionnant d'efficacité et de simplicité. En effet on a aucun bundle ou build explicite à faire, tout est fait en JIT et honnêtement ça fonctionne très bien !

Pour moi ça corrige un problème majeur du web aujourd'hui : y'a trop d'outil, c'est compliqué de comprendre ce que fait chaque outil et suivre les changements/tendances/mise à jours, même en baignant dedans au quotidien. Deno s'attaque aussi aux problèmes de Node avec une API calquée le plus possible sur celle de ECMAScript et quand ils sont obligés de proposer leur propre API elle est disponible via un Deno.something() pour ne pas polluer le namespace global

Il faut brancher les SSD régulièrement !

#SSD #stockage #backup

Je savais que les supports à mémoire flash finissaient par se corrompre à partir d’un certain temps sans alimentation. Je pensais pas que les SSD étaient aussi peu fiables dans le temps sur du stockage à froid et hors tension (2 à 5 ans au mieux) donc autant dire que du stockage sur SSD faut pas le faire… Ou en rebranchant très souvent le support… Dans les commentaires ils disent que c’est mal barré pour du stockage sur disque (CD ou DVD) aussi… Faudrait que je ressorte des vieux CD/DVD que j’ai gravés y’a quelques années voir ce que ça donne 🤔

Stupeur et tremblements : comment faire fuir les développeuses expérimentées.

#société #femme #discrimination

Je résume très grossièrement : témoignage d'une femme qui s'est retrouvé face à un plafond de verre injuste et aberrant du fait d'être une femme et qui raconte son histoire.

Clairement j'espère ne jamais voir ça dans mon entourage pro et le jour où je vois ça dans une boîte où je bosse, ma démission tombera très vite ! J'ai la "chance" d'être un homme blanc qui se débrouille pas mal, donc j'ai pas ce genre de blocage, mais ça empêche pas de vouloir que les règles soient équitables et les mêmes pour tous !

Thread sur la démographie et la géographie de la Russie

#société #monde #divers

Thread en 7 tweets qui montre que la Russie n’est pas un pays si grand que ça (à vue de nez 1.25 fois la tailles des USA) ni si peuplé que ça (environ 2 fois la population française) et super concentré sur la frontière ouest. C’est intéressant de voir ça parce qu’on a toujours l’impression d’un pays immense avec une population immense, mais en fait non. La Chine a un peu les mêmes soucis avec une taille de pays un peu déformé et une population énorme mais super concentré sur la cote est.

Les candidats se dégonflent #OrangeBank #banque

#banque #orange-bank #divers

Ça sent le roussi pour Orange Bank qui est en train d'être revendu mais quasi tous les prétendants se désistent… Dans un sens je rigole un peu, parce que je croyais pas du tout au projet d’Orange Bank qui n’apportait rien de neuf face à des N26 ou Revolut, à part d'être adossé à un acteur important comme Orange. On verra ce que ça donne pour la suite.

OQEE

#VOD #OQEE

Free lance un “concurrent” à Netflix en offrant un abonnement gratuit de VOD pour les abonnés Freebox.

J’ai regardé un peu le catalogue, c’est globalement du vu, revu et re-revu, j’ai pas vu grand-chose de récent mais y’a du contenu sympa dans le lot. Après comme ça vient de sortir et que c’est gratuit, ça vaut le coup de jeter un coup d'œil non ? Perso j’ai repéré le film Imaginaerum (film qui utilise en OST les morceaux de l’album éponyme de Nightwish) que je n’ai pas pu trouver en français à sa sortie et donc j’avais abandonné.
Si vous n'êtes pas abonnée Freebox, passé votre chemin. D’un le contenu ne vaut le coup de payer un abonnement mais de deux même si ça vous semblait valoir le coup, il n’y a pas d’abonnement dédié, uniquement l’accès via abonnement Freebox.

Want to know the secret to optimizing your SQL queries?

#SQL #optimisation

Super thread qui explique comment optimiser une requête SQL, avec en particulier un schéma montrant l’ordre d’application des différentes partie de la requête. C’est super instructif, c’est super pratique, c’est hyper bien expliqué et visuel !

Au passage, si vous vous inscrivez à la newsletter de l’auteur (y’a des options payantes mais ça peut être gratuit aussi), vous avez accès à un pdf qui donne pas mal d’explication simple, rapide et souvent visuel pour pas mal de concept dans ce genre-là (pourquoi Redis est rapide ? C’est quoi un SSO ? différence entre IaaS/PaaS/SaaS ? etc.). Lien à la fin du thread.

Le grand projet de loi européen sur le secteur technologique est sur le point de se concrétiser

#société #DMA #DSA #RGDP

Article qui explique ce qui arrive concernant les DMA (Digital Markets Act) et DSA (Digital Services Act). Ces deux nouveaux règlements proposés par l'UE devraient entrer en application dès cette année donc comme pour le RGPD (ou GDRP) il faudra composer avec.

Pas mal de point reste un peu flou mais la clause de suppression de contenu illégal dans un délai raisonnable pour les plateformes risque de créer des problèmes et des freins à la liberté d'expression du fait que "contenu illégal" n'est pas clairement défini. (d'ailleurs j'ai l'impression que "délai raisonnable" non plus)

Extraordinaire illusion. En dépit des apparences, ces cubes ne bougent pas.

#divers #illusion-d’optique

Je l’ai vu plusieurs fois cette illusion d’optique mais chaque fois ça me bluffe : on est face à 2 dessins de cubes qui clignote avec des flèches indiquant une direction, les cubes ne bougent pas, mais on a l’impression que ça bouge

Votre Wii U est probablement déjà morte, voici pourquoi

#jeux-video #WiiU #Nintendo

À priori y'a pas mal de gens qui ont des erreurs au démarrage de la Wii U ou d'un jeu sur Wii U alors qu'ils n'ont pas touché à leur console depuis certains plusieurs années. Personne ne comprend cette erreur et Nintendo est resté silencieux. Faut juste tester vos consoles et voir si vous êtes touchés. À priori allumer de temps en temps la console suffit à palier ce problème…

Colorado Catholic group bought app data that tracked gay priests

#société #vie-privée

Voilà pourquoi c’est gênant que n’importe quelle entreprise se permette de stocker des données sur nous. Ça fini assez souvent dans les mains de data-broker qui peuvent ensuite revendre nos données.

Ici un cas de plus très moche : un groupe catholique qui dépense des millions de dollars pour acheter tout un tas de donnée sur des personnes à priori homosexuelles, pour identifier les prêtres homosexuels…

Lucide

#icons #OSS #frontend

Un fork amélioré de Feather Icons avec beaucoup plus d’icônes. Toujours bon d’avoir ça de côté, ça change aussi de Material Icons qui n’a pas toujours ce dont on a besoin et puis on veut pas tous avoir des apps qui clones le style de Google…

Why I Will Never Use Alpine Linux Ever Again

#Docker #Alpine

L’article indique un gros point différenciant des images Alpine : l’utilisation de musl à la place de glibc. Dans la plupart des cas ce n’est pas un souci, mais ça peut l'être dans d’autres comme pour les résolutions DNS si on a besoin de résolution DNS qui sont un peu volumineuses et qui ne tiennent pas dans un paquet UDP (musl ne supportant pas le DNS over TCP) ce qui peut entrainer des erreurs de résolutions de noms qui sont la base quand on utilise Kubernetes. L’auteur évoque aussi des alternatives.

Sans dire qu’il faut jeter Alpine qui n’est pas une mauvaise distribution Linux pour container, il faut savoir avec quoi on travaille pour éviter les problèmes !

Collectionnez les mathématiciennes !

#Divers

J’adore l’idée de ce prof de maths : créer une série de 13 cartes “magic” à l’effigie des grandes mathématiciennes, ensuite pour ceux qui réussissent des devoirs spéciaux (qu’il a appelé “badges”) peuvent gagner une des cartes. Si un élève rate un devoir, il peut faire un rattrapage pour améliorer sa note et quand même avoir la carte qu’il a loupée.

Il a constaté un fort engagement de la part de ses élèves (5ème et 4ème), et un plus fort intérêt pour les filières scientifiques de la part des filles. Encore une fois, ça montre que rendre visible les femmes donne des vocations.

CSS System Colors

#frontend #CSS #color

Article super intéressant qui montre comme avoir une gestion propre des thèmes light/dark sans utiliser de CSS custom properties et en laissant le browser gérer les couleurs pour nous en passant par les "system color". Je ne connaissais pas du tout, c'est super intéressant !

À noter que l'auteur indique que Firefox ne supporte pas color-scheme mais depuis début 2022, Firefox supporte cette propriété. Par contre aucune idée de si le support de la System Color Canvas a été corrigé sur Safari sur iOS, j'ai rien vu qui indiquerait ça et je n'ai pas d'iPhone pour tester.

16 little UI design rules that make a big impact

#frontend #design

Thread regroupant 16 conseils pour améliorer les UI et avoir une meilleure UX (améliorer la lisibilité, la compréhension, etc.). C’est extrait du livre de l’auteur du Thread.

Sans être UI/UX, comprendre la logique qu’ils utilisent permet d'être meilleur en frontend aussi. Simplement parce qu’on apprend à anticiper la logique derrière et on peut challenger un peu ce que proposer la personne en charge de l’UI/UX.

dns0.eu

#DNS #vie-privée

DNS alternatifs que je ne connaissais pas. Le but est de proposer une alternative européenne résiliente avec un blocage des domaines malveillants de base. Pour les enfants, on peut utiliser une URL alternative qui bloque les sites pour adultes et quelques autres sites qui pourraient être choquants. Ce genre de solution comme d'habitude faut tester et voir ce que ça donne

Why We’re Rebuilding The Thunderbird Interface From Scratch

#email #Thunderbird

J'utilise Thirderbird depuis quelques années maintenant, ça fonctionne très bien, et je suis très content de lire que l'UI et l'architecture du projet va être reprise à zéro pour remettre Thunderbird au goût du jour !

New React docs pretend SPAs don't exist anymore

#React #SPA

Je n'avais pas fait attention à ça : la dernière version de la doc React nous pousse à ne plus utiliser React seul (en SPA) mais via un framework qui permet de faire du SSR (Next.js, Remix, etc.)…

Donc globalement l'équipe React nous dit de ne plus faire ce qu'ils ont essayé de nous convaincre de faire partout depuis des années…

C'est dommage parce que les SPA (que ce soit en React ou non) sont une brique importante du web aujourd'hui, ont des vrais cas d'usage et à l'inverse les SPA sont là bonnes solution pour avoir des applications très interactive cachés derrière une authentification (donc sans besoin de SEO) comme des dashboards

I built a startup in Rust, I would do it again.

#Rust #Backend

Petite ode à la création de logiciel qui résiste au temps avec Rust. L'auteur nous donne sa vision de ce qu'il vaut le coup d'apprendre ou non pour les 10 prochaines années (Kubernetes, Docker, Postgres, Pulumi, Html/CSS/TypeScript) et pourquoi Rust aussi vaut le coup.

J'aime beaucoup sa manière de dire les choses, en particulier qu'on ne se bat pas contre le compilateur mais qu'il nous force à corriger les bugs avant d'aller plus loin. Ce qui limite beaucoup de problèmes. Il évoque aussi la syntaxe qui offre beaucoup de possibilités pour être concis

Why people misuse inheritance

#OOP #Java #Héritage #Composition

Article très court qui rappelle l'importance de préférer la composition à l'héritage. Il prend l'exemple d'une map pour laquelle on voudrait compter le nombre d'insertions. On peut se dire que c'est plus simple de passer par l'héritage et ne surcharger qu'une seule et unique méthode (en se basant sur une HashMap en Java par exemple). Ça doit fonctionner dans la plupart des cas, mais on a un risque d'avoir une autre méthode qui traîne ou qui s'ajoute dans le futur qui fait aussi de l'insertion et qui n'est pas prise en compte. Alors que l'idéal c'est de créer une classe qui implémente Map (en Java c'est 25 méthodes), en déléguant chaque méthode à une map contenu en interne (soit en créant explicitement une HashMap par exemple (au risque que ça ne colle pas à toutes les situations), soit en prenant une Map en paramètre de constructeur).

De prime abord on se dit que la version en composition est moins bonne car ça oblige à maintenir plus de code. Mais ce code n'est que du boilerplate qu'on écrit une fois et c'est tout, par contre on est garantie de ne pas louper de cas, car on voit explicitement tous les cas d'insertions dans notre classe. Là où en héritage, on aura qu'une méthode de surcharger mais l'existence d'autres méthodes est masqué par l'héritage.

Je retiens aussi une phrase que je trouve très vraie : si vous surchargez une méthode qui n'a pas été prévue pour être surchargée, vous avez de forte chance d'introduire un bug latent.

Successful Implant of Replacement 3D Printed Jaw

#impression-3D

C'est typiquement le genre d'histoire qui me fait penser que l'impression 3D c'est l'avenir : un homme qui peut retrouver une vie normale après s'être vu greffé une mâchoire imprimée en 3D (mâchoire perdue à cause d'un cancer).

Ce que je trouve encore plus fou, c'est qu'il s'agit d'une structure bio dégradable qui vient se placer comme une mâchoire de façon à ce que pendant les 2 prochaines années, son corps régénère les tissus qui manque et que la structure artificielle soit absorbée par son corps. C'est juste bluffant !

Je continue mes tests et réflexions avec #GPT4 #MidJourneyV5 , créons un jeu de société ( règles, cartes, traductions, plateau de jeux, mécanique ) en 15 min selon ses goûts.

#IA #ChatGPT #Midjouney #jeux-de-société

Idée très intéressante ! Utiliser de l'IA génératrice pour assister la création d'un jeu de société. Je dis pas qu'il faut tuer certains métiers du jeu de sociétés mais clairement ça peut aider à créer une base pour un jeu et ensuite passer par des vrais artistes pour compléter ce qui manque et corriger tous les problèmes. Ça peut aussi permettre à des gens avec une grosse imagination de créer des jeux même sans compétence en graphisme (au moins au début) et ensuite pouvoir tester un prototype qui fera plus "fini" que juste des dessins à l'arrache

Why We Added package.json Support to Deno

#JavaScript #Deno #NPM #Node

Dans les prochaines versions Deno va ajouter un support au moins partiel des package.json de Node. En parallèle de l'ajout d'un système simple pour gérer les dépendances Deno via un import map.

C'est une bonne décision de la part de l'équipe de Deno : les package.json sont problématiques pour plein de raisons mais ça apporte pas mal d'avantages aussi. Avoir une compatibilité avec les package.json - même fortement restreinte - va permettre d'augmenter la compatibilité avec node et permettre de créer des ponts entre les deux écosystèmes

curl 8.0.0 is here

#curl #divers #tool

Nouvelle version majeure de cURL. Aucun changement vraiment important, c'est une version de routine mais qui introduit un changement important : le retrait du support des systèmes non 64bit (cURL nécessite l'usage de nombre long long).

As a user, I don’t want to

#UX #dev #agile

Article intéressant sur comment on devrait rédiger les user stories pour en sortir de la valeur et mieux comprendre les besoins utilisateurs.

As a user, I want to customize my toolbar so that I can optimize my browsing experience.

Ici on ne raisonne pas "tâche" mais "besoin" ou "objectif". Du coup on peut se poser des questions facilement sur pourquoi optimiser ? Où ça bloque ? Est-ce que c'est bien la toolbar la solution ? Est-ce que c'est bien à l'utilisateur de faire quelque chose ?

universal-android-debloater

#tool #Android

Faut que je prenne le temps de tester cet outil qui permet de virer plein d'applications, etc. De son téléphone pour limiter les trackers mais surtout réduire la consommation de batterie et éviter certains réglages qui peuvent être embêtants

JetBrains lance un nouveau cours gratuit de programmation avec Rust

#Rust #Jetbrains

Jetbrains propose un cours gratuit pour apprendre Rust. J'imagine qu'ils proposent de le faire via CLion (l'IDE C/C++/Rust/…) mais c'est de bonne guerre et ce n'est forcément pas une nécessité. En tout cas c'est bien que Jetbrains propose un cours pour ce langage qui mérite d'être appris. Un nouveau cours ça veut dire un nouveau point de vue pour l'apprentissage !

Microsoft annonce la disponibilité de TypeScript 5.0

#TypeScript #frontend #backend

Article détaillant les nouveautés de la version 5.0 de TypeScript. Quelques bugfix mais surtout l'arrivée en option des nouveaux décorateurs tel que défini par le TC39 avec l'intégration des nouvelles discussions qui semblent aller dans la voie d'autoriser le positionnement des décorateurs avant ou après les mots clés de visibilités et d'export.

Je note aussi la possibilité de laisser le bundler résoudre les modules ! Ça c'est top car ça permettra sans doute de simplifier pas mal de config !

Pico-GB-Cart : Une cartouche de GameBoy sous RP2040

#GameBoy #jeux-videos #Raspberry-Pi

Projet super intéressant d'une personne qui a fabriqué une cartouche de GameBoy à partir d'un Raspberry Pi Pico et qui permet de jouer à des roms GameBoy et GameBoy Color stockées sur une carte micro SD sans émulation ! J'espère très fortement que ce projet finira par être commercialisé ou rendu accessible (avec un kit PCBWay ou autre)!

Le « droit à la réparation » se concrétise, la Commission européenne soumet enfin un texte de loi

#green #droit-à-la-réparation

La commission européenne commence enfin à vraiment préciser le droit à la réparation en actant que les constructeurs devront faire en sorte qu'on puisse réparer nos appareils et qu'on puisse le faire même au-delà de la durée de garantie. Par contre aucune indication sur les coûts de réparation typiquement donc si le texte reste en l'état il suffira que les pièces coûtent plus cher que de changer d'appareil pour rendre cette loi inutile...

ThumbHash: A very compact representation of an image placeholder

#image #web #optimisation #frontend

J'avais déjà vu ça, mais je n'avais jamais pris le temps de regarder comment ça fonctionnait. L'idée c'est qu’on sait qu'on va avoir une image qui mettra pas mal de temps à charger, on peut construire un placeholder qui pèse moins lourd. Là l'idée c'est carrément d'avoir une vision super flou sur genre 20-40 bytes en base64 qu'on pourra afficher en attendant que la vraie image soit là.

C'est pas idiot parce que ça évite les layout shifts, ça permet d'avoir un aperçu général de l'image, ça fait un overhead mais minuscule et c'est chargé en même temps que le HTML donc c'est négligeable

Il s’est fait piéger par son propre virus, où il fallait gagner un jeu extrêmement difficile

#hack #sécurité #piratage #jeux-video

Un Coréen se dit que ça pourrait être drôle de faire un crypto-locker (logiciel malveillant qui chiffre les données de la machine infectée et généralement demander une rançon pour débloquer), sauf qu'il fallait faire un super score à un jeux-video. La blague c'est qu'il s'est auto-infecté et n'a jamais réussi à faire le score attendu. Du coup il a créé un patch qu'il a publié librement pour récupérer ses données 🤣

Announcing Sandpack 2.0 and a Node.js runtime for any browser

#Sandbox #speaker #slide

Solution permettant de faire de la compilation live avec un éditeur et de la preview le tout 100% côté navigateur. Ça vient de Codesandbox donc évidemment peut servir à faire des zones de code interactive mais ça peut aussi servir à faire des démos pour une présentation technique !

ui = client(server(data), state)

#React #frontend #UI

Dan Abramov comme souvent exprime très bien certains concepts. Là c'est une variante du modèle mental qu'on apprend (ou à minima devrait apprendre) en même temps que React : UI = f(state). On retrouve parfaitement la logique de React, mais on ne prend en compte que la partie cliente (ce qu'on a côté navigateur) de l'application. Dan Abramov propose plutôt : UI = client(Server(data), state). C'est plus proche de la réalité modulo que ça n'est pas vraiment comme ça que ça fonctionne en SSR où on aurait plutôt :

client = server(data)
UI = client(state)

Il manque plein d'éléments dans les 3 modèles mais ça n'a pas besoin d'être exact plut être vrai, ce n'est qu'un modèle mental

Jest 29.5.0

#Jest #tests

Jest possède enfin un moyen de randomiser l'ordre d'exécution des tests. Pour moi c'est juste la base… Mais bon je reste sur mon avis que Jest n'est pas un bon outil

Making Tanstack Table 1000x faster with a 1 line change

#JavaScript #optimisation

REX d'une recherche d'optimisation dans une lib (tanstack table) qui consiste en 1 ligne changée pour plusieurs dizaines de secondes gagnées à chaque re-rendu. Globalement c'est un choix de faire du full imutable sur un reduce alors que c'est anti-perf pour des gros volumes sans forcément apporter de gain ici.

Crédit photo : https://pixabay.com/photos/newspapers-leeuwarder-current-press-444447/