Je l’interprète aussi comme ca. Par contre je comprends pas bien pourquoi il y a la poussette si l'enfant est mort a l’hôpital avec la couveuse et tout.
D'après moi le bébé est sorti en souffrance, a survécu quelques mois, puis il est décédé. La tristesse de la scène de la couveuse serait plutôt due à la difficulté de l'épreuve d'avoir un bébé qui entre dans la vie dans la douleur.
Tiens je n'aurais pas pensé que c'était autre chose que du café, en plus elle le prend dans un café et le contenant ressemble pas mal à un gobelet de café. Cela dit ça ne m'étonne pas qu'il y ait confusion pour quelqu'un qui trouve que Sprite Fright est marrant alors que ARGH! BON SANG MAIS C4EST DÉGUEUX ! :p
Il y a un truc qui me perturbe dans l'ordre des événements tels qu'ils sont présentés. On a : déprime dans le fauteuil, accouchement, couveuse, dispute, mariage (elle a l'air d'être enceinte non ?), enterrement, puis une sortie avec la poussette, et enfin la demande en mariage. Ça n'a pas l'air bien ordonné, mais c'est peut-être justement parce qu'elle est tourmentée ?
Après le journal qui nous informe qu'il paraîtrait que deux figures du libre seraient à ce qu'on dit des autistes Asperger, puis un commentaire qui nous apprend qu'un membre de l'équipe de modération d'un célèbre site francophone sur Linux et les logiciels libres serait un meurtrier sexiste homophobe raciste ; voici le journal qui affirme qu'Albert Einstein était l'auteur d’un précis de soumission à l’usage du couple.
C'est fou l'information qu'on peut diffuser quand on ne s'embête pas à avec les sources.
Il y a quelques années j'étais sous Debian. Je venais de Mandrake qui m'avait cassé les pieds avec ses RPMs (sûrement un problème d'utilisateur, tout cela est très loin) alors j'ai migré vers les .deb bien sympathiques. De plus le côté rigoureux de Debian me plaisait beaucoup.
Puis j'en ai eu marre des vieilles versions de logiciels alors j'ai activé le dépôt testing, peut-être d'autres (je ne sais plus, tout cela est très loin) et en quelques manips et upgrades j'ai flingué mon système.
À l'époque Ubuntu me faisait le l'œil avec ses logiciels relativement récents et son installation facile, malgré ses pilotes non libres. J'ai remigré, et je n'en suis pas reparti.
Seulement voilà, depuis quelques temps j'ai l'impression de lutter contre Ubuntu. J'ai viré Unity pour profiter de Gnome 3 (bien avant l'abandon d'Unity), puis j'ai viré snap pour pouvoir lancer la calculatrice de Gnome en moins d'un quart d'heure, puis j'ai modifié la config d'apt pour profiter de Firefox via leur PPA. J'en suis à avoir écrit un script de post-installation pour « nettoyer » l'installation par défaut d'Ubuntu. Je me dis qu'il y a un problème.
Plus ça va et plus je me dis que je devrais revenir à Debian mais j'ai un peu la flemme de migrer mon petit parc. Toi qui est habitué au système, avoir des logiciels récents avec Debian et des pilotes non-libre pour mon matériel qui ne fonctionne de toute façon qu'avec cela, ça demande quoi comme effort ? Est-ce que je pourrais installer des PPAs avec Debian ? (Celui de kdenlive m'intéresse, par exemple).
Je te rejoins sur la forme, moi aussi ça m'agace d'être pollué par des popups de cookies et des demandes d'inscription à des listes dès que je veux lire un article. Je rêve d'un réveil des techos qui se remettraient à écrire des billets simples sur des blogs simples dans un pur but de partage d'expérience. Malheureusement ça n'arrivera pas :( C'est con parce qu'au delà du partage, écrire un post sur n'importe quel sujet force aussi l'auteur à approfondir et donc à mieux comprendre le sujet. Rien que pour l'amélioration personnelle ça vaut le coup.
Sur le fond j'ai bien aimé ce billet. Le titre me semble relativement juste en cela que ce qu'il a appris durant sa carrière n'a aucun intérêt aujourd'hui. Certes il y a de l'expérience acquise quel que soit l'outil, ça reste du développement ou proche, mais toute l'expertise accumulée sur un outil tel que Silverlight ou Delphi n'a plus vraiment d'intérêt. Pour caricaturer, le seul espoir pour celui qui a misé sa carrière sur ces technos est de rejoindre un projet en maintenance dans une boîte où rien ne bouge.
Je compare aussi avec le C++ puisque c'est mon outil principal, et je me dis qu'on est quand même bien confortable avec du code qui peut traverser quatre décades quasiment sans encombre. Ça n'empêche pas quelques personnes de pousser à casser les choses (e.g. la stabilité de l'ABI, ou plus simplement de pousser des trucs comme Almost Always Auto ou les trailing return types parce que comme ça c'est moderne™) mais globalement c'est solide dans le temps. C'est même encore plus vrai en C : aujourd'hui je peux prendre le code de la zlib et compresser mes données sans problème (probablement pas la meilleure compression cela dit).
Mettre « Le texte que tu as "traduit" » avec des guillemets à « traduit », c'est déjà méprisant. Ça se lit : « le texte que tu as soi-disant traduit, si on peut qualifier de traduction cet assemblage hasardeux de mots ».
Répondre à une demande d'éclaircissement par « Tu veux vraiment une explication ? », c'est aussi très méprisant. Ça se lit : « Tu veux vraiment que je t'explique pourquoi c'est de la crotte ? T'es tellement nul que tu ne le vois pas toi même ? ».
Ce n'est pas être exigeant, c'est juste être désagréable et humiliant. Je t'invite donc à balayer devant ta porte : si tu veux prendre de haut les textes de quelqu'un, commence par les tiens.
c'est déjà ce que font les compilos (ils sont multi-threadés).
Es-tu sûr que les compilos soient multi-threadés ? Il me semble que le multi-threading se fait plutôt au niveau de l'outil de build (Make, Ninja) mais que le compilo lui-même est mono-thread.
Après on paye aussi beaucoup au link. Jumbo build ou pas, le link est un goulot d'étranglement où il faut rassembler l'ensemble des unités de compilation. Et bien que le linker lui-même soit multi-threadé (mold sans aucun doute, lld et gold à voir. GCC semble pouvoir paralléliser LTO au moins), ça reste une très grosse étape.
Je suis un peu entre-deux au sujet des jumbo builds. Mon expérience me dit que c'est vraiment efficace pour réduire les temps de builds, et j'apprécie quelques effets comme l'idée de ne pas mettre de using namespace à un niveau global. D'un autre côté ça vient avec son lot de surprises que tu as très bien décrites dans ce billet.
Au niveau des intérêts il y a aussi une réduction des temps de link (i.e. ce n'est pas qu'une question de parsing de headers). Par exemple, dans un code plein de templates, on se retrouve avec ces derniers instanciés avec les mêmes types dans plein de .o, puis le linker doit faire le tri dans tout ça. Avec un unity build il n'y a qu'une seule instanciation du template dans le gros .o, ce qui est plus simple à gérer pour le linker (en plus de ne pas avoir à charger 2000 .o en premier lieu). Je n'ai pas mesuré mais je serais surpris que cela ne soit pas un avantage dans le cadre de LTO aussi.
Mon top des trucs pénibles serait les #include manquants qui cassent le build incrémental, les fonctions static avec le même nom et la même signature dans plusieurs .cpp, et des #define qu'on retrouve dans plusieurs .cpp aussi. Ce sont les premiers problèmes que je rencontre quand je passe un projet en unity builds.
Et puis il y a aussi le problème des devs qui s'en fichent pas mal : « Le build est lent ? Achète plus de machines, et des plus grosses. Moi je continue à mettre des using namespace partout et à mettre mes templates sans instanciation explicite. »
Au final on se retrouve à faire deux builds, un incrémental et un jumbo, pour être sûr que ça fonctionne dans tous les cas, et je me demande si on y gagne vraiment :)
unity build implies a slight overhead during incremental builds
Ça dépend du projet ! Même en dev quotidien, en recompilant avec quelques fichiers modifiés ici et là, ça peut aller plus vite de passer par un unity build.
J'aurais misé sur une histoire d'aliasing aussi mais vu que les valeurs des paramètres ne sont pas modifiés par les appels je ne vois pas comment ça pourrait être un problème.
Est-ce que ça pourrait être l'inlining ? Si le compilo considère que ack peut être « inlinée » dans ackermann, est-ce qu'il n'essaye pas aussi d'inliner les appels récursifs dans la foulée et conclut que ça ne passe pas ?
En tout cas je me dis qu'on fait peut-être un peu trop confiance au compilateur pour les optims. Ça vaut le coup de vérifier l'assembleur émis :)
Pour les jeunes qui se demandent encore comment on en est arrivé là, je recommande l'excellent How to invent everything de Ryan North. On y apprend à fabriquer un ordinateur, mais aussi à produire de l'électricité, fabriquer du plastique, extraire des métaux, fabriquer une machine à vapeur, du charbon, un four, trouver des antibiotiques, sélectionner les plantes et animaux pour se nourrir efficacement, inventer la température… Bref, tout ce qu'il faut pour construire notre belle civilisation. À garder près de soi lors du grand reboot.
Je pense que tu n'as pas compris ce qu'elle critique, tout comme ceux qui ramènent ça à la somme des gains. Une grosse somme gagnée pour peu d'efforts, qu'elle aurait pu reverser aux assos. Ce n'est pas le sujet.
Ce que Blanche Gardin critique, ce ne sont ni les montants ni leurs proportions. Ce qu'elle critique c'est l'ensemble de ce qu'est la sociéte Amazon.
C'est son avis, elle a un moyen de l'exprimer et en profite. Peut-être se trompe-t-elle ? Si ça se trouve Amazon c'est plutôt une bonne chose ? Malheureusement ce n'est pas la question pour les habituels clowns d'internet qui vont plutôt la tacler en fantasmant un manquement à son intégrité supposée. Eh j'suis sûr qu'elle a déjà commandé un truc sur Amazon ! Et même qu'une fois elle a fait un truc sur le web et sa requête est passée par AWS ! Non mais pour qui elle se prend…
Oui, enfin je n'ai pas fait le diff :) Perso ça m'embêtait de lire le texte de l'article alors que l'info qui m'intéressait est la lettre de l'auteure.
En cherchant sur Google je n'ai trouvé que des articles du même genre : « Blanche Gardin à dit un truc sur Facebook ». C'est un peu le zéro de l'info à mon avis, et puis je trouve que les incises des auteurs de ces articles orientent la lecture, ce que je souhaite éviter.
Après c'est Facebook, et tous les problèmes qui vont avec, mais c'est le support qu'elle a choisi, donc soit.
Pour ceux qui veulent lire le message de Blanche Gardin plutôt qu'un article qui dit que Blanche Gardin a écrit un truc, c'est publié sur son compte Facebook.
On pourra débattre de la question de publier une lettre ouverte sur une plate-forme fermée, ou laisser le messager de côté et discuter du contenu :)
Mais bon, pour ma part, tant qu'à acheter en ligne, je vais direct sur lalibrairie.com, qui fonctionne avec des librairies physiques. Pour le choix ou la recherche des livres, babelio.
Ma seule expérience avec lalibrairie.com était plutôt négative. J'ai reçu ce mail :
Nous avons procédé le 08/07/2022 à l'expédition de votre commande lalibrairie.com.
Celle-ci sera à votre disposition dans un délai de 24h à 48 heures chez votre point libraire.
La commande est arrivé 12 jours après :( Entre temps j'ai du faire des aller-retours chez le commerçant. « Toujours pas arrivé ? Ah bon, parce que j'ai pourtant le mail de confirmation… ». Commerçant antipathique qui plus est.
Maintenant pour les livres c'est Recyclivre, Momox Shop, ou Rakuten. Et s'il n'y a pas, Amazon. Au moins avec ceux-là ça arrive vite et le livreur est sympa.
Je crois que ce que Zenitram veut dire avec sa remarque sur le patch en GPLv3 est qu'il y a un petit truc qui coince sur la double licence et les contributions externes (mais pas pour slint, j'y reviens plus bas).
Si je soumets du code en GPL car j'adhère à l'idée que je donne parce que le receveur donne aussi en échange, c'est à dire que personne ne s'approprie le travail des autres et qu'on contribue ensemble à créer quelque chose pour tout le monde ; alors je ne vois pas comment ce code que j'ai écrit et partagé peut se retrouver dans un produit fermé. Ça va à l'encontre de l'intention initiale.
Pour slint c'est un poil différent car il est bien indiqué dans le contributor license agreement que le contributeur cède des droits de redistribution sous les termes d'autres licences :
2.3 Outbound License
Based on the grant of rights in Sections 2.1 and 2.2, if We include Your Contribution in a Material, We may license the Contribution under any license, including copyleft, permissive, commercial, or proprietary licenses.
À partir de là peu importe l'intention du contributeur.
Tiens j'aimerais bien avoir ton point de vue sur cette histoire de rémunération via les articles.
De mon côté je ne publie plus sur Medium et je n'ai pas l'intention de retourner vers un autre site proposant d'héberger mes articles en dehors de LinuxFr.org. Globalement j'en ai un peu ma claque des bandeaux cookies, du tracking, des paywalls, etc. J'ai récupéré à peu près tout ce que j'ai publié sur différents sites et j'ai tout ramené sur un serveur que je gère. Alors certes ça me coûte pas loin de 5 € par mois mais au moins je n'ai plus l'impression de contribuer à un web qui me déplaît. Et surtout, quand ces sites fermeront, j'aurais toujours mes articles.
Avant cela je me suis posé la question de passer en mode rémunéré sur Medium, avec un article qui tire dans les 300 vues par semaines depuis des années il y a peut-être moyen de gratter quelque chose, mais finalement j'ai fait demi-tour. En fait je ne suis pas auteur moi, si je fais des articles c'est pour échanger, discuter, avoir un peu de feedback, profiter de l'expérience des autres, contribuer de mon humble expérience, m'améliorer, apprendre des choses…
Et toi, qu'est-ce qui te motives à écrire ? Pourquoi Medium ? Que feras-tu quand tu seras riche ?
C'est intéressant que tu lui trouves de la mauvaise foi, je trouve au contraire qu'il est de bonne volonté :) Il me semble bien documenté, a clairement lu le livre, et il a regardé les présentations d'Uncle Bob. Il y a beaucoup d'aller-retours au début de la discussion avec des listes de logiciels mais non pas parce qu'ils sont lents, plutôt pour s'assurer que les deux parlent du même type de logiciels. La question étant : qu'est-ce qui a besoin d'un niveau de performance à la nanoseconde, a la milliseconde, ou plus. J'aime beaucoup l'approche d'Uncle Bob aussi, qui distingue le niveau de perf en fonction de la fonctionnalité (i.e. la fenêtre de préférences de Chrome n'a pas besoin d'une réactivité folle, mais le rendu d'une page web doit être le plus efficace possible).
Je ne sens pas de fort désaccord entre les deux. L'un comme l'autre considère que la perf est importante, tant d'un point de vue algorithmique que d'implémentation, et j'en ressors plutôt que l'intention d'Uncle Bob avec Clean Code était plutôt d'améliorer la clarté des parties non impactantes sur les perfs, pour les programmeurs de tous les jours. C'est un peu dommage que ça ait été interprété comme la méthode de développement à appliquer par défaut.
[^] # Re: Coffee Run
Posté par Julien Jorge (site web personnel) . En réponse au journal Les films de la fondation Blender. Évalué à 2.
D'après moi le bébé est sorti en souffrance, a survécu quelques mois, puis il est décédé. La tristesse de la scène de la couveuse serait plutôt due à la difficulté de l'épreuve d'avoir un bébé qui entre dans la vie dans la douleur.
[^] # Re: Coffee Run
Posté par Julien Jorge (site web personnel) . En réponse au journal Les films de la fondation Blender. Évalué à 2. Dernière modification le 22 juin 2023 à 20:32.
Tiens je n'aurais pas pensé que c'était autre chose que du café, en plus elle le prend dans un café et le contenant ressemble pas mal à un gobelet de café. Cela dit ça ne m'étonne pas qu'il y ait confusion pour quelqu'un qui trouve que Sprite Fright est marrant alors que ARGH! BON SANG MAIS C4EST DÉGUEUX ! :p
Il y a un truc qui me perturbe dans l'ordre des événements tels qu'ils sont présentés. On a : déprime dans le fauteuil, accouchement, couveuse, dispute, mariage (elle a l'air d'être enceinte non ?), enterrement, puis une sortie avec la poussette, et enfin la demande en mariage. Ça n'a pas l'air bien ordonné, mais c'est peut-être justement parce qu'elle est tourmentée ?
[^] # Re: open source?
Posté par Julien Jorge (site web personnel) . En réponse au journal Il y en a, par ici, des gens qui volent ?. Évalué à 5.
Ton journal se fait moinser et c'est un peu dommage parce que quand on lit ce commentaire, c'est très intéressant.
Go ! Go ! Go !
[^] # Re: Ça vient d'où ?
Posté par Julien Jorge (site web personnel) . En réponse au journal Ne pas subir son couple.. Évalué à 10.
Après le journal qui nous informe qu'il paraîtrait que deux figures du libre seraient à ce qu'on dit des autistes Asperger, puis un commentaire qui nous apprend qu'un membre de l'équipe de modération d'un célèbre site francophone sur Linux et les logiciels libres serait un meurtrier sexiste homophobe raciste ; voici le journal qui affirme qu'Albert Einstein était l'auteur d’un précis de soumission à l’usage du couple.
C'est fou l'information qu'on peut diffuser quand on ne s'embête pas à avec les sources.
# Le retour
Posté par Julien Jorge (site web personnel) . En réponse à la dépêche Debian 12 : le début d'une nouvelle ère. Évalué à 7.
Il y a quelques années j'étais sous Debian. Je venais de Mandrake qui m'avait cassé les pieds avec ses RPMs (sûrement un problème d'utilisateur, tout cela est très loin) alors j'ai migré vers les .deb bien sympathiques. De plus le côté rigoureux de Debian me plaisait beaucoup.
Puis j'en ai eu marre des vieilles versions de logiciels alors j'ai activé le dépôt testing, peut-être d'autres (je ne sais plus, tout cela est très loin) et en quelques manips et upgrades j'ai flingué mon système.
À l'époque Ubuntu me faisait le l'œil avec ses logiciels relativement récents et son installation facile, malgré ses pilotes non libres. J'ai remigré, et je n'en suis pas reparti.
Seulement voilà, depuis quelques temps j'ai l'impression de lutter contre Ubuntu. J'ai viré Unity pour profiter de Gnome 3 (bien avant l'abandon d'Unity), puis j'ai viré snap pour pouvoir lancer la calculatrice de Gnome en moins d'un quart d'heure, puis j'ai modifié la config d'apt pour profiter de Firefox via leur PPA. J'en suis à avoir écrit un script de post-installation pour « nettoyer » l'installation par défaut d'Ubuntu. Je me dis qu'il y a un problème.
Plus ça va et plus je me dis que je devrais revenir à Debian mais j'ai un peu la flemme de migrer mon petit parc. Toi qui est habitué au système, avoir des logiciels récents avec Debian et des pilotes non-libre pour mon matériel qui ne fonctionne de toute façon qu'avec cela, ça demande quoi comme effort ? Est-ce que je pourrais installer des PPAs avec Debian ? (Celui de kdenlive m'intéresse, par exemple).
[^] # Re: Pas sûr
Posté par Julien Jorge (site web personnel) . En réponse au journal Le support technique du FAI a accès au mot de passe du wifi !?. Évalué à 7.
Hé ! Colle pas mon mot de passe publiquement sur l'Internet !
[^] # Re: Ouf
Posté par Julien Jorge (site web personnel) . En réponse au lien My 20 Year Career is Technical Debt or Deprecated. Évalué à 3.
Je te rejoins sur la forme, moi aussi ça m'agace d'être pollué par des popups de cookies et des demandes d'inscription à des listes dès que je veux lire un article. Je rêve d'un réveil des techos qui se remettraient à écrire des billets simples sur des blogs simples dans un pur but de partage d'expérience. Malheureusement ça n'arrivera pas :( C'est con parce qu'au delà du partage, écrire un post sur n'importe quel sujet force aussi l'auteur à approfondir et donc à mieux comprendre le sujet. Rien que pour l'amélioration personnelle ça vaut le coup.
Sur le fond j'ai bien aimé ce billet. Le titre me semble relativement juste en cela que ce qu'il a appris durant sa carrière n'a aucun intérêt aujourd'hui. Certes il y a de l'expérience acquise quel que soit l'outil, ça reste du développement ou proche, mais toute l'expertise accumulée sur un outil tel que Silverlight ou Delphi n'a plus vraiment d'intérêt. Pour caricaturer, le seul espoir pour celui qui a misé sa carrière sur ces technos est de rejoindre un projet en maintenance dans une boîte où rien ne bouge.
Je compare aussi avec le C++ puisque c'est mon outil principal, et je me dis qu'on est quand même bien confortable avec du code qui peut traverser quatre décades quasiment sans encombre. Ça n'empêche pas quelques personnes de pousser à casser les choses (e.g. la stabilité de l'ABI, ou plus simplement de pousser des trucs comme Almost Always Auto ou les trailing return types parce que comme ça c'est moderne™) mais globalement c'est solide dans le temps. C'est même encore plus vrai en C : aujourd'hui je peux prendre le code de la zlib et compresser mes données sans problème (probablement pas la meilleure compression cela dit).
[^] # Re: Traduction et licence
Posté par Julien Jorge (site web personnel) . En réponse au journal À quel point votre projet open source doit-il être ouvert ?. Évalué à 10. Dernière modification le 15 mai 2023 à 15:10.
Mettre « Le texte que tu as "traduit" » avec des guillemets à « traduit », c'est déjà méprisant. Ça se lit : « le texte que tu as soi-disant traduit, si on peut qualifier de traduction cet assemblage hasardeux de mots ».
Répondre à une demande d'éclaircissement par « Tu veux vraiment une explication ? », c'est aussi très méprisant. Ça se lit : « Tu veux vraiment que je t'explique pourquoi c'est de la crotte ? T'es tellement nul que tu ne le vois pas toi même ? ».
Ce n'est pas être exigeant, c'est juste être désagréable et humiliant. Je t'invite donc à balayer devant ta porte : si tu veux prendre de haut les textes de quelqu'un, commence par les tiens.
[^] # Re: Minimaliste pas partout
Posté par Julien Jorge (site web personnel) . En réponse au lien Voici Pulse, un navigateur web minimaliste basé sur Firefox. Évalué à 3.
"Peinture" car la qualité du code c'est de la déco, c'est à dire que ça ne touche pas le fonctionnel.
"Feu" pour enlever du code dans l'idée qu'on brûle tout ce qui ne sert à rien, genre extermination par le feu.
"Loupe" pour SEO car c'est le symbole de la recherche, comme dans Search Engine Optimization.
":tada:" est une onomatopée utilisée pour appuyer l'apparition d'une chose, comme un magicien qui sort un lapin de son chapeau, ta-da !
# Minimaliste pas partout
Posté par Julien Jorge (site web personnel) . En réponse au lien Voici Pulse, un navigateur web minimaliste basé sur Firefox. Évalué à 3. Dernière modification le 09 mai 2023 à 17:01.
Le navigateur est peut-être minimaliste mais les emojis plein les messages de commits et le readme ça ne me donne pas trop envie :)
[^] # Re: compilateur ?
Posté par Julien Jorge (site web personnel) . En réponse au lien Comment les "jumbo build" ont bavé dans les sources de Firefox. Évalué à 8. Dernière modification le 05 mai 2023 à 16:36.
Es-tu sûr que les compilos soient multi-threadés ? Il me semble que le multi-threading se fait plutôt au niveau de l'outil de build (Make, Ninja) mais que le compilo lui-même est mono-thread.
Après on paye aussi beaucoup au link. Jumbo build ou pas, le link est un goulot d'étranglement où il faut rassembler l'ensemble des unités de compilation. Et bien que le linker lui-même soit multi-threadé (mold sans aucun doute, lld et gold à voir. GCC semble pouvoir paralléliser LTO au moins), ça reste une très grosse étape.
# Mon expérience
Posté par Julien Jorge (site web personnel) . En réponse au lien Comment les "jumbo build" ont bavé dans les sources de Firefox. Évalué à 6.
Je suis un peu entre-deux au sujet des jumbo builds. Mon expérience me dit que c'est vraiment efficace pour réduire les temps de builds, et j'apprécie quelques effets comme l'idée de ne pas mettre de
using namespace
à un niveau global. D'un autre côté ça vient avec son lot de surprises que tu as très bien décrites dans ce billet.Au niveau des intérêts il y a aussi une réduction des temps de link (i.e. ce n'est pas qu'une question de parsing de headers). Par exemple, dans un code plein de templates, on se retrouve avec ces derniers instanciés avec les mêmes types dans plein de .o, puis le linker doit faire le tri dans tout ça. Avec un unity build il n'y a qu'une seule instanciation du template dans le gros .o, ce qui est plus simple à gérer pour le linker (en plus de ne pas avoir à charger 2000 .o en premier lieu). Je n'ai pas mesuré mais je serais surpris que cela ne soit pas un avantage dans le cadre de LTO aussi.
Mon top des trucs pénibles serait les
#include
manquants qui cassent le build incrémental, les fonctionsstatic
avec le même nom et la même signature dans plusieurs .cpp, et des#define
qu'on retrouve dans plusieurs .cpp aussi. Ce sont les premiers problèmes que je rencontre quand je passe un projet en unity builds.Et puis il y a aussi le problème des devs qui s'en fichent pas mal : « Le build est lent ? Achète plus de machines, et des plus grosses. Moi je continue à mettre des
using namespace
partout et à mettre mes templates sans instanciation explicite. »Au final on se retrouve à faire deux builds, un incrémental et un jumbo, pour être sûr que ça fonctionne dans tous les cas, et je me demande si on y gagne vraiment :)
Ça dépend du projet ! Même en dev quotidien, en recompilant avec quelques fichiers modifiés ici et là, ça peut aller plus vite de passer par un unity build.
[^] # Re: Mais pourquoi ?
Posté par Julien Jorge (site web personnel) . En réponse au journal Sortie de Pythran 0.13.0. Évalué à 5.
J'aurais misé sur une histoire d'aliasing aussi mais vu que les valeurs des paramètres ne sont pas modifiés par les appels je ne vois pas comment ça pourrait être un problème.
Est-ce que ça pourrait être l'inlining ? Si le compilo considère que
ack
peut être « inlinée » dansackermann
, est-ce qu'il n'essaye pas aussi d'inliner les appels récursifs dans la foulée et conclut que ça ne passe pas ?En tout cas je me dis qu'on fait peut-être un peu trop confiance au compilateur pour les optims. Ça vaut le coup de vérifier l'assembleur émis :)
# Mais pourquoi ?
Posté par Julien Jorge (site web personnel) . En réponse au journal Sortie de Pythran 0.13.0. Évalué à 5.
Intéressant, mais pourquoi le compilateur a-t-il du mal à générer le même code ?
# Mais comment faisait-on avant ?
Posté par Julien Jorge (site web personnel) . En réponse au journal Facile à utiliser, Bug ou Feature?. Évalué à 9.
Pour les jeunes qui se demandent encore comment on en est arrivé là, je recommande l'excellent How to invent everything de Ryan North. On y apprend à fabriquer un ordinateur, mais aussi à produire de l'électricité, fabriquer du plastique, extraire des métaux, fabriquer une machine à vapeur, du charbon, un four, trouver des antibiotiques, sélectionner les plantes et animaux pour se nourrir efficacement, inventer la température… Bref, tout ce qu'il faut pour construire notre belle civilisation. À garder près de soi lors du grand reboot.
[^] # Re: Le résumé
Posté par Julien Jorge (site web personnel) . En réponse au lien Blanche Gardin dans « LOL : qui rit, sort » ? L’actrice explique pourquoi ça n’arrivera pas. Évalué à 10.
Je pense que tu n'as pas compris ce qu'elle critique, tout comme ceux qui ramènent ça à la somme des gains. Une grosse somme gagnée pour peu d'efforts, qu'elle aurait pu reverser aux assos. Ce n'est pas le sujet.
Ce que Blanche Gardin critique, ce ne sont ni les montants ni leurs proportions. Ce qu'elle critique c'est l'ensemble de ce qu'est la sociéte Amazon.
C'est son avis, elle a un moyen de l'exprimer et en profite. Peut-être se trompe-t-elle ? Si ça se trouve Amazon c'est plutôt une bonne chose ? Malheureusement ce n'est pas la question pour les habituels clowns d'internet qui vont plutôt la tacler en fantasmant un manquement à son intégrité supposée. Eh j'suis sûr qu'elle a déjà commandé un truc sur Amazon ! Et même qu'une fois elle a fait un truc sur le web et sa requête est passée par AWS ! Non mais pour qui elle se prend…
[^] # Re: La source
Posté par Julien Jorge (site web personnel) . En réponse au lien Blanche Gardin dans « LOL : qui rit, sort » ? L’actrice explique pourquoi ça n’arrivera pas. Évalué à 6. Dernière modification le 21 avril 2023 à 19:28.
Oui, enfin je n'ai pas fait le diff :) Perso ça m'embêtait de lire le texte de l'article alors que l'info qui m'intéressait est la lettre de l'auteure.
En cherchant sur Google je n'ai trouvé que des articles du même genre : « Blanche Gardin à dit un truc sur Facebook ». C'est un peu le zéro de l'info à mon avis, et puis je trouve que les incises des auteurs de ces articles orientent la lecture, ce que je souhaite éviter.
Après c'est Facebook, et tous les problèmes qui vont avec, mais c'est le support qu'elle a choisi, donc soit.
# La source
Posté par Julien Jorge (site web personnel) . En réponse au lien Blanche Gardin dans « LOL : qui rit, sort » ? L’actrice explique pourquoi ça n’arrivera pas. Évalué à 10.
Pour ceux qui veulent lire le message de Blanche Gardin plutôt qu'un article qui dit que Blanche Gardin a écrit un truc, c'est publié sur son compte Facebook.
On pourra débattre de la question de publier une lettre ouverte sur une plate-forme fermée, ou laisser le messager de côté et discuter du contenu :)
[^] # Re: Il y a Amazon, et Amazon
Posté par Julien Jorge (site web personnel) . En réponse au journal Carte bancaire piratée, la faute à qui ?. Évalué à 3.
Ma seule expérience avec lalibrairie.com était plutôt négative. J'ai reçu ce mail :
La commande est arrivé 12 jours après :( Entre temps j'ai du faire des aller-retours chez le commerçant. « Toujours pas arrivé ? Ah bon, parce que j'ai pourtant le mail de confirmation… ». Commerçant antipathique qui plus est.
Maintenant pour les livres c'est Recyclivre, Momox Shop, ou Rakuten. Et s'il n'y a pas, Amazon. Au moins avec ceux-là ça arrive vite et le livreur est sympa.
[^] # Re: Ben plutôt le contraire
Posté par Julien Jorge (site web personnel) . En réponse à la dépêche Slint 1.0 : une boîte à outils graphiques natifs pour poste client et embarqué. Évalué à 3.
Je crois que ce que Zenitram veut dire avec sa remarque sur le patch en GPLv3 est qu'il y a un petit truc qui coince sur la double licence et les contributions externes (mais pas pour slint, j'y reviens plus bas).
Si je soumets du code en GPL car j'adhère à l'idée que je donne parce que le receveur donne aussi en échange, c'est à dire que personne ne s'approprie le travail des autres et qu'on contribue ensemble à créer quelque chose pour tout le monde ; alors je ne vois pas comment ce code que j'ai écrit et partagé peut se retrouver dans un produit fermé. Ça va à l'encontre de l'intention initiale.
Pour slint c'est un poil différent car il est bien indiqué dans le contributor license agreement que le contributeur cède des droits de redistribution sous les termes d'autres licences :
À partir de là peu importe l'intention du contributeur.
# Bien
Posté par Julien Jorge (site web personnel) . En réponse au lien Blender 3.5. Évalué à 3.
Cette nouvelle version m'a l'air au poil.
[^] # Re: Paramètre de traçage dans l’URL
Posté par Julien Jorge (site web personnel) . En réponse au lien Procedural map generation in C++ — Part 2: A new hope with cellular automata and GPT4. Évalué à 7.
Tiens j'aimerais bien avoir ton point de vue sur cette histoire de rémunération via les articles.
De mon côté je ne publie plus sur Medium et je n'ai pas l'intention de retourner vers un autre site proposant d'héberger mes articles en dehors de LinuxFr.org. Globalement j'en ai un peu ma claque des bandeaux cookies, du tracking, des paywalls, etc. J'ai récupéré à peu près tout ce que j'ai publié sur différents sites et j'ai tout ramené sur un serveur que je gère. Alors certes ça me coûte pas loin de 5 € par mois mais au moins je n'ai plus l'impression de contribuer à un web qui me déplaît. Et surtout, quand ces sites fermeront, j'aurais toujours mes articles.
Avant cela je me suis posé la question de passer en mode rémunéré sur Medium, avec un article qui tire dans les 300 vues par semaines depuis des années il y a peut-être moyen de gratter quelque chose, mais finalement j'ai fait demi-tour. En fait je ne suis pas auteur moi, si je fais des articles c'est pour échanger, discuter, avoir un peu de feedback, profiter de l'expérience des autres, contribuer de mon humble expérience, m'améliorer, apprendre des choses…
Et toi, qu'est-ce qui te motives à écrire ? Pourquoi Medium ? Que feras-tu quand tu seras riche ?
[^] # Re: cURL a 25 ans
Posté par Julien Jorge (site web personnel) . En réponse au lien curl 8.0.0 is here. Évalué à 2.
Ce billet est très plaisant, merci pour le partage :)
[^] # Re: indifférent
Posté par Julien Jorge (site web personnel) . En réponse au journal hello wowlrd. Évalué à 8.
Ton commentaire est inutilement agressif. Était-ce une tentative d'humour ?
[^] # Re: Échange avec Uncle Bob
Posté par Julien Jorge (site web personnel) . En réponse au lien « Clean code » : performances lamentables. Évalué à 4.
C'est intéressant que tu lui trouves de la mauvaise foi, je trouve au contraire qu'il est de bonne volonté :) Il me semble bien documenté, a clairement lu le livre, et il a regardé les présentations d'Uncle Bob. Il y a beaucoup d'aller-retours au début de la discussion avec des listes de logiciels mais non pas parce qu'ils sont lents, plutôt pour s'assurer que les deux parlent du même type de logiciels. La question étant : qu'est-ce qui a besoin d'un niveau de performance à la nanoseconde, a la milliseconde, ou plus. J'aime beaucoup l'approche d'Uncle Bob aussi, qui distingue le niveau de perf en fonction de la fonctionnalité (i.e. la fenêtre de préférences de Chrome n'a pas besoin d'une réactivité folle, mais le rendu d'une page web doit être le plus efficace possible).
Je ne sens pas de fort désaccord entre les deux. L'un comme l'autre considère que la perf est importante, tant d'un point de vue algorithmique que d'implémentation, et j'en ressors plutôt que l'intention d'Uncle Bob avec Clean Code était plutôt d'améliorer la clarté des parties non impactantes sur les perfs, pour les programmeurs de tous les jours. C'est un peu dommage que ça ait été interprété comme la méthode de développement à appliquer par défaut.