Hebdomadaire Shaarli

Tous les liens d'un semaine sur une page.

Semaine 17 (April 24, 2023)

Trace Pixels To Vectors in Full Color, Fully Automatically, Using AI - Vectorizer.AI

Un outil en ligne pour convertir un SVG des images jpeg ou png (via sebsauvage)

Simplify Multi-Tenancy in Symfony with the Multi-Tenancy Bundle

Tout est dans le titre

Harness the power of Feature Toggle Flags with Flagception in Symfony projects | by David Garcia | Apr, 2023 | Medium

Un bundle pour utiliser des feature flags dans les applications Symfony

How To Manage Your Stress as a Developer

Un complément de https://thevaluable.dev/programmer-stress-causes/ : quelques pistes pour gérer son stress

Déployer ses services auto-hébergés en quelques secondes · Cosme Charlier

L'auteur montre comment utiliser Docker et Traefik

How to Learn a Programming Language in Three Steps

Tout est dans le titre

Programming Side Project Ideas: How To Generate Them

Quelques conseils pour trouver des idées

Sauvegarder WordPress et sa base de données dans une archive ZIP

Un exemple de script Bash

A Guide for Debating Effectively as a Software Developers

Tout est dans le titre

A Practical Guide to fzf: Shell Integration

Suite de https://thevaluable.dev/practical-guide-fzf-example/ l'auteur passe en revue la customisation :

  • des raccourcis clavier de fzf
  • de la complétion

Il montre aussi l'utilisation conjointe de fzf et tmux... Puissant !

Why deadlines are pointless and what to do instead

L'auteur explique que les deadlines ne fonctionnent pas, même en tenant compte de la loi de Parkinson :

  • Le temps nécessaire pour faire quelque chose ne dépend généralement pas de la pression que l'on met à l'exécutant.
  • Les deadlines favorisent la vision court termiste, plutôt que l'amélioration continue et consistante.
  • Les deadlines ne permettent pas l'adaptation, si on en rate une, c'est trop tard pour faire quelque chose d'utile.

L'auteur suggère aux managers deux actions :

  • Un contrôle quotidien, ou point de préemption (via le daily meeting) afin de vérifier qu'on ne s'écarte pas trop de la ligne que l'on s'est fixée et de s'adapter le cas échéant.
  • Être impitoyable sur la priorisation des tâches - l'approche FIFO n'étant pas la bonne (Note: voir la matrice d'Eisenhower ?)
A practical example of using Symfony PropertyInfo component

Tout est dans le titre

Qu'est-ce que le stockage sur Linear Tape-Open (LTO)

Tout est dans le titre

Vue.js & D3.js : un bon combo pour une data visualisation dynamique | Makina Corpus

Tout est dans le titre

GO et chan

L'auteur partage quelques conseils sur l'utilisation des chans en Go (taille, etc.) pour ne pas tuer les performances

How to cache Ansible facts with MongoDB

Tout est dans le titre

Feedback sur Scaleway Secret Manager :: Le blog de Nrz

Un retour d'expérience plutôt positif

Comment compresser son code applicatif de manière efficace avec Nginx et Brotli ? | Makina Corpus

Tout est dans le titre

Gitea Actions, on redeploie mon blog (encore) - XataZ Blog

Tout est dans le titre

Ansible - Les meilleures pratiques - Partie 2

Tout est dans le titre - cette fois, ça concerne les performances

How I created a Red Hat OpenShift cluster on tiny hardware

Tout est dans le titre

GitHub - robin-papazian/pointeur-episode-I

Une bonne introduction aux pointeurs en C

What is a Docker Container and How to Create One — SitePoint

Tout est dans le titre

Mastering the JavaScript switch Statement — SitePoint

Tout est dans le titre

Recent Reading: Creativity, Mastery and the Three Phases of Learning - Scott H Young

Des notes de lecture sur l'apprentissage, la motivation et la créativité

How to install Red Hat OpenShift Local on your laptop | Enable Sysadmin

Tout est dans le titre

Un cluster Kubernetes gratuit pour vos labs persos ! - part 1

^^ en fait l'auteur montre l'utilisation de l'offre d'Oracle Cloud qui comprend une partie gratuite, suffisante pour se faire une idée

Thanos - Stockage des métriques Prometheus sur le long terme

Tout est dans le titre

Display your application data with Streamlit

Tout est dans le titre

L'interview sécurité : la cybersécurité et la sécurité Cloud chez leboncoin

Tout est dans le titre

39 PHP String Functions You Can't Live Without — SitePoint

Tout est dans le titre

Preparing For A Kubernetes Job Interview? We've Got You — SitePoint

Une sorte de FAQ pour Kubernetes

The weird world of Windows file paths | Fileside

Tout est dans le titre (via sebsauvage)

RxJS en moins de 50 lignes de code · Orion Charlier

Une bonne façon de comprendre les bases de fonctionnement de RxJS (librairie de programmation réactive)

Create a custom JMS Serializer handler for mapping values - DEV Community

Tout est dans le titre

Vim Commands: A Beginner Guide with Examples

L'auteur présente les bases de Vim / Neovim, notamment les différents modes, à quoi correspondent les commandes clavier, et la configuration de certaines options. Il recommande de se créer soi même sa propre antisèche !

A Mouseless Development Environment

En résumé, les outils recommandés :

  • utilisation du shell Linux
  • distribution Arch Linux
  • tiling window manager i3
  • terminal URxvt avec tmux / tmuxp
  • IDE vim
  • git
  • outils cli pour accéder aux bases de données : mycli ou pgcli
A Detailed Explanation of The KISS Principle in Software

Tout est dans le titre

Slides DEVOXX Paris 2022 - w3blog

Tout est dans le titre

Le résumé de la DRE Con 2023

DRE est l'acronyme de Data Reliability Engineering. Il s'agit de construire des infrastructures data plus résilientes en production. Pour ce faire, les data engineers peuvent appliquer des pratiques SRE.
L'auteur résume plusieurs conférences.

Accessible Target Sizes Cheatsheet — Smashing Magazine

De bons conseils en UX mobile

Robert Waldinger: The secret to a happy life -- lessons from 8 decades of research | TED Talk

Pour résumer la vidéo, les gens heureux (et en meilleure santé !) sont ceux qui ont des relations "de qualité"

Discovering Primitive Objects In JavaScript (Part 1) — Smashing Magazine

L'auteur montre une approche pour donner du sens aux valeurs manipulées par un programme, en les encapsulant dans un objet immutable. Par exemple, si on doit s'occuper d'une note entre 0 et 5, on crée un objet avec la propriété "rating" (dont on s'assure de la cohérence métier). Ensuite, en créant dans cet objet les méthodes toString() et valueOf(), on permet de réaliser des opérations - comme un affichage direct (toString) ou une addition (valueOf)

