Skip to main content

Développeur web Full-stack chez WebService'Est - Metz - Saint-Avold.
Je partage ici en brut mes découvertes issu de ma veille IT.
---
Pourquoi pas Facebook ou Twitter? Je suis pour l'open-Source !

nicolasnosal.fr/

www.webservice-est.fr/

www.linkedin.com/in/nosalnicolas/

 

Tabby ( anciennement Terminus ) est un terminal cross plateforme ( mac, linux, windows ) codé en Electron, il est vraiment très sympa, découvert pour son quake mode, il peut gérer plusieurs type de shell et intègre même un client ssh (génial pour les utilisateurs windows) : https://tabby.sh/

Il y aussi ueli qui est aussi codé en Electron, c'est un clone de spotlight/alfred mais en cross plateform : https://ueli.app/#/

 

Vous utilisez votre git sur des grosses plateformes détenues par des tiers, des alternatives quand même online? :

- Pour remplacer gitlab.com? Pensez à : https://framagit.org/public/projects
- Pour remplacer github.com / jira ou gitea? Pensez à https://codeberg.org/

 

- un outil sympa pour analyser couche par couche une image docker: https://github.com/wagoodman/dive
- un autre outil sympa afin de compresser plus efficacement ses images docker: https://github.com/docker-slim/docker-slim ( https://dockersl.im/ ) (https://computingforgeeks.com/minify-optimize-and-secure-docker-containers-using-dockerslim/)

 

O2S gère Nextcloud enfin... il est temps de rafraichir mes logiciels de connexion cloud, petit memento:
- Forklift 3 gère le webdav et via "Forklift Mini" dans le tray on peux "mount as disk" ( par contre c'est dommage j'ai mis à jour à la dernière version et ça ne marche plus... ): https://binarynights.com/
- Mountain Duck, le projet axé "mount" de Cyberduck: https://mountainduck.io/
- CloudMounter qui gère pas mal de protocole: https://cloudmounter.net/
- StrongSync le projet axé mount spéciale Mac APFS, https://www.expandrive.com/strongsync/ dérivé du vieux expandrive ( linux aussi?): https://www.expandrive.com/desktop/

Sinon il y a le soft de nextcloud qui fait une synchro de base ( filtre possible ).
Edit: Il y a toujours rclone, dommage qu'il n'y a pas de gui de qualité : https://www.linuxuprising.com/2019/07/rclonetray-easily-mount-rclone-remotes.html
Edit2: Pour forklift, il suffisait de réinstaller fuse for mac: https://osxfuse.github.io/ ( et de bien autoriser l'app ).

 

Je bosse actuellement dans un projet avec IA et c'est vrai que les modèles sont principalement en anglais... Du coup, petite découverte de ce que ça peut donner (testable online) avec un modèle génératif Open AI GPT-2 francophone : https://huggingface.co/spaces/mnemlaghi/beauparleur

Approfondir sur Bert? GPT-2? GPT-3?:
- https://dataanalyticspost.com/bert-gpt-3-switch-c-le-transformer-a-lassaut-du-langage-naturel
- https://stackoverflow.com/questions/66852791/key-difference-between-bert-and-gpt2
- https://www.lebigdata.fr/openai-ia-dangereuse-publiee
- https://www.lebigdata.fr/openai-gpt-3-tout-savoir
- https://ressources.labomedia.org/aitextgen

Edit: en passant sur les projets du jour, sympa ce projet (en anglais) couplant un newsreader + un générateur ML pour synthétiser les articles : https://huggingface.co/spaces/Devika/Briefly

 

Si vous débuter sur Mac, un petit raccourci sympa pour ajouter des émoticones: CTRL + Cmd + Espace 😉

 

Outil crossplateform pour améliorer des photos (ai/deeplearning) avec son/ses gpu: https://github.com/xinntao/Real-ESRGAN

Très prometteur, ll est actuellement optimisé pour les images d'animés / photos mais il est prévu d'être optimisé dans un futur proche pour les visages / textes.

Si vous avez un vieux gpu/cpu, vous pouvez utiliser la version online ici: https://huggingface.co/spaces/akhaliq/Real-ESRGAN

 

En réfléchissant de nouveau sur les nas, je me suis posé la question s'il serait possible de me monter un nic teaming ( bonding sous linux bref... de l'aggrégation de plusieurs de mes cartes réseau :D ), la réponse est oui, ça peut se faire via linux (en bonding) mais il faut aussi un routeur/switch compatible ( c'est souvent un basique "Static Link Aggregation Groups (LAGs)" alors qu'il faut un full "Link Aggregation Control Protocol (LACP)" qui est sur du matos plus cher ; au minimum 50€ avec un Netgear Smart GS308T ) ainsi qu'une carte réseau 10gb en mono utilisateur.

