David Demelier a écrit 765 commentaires

  • # Idem

    Posté par  (site web personnel) . En réponse au journal Changement de carrière.. Évalué à 6.

    Salut,

    Je partage un peu le même avis. Je suis passionné de développement et c'est ce qui m'a fait m'orienter dans cette filière. Je savais plus ou moins déjà un peu coder avant même de commencer mon DUT Informatique. Sans vouloir me vanter, contrairement à d'autres de ma promo je savais faire plus de choses qu'eux et je sais faire + que certains ingénieurs maintenant de mon entourage (je n'ai qu'un bac +3). En réalité c'est juste un effet de bord de la passion : ne jamais arrêter d'apprendre, se remettre toujours en question et s'intéresser. Je me souviens encore d'un ami de ma promotion qui m'a vu coder chez moi et m'a dit « non mais je rêve, tu codes !? ».

    Cependant, en entrant dans le monde du travail en informatique, en 2011 j'ai très vite compris que tout ne serait pas aussi beau, propre et utopique que sur les projets personnels et opensource auxquels je m'intéressais et contribuais. Déjà, il faut travailler la plupart du temps avec d'autres personnes. Ce qui signifie : d'autres manière de penser / développer (pas un mal en soi), esprit d'entreprise qui est de faire le moins possible parce que ça coûte. Mais surtout, travailler avec du legacy.

    Je fais quasiment que du C++ et dans chaque poste que j'ai occupé j'ai toujours été confronté aux mêmes problèmes :

    • syndrôme NIH omniprésent avec comme manière de penser : « on fait mieux, on adapte à nos besoins »
    • bloqué dans le passé : beaucoup de collègues ne souhaitent pas passer au C++ moderne et restent cloitrés en 1990
    • “overengineering” : c'est incroyable la masse de complexité dans le code avec un héritage excessif, un découpage excessif sans aucune valuer
    • la peur d'avancer : rester avec des bases bancales sans les changer car « c'est trop risqué »
    • “feature-creep” : il y a des fonctionnalités que je n'arrive pas à comprendre. Le client veut, on fait. En entreprise on sait rarement dire non parce que l'argent est en jeu.

    Mais ce qui est encore propre à moi :

    Je commence à me déplaire d'être dans un bureau toute la journée. Je suis très sportif et je cours énormément en compétition mais ça ne me suffit toujours pas. Je ne supporte plus cette sédentarité. Aussi, j'aime beaucoup le travail manuel et je dois avouer que ça me manque.

    Contrairement à ce que tu dis, moi je ne suis malheureusement pas en mesure de pouvoir quitter mon travail pour faire quelque chose de moins bien payé. En effet, malheureusement avec cette disparité excessive des salaires, ma femme gagne bien moins que moi et ce serait vraiment compliqué si je passais au smic maintenant. En fait, c'est un cercle vicieux.

    Mon rêve serait d'enseigner et de vivre de mes créations opensource, mais je pense que c'est très difficile à moins d'avoir des projets intéressant (par exemple, Ryan C Gordon de SDL2 gagne à peine ~$1200 sur patreon pourtant SDL est loin d'être une bibliothèque gadget). Ensuite de pouvoir faire un travail un peu plus « alimentaire » histoire de compléter.

    AI is a mental disorder

  • # Electron non merci

    Posté par  (site web personnel) . En réponse au journal Atom / VSCode. Évalué à 10.

    J'ai essayé Atom et VSCode quand j'étais dans une entreprise qui faisait du développement Web. J'ai été abasourdi par la lenteur de ce dernier alors que j'avais une machine de guerre.

    En plus, la consommation excessive de RAM sur les gros projets ont déclenché par plusieurs fois l'OOM sur Linux chose rare (ayant pourtant 8Go de RAM). Tout cela parce que je faisais du VSCode + npm + Slack. 3 « applis » qui suffisent à mettre une machine KO, c'est du délire.

    De toute façon je suis trop féru de vim, je l'utilise en éditeur par défaut (texte, C++, shell) et met l'extension partout où je peux (pour Visual Studio à mon emploi actuel par exemple, rendant fous mes collègues quand ils passent chez moi).

    AI is a mental disorder

  • [^] # Re: awk

    Posté par  (site web personnel) . En réponse au message Opérations sur les lignes d'un fichier (soustraction de chiffres). Évalué à 1.

    Bien vu, j'avais jamais pensé à utiliser les variables directement dans la condition du filtre :-)

    AI is a mental disorder

  • # awk

    Posté par  (site web personnel) . En réponse au message Opérations sur les lignes d'un fichier (soustraction de chiffres). Évalué à 2. Dernière modification le 17 octobre 2019 à 15:59.

    Moi j'utiliserais awk, par contre je ne sais pas ce que tu veux afficher pour la première ligne une donc j'ai sauté celle ci.

    {
            LINES[NR] = $0
    }
    
    END {
            # printf nul pour ta première ligne ?
            for (i = 2; i <= NR; i++)
                    printf "%d\n", LINES[i] - LINES[i - 1]
    }

    À l'exécution (le contenu de data.txt est ta suite de numéro ligne par ligne, ni plus ni moins) :

    awk -f test.awk < data.txt
    2
    1
    3
    -1
    5
    

    Note : il y a peut-être une solution différente sans passer par un tableau temporaire.

    AI is a mental disorder

  • # PackageKit est hors sujet

    Posté par  (site web personnel) . En réponse au journal Snap, Flatpak, Packagekit : c'est quoi ce bordel ?. Évalué à 9. Dernière modification le 16 octobre 2019 à 13:22.

    Snap et Flatpak sont effectivement plus ou moins équivalent, par contre PackageKit n'a rien à voir et est là depuis des lustres. Il permet d'abstraire la gestion des paquets via une interface commune. En bref en utilisant packagekit tu peux installer des paquets sans savoir si c'est dnf, apt, pacman derrière… En général packagekit était utilisé par quelques interfaces graphiques comme GNOME PackageKit. Seul problème, il est considéré comme obsolète par son propre mainteneur en plus d'être foutrement buggé.

    AI is a mental disorder

  • # Clarification de undefined behavior

    Posté par  (site web personnel) . En réponse au message probleme avec le fonctionnement d'un thread. Évalué à 1.

    Plop,

    Beaucoup de gens pensent à tort que “Undefined Behavior” va générer un crash. Ce n'est pas requis. Par exemple, rien n'empêche à une implémentation d'autoriser l'écriture sur un pointeur nul, la norme dit simplement que c'est un comportement indéfini.

    Ici il n'y a aucune raison que ça crash d'autant que le code est valide puisque tu ne modifie pas la variable dans ton thread que tu as passé en argument. Et encore heureux qu'on puisse lire les objets passés en arguments dans un thread sinon bonjour leur utilité ! ;-)

    AI is a mental disorder

  • [^] # Re: ça marche super bien mais personne ne l'utilise

    Posté par  (site web personnel) . En réponse au journal La fin d'IPv4. Évalué à 8.

    Pas vraiment non.

    À la rigueur tu aurais dit Perl 6 j'aurais été d'accord. Mais un bon nombre de projets populaires a largement migré à python 3 et ce depuis un bon moment.

    AI is a mental disorder

  • # Mot de passe en clair

    Posté par  (site web personnel) . En réponse au journal Linux Mint, Mate et grosse faille foireuse au niveau du verrouillage d´écran. Évalué à 0.

    Ça me rappelle aussi une version de fedora il y a quelques années dont lightdm avait un prompt de mot de passe… en clair. Absolument insensé et pourtant c'était bien en version release.

    Si je retrouve la capture d'écran je la montre.

    AI is a mental disorder

  • # Les brevets

    Posté par  (site web personnel) . En réponse au journal La fondation GNOME est attaquée aux USA sur la base d'un brevet logiciel. Évalué à 10.

    C'est abérrant ces patent trolls. Le pire c'est que beaucoup arrivent quand même à vivre de ça, breveter tout et n'importe quoi puis faire chier le monde, mêmes les logiciels libres.

    Bientôt on va breveter 2+2=4 et on aura plus le droit de faire des additions dans du code, enfin, heureusement que je vis en Europe.

    AI is a mental disorder

  • [^] # Re: Keybinds de malheur

    Posté par  (site web personnel) . En réponse au journal Next browser 1.3.2: réagir aux évènements avec les hooks, paquet Debian tout frais et plus encore. Évalué à 2. Dernière modification le 26 septembre 2019 à 11:22.

    D'ailleurs en voyant tous ces raccourcis, on ressent que le créateur est féru d'emacs. En tant que féru de vim, j'ai peur pour mes doigts tant je n'ai pas l'habitude. Surtout quand je vois des raccourcis comme :

    C-x C-c s

    Quelqu'un a déjà utilisé next au quotidien pour partager son avis ?

    AI is a mental disorder

  • # Passer à côté ?

    Posté par  (site web personnel) . En réponse au journal Au revoir, LinuxFR. Évalué à 10.

    Je ne comprends pas pourquoi tu passes tout simplement pas à côté de ces choses qui te dérangent.

    Je ne lis pas tous les journaux tout simplement parce que certains ne m'intéressent pas. Comme tu le dis, quand ça part dans des débats ou totalement à côté de l'informatique : je passe tout simplement au suivant.

    AI is a mental disorder

  • [^] # Re: Ça attaque sec

    Posté par  (site web personnel) . En réponse au journal Microsoft ouvre sa bibliothèque standard C++. Évalué à 6. Dernière modification le 18 septembre 2019 à 10:49.

    de plus en plus d'essais de compiler une distro Linux entière avec LLVM

    C'est ce que je suis entrain de faire. Dans l'ensemble ça fonctionne plutôt bien avec 2/3 patchs par ci par là.

    Le plus gros problème sont les projets surtout initiés par RedHat qui contiennent pas mal d'extensions et pas toujours compatible. À ce jour, grub, elfutils et le noyau Linux nécessitent encore gcc.

    En grande partie, le système peut tourner sans GCC (ni libgcc/gcc_s).

    AI is a mental disorder

  • # Il n'est pas un dieu

    Posté par  (site web personnel) . En réponse au journal Richard Stallman, l'affaire Epstein et des positions franchement douteuses. Évalué à 4.

    Parfois j'ai l'impression que beaucoup de personnes pensent que RMS est le père et le dieu gourou du libre. Ce qu'il pense, ce qu'il fait ça n'a pas d'importance. GNU n'est pas le seul projet libre sur terre.

    Par ailleurs, les distributions ne dépendent plus forcément de projets GNU et donc ni Linux ni le libre doit être associé à GNU. Le terme GNU/Linux n'est plus si vrai, il y a beaucoup de distributions qui se passent des composants GNU.

    En bref, ne plus faire l'amalgame de RMS/GNU == Libre. Non, loin de là. Il a écrit des licences, il a écrit emacs et GCC mais il y a pas que ça sur terre en libre. Et heureusement. Ainsi peu importe comment RMS se comporte ou agit, ça n'a aucune influence sur le libre.

    AI is a mental disorder

  • # Ce n'est pas une guerre

    Posté par  (site web personnel) . En réponse au journal Le libre a perdu. Évalué à 0. Dernière modification le 30 août 2019 à 09:13.

    Le libre c'est pas une guerre contre les logiciels privateurs. Personnellement je m'en fiche que des serveurs dans le monde ou que mon entourage utilise Windows, c'est leur problème pas le mien. D'ailleurs un ami à moi s'est fait pirater son serveur Windows par un ransomware, je lui ai simplement dit que s'il utilisait un système correct avec des backups ce ne serait pas arrivé. C'est en faisant des erreurs qu'on apprend.

    Il y a plusieurs types de visions du libre dans ce domaine, il y a les sectaires purs et durs qui sont anti logiciels privateurs et tentent au maximum de faire changer les choses et il y a les gens comme moi qui font du libre simplement parce qu'ils aiment ça.

    La vision du libre varie tellement qu'on a différentes licences. Ça se résume plus ou moins entre le permissif et le non permissif. Moi je fais du permissif parce que la seule chose qui m'intéresse c'est de fournir mon code et qu'on puisse y contribuer, voir, commenter. Si on l'utilise et qu'on me contribue en retour je suis content, si on l'utilise pour faire du privateur, tant pis c'est pas si grave. Le reste, c'est à vous en tant que consommateur de faire les bon choix. Si Apple, Microsoft ou Google ne rend pas en retour, alors n'achetez pas leur produit. Aussi simple que ça.

    AI is a mental disorder

  • [^] # Re: Firefox, mode lecture

    Posté par  (site web personnel) . En réponse au journal [ma vie] Parfois, il est préférable de ne rien faire. Évalué à 3.

    Je viens de tester c'est pas génial avec les polices monospaces. Par exemple la table des matière alignées avec des …… pour les numéros de pages sont complètement illisibles avec le mode lecture.

    AI is a mental disorder

  • [^] # Re: pas le boulot du lecteur audio

    Posté par  (site web personnel) . En réponse au journal Écouter de la musique sous Plasma. Évalué à 1.

    Ah, et les bibliothèques, c'est fait pour les chiens ?

    Oh le naïf. Penses-tu vraiment que c'est aussi simple que ça ? Rien que la bibliothèque alsa nécessite plusieurs appels de fonctions pour juste récupérer le volume courant. Alors imagine quand il s'agit de transmettre du son. En plus il existe plusieurs bibliothèques, mais à vrai dire le son sous Linux a toujours et malheureusement été un bordel monstre.

    Tiens sinon une question que je me pose … Peut-on avoir sur une mahines deux instances de serveur pulseaudio qui redirigerait les sons vers deux hardwares différents ? Pas 1 serveur qui gère tout, mais la possibilité d'avoir 1 serveur par carte son par exemple (c'est pas anodin comme question, je pourrais avoir besoin de ça un de ces 4).

    Je ne sais pas pour pulseaudio, en tout cas NAS était prévu pour ça mais il est largement tombé en désuétude. Je l'ai un peu essayé par le passé mais c'était loin d'être parfait.

    AI is a mental disorder

  • [^] # Re: pas le boulot du lecteur audio

    Posté par  (site web personnel) . En réponse au journal Écouter de la musique sous Plasma. Évalué à 10. Dernière modification le 19 juillet 2019 à 09:14.

    Exactement, c'est au serveur de son de faire le travail. D'autant plus que si on utilise plusieurs applications audio, on a pas envie de se prendre la tête à rediriger chacune d'entre elle via les options / configuration / interfaces graphique de celles ci.

    Sinon on implémente la même fonctionnalité 1000 fois dans toutes les applications qui font de l'audio et on a donc 1000 fois une implémentation avec possibles bugs à résoudre et maintenir.

    En bref à chacun sa responsabilité :

    • lecteur audio : salut, je joue ça maintenant.
    • serveur audio : bien reçu j'envoie ça sur l'enceinte bluetooth via bluez.

    AI is a mental disorder

  • [^] # Re: Lua ?

    Posté par  (site web personnel) . En réponse au journal Bellard strikes again: QuickJs, un moteur JavaScript. Évalué à 10.

    Oui mais d'un point de vue perf tu y gagne avec Lua.

    LuaJIT oui, Lua pur non.

    Et Lua est un langage assez simple et relativement connu surtout dans le scripting pour jeu.

    C'est un langage simple mais pas spécialement agréable à utiliser pour l'avoir mis dans mes applications. Comparé au Javascript moderne :

    • Pas de support complet de l'unicode (ormis 2-3 fonctions anémiques) ;
    • Orienté objet pénible ;
    • Aucune rétrocompatibilité garantie (et les 3 auteurs ne se retiennent pas à casser plein de choses d'une version à l'autre) ;
    • Pas de continue mais break et goto existent ;
    • Les tableaux commencent à 1 (oui on peut les faire commencer à 0 mais les fonctions standard ne les fonctionneront pas bien avec) ;
    • Syntaxe non égal(e) bizarre ~= ;
    • Les tableau et maps sont le même objet et ça pose pas mal de problèmes et d'incompréhensions ;
    • Expressions régulières maison largement inférieures.

    Et à côté de ça : l'API C est aussi régulièrement cassée d'une version à l'autre rendant tous les modules externes quasiment toujours obsolètes. Un module phare a été longtemps inutilisable en Lua 5.3 : LuaSocket.

    Pour ma part, j'ai fini avec ce langage :)

    AI is a mental disorder

  • [^] # Re: « Guerres »

    Posté par  (site web personnel) . En réponse au journal Canonical refait cavalier seul et annonce une nouvelle boutique logicielle centrée sur Snap. Évalué à 3.

    Regarde avant de commenter. Je n'ai pas ouvert quoi que ce soit c'est une personne qui fournit un patch et le mainteneur qui ne veut pas l'intégrer parce que pour lui glibc est la référence et tout le monde doit s'y plier.

    AI is a mental disorder

  • # Sans moi

    Posté par  (site web personnel) . En réponse au journal Mais pourquoi flatpak ?. Évalué à 1. Dernière modification le 14 juillet 2019 à 08:02.

    Les logiciels de nos gestionnaires de paquets sont fortement couplés entre eux. Très fortement même. Si une nouvelle version d’un logiciel demande une nouvelle version d’une dépendance, en règle général, la distribution va attendre 6 mois et sa prochaine version avant de faire les mises à jour, plutôt que de risquer de casser quelque chose.

    Et parfois c'est nécessaire. GNOME et KDE fournissent tous deux des bibliothèques communes à tout leur composants. Théoriquement ça veut dire que si tu utilises GNOME Maps 3.30, tu dois avoir les bases 3.30 (en réalité ça fonctionne de mixer la plupart du temps). Linux est bien plus basé sur des bibliothèques communes que Windows. Autre exemple : Gtk et Qt. Ça me ferait bien c***** de me taper ces dépendances dans chaque paquet. En plus, en ayant une unique version partagée par le système on s'assure d'une cohérence maximale. Que se passera-t-il si un des paquets qui embarque sa propre version de Qt décide de compiler sans le support de X ou Y ? Peut-être une frustration.

    Si on veut distribuer un logiciel propriétaire d’ailleurs, et bien on peut faire comme ca. Un zip avec tout dedans. Et on clique sur le lancermonlogiciel.sh

    Ou les :

    curl http://mysuperproject.io | sudo bash
    

    Je reviens je vais vomir.

    La question est donc de savoir si l’on souhaite ou non démocratiser l’utilisation de GNU/Linux auprès du grand public.

    Moi je n'y crois pas. Je n'aime pas flatpak pour la plupart des raisons que tu as citées. Pour moi ça fonctionnait déjà très bien avant et il n'y avait rien à corriger. C'est une fausse solution à un faux problème. Le vrai problème était la simplicité à installer des paquets et depuis un moment on a des interfaces graphiques conviviales qui le permettent comme anciennement GNOME Packagekit et maintenant GNOME Software, qui vous donne même des captures d'écrans.

    AI is a mental disorder

  • [^] # Re: « Guerres »

    Posté par  (site web personnel) . En réponse au journal Canonical refait cavalier seul et annonce une nouvelle boutique logicielle centrée sur Snap. Évalué à 4.

    C'est trop facile d'exiger aux autres de faire l'effort.

    Rien à voir.

    Comme tu peux le voir, il y a une personne qui a envoyé plusieurs patchs et il ne l'a toujours pas inclus et a argumenté contre l'idée de musl avant en gros : pourquoi intégrer votre patch ? c'est vous qui ne voulez pas vous plier à glibc alors payez les conséquences.

    Le patch est là, il y a juste à appliquer.

    AI is a mental disorder

  • [^] # Re: Toujours le même

    Posté par  (site web personnel) . En réponse au journal Canonical refait cavalier seul et annonce une nouvelle boutique logicielle centrée sur Snap. Évalué à 4.

    Snap était là bien avant flatpak. Red Hat a fait flatpak par après et a décidé de propulser son support dans GNOME Software. Je pense que c'est tout à fait compréhensible de la part de Canonical de se sentir frustré de pas être logé à la même enseigne pour quelque chose qu'ils ont débuté avant. Je pense que c'est plutôt Red Hat qui a un syndrôme NIH. Systemd après Upstart, Flatpak après Snap. Il y a d'autres choses mais je n'ai plus toute la liste en tête.

    Note : je ne défends en aucun cas Canonical, pour moi ça reste une entreprise qui « détruit » tout autant la simplicite et beauté de Linux que Red Hat.

    AI is a mental disorder

  • # « Guerres »

    Posté par  (site web personnel) . En réponse au journal Canonical refait cavalier seul et annonce une nouvelle boutique logicielle centrée sur Snap. Évalué à 2. Dernière modification le 12 juillet 2019 à 09:09.

    Je souris légèrement à ces réactions excessives du côté des développeurs chez Red Hat et GNOME. « Ah vous n'installez plus GNOME Software dans votre distribution ? Tant pis on supprime le support de snap ».

    Red Hat et GNOME sont loin d'être blancs comme neige et ne jouent pas toujours franc jeu non plus. Il y a qu'à voir la plupart des réactions chez systemd qui se finissent souvent par « on fait comme ça et tant pis si vous ne suivez pas ». Autre exemple dont je suis affecté, un développeur GNOME qui pense que glibc est le standard sous Linux et ne souhaite visiblement pas supporter d'autres alternatives.

    Pour faire bref : l'herbe n'est jamais plus verte ailleurs. Chaque distribution fait un peu des conneries dans son coin. Mais c'est aussi grâce à ça qu'on fait des erreurs et on arrive à trouver parfois une bonne solution. Exemple simple : les fichiers .desktop, XDG, FDO en général.

    En revanche, on peut pas vraiment jeter la pierre à Canonical pour développer snap, ça a commencé avant flatpak.

    AI is a mental disorder

  • [^] # Re: On veut plus !

    Posté par  (site web personnel) . En réponse au journal Windows dans les copieurs. Évalué à 8. Dernière modification le 05 juillet 2019 à 08:41.

    Parfois pas grand chose.

    Par exemple sur un tour à commande numérique en stage de 3ème (il y a fort longtemps) j'ai réussi à déplacer la fenêtre de commande de l'écran tactile du tour devant mon tuteur. Surprise ! Un menu démarrer en bas, il s'agissait d'un Windows 95. Malheureusement une version très réduite car il y avait à peine des outils comme bloc note, calculatrice. Pas de démineur :(

    Et sur les écrans de certains BUS de Strasbourg, l'interface tourne sur une version spéciale de Linux. Une fois partie en reboot permanent, j'ai vu le démarrage avec deux tux et ensuite un tty avec écrit « Lumiplan Platform » si j'ai bien vu.

    AI is a mental disorder

  • [^] # Re: H264, H265

    Posté par  (site web personnel) . En réponse au journal Arrivée du Raspberry Pi 4. Évalué à 1.

    Et comment pouvons nous être sûr que le lecteur multimédia utilise bien la version accélérée et ne fait chauffer le CPU ?

    Enfin, je suppose RTFM le lecteur multimédia que j'utilise.

    AI is a mental disorder