Apprendre et Maitriser Rudder l'outil de gestion de configuration

Tout est dans le titre

A Step-By-Step Guide To Building Accessible Carousels

Tout est dans le titre

How To README · Matthias Ott – User Experience Designer - Warrior du Dimanche

De bons conseils pour l'écriture de README

Laravel : Générer des données de test avec Factory, Faker et Tinker

Tout est dans le titre

Notes sur la gravure laser

Tout est dans le titre

How to run containers on Mac with Podman

Tout est dans le titre

Journal Alternatives à Docker (ou presque)

L'auteur montre plusieurs alternatives, autour de Podman et de l'hébergement d'images, entre autres.

Premiers pas avec Rudder - concepts et configuration

Suite de https://blog.zwindler.fr/2023/03/19/premiers-pas-avec-rudder-installation/ l'auteur montre comment classer les machines en "groupes" et comment créer une directive (ici "sudo doit être la dernière version disponible") applicable à un groupe.

GNOME Shell : empêcher l'extinction des écrans lors du verrouillage - FLOZz' Blog

Une astuce

Comment exporter une base de données avec mysqldump

Un article pense bête

What is CSS Overflow Property? — SitePoint

Tout est dans le titre

Unleashing the Power of PHP Fibers: Boost Web Development with Efficient Coroutines - PHP Magazine Network

Une fonctionnalité introduite en PHP 8.1 pour la programmation concurrente : les "Fibers' L'auteur les présente et donne un exemple via une limitation d'usage API

AWS Cloudfront Tutorial: Setup and Configuration — SitePoint

Tout est dans le titre

The “const” Deception

L'article concerne le "const" en JavaScript. L'auteur rappelle la différence entre mutation et assignement - c'est ce qui explique qu'on peut écrire sans erreur

const maVar = { name: 'toto' }
maVar.name = 'titi'

et pas

const maVar = 1
maVar = 2

Dans le premier cas, il s'agit d'une mutation, alors que dans le second c'est un assignement.

Ludovic Alarcon - KubeCon-CloudNativeCon Europe 2023 - Jour 2

Les résumés de conférences autour de Kubernetes :

  • Unlocking Argo CD’s Hidden Tools for Chaos Engineering (Dan Garfield et Brandon Phillips)
  • Kubernetes Defensive Monitoring with Prometheus (David de Torres Huerta et Mirco De Zorzi)
  • Hacking and Defending Kubernetes Clusters: We’ll Do It LIVE!!! (James Cleverley-Prance et Fabian Kammel)
  • Building a Successful Business in Cloud Native (table ronde)
  • Running Not Root Made Easy (Luboslav Pivarc)
Troubleshooting Kubernetes: Unauthorized Access and More — SitePoint

Tout est dans le titre

C’est quoi l’entropie ?