Sinon il y aussi le protocole MPTCP qui est super intéréssant pour agréger plusieurs connexion internet, genre le wifi + le lan + le 4g ... :D https://www.youtube.com/watch?v=KezRqtM6quk ( liste des VPS compatibles: https://github.com/Ysurac/openmptcprouter/wiki/Install-or-update-the-VPS )

Edit: petit exemple à quoi peux ressembler la mise en place d'un bonding avec l'interface Synology : https://www.cachem.fr/agregation-liens-nas-synology/ ( similaire sous d'autre os linux comme omv ou autre )

Edit 2: Le Nic teaming sous windows est toujours réservé au SKU des éditions "Serveurs" de Windows. Une doc pour Windows 10 Serveur est dispo: https://docs.microsoft.com/fr-fr/windows-server/networking/technologies/nic-teaming/nic-teaming-sett... ; actuellement la technique pour les "desktop" c'est de configurer manuellement via les pilotes de Intel PROSet: https://www.intel.com/content/www/us/en/support/articles/000005667/network-and-i-o/ethernet-products... ... ça semble fastidieux :D ... Dell explique bien la situation ici: https://www.dell.com/support/kbdoc/fr-fr/000131811/association-de-cartes-nic-dans-des-syst%C3%A8mes-.... Et ça ne va pas s'améliorer, cette possibilité va même totalement disparaitre de Windows 11, Intel ne va pas poursuivre les pilotes ... : https://www.intel.com/content/www/us/en/support/articles/000087483/ethernet-products.html ; bref bien joué Microsoft..

Edit 3: En multi plateforme, (donc windows aussi) il y a le projet dispro (en go) qui est un proxy load balancer NIC sous SOCKS5, qui semblent prometteur... : https://sirsac.github.io/DisPro/

 

Mon nas s'est décider à me demander beaucoup d'attention ce week-end... il est devenu instable avec des input/output error très chelou sur le disque système... pourtant le raid est clean ( "sudo mdadm -D /dev/md0" ) ... bref, une commande fort utile si vous utilisez mdadm:

"sudo mdadm --assemble --scan ; # installation? sudo apt-get install mdadm ; il ne veux toujours pas le détecter? en mode manuel: sudo mdadm --assemble /dev/md0 /dev/sda1 /dev/sda2 ... ".

Cela permet de détecter automatiquement tout vos disques et de monter ainsi votre raid facilement, pratique depuis un live cd par exemple, afin de pouvoir faire backup ou autre.

 

à tester pour des script test inbrowser: https://playwright.dev/docs/intro

 

Je suis très bash dernièrement, du coup petite commande pratique pour trier avec 'ls' les derniers modifiés/ajoutés d'un dossier: 'ls -alt *.py | head' pour afficher les 10 premiers fichier python ou bien on peut aussi utiliser le reverse: 'ls -altr *.py'

 

Sans surprise, encore un gadget qui terni l'image du quantique... hallucinant le prix en fin de vidéo ( 500 à 5000€ pour un basique signal carré : honteux ! ... en même temps, facile, vu la taille de l'appareil il fallait pas s'étonner non plus... ) : https://www.youtube.com/watch?v=UrDfPGSWxas

 

Pour les petites retouches sans sortir Photoshop : https://cleanup.pictures/

 

Dans les trucs assez cool de vim que j'apprécie, c'est de pouvoir executer des commandes on the fly.

Imaginons que l'on souhaite insérer à la ligne 1 la date, il suffit de taper ":0read !date". Note: Pour formater une date en plus, il faut rajouter "+\%Y-\%m-\%d", notez bien l'escape du caractère "%" qui est nécessaire.

Bon saisir des lignes c'est pas super pratique autant sélectionner la ligne actuel, pour cela il faut taper "V".
Puis on peut saisir notre commande par exemple ":read !curl --silent ifconfig.me" pour remplir avec notre IP public. Ce n'est pas cool ça?

On peut imaginer executer aussi un code python :read !python -c 'print("Hello World!")' qui va nous écrire dans notre fichier "Hello World" depuis Python.

Inversement, on peut aussi executer du code python depuis du texte, imaginons qu'on se place sur une ligne qui contient print("ABC"), on fait "V" pour la sélectionner puis ":write !python".

Voilà un petit memento sans prétention pour présenter ces petites fonctionnalités plutôt puissante.

 

Petite astuce vim pour visualiser les lignes d'un bash qui ne sont pas commenté: ":v/^\(\(#.*\)\@!.\)*$/d"
Edit: En fait, ça supprime les lignes (/d)...

Si l'on souhaite filtrer sous vim on peut soit masquer le contenu des lignes: ":syn match Ignore /#.*/ containedin=ALL set conceallevel=2". Ca fait beaucoup de vide mais ça passe.

