sebsauvage.net

Ce site n'est pas le site officiel.
C'est un blog automatisé qui réplique les articles automatiquement

Git is simply too hard |> Changelog

Thursday 19 November 2020 at 07:51

Merci Riduidel pour cet article (http://nicolas-delsaux.hd.free.fr/Shaarli/?_Abm9A), ça me fait réaliser une chose:

Un développeur a deux choses en main: Le problème qu'on lui demande de résoudre, et la technique qui lui permet de le résoudre.
On cherche à avoir la technique la plus efficace, afin de se concentrer sur le problème. L'objectif, c'est le problème. La technique n'est qu'un moyen.
Donc nous avons conçu des outils pour nous simplifier la vie, pour rendre la partie technique plus efficace. C'est tout naturel.

Seulement ces outils censés nous simplifier la vie ajoutent en réalité une *charge mentale* aux développeurs.
Git est censé nous aider à gérer plus facilement les sources et leur modification. Mais il est complexe et impose un investissement intellectuel non négligeable, une charge mentale pour l'utiliser correctement.
Docker/Kubernetes sont censés simplifier le déploiement. Mais ils ont leur lot de problèmes et imposent une charge mentale pour savoir les utiliser et régler leurs problèmes spécifiques.
Les frameworks comme Vue.js/Angular/React sont censés simplifier et fluidifier le développement du front au back, mais nécessitent de comprendre et maîtriser leurs arcanes bien spécifiques avant même de produire un écran.

Tout ces outils, cumulés, finissent par imposer aux développeurs une charge mentale énorme sur la partie technique avant même de pouvoir commencer à produire du code, avant même de commencer à travailler concrètement sur le problème initial à résoudre. Vous dépensez du temps et de l'énergie pour comprendre la technique au lieu de dépenser ce temps et cette énergie pour réfléchir au problème que vous avez à résoudre.

Est-ce que ça vaut le coup ?  Est-ce qu'on a vraiment gagné du temps ?   Est-ce qu'on en gagnera à plus long terme avec ces outils ?  Je ne sais pas.

En fait si, je sais un peu.  Si on maîtrisait totalement *chacun* de ces outils, on gagnerait sans doute du temps, à court et à long terme. Cela ne fait aucun doute. Ces outils ont été conçus par des gens brillants, qui arrivent (par des sites web ou des conférences) à nous montrer tout le bien qu'ils peuvent produire. C'est beau, ça a l'air de marcher magnifiquement. Mais c'est normal: Ils maîtrisent à la perfection ces outils. Ils les ont conçus.
Dans la pratique, je constate que ces énormes cathédrales sont rarement bien maîtrisées (c'est le sujet de l'article), et que les gens perdent du temps à trouver comment bien faire les choses, voir comment faire les choses tout court. Non pas à cause du code qu'ils ont produit, mais déjà à cause des outils eux-mêmes.

Et c'est même pire que ça: Ces outils imposent une façon de penser spécifique. Mal comprise - et donc mal utilisée - cela impactera le code produit, qui non seulement sera sous-optimal par rapport au framework mais - comme il ne rentre pas bien dans l'état d'esprit du framework - sera compliqué à maintenir et faire évoluer. J'ai constaté ça sur divers projets.

Le monde du développement a oublié le principe du KISS pour se faire plaisir sur des outils qui - pris individuellement - sont séduisants. Du moins sur leur promesses.
Faites attention à la charge mentale que vous vous imposez en ajoutant ces outils.

Et un dernier mot d'avertissement: Faites attention à la perennité des outils que vous choisissez. Je pense en particulier aux frameworks Javascript dont la durée de vie est parfois particulièrement courte. C'est une dette technique que vous paierez. Et cher.
(Je le sais, je bosse en partie sur du WebObjects. Vous ne connaissez pas WebObjects ? Pourtant c'est le framework web qui était porté par une boîte aux moyen titanesques: Apple. Qui a décidé du jour au lendemain que ça ne l'intéressait plus.)
Grosse pensée pour les gens qui ont investi du temps à comprendre et maîtriser des technos mortes (Silverlight, etc.))

EDIT: Le xkcd approprié: https://xkcd.com/1597/
(Permalink)