L'auteur explique la notion d'entropie, surtout dans le contexte de transmission d'information (entropie, mesure de la quantité d'information émise par un émetteur, minimum de la taille moyenne pour transmettre une info complète)
Je cite ensuite Pour [...] la sécurité informatique, l’entropie permet également de mesurer la qualité d’une source d’information aléatoire car elle est maximale si les messages sont équiprobables et diminue dès que certains sont plus ou moins fréquents.

Serveur web Apache sous Rocky Linux 8 – Le blog technique de Microlinux

Une très bonne introduction au fonctionnement d'Apache (pas que sur les serveurs type Red Hat)

6 Sources of Stress in Software Development

Un bon article sur le stress : conséquences, causes possibles (spécialement pour les développeurs) et quelques remèdes possibles

Composerize

Un outil pour générer un fichier docker-compose à partir d'une commande docker

Write Better CSS By Borrowing Ideas From JavaScript Functions — Smashing Magazine

Tout est dans le titre

Top Front-End Tools Of 2022 — Smashing Magazine

Une grosse liste d'outils front : CSS, JS, icônes, etc.

Déployer des logiciels sous Windows avec un serveur WAPT

L'auteur montre l'installation d'un serveur WAPT sous Debian. Ce type de serveur permet de déployer des logiciels sur des postes de travail Windows d'un parc informatique.

Guerlain (LVMH) : luxe et surveillance

Le simple fait de commencer à s'inscrire sur le site de Guerlain provoque la fuite en masse de données vers leurs "partenaires"... L'auteur donne quelques conseils pour se protéger

MySQL Command Line Tool: Unleash the Power of mycli

Un super outil pour MySQL / MariaDB en ligne de commande (meilleur que la commande "mysql" de base) Il existe aussi en version PostgreSQL

Explications sur les cookies - La Galaxie JVM

Une introduction sur les cookies

Utilisez le DNS sécurisé : DoT et DoH • Billets • Zeste de Savoir

Tout est dans le titre

Le slicing en Python : utilisation et exemples

Tout est dans le titre

Rudder - Un bel outil pour durcir les configuration de vos VM

Suite de https://blog.stephane-robert.info/post/introduction-rudder/ l'auteur démontre les possibilités de Rudder pour appliquer une conf, voir si des serveurs sont conformes à ce qui est attendu, etc.

The 35 Best Philosophy Books to Live Better and Become a Great Thinker

Une présentation de 35 livres plus ou moins philosophiques / de développement personnel.

Introduction à Autotools et m4

Tout est dans le titre

En route vers Biscuit (Partie 2)

Suite de https://lafor.ge/biscuit-1 l'auteur explique comment fonctionne le Biscuit (cryptographie, Datalog et usages)

How to cache Ansible facts with Redis

Tout est dans le titre

Full Stack GraphQL With Next.js, Neo4j AuraDB And Vercel

Il s'agit d'un tutoriel sur la construction d'une application GraphQL avec NextJS et Neo4j, déployée sur Vercel.

La propriété image-rendering en CSS - Alsacreations

C'est subtil...

Deploy an application in Red Hat OpenShift on your laptop | Enable Sysadmin

Tout est dans le titre

De Proxmox à XCP-ng

Une comparaison intéressante entre ces 2 hyperviseurs...

Ansible - Les meilleures pratiques - Partie 1

Tout est dans le titre

Mega Linter : votre meilleur ami pour un code de qualité | Néosoft

Un linter pour les gouverner tous ? 😛 À tester en tout cas

Créer une application en tant que composant web avec Stencil | Makina Corpus

Tout est dans le titre

firejail : Lancez vos applications en bac à sable - Wiki

Tout est dans le titre

How to work with a list of dictionaries in Ansible

Tout est dans le titre

Migrating symfony.com Search Engine to Meilisearch (Symfony Blog)

L'auteur donne quelques conseils pour bien intégrer Meilisearch... ça fonctionne plutôt bien sur la doc de Symfony ^^

Patcher un code JS sur son propre code - Jean-David Daviet

L'auteur montre l'utilisation de la lib npm "patch-package" Ça marche bien si les corrections que l'on souhaite apporter sont minimes

Ludovic Alarcon - KubeCon-CloudNativeCon Europe 2023 - Jour 1

Les résumés des conférences autour de Kubernetes :

  • Zero Privilege Architectures (Thijs Ebbers et Diana Iordan)
  • Past, Present, and Future of eBPF in Cloud Native Observability (Natalie Serrino et Frederic Branczyk)
  • Availability and Storage Autoscaling of Stateful Workloads on Kubernetes (Leila Abdollahi Vayghan)
  • Multi-cluster observability with service mesh (Ryota Sawada)
  • Life without sidecars - is eBPF’s promise too good to be true? (Zahari Dichev)
Kubernetes vs Docker: Key Engineering Considerations — SitePoint

Sans surprise, Kubernetes l'emporte dès qu'il s'agit de s'assurer scalabilité et robustesse....