Soit mettre le code dans un panel quickfix ( que je trouve pas pratique): ":vimgrep /#.*/ %" . Mais là il faut jongler comme pas possible dans les raccourcis claviers.

Ou bien utiliser le folding, c'est cette méthode que je trouve la plus élégante, même si ligne devient longue, pour cela on peut faire une fonction par exemple:
'''
# dans son bashrc (j'ai chain le pattern "#" et "//")
function vif() { vim -c ":set fde=getline(v:lnum)=~'^\\s#'?1:getline(prevnonblank(v:lnum))=~'^\\s#'?1:getline(nextnonblank(v:lnum))=~'^\\s*#'?1:getline(v:lnum)=~'^\\s//'?1:getline(prevnonblank(v:lnum))=~'^\\s//'?1:getline(nextnonblank(v:lnum))=~'^\\s*//'?1:0 fdm=expr" $@; };
# pour utiliser:
vif ansible.cfg # si besoin de fold/unfold sur le curseur: "zo" ou bien "zc"
'''

Je suis un peu surpris que ça n'existe pas nativement dans un éditeur de texte terminal comme dans vim ou même dans "neovim" (le fork amélioré)...

 

Petit memento pour enregistrer le bash history d'un screen non persistant :
'''
screen -r screename
history -w ~/history_myscreen.txt
'''

 

Petit memento d'un scrip en bash (attention, non testé) pour découper un tgz :
'''
# Split TGZ
splitsize="10G"; fn="home.tar.gz"; pathtocompress="/home" # edit here
split -b ${splitsize} ${fn} "${fn}.part" # split an existing tgz file
tar -cvzf - ${pathtocompress} | split -b ${splitsize} - "${fn}.part" # or split while making tgz file..
cat "${fn}.part*" > "joined.${fn}" # join back the file
tar -xvzf "joined.${fn}" # decompress the file
'''

 

Petit bench sur le respect de la vie privé de votre navigateur : https://privacytests.org/

Mais où est Vivaldi ? 😁

 
 

Speedtest? Pensez à essayer librespeed : https://librespeed.org/

 

Incroyable cette faille 0 day pour Mac quand même... en espérant un fixe rapide : https://www.01net.com/actualites/une-faille-zero-day-permet-de-pirater-des-mac-a-distance-2048658.ht...

 

Source pour migrer gogs vers gitea: https://docs.gitea.io/en-us/upgrade-from-gogs/ puis https://awk.space/blog/gogs-to-gitea/
Conclusion rapide: c'est fastidieux mais c'est faisable! :) Il faut vraiment commencer à partir de 1.1.4... puis 1 un par 1...
Si j'ai un peu de temps, je ferais une image automatisant le process.

 

Petite découverte du jour: https://lottiefiles.com/

 

Une altenative à uptime robot en self hosted? Uptime Kuma: https://github.com/louislam/uptime-kuma (pour les notif?: https://gotify.net/ )

 

Je viens de voir passer une notification pour la sortie de Parallels Desktop 17... je me suis demandé si enfin le support x86 était de la partie.. et en fait... eh bien non... il s'agit vraiment d'une virtualisation simple, pas d'émulation x86 pour booter ses anciennes vm.. ouch.

D'ailleurs je n'ai même pas trouver l'info sur leurs site de façon clair?!... Bref je confirme que cela nécessite donc bien une version Windows 10 ARM64 (note: qui est une version développeur) et non pas la classique !

Bon chose à savoir, Microsoft à mis en place dans Windows 10 ARM, un émulateur x32 et x86 mais ça reste de l'expérimental... aucune idée si ça marche bien... et ce n'est donc que pour Windows, exit les OS x86 Linux ou autre un peu spécial..

Du coup, en cherchant un peu mieux, il n'y a pour l'instant que le projet UTM qui permet une émulation x86 sur Apple Silicon. Je vous recommande ce super article en anglais qui résume bien les outils pour l'instant dispo: https://nomadic-dmitry.medium.com/apple-silicon-m1-how-to-run-x86-and-arm-virtual-machines-on-it-cdd...