Source: https://changelog.com/posts/git-is-simply-too-hard


ironemes.eu.org

Tuesday 17 November 2020 at 11:44

Tiens je ne savais pas que ce site existe.
(Permalink)

Source: https://ironemes.eu.org/


Agressions à Cholet. Le suspect se dit catholique et tient un « discours de haine des non-croyants »

Tuesday 17 November 2020 at 09:56

C'est un croyant fanatique qui a tué au nom de son Dieu, mais ça va c'est pas un terroriste, parce qu'il n'est pas musulman.
OUF ON A EU CHAUD, HEIN ?
https://sebsauvage.net/galerie/photos/Bordel/2016-06-20-terroriste-fr.jpg
https://www.frustrationmagazine.fr/attentat-cholet-medias/
(Permalink)

Source: https://www.ouest-france.fr/pays-de-la-loire/cholet-49300/agressions-mortelles-a-cholet-le-suspect-tient-un-discours-de-haine-des-non-croyants-0c5d81e6-275b-11eb-a8b2-77fceb6e3c3b


-100% Butcher sur GOG.com

Tuesday 17 November 2020 at 07:54

Jeu gratuit en ce moment sur GOG.
(Pour Window/Mac/Linux)
(Permalink)

Source: https://www.gog.com/game/butcher


Qui est derrière Unsplash, la banque d'images gratuites qui inonde le Web ?

Monday 16 November 2020 at 16:22

L'histoire de unsplash.com, l'un des meilleurs sites de photo librement réutilisables.
(Permalink)

Source: https://www.usine-digitale.fr/article/qui-est-derriere-unsplash-la-banque-d-images-gratuites-qui-inonde-le-web.N1028554


GitHub - ytdl-org/youtube-dl: Command-line program to download videos from YouTube.com and other video sites

Monday 16 November 2020 at 15:53

Youtube-dl est de retour sur GitHub.
A priori le code qui avait fait tiquer la RIAA a été supprimé: https://github.com/ytdl-org/youtube-dl/commit/1fb034d029c8b7feafe45f64e6a0808663ad315e
Maintenant il serait temps qu'ils aille se faire héberger ailleurs, non ?
PS: Le plus drôle, c'est que le code qui a provoqué le blocage est encore dans l'historique du repo. Autrement dit, le code est toujours là, accessible de tout le monde dans l'historique.

EDIT: GitHub communique sur l'incident: https://github.blog/2020-11-16-standing-up-for-developers-youtube-dl-is-back/
(Permalink)

Source: https://github.com/ytdl-org/youtube-dl


Google Tag Manager, la nouvelle arme anti adblock | Pixel de tracking

Monday 16 November 2020 at 15:29

Google: « Nous faisons le maximum pour protéger votre vie privée. »
Google dans la réalité: Nous faisons le maximum pour contourner les AdBlock et tous les systèmes anti-tracking que vous aurez pu installer.
(Permalink)

Source: https://www.pixeldetracking.com/fr/google-tag-manager-server-side-tagging


Apple apps on Big Sur bypass firewalls and VPNs — this is terrible

Monday 16 November 2020 at 11:49

Ah ben tiens encore une connerie d'Apple: Les applications Apple contournent vos firewalls et VPN.
Mais Apple est sérieux et fait attention à votre vie privée, promis !
(Permalink)

Source: https://thenextweb.com/plugged/2020/11/16/apple-apps-on-big-sur-bypass-firewalls-vpns-analysis-macos/


Covid-19 : le nombre d’élèves contaminés multiplié par 3,5 en une semaine

Monday 16 November 2020 at 11:30

Tout va bien, on court à la catastrophe. Des morts. Des milliers de morts arrivent.
(Permalink)

Source: https://www.francetvinfo.fr/sante/maladie/coronavirus/covid-19-le-nombre-deleves-contamines-multiplie-par-3-5-en-une-semaine_4180069.html


Comprendre la 3D en Javascript (ThreeJS) en 5 minutes - Je suis un dev

Monday 16 November 2020 at 09:56

Et hop... un tutoriel rapide pour faire de la 3D en javascript avec ThreeJS (une des libs 3D javascript les plus répandues).
(Permalink)

Source: https://www.jesuisundev.com/comprendre-threejs/