devnewton 🍺 a écrit 7841 commentaires

  • [^] # Re: Règlement anti-libéral?

    Posté par  (site web personnel) . En réponse au lien La justice européenne confirme que le «trafic gratuit» enfreint les règles sur la neutralité du net. Évalué à 9.

    Il faut bien voir à quel point de tels règlements s'opposent au fonctionnement "naturel" du capitalisme

    Le fonctionnement naturel du capitalisme est de naître par le renversement de la noblesse par la bourgeoisie qui s'approprie les terres et les Hommes en changeant les lois au nom de la Liberté puis concentre toutes les richesses à travers la prolétarisation de la paysannerie et des artisans avant de mourir sous le coup d'une révolte ouvrière ou suite à l'épuisement des ressources.

    Heureusement on a adopté une démocratie sociale et écologique pour éviter tout ça !

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • # Pourquoi juste citer les voitures électriques?

    Posté par  (site web personnel) . En réponse au lien Batteries des voitures électriques - 40.000 enfants travaillent dans des mines en Afrique. Évalué à 5.

    D'après wikipedia, c'est 50% de l'usage pour des batteries et pas seulement pour les voitures.

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: La BBC aussi!

    Posté par  (site web personnel) . En réponse au journal France Inter fait des podcasts. Évalué à 5.

    L'idéal serait de proposer de payer cette redevance pour ne pas avoir de pub !

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Aller écouter ailleurs

    Posté par  (site web personnel) . En réponse au journal France Inter fait des podcasts. Évalué à 6.

    Ils peuvent décider de la licence de leurs propres émissions :-)

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: AMD dans les consoles next-gen

    Posté par  (site web personnel) . En réponse au journal Le début de la fin pour Intel ?. Évalué à 4.

    Question de compétences !

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • # Aller écouter ailleurs

    Posté par  (site web personnel) . En réponse au journal France Inter fait des podcasts. Évalué à 10. Dernière modification le 11 septembre 2020 à 09:29.

    La publicité est sur Radio France est une honte: la radio est déjà financée par la redevance, ils n'ont pas besoin de faire de la pub.

    Leurs arguments ça ne suffit pas sont bidons: par exemple celui du coût en bande passante des podcasts alors que rien ne leur interdit d'utiliser Bittorrent ou de permettre les miroirs…

    Mais comme ils ne changeront pas, le plus simple n'est pas de contourner la publicité, mais d'aller écouter d'autres podcasts gratuits et sans pub.

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Article L224-33

    Posté par  (site web personnel) . En réponse au journal Les pratiques commerciales de BouyguesTelecom. Évalué à 9.

    Une bonne Loi devrait imposer deux choses pour une nouvelle offre:

    • la non réponse devrait impliquer la rupture du contrat et non l'acceptation des modifications ;
    • une égalité de moyen entre la question et la réponse. Pas de "dite oui oralement au téléphone" mais "dite non par lettre recommandée à une adresse que je ne vous donne pas, cherchez la sur mon site elle est bien cachée nanananèreu"

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Pffff

    Posté par  (site web personnel) . En réponse à la dépêche Rust a 5 ans, rétrospective. Évalué à 3.

    Ça me rappelle ce nourjal https://linuxfr.org/users/devnewton/journaux/veuillez-instancier-ce-journal-avant-de-le-lire !

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Quelles voitures?

    Posté par  (site web personnel) . En réponse au lien Coup de tonnerre : les voitures électriques ne seraient pas écologiques !. Évalué à 3.

    Ce que je voulais dire par ma question, c'est que si on veut réduire l'impact écologique des voitures, il va falloir changer à la fois de type d'énergie, mais aussi de type de véhicule.

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • # Quelles voitures?

    Posté par  (site web personnel) . En réponse au lien Coup de tonnerre : les voitures électriques ne seraient pas écologiques !. Évalué à 5. Dernière modification le 08 septembre 2020 à 17:11.

    Une Tesla de plus de deux tonnes ou une Citroën Ami de moins 500kg?

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Pffff

    Posté par  (site web personnel) . En réponse à la dépêche Rust a 5 ans, rétrospective. Évalué à 3.

    On ne les utilise pas dans les parties critiques donc ce n'est pas un problème ? Soit.

    C'est souvent utilisé dans le moteur physique qui est critique.

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Pffff

    Posté par  (site web personnel) . En réponse à la dépêche Rust a 5 ans, rétrospective. Évalué à 3. Dernière modification le 08 septembre 2020 à 14:50.

    libgdx, pygame,… sont en C ou C++ plus qu'en python ou java quand ce n'est pas simplement sdl qui fait toutes la partie critique en terme de perf par exemple

    Logique ce sont des bindings, mais une bonne partie du code est quand même dans le langage à GC. Avec le code des jeux qui l'utilisent, ça fait une majorité du code final sous GC.

    Parce que la mémoire n'est pas géré par le garbage collector. Quand ut garde une taille de heap petite ça fonctionne bien.

    Logique aussi, une bonne partie de la mémoire dans un jeu, ce sont les vertices, les shaders et les textures qui ne sont même pas en RAM et qu'il faut de toute façon gérer à la main, GC ou pas GC.

    Il y a aussi beaucoup d'autres données, par exemple le moteur physique qui lui bombarde bien la RAM et là aussi il faut optimiser à coup de préallocations et de piscines. GC ou pas.

    Bref les GC modernes ne sont pas un problème dans les jeux. Ni dans les applis web, ni dans 99% des applis. Il faut simplement ne pas te rater quand tu es dans le 1% des cas qui demande une gestion manuelle.

    Ca ne veut pas dire que les GC sont une meilleure approche que les "pointeurs intelligents", mais juste une solution plus simple et plus générale.

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Pffff

    Posté par  (site web personnel) . En réponse à la dépêche Rust a 5 ans, rétrospective. Évalué à 6.

    Je ne sais pas trop ce que tu veux dire par "en frontend", mais beaucoup de jeux utilisent un langage GC comme langage principal et pas seulement comme langage de script.

    Regarde ce qui se fait avec les cadriciels Java (libgdx, lwjgl), Python (pygame), C# (monogame, Unity), Lua (Löve).

    L'accès aux API graphique/sonore/inputs se font toujours en C, mais la majorité du code et donc des allocations mémoires sont pris en charge par le GC.

    Pourquoi ces jeux sont fluides et n'ont pas de gros ralentissements dû à un ramasse miette Arrête Le Monde? Parce que d'une part, comme je l'ai déjà dit, les GC modernes ramassent les mettes de façon incrémentales et concurrentes, d'autre part les développeurs de jeux font la chasse aux allocations/désallocations en pré-allouant un maximum de choses, en utilisant des pools, en préférant des tableaux fixes aux hashmaps dynamiques…

    Cette chasse est faite aussi dans les jeux en C/C++, car comme je l'ai déjà dit aussi, les malloc/free, c'est coûteux pour tout le monde, pas seulement quand c'est un GC qui les fait.

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Pffff

    Posté par  (site web personnel) . En réponse à la dépêche Rust a 5 ans, rétrospective. Évalué à 3.

    ZGC qui est monstrueux annonce 2ms, ce qui est bien trop important pour un jeu vidéo temps réel.

    Comme dit plus haut, regarde le nombre de jeux écrit avec un langage à GC.

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Pffff

    Posté par  (site web personnel) . En réponse à la dépêche Rust a 5 ans, rétrospective. Évalué à 5.

    Aujourd'hui les vraies pauses sont si petites qu'on ne les remarque plus (CTB !).

    Il y a même un GC pauseless pour Java, mais il n'est pas libre :(

    Note aussi que le temps d'exécution des autres modes de libération de la mémoire n'est pas NULL non plus.

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Pffff

    Posté par  (site web personnel) . En réponse à la dépêche Rust a 5 ans, rétrospective. Évalué à 3.

    Les premiers GC stoppaient le monde. Les modernes travaillent de façon incrémentale et parallèle.

    Beaucoup de jeux utilisent un langage à ramasse miettes sans problème: tous les jeux Java, html5, Unity, Lua…

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Pffff

    Posté par  (site web personnel) . En réponse à la dépêche Rust a 5 ans, rétrospective. Évalué à 5.

    Euh, les fuites mémoires à cause d'évènements ou d'objets non-disposés (utilisant des connexions à des bases de données, des ressources réseau, des Span, …), ça arrive et ça fait mal.

    J'ai rarement eu besoin des weak references et à chaque fois c'était pour des ressources systèmes (les textures dans Newton Adventure par exemple :-) ) qui de toute façon demande une gestion particulière.

    Est-ce qu'il ne vaut pas mieux un langage avec un GC pour 99% des allocations et gérer à la main le 1% qui reste?

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Pffff

    Posté par  (site web personnel) . En réponse à la dépêche Rust a 5 ans, rétrospective. Évalué à 4.

    Une façon idiomatique en Rust de gérer les structures de données complexes consiste à utiliser des index plutôt que des pointeurs (les objet étant stockés dans une collection classique).

    On fait ça aussi en C ou en C++. C'est parfois utile, mais ça ne change pas le problème: au lieu de faire attention à mes pointeurs, je dois faire attention à mes indexes.

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Pffff

    Posté par  (site web personnel) . En réponse à la dépêche Rust a 5 ans, rétrospective. Évalué à 6.

    Ce qui me vient en tête immédiatement, c'est un code qui manipule des graphes.

    En java ou C, je vais avoir des classes ou structures Graph, Edge et Node.

    En C, il faudra faire bien attention à passer free partout, au bon moment et dans le bon ordre.

    En C++, on va choisir avec soin quelles références seront des unique_ptr, des shared_ptr ou des weak_ptr selon les cas d'usage.

    Avec un ramasse miette, chacune peut avoir des références sur les autres, on ne va pas se préoccuper de la durée de vie des objets, des pointeurs forts ou faibles… Osef on a de la RAM et le GC passera le balai !

    Et avec Rust ?

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Lien avec la censure des GAFAM à propos de la pseudo-pandémie ?

    Posté par  (site web personnel) . En réponse au lien Les clients Mastodon seraient bannis de Google Play pour cause d'incitation à la haine. Évalué à 4.

    Ca peut intéresser nos lecteurs pour rire un bon coup !

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Pffff

    Posté par  (site web personnel) . En réponse à la dépêche Rust a 5 ans, rétrospective. Évalué à 3.

    The flexibility (i.e. expressiveness) of non LIFO-semantics means that in general the compiler cannot automatically infer at compile-time where memory should be freed; it has to rely on dynamic protocols, potentially from outside the language itself, to drive deallocation (reference counting, as used by Rc and Arc, is one example of this).

    Donc Rust fait juste comme C++ et ses smart pointers?

    Je comprends mieux le ticket pour ajouter un ramasse miette à Rust.

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Pffff

    Posté par  (site web personnel) . En réponse à la dépêche Rust a 5 ans, rétrospective. Évalué à 4.

    Rien compris à cette phrase.

    En analysant le code, on peut éviter d'utiliser le ramasse miette pour les allocations / désallocations les plus courantes.

    Si tu as un code simple comme:

    function postCoincoinDuJour() {
    let linuxfr = new LinuxfrBoard();
    let message = "Coincoin du " + new Date().getDay(Lang.FR);
    linuxfr.post("Coincoin");
    }
    Un bon compilateur va déduire que les objets LinuxfrBoard et Date ne s'échappe pas de la fonction. Il peut décider de ne pas les laisser au ramasse miette, mais de les allouer sur la pile.

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Pffff

    Posté par  (site web personnel) . En réponse à la dépêche Rust a 5 ans, rétrospective. Évalué à 4.

    Comment Rust gère les cas non triviaux de libération de la mémoire (ce qu'un bon compilo pour langage à garbage collector peut gérer automagiquement) ? Par exemple une structure de type graphe ou récursive?

    En les interdisant?

    https://github.com/rust-lang/rfcs/issues/415

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: SMTP

    Posté par  (site web personnel) . En réponse au lien RFC 8890: The Internet is for End Users. Évalué à 3.

    Ça peut se résoudre avec des messages d'invitation.

    Alors oui les spammeurs vont envoyer des invitations à la terre entière, mais au moins on pourra mettre ces messages à part, leur assigner un TTL…

    Voire un serveur pourrait greylister un vil qui se fait refuser trop d'invitations :-)

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

  • [^] # Re: Notre retour d'expérience à WebAssoc

    Posté par  (site web personnel) . En réponse au journal Logiciels libres dans une association non-informatique. Évalué à 4. Dernière modification le 04 septembre 2020 à 17:02.

    Il y a du Rust dedans aussi !

    Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.