Note:
- VirtualBox n'émule pas de CPU mais que les périphériques, donc out à jamais pour VirtualBox.
- VMWare est en train d'étudier comme Parallels une version ARM, cela doit être la même chose que Parallels... à voir.
- Il ne reste plus donc plus que la solution open-source incontournable: QEMU (d'ailleurs UTM est un wrapper de ce dernier ) qui permet d'émuler de nombreux type de processeur mais bon les performances ne doivent pas être terrible et out l'accélération graphique, à review.

Quelques pistes:

-> Exactement ça ! Windows 10 x86... bon mais en gros c'est trop lent... donc l'émulation serait contre productive :
https://www.sevarg.net/2021/01/09/arm-mac-mini-and-boinc/ ;
-> Windows Xp via QEMU ARM:
https://tinyapps.org/blog/202105220715_m1_mac_emulate_x86.html ;
-> Mac x86 via QEMU:
https://khronokernel.github.io/apple/silicon/2021/01/17/QEMU-AS.html ;
-> UTM bien dispo sur M1 et pas que iOS ( via le repo github):
https://www.macg.co/logiciels/2021/02/virtualisation-utm-est-aussi-disponible-sur-macos-y-compris-po... ;

 

Une IA pour vais aider avec vos cover de réseaux sociaux ? : https://pixelhunter.io/

 

Grafikart test Github CoPilot, la révolution est en marche !
L'IA décide déjà à notre place du choix techno 😱😂 :
https://twitter.com/grafikart_fr/status/1415668381907259393?s=19

 

J'adore coder en python mais le bash c'est très bien aussi ( sans dépendance ), autant alors le faire bien avec ma petite recommandation en français:
- Pro Tips de Wescale: https://blog.wescale.fr/2016/04/07/bash-pro-tips/ ;
- Best Practice Bash rapide : https://blog.desdelinux.net/fr/mejores-practicas-para-crear-un-script-de-shell-en-gnulinux-parte-2/ ;
- Best Pratice global : https://blog.seboss666.info/2020/04/programmation-defensive-en-bash/
- Best Practice plus complet: https://ineumann.developpez.com/tutoriels/linux/bash-bonnes-pratiques/
- Bonus: Une cheatsheet pour réviser vos bases: https://devhints.io/bash

 

Je suis passé entre autre de memcached à redis ( Pourquoi? multithread maintenant supporté et surtout plus de possibilité ) et franchement c'est vraiment top ! Mais comment monitoré "rapidement" Redis? : A cela vous pouvez utiliser le basique et gourmand "redis-client monitor" ou bien utiliser: "Redistop" ( pas un "Stop" Redis... mais à comprendre plutôt Redis + Top et là c'est bien plus classe !! ) : https://bearstech.com/societe/blog/redistop/

( ... et grafana? grafana!... chuuuutttt...! j'ai bien précisé "rapidement" :D )

 

Mémento regex hyper sympa ( Pourquoi? il y a toute les syntaxes de compatibilités ! PCRE, BRE, ... ) : https://remram44.github.io/regex-cheatsheet/regex.html

 

Un résumé de plusieurs infographies plutôt sympa sur le monde du dev: https://www.hongkiat.com/blog/cheatsheet-infographic-software-developers/

 

Pour les PC, pensez a refresh Windows Update : la mise à jour KB5004945 est enfin disponible afin de fix la faille Zeroday PrintNightmare.

 

C'est con, mais si vous n'arrivez toujours pas à vous connecter avec votre pubkey en tant que simple utilisateur, ssh est hyper sensible à ses permissions, voici une proposition de code à appliquer sur le distant :
'
sshp=/home/USER_HERE/.ssh ; sshauthfile=authorized_keys;
chmod 700 $sshp; chmod 644 $sshp/$sshauthfile; # chmod 400 $sshp/id_rsa;
# bonus pour selinux: restorecon -R -v $sshp
# vous pouvez aussi mettre un chmod 600 ou 400 sur la clée privée si vous en avez une dans votre dossier.
'

 

Découverte du projet Mackup, permettant de synchroniser osx ses paramètres sur le cloud : https://github.com/lra/mackup

 

VSCodium c'est sympa pour les puristes du libre avec une version vraiment de base. Mais il ya quand même des extensions sympa exclusives sur VS Code Classique en code non libre. Du coup, c'est pas compliqué, il suffit juste de le désactiver et c'est tout: https://code.visualstudio.com/docs/getstarted/telemetry . Ca stocke dans votre settings.json: "telemetry.enableTelemetry": false et donc ça reste persistant en plus pour les upgrades ;)

 

Il y a des cas particuliers où sshpass est fort utile (si si ça existe mais c'est rare oui :D ), pour installer la dernière version d'Avril 2021 (1.09), j'ai trouvé un gist à jour pour l'installer manuellement avec brew, voici le code: 'dlfile=https://gist.githubusercontent.com/ethan-k/e9d7ca8f34e981407fa512c1e69db3a0/raw/524ce55b0b1b3bbdda5a2d83bc77fcee86fa0812/sshpass.rb ; wget $dlfile ; brew install sshpass.rb ; rm sshpass.rb '

 

Intéréssant cette technique nginx pour utiliser du webp à 100% sur son site : https://www.geeek.org/webp-nginx/ ; Idem pour activer la compression brotli: https://www.geeek.org/installer-brotli-nginx-ubuntu/

 

Intéréssante étude pour comparer les performances entre différents reverse proxy: https://github.com/NickMRamirez/Proxy-Benchmarks

 

Découverte du projet code server, qui permet d'utiliser vscode depuis un navigateur ! : https://github.com/cdr/code-server#quick-install

 

Un gros Wow pour cet article de François Goffinet ! Aussi complet voir même un peu plus sur certains sujet que ma doc en interne, C'est rare, une telle qualitée ! Bravo à l'auteur ! Je partage, si vous voulez vous mettre à KVM: https://linux.goffinet.org/administration/virtualisation-linux/virtualisation-kvm/ ; Note: Il y a pleins d'autres sujet même du Openstack ! Un site à bookmarker direct.

 

Résumé de la journée des choses à ne pas faire :
0- Ne pas PRUNE votre docker sans sauvegarde au préalable à MINIMA. Sinon bonjour la BACKUP à récupérer.
1- Ne pas essayer de booter directement un OS sous QCOW2 sans minimum un SSD natif.
2- Ne pas essayer non plus de le mettre en disque dur secondaire pour accéder aux données, cela va planter votre VM et les latences sont à se trucider.
3 - Ne pas s'embêter à faire de la place pour faire le 1/ ou le 2/ même sur un SSD/NVME en externe via USB3. Paradoxe des paradoxes, les latences sont encore pire qu'un HDD en SATA interne classique.
4- Ne pas essayer de convertir votre image QCOW2 en RAW, ça prend 20 plombes et en plus à terme ça fait planter votre host sur un HDD classique.
5- Ne pas essayer de copier les données avec un GUI comme Nautilus, toujours utiliser la ligne de commande afin de diagnostiquer d'éventuel bug dans la copie.

Les choses à faires:
0- Avoir assez de place sur un autre SSD/NVME natif pour accueillir le fichier. Sinon...
1- Monter votre QCOW2 via NBD et monter le. POINT FINAL.

Qui dans mon cas bien super simple était de monter un QCOW2 de sauvegarde bien volumineux qui est stocké sur HDD classique (tu les sent les 100mb/sec...) et dont la partition est bien évidemment dans le format spécial APFS... afin de récupérer des fichiers effacés. Voici le code:
'''
# Install APFS Fuse via Yay - Arch
yay install apfs-fuse-git # ou linux-apfs-dkms-git plus à jour mais plus compliqué car besoin du DKMS kernel
# Mount
qcowfpath='/path/file.qcow2' ; sudo modprobe nbd max_part=8 ; sudo qemu-nbd --connect=/dev/nbd0 $qcowfpath ;
# Check partition
sudo fdisk /dev/nbd0 -l ;
# Mount partition 2 in my case
sudo apfs-fuse /dev/nbd0p2 /mnt
cd /mnt/root/ ; ls
sudo rsync -auv --partial --sparse --ignore-errors --progress "somestuffpath" "toherepath"
# Umount
sudo umount /mnt
'''

 

Pour des images gratuites pour votre blog: https://www.piqsels.com/

 

Je crois que j'ai trouvé mon prochain projet DIY 😎 : https://trustmyscience.com/neuralpi-ia-emule-toutes-pedales-guitare/

 

Un top sympa de korben pour avoir une vision d'ensemble de quelques distributions Linux a découvrir en tant que néophyte : https://korben.info/top-distributions-linux.html

 

J'ai été confronté à un cas un peu particulier, pour setup un proxy dans Docker sous Debian 10, il faut recourir à un override Systemd, voici le code:
```
mkdir -p /etc/systemd/system/docker.service.d
printf '[Service]\nEnvironment="HTTP_PROXY=http://HOST_HERE:PORT_HERE"' > /etc/systemd/system/docker.service.d/http-proxy.conf
systemctl daemon-reload ; systemctl restart docker ; systemctl status docker
docker run hello-world
```

 

Article super intéréssant afin de sécuriser un peu plus vos conteneur docker: https://www.objectif-libre.com/fr/blog/2020/06/30/securiser-docker-au-travers-de-la-fonctionnalite-u...

 

Je vois qu'il est obligatoire maintenant dans le dernier ISO pour installer Windows 10 d'utiliser une adresse email.
Petite astuce, pour créer un compte local classique, il suffit de débrancher le réseau pour retourner à l'installation classique avec un simple mot de passe.

 

Petite commande pratique sous Mac pour convertir un fichier .IMG en .ISO: hdiutil convert File.img -format UDTO -o File.iso

 

Utilisateur de Visual Studio Code? Envie d'une version 100% open? Il existe une version alternative sans la télémétrie de Microsoft, cela s'appelle VSCodium : https://vscodium.com/

 

Besoin d'un clone de Photoshop pratiquement gratuit directement dans votre navigateur?: https://www.photopea.com/ ( il gère même les fichiers sketch et bien d'autres )

 

Intel bosse sur un filtre photoréaliste par IA, futur des textures de jeu ? : https://intel-isl.github.io/PhotorealismEnhancement/

 

Parallels est enfin natif sur les puces M1 ( depuis Mi Avril 2021 ) - 30% de perf en plus. Par contre, déception ce n'est que pour virtualiser du ARM donc pas de x86 x64 :( ... Allez parallels ! J'attend ça avec un impatience. https://www.macg.co/logiciels/2021/04/parallels-dekstop-165-virtualise-windows-10-sur-les-machines-a...

 

Bon à savoir, il existe un windows defender portable (pour scanner rapidement) : https://docs.microsoft.com/fr-fr/windows/security/threat-protection/intelligence/safety-scanner-down...

 

Incroyable mais vrai le logiciel open source d'édition audio Audacity vient d'être racheté. Pas de version payante obligatoire normalement mais bon ça sent sinon le fork LibreAudacity pour bientôt 😂 : https://www.minimachines.net/actu/muse-group-rachete-le-logiciel-audacity-99063

 
 

Pour clore et faire suite à mon dernier message sur LiteSpeed, Nginx, ... je vous recommande la lecture de cet article super bien fait pour avoir une vision globale des avantages & inconvénients de chacun: https://geekflare.com/open-source-web-servers/ ;
Il parle d'ailleurs aussi de mon petit chouchou codé en go que je veux bientôt tester: caddy.
Note: L'article n'est pas exhaustif, il manque par exemple h2o: https://github.com/h2o/h2o ou bien les différents serveurs Synchrone WSGI ou Asynchrone ASGI de Node, Python , ... ( voir cet article aussi à ce sujet: https://moisio.fr/2020/01/27/python-wsgi-ou-asgi/ ou ce non-bench: https://blog.miguelgrinberg.com/post/ignore-all-web-performance-benchmarks-including-this-one )

 

A propos de LiteSpeed, je crois qu'il faut nuancer tout les benchmark sur le net et que c'est surtout un gros coup de com' ! ( puisque tout sont issu de LiteSpeed... sacré arnaque! )
Et que bien sûr Nginx reste le top ! avec son FastCGI natif ... même si il faut savoir comment l'optimiser finement ...
Mais LiteSpeed n'en reste pas moins une solution sympa si votre hébergeur le propose gratuitement. Il faut voir LiteSpeed comme une version améliorée ( event-driven comme Nginx) de Apache ( compatible mod_rewrite ) et spécialisé pour un boost de performance en PHP ( grace au native PHP SAPI ). Petit point en plus le plugin Wordress tout en un ( minification, cdn, image, ... ) est vraiment très facile à utiliser pour n'importe quel utilisateur lambda, d'où son succès croissant.

 

Intéréssant ce benchmark (fiable?), resmush.it, serait vraiment plus performant que tinypng: https://wpcours.com/wp-plugins/5-meilleurs-plugins-de-compression-dimages-pour-wordpress/, à creuser d'avantage, surtout qu'on peut utiliser resmush en cli linux/mac. ;
Edit: Niveau algo, le traitement du PNG est un peu obscur: lossy+lossless et le JPG est lossless, sur un test perso fait sur un PNG avec transparent en ligne de commande, le fichier est un peu plus gros de quelques centaines d'octet, ce qui est très correct !! même si tinypng (avec son smart lossy) à fait à peine un peu mieux. Plus de détail ici: https://resmush.it/features

 

Petite découverte du jour: LiteSpeed Cache : https://wpformation.com/litespeed-cache-plugin-cache-wordpress/ ; Après Apache puis Nginx, un petit tour sur LiteSpeed (dispo chez O2Switch) qui permet des performances plutôt folles surtout pour du PHP. Cet article est super bien fait, je n'aurais pas écris mieux. En précision: Le serveur "Entreprise" sans limite de ram & de site est Payant. Une version open-source un peu moins complète existe aussi: https://openlitespeed.org/.

 

Petite découverte du jour: ReSmush.it : https://resmush.it/ ( et "cocorico" c'est Français! :D ) ; la seul API permettant d'optimiser vos images vraiment gratuitement, existe en plugin souvent gratuit pour par exemple Wordpress, Composer, etc ... ; Sympa pour automatiser à fond !
( Sinon j'aime toujours utilisé en manuel tinypng: https://tinypng.com/ , efficace & gratuit mais jute limité en utilisation/jour )

 

Quand il s'agit de prototyper en vectoriel chacun à ses outils modernes, j'ai abandonné Adobe Illustrator ( trop lourd, hors exception ), je suis plutôt un fidèle de Sketch ( le pionnier avec son UX clean ) : https://www.sketch.com/ ; mais si vous n'êtes pas sur Mac... je recommande alors des outils web comme Figma : https://www.figma.com/ ou bien en projet 100% open-source self-hostable PenPot ( encore en Alpha et très basique mais ça dépanne ) : https://penpot.app/

 

Découverte python du jour FastAPI, le projet est jeune ( 1 an ) mais ça simple envoyer du lourd niveau performance & simplicité : https://github.com/tiangolo/fastapi . Pas de surprise ça se base sur Starlette ( https://www.starlette.io/ ) pour la partie web et sur Pydantic ( https://pydantic-docs.helpmanual.io/ ) pour la partie validation des données.

 

A ben voilà comment ils comptent renflouer les caisses de l'état ( sur le dos du consommateur ) : https://www.phonandroid.com/achats-en-ligne-se-faire-livrer-des-colis-de-letranger-va-couter-beaucou...

 

Bon plan du jour : Besoin d'enlever un fond sur une image pixelisée ?! ... Avant de perdre son temps sur photoshop pour tenter de détourer... essayer en ligne remove.bg : https://www.remove.bg/fr 👍👍
De rien 😉

 

Après l'ouverture progressive au projets open source, le rapprochement vers Linux continue 👍 WSL va disposer bientôt d'un serveur X capable de lancer des applications Linux même graphique ! Hâte de tester ce build : https://www.frandroid.com/marques/microsoft/920625_windows-10-preview-microsoft-linux-gui-interface

 

Petit rappel qu'un gros projet commence toujours par un premier commit: celui de Gitlab en 2011: https://gitlab.com/gitlab-org/gitlab-foss/commit/9ba1224867665844b117fa037e1465bb706b3685

 

Le bon plan du jour: Formation Gitlab gratuite ici : https://www.dealabs.com/bons-plans/certification-gitlab-learn-gratuite-2138418

 

Si vous utiliser beaucoup de carte (Google Map) pour vos projets, je ne peux que recommander Leaflet en alternative : https://leafletjs.com/examples/quick-start/

 
 
 
 
 

Je viens de découvrir une alternative possible pour Audacity : Ocenaudio ( https://www.ocenaudio.com/ )

 
 

https://www.nchsoftware.com/capture/ ; ça semble être comme webcamoid mais en plus complet ( par contre pas opensource ). EDIT: J'ai testé, c'est vraiment spécialisé enregistrement vidéo ( envoi ftp, etc ... ) pas de livrestreaming ni de caméra virtuelle !

 

On parle d'OBS, de webcamoid, même de Splitcam ... c'est bien sympa mais comment faire quand on n'a pas de fond vert ( zoom tu sort... :D ) pour une incrustation? Snapchat? Pas loin pas loin.... Scapcamera de Snapchat, c'est gratuit et ça permet d'utiliser les filtres snapchat "change background" (ou autre) sur PC & Mac ;) : https://snapcamera.snapchat.com/

 

Petit test de Splitcam (gratuit), c'est comme un OBS ( avec gestion des scènes) mais en plus light... excepté qu'il n'est pas Open Source, franchement très sympa: https://splitcam.com/

 

Je parle de camtwist mais l y a aussi le logiciel webcamoid qui est crossplatform & open-source : https://webcamoid.github.io/ ; il fait aussi "caméra virtuelle" mais pas detecté sur mon mac... ; de plus il reste plutôt simple comparé à tout les effets de scènes et les optimisations cpu/gpu d'OBS. En tout le cas le projet est sympa à tester et toujours mis à jour.

 

Bon à savoir ! Depuis Janvier 2021, la version 26.1 sur Mac intègre nativement VirtualCam ! ( oui parce que l'antique camtwist ... ) Youhou ! Plus de raison de ne plus utiliser son fond vert et OBS ! :) Pour l'activer, il suffit de cliquer "Démarrer le caméra virtuelle" dans OBS ( à côté des boutons pour enregistrer / commencer le stream ) et choisir le périphérique "OBS Virtual Camera" dans votre logiciel favori. ( Ne pas oublier de restart vos logiciels après l'activation )

 

Quand les créa de chez Amazon ont oublié un petit détail 😂 : https://creapills.com/amazon-logo-moustache-hitler-20210311

 

Décidément OVH.. incendie sur le cluster de Strasbourg à 0h47,maitrisé à 6h45:
- SBG2 est complètement détruit
- SBG1 partiellement
- SBG3/4/5/6 normalement ok ( même si toute l'électricité & les communications ont étés coupés par le plan d'urgence )
---
https://www.dna.fr/faits-divers-justice/2021/03/10/strasbourg-important-incendie-dans-une-entreprise...
Pour se tenir au courant de la situation:
https://twitter.com/olesovhcom/status/1369504527544705025

 
 
 

Mon petit rapide pour VisiData :
"q" pour revenir en arrière/quitter ;
"e" pour éditer une cellule
"s" (select) + "gzY" + ↑ + "t" (deselect) pour copier la cellule ("z")
"]" / "[" pour filtrer la colonne ;
"_" / "v" pour expand une colonne trop grande ;
"shift+f" pour mesurer la fréquence (répétitions/doublons) ;
"-" du 6 pour masquer une colonne.
Spécial:
- Effet global: "g"+"command" ( exemple: "g_", va expand toutes les colonnes d'un coup.
- Forcer le typage: "#" = number ; "%" = float ; "$" = currency ; "@" = date ; "~" = default / all.
Edit: J'ai trouvé une cheatsheet sympa aussi pour approfondir: https://jsvine.github.io/visidata-cheat-sheet/en/

 

Pour faire suite à VisiData ( https://github.com/saulpw/visidata ), ce qui est super c'est qu'il est possible de l'utiliser avec xsv ( que je recommande aussi; très puissant pour rechercher, filtrer, etc : https://github.com/BurntSushi/xsv ) et là ça déchire complètement ! : Petit exemple: xsv search "prenom" monsuper.csv | vd -f csv

 

Petite découverte de la journée VisiData qui permet de parcourir efficacement en ligne de commande de gros csv & bien d'autres formats ( oui ms-office ou libreoffice c'est bien mais lourd pour de la big data ! :D ) : https://www.youtube.com/watch?v=N1CBDTgGtOU ; Un wiki sympa ici (en) : https://jsvine.github.io/intro-to-visidata/the-big-picture/visidata-in-60-seconds/

 

Véritable deepfake de Tom Cruise ou coup de com ? En tout cas si c'est un vrai deepfake c'est très impressionnant : https://youtube.com/watch?v=B4M1-pznxN4

 

Pour avoir un retour du micro sur ses hauts-parleurs dans Audacity ? : Menu : "Transport" > "Options de transport" > "Passage audio logiciel (marche/arrêt)"

 

Facebook souhaite déjà copier Clubhouse : https://www.blogdumoderateur.com/facebook-souhaite-deja-copier-clubhouse/ ; Pour rappel, Clubhouse est le réseau social qui monte aux Etats Unis et qui permet de discuter avec des célébrités ou pour des grands médias sur un salon audio privée ( Elon Musk, etc ) ; bref Facebook n'a plus qu'à les racheter ça ira plus vite 😁

 

Voir en un clin d'oeil tout les framework avancés axés développeurs qui sont disponibles pour Wordpress: https://includewp.com/

 

Chiffres clés d’Internet et des réseaux sociaux en France en 2021 : https://www.blogdumoderateur.com/chiffres-internet-reseaux-sociaux-france-2021/

 

Known gère le Micropub ( oui oui ce format w3c trop peu connu :D ), ça peut être sympa de tester des clients pour mettre à jour mon instance Known hors navigateur: https://indieweb.org/Micropub/Clients

 

GitHub - dokku/dokku: A docker-powered PaaS that helps you build and manage the lifecycle of applications https://github.com/dokku/dokku

 

Petite découverte "Open Collective" une plateforme pour soutenir ( ou découvrir aussi ) de super projet Open Source: https://opencollective.com/discover?show=open%20source

 

Chaîne youtube top sur Symfony 5 : https://www.youtube.com/watch?v=HViLTaLQ1AQ ; Sympa le partage de son workflow projet, ça peut donner des idées.

 

Pour forcer un site à utiliser le HTTPS: ( à rajouter dans le .htaccess ) ( pratique pour une instance known ou tout autre site qui ne permet pas se réglage )
# Force use of HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

 

Google Analytics et la vitesse

1 min read

Google Analytics reste un outil de statistique très performant surtout si le client veut qu'on utilise les autres outils de Google comme Google Ads. Pour les libristes, ce qui va suivre est totalement valide aussi pour matomo :) ( en adaptant bien sûr )

 

Cependant, il convient de bien l'intégrer dans votre site, ce serait dommage de perdre en page vitesse et pourtant je le constate souvent... :/ bref pour cela 2 choses possibles:

- Utiliser le code alternatif (trop souvent peu utilisé) prévu pour fonctionner en asynchrone: https://developers.google.com/analytics/devguides/collection/analyticsjs#alternative_async_tag. Qui consiste à utiliser "async" dans la balise "<script/>". Ainsi Google Analytics ne bloquera plus le chargement de votre page.

- Pour aller plus loin, on peut simplement télécharger une version locale du script "analytics.js" sur son site et y faire référence :) Bien évidemment dans ce cas, il faudra mettre en place une tâche cron pour mettre à jour le fichier ou bien passer par exemple par wp-rocket qui bon à savoir, propose une option similaire. 

 

Bienvenue sur mon espace "Known" où je vais déposer quelques trouvailles de ma veille IT. Wait and See.. ;)