barmic 🦦 a écrit 5915 commentaires

  • [^] # Re: Pourquoi si compliquĂ© ?

    Posté par  . En réponse au journal Sauvegarde de données. Évalué à 2. Dernière modification le 12 novembre 2020 à 17:01.

    Mais imagine le cas d'une famille où tout le monde stocke n'importe où au petit bonheur. Tu te vois expliquer qu'il faut stocker les photos ici et les vidéo là et les fichier ici ?

    Tu exagère. D'une part tu décris quelque chose de plus complexe que ce que moi j'ai décris. D'autre part c'est automatisé dans l'énorme majorité des cas. Donc non ça n'est même pas une question de connaître une règle et de s'y tenir, mais d'avoir mis en place une règle et de l'oublier.

    Tu peux aussi tenter le coup dans une entreprise : dans mon entreprise, on avait le même principe que toi (un disque réseau pour les fichiers importants, un répertoire local pour les fichiers temporaires, etc.). Au final tu as toujours des utilisateurs qui râlent car ils ont perdu des semaines de travail car ils ont pas stocké au bon endroit.

    Pareil tu exagère, mon setup ne permet pas que cela se produise (ou alors il faut supprimer ton travail et t'en rendre compte plus de 2 semaines après).

    Si le logiciel doit être au service de l'utilisateur dépenser des centaines d'euros et des megawatt pour éviter à l'utilisateur une étape de formation est un non sens dans le cadre du travail. Il faut que les règles fasses du sens, mais passer son temps à gérer des Tio de données pour rien n'est bon pour personne1. Après ça peut être de leur expliquer qu'on va bien tout sauvegarder, mais que du coup ils ont 20Gio de quota sur leur machine.


    1. je pense sincèrement que c'est une forme de dette. Tu t'évite des ennuis aujourd'hui que tu paiera plus tard ↩

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Pourquoi si compliquĂ© ?

    Posté par  . En réponse au journal Sauvegarde de données. Évalué à 2.

    Ok je n'avais pas compris que c'était incrémental cependant :

    La plupart du temps, le méchanisme de sauvegarde les ignore car elles n'ont pas changé (sauvegarde incrémentale).

    Quel est le moment où il y a une bonne raison que ça arrive ? À mon avis aucun.

    Personnellement ce genre de sauvegarde je le gère séparément. Je ne fais qu'une détection des fichiers, je ne cherche pas à regarder leur contenu. Donc rsync en lui disant bien de ne jamais supprimer de fichier, il crée juste de nouveau, il ne met pas à jour un fichier existant. Distant génération d'un index de checksum (et son contrôle avec le précédent) et d'une archive par2. C'est à la fois très simple et très fiable.

    c'est plus compliqué pour y accéder

    Tu mélange les besoin. La sauvegarde et la mise à disposition sont 2 choses différentes. La sauvegarde ne s'intéresse à l'accès que pour réduire le temps de recovery. L'accès normal aux données n'a rien à voir. Justement si ton disque explose tu n'a probablement pas besoin que ces données soient les premières restaurées. Si tu sais qu'elles sont sauves tu peux te permettre d'attendre un peu je pense. Alors que le fichier sur le quel tu as travaillé 8h hier, tu as besoin de le récupérer rapidement.

    Déjà la sauvegarde c'est pénible, donc le but c'est de rendre le truc le plus simple et automatisé possible.

    Segmenter ses sauvegardes simplifie énormément tes sauvegardes car tu utilise les critères qui conviennent pour chaque données. Chercher à sauvegarder de la même façon des fichiers que tu veux garder à vie et des fichiers qui n'ont plus aucun intérêt dans 6 mois rend vraiment les choses plus difficile à gérer.


    Ce sera peut ĂŞtre plus clair avec un exemple.

    Catégories de données

    Moi je sépare mes données en 3 groupes :

    • les donnĂ©es froides : ce sont les photos, vidĂ©os et quelques documents
      • elles ne vivent pas
      • elles ont une durĂ©e de rĂ©tention infini
      • elles reprĂ©sentent un volume important au final (pour moi)
      • je n'y accède que très peu, je n'ai pas besoin d'y accĂ©der tous les jours
    • les donnĂ©es chaudes : qui sont ce sur quoi je travail tous les jours
      • elles bougent continuellement
      • je n'ai pas besoin d'une rĂ©tention très grande (j'ai pris 15 jours, mais je pourrais ne les garder que 7)
      • elles sont assez peu volumineuses au final
    • les donnĂ©es que j'accepte de perdre : tout un tas de trucs dont je me fou, je peux les retrouver

    Méthodes de sauvegarde

    Pour les premières c'est un rsync+checksum+par2. Je ne l'ai pas décri t tout à l'heure, mais je roll le par2. Une fois que j'ai construit le nouveau et que je sais que les données dedans sont cohérente je détruis l'ancien.

    Pour le second j'utilise tarsnap, mais grosso modo je pourrais utiliser plus ou moins n'importe quelle solution. Limiter les volumes ici me permet d'alléger les sauvegardes, c'est particulièrement intéressant quand tu paie comme moi mais c'est toujours utile, même chez toi sur ton réseau local.

    Pour les troisième OSEF.

    À l'usage

    Les première ne sont pas stockées sur mon ordinateur local, mais uniquement sur un VPC OVH, elles sont accessibles en web (j'ai un moteur de galerie statique dont j'ai oublié le nom). C'est depuis le serveur quelles sont sauvegardées. C'est utile surtout pour pouvoir envoyer des données directement depuis mon téléphone et voir mes données aussi depuis ma tv ou une tablette. Ça ne m'embête pas de ne pas pouvoir y accéder hors ligne, sinon j'en ferais une synchro sur un disque local périodiquement (aucune notion de backup là dedans c'est juste une copie donc rien de complexe ou autre juste besoin d'un rsync croné).

    Les deuxièmes c'est mon dossier home à l'exception de quelques exceptions (mon dossier de téléchargement, le cache des applications et quelques trucs comme ça).

    Les troisième c'est le reste.

    Au final ça ne me paraît pas aussi compliqué que tu semble le penser. En tout cas je vis bien avec (et c'est l'essentiel). Ça m'a demandé un peu d'outillage pour mes données long terme, mais ça me simplifie tellement la vie je trouve.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Pourquoi si compliquĂ© ?

    Posté par  . En réponse au journal Sauvegarde de données. Évalué à 2.

    C'est dommage de réécrire toutes les semaines ces données, non ? Ça augmente le risque sans en avoir d'intérêt particulier (et potentiellement ça prend de la place, du temps pour les resauvegarder,…).

    Idem pour des vieux fichiers (bulletin de paie par exemple) que je ne regarde jamais mais dont on peut avoir besoin.

    Pour des données comme ça, au lieu de multiplier les itérations de sauvegarde, utiliser quelque chose comme par2 me parait plus approprié.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Snapraid

    Posté par  . En réponse au journal Sauvegarde de données. Évalué à 4.

    C'est bizarre, moi je vois un journal dont le sujet est la perte de données dû à des erreurs silencieuses de disque.

    D'ailleurs cette erreur a eu lieu sur le client de sauvegarde, mais ça peut se produire sur le serveur de sauvegarde (joie et félicité en perspective).

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Pourquoi si compliquĂ© ?

    Posté par  . En réponse au journal Sauvegarde de données. Évalué à 2.

    Je ne comprends pas tout. Un disque que tu sauvegarde régulièrement a beaucoup d'erreurs, mais c'est silencieux ? Si tu te sers de ses données tu devrais voir le problème, non ?

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Pour alimenter la discussion ...

    Posté par  . En réponse à la dépêche Python dépasse Java en popularité selon l’indice TIOBE de novembre. Évalué à 6.

    Je ne sais pas la difficulté que rencontre les profs de collèges sur ce point mais, pour ma part, les premiers algorithmes que j'ai appris étant enfant sont hautement récursifs et totalement fonctionnels dans leurs principes, et il en est de même de tous les écoliers de France depuis des décennies. Je veux parler des algorithmes d'addition et de multiplication avec retenue, ainsi que celui de la division euclidienne (celui où l'on pose la division). Tu as peut être oublié ce que tu faisais étant enfant à l'école primaire.

    Je ne vais reprendre qu'une partie car il me semble que c'est le nœud de notre désaccord. Appliquer une recette n'a aucun rapport avec en comprendre le fondement (surtout que ton exemple est généralement présenté comme itératif et non fonctionnel). Ce n'est pas parce qu'on a vu un objet tomber qu'on comprends la relativité générale.

    Réellement tu compare utiliser une méthode dans un cas précis qui t'a était dicté et en comprendre suffisamment sa mécanique pour la réutiliser. Savoir faire cette addition sur les entiers va devoir être réappris pour l'appliquer à une représentation binaire, octale ou hexadécimale des nombres, pourtant l'algo est le même. Ça montre bien qu'il n'y a pas de compréhension de cet algo il est appliquer tel quel. C'est comme mélanger la farine et les œufs sans savoir la chimie qui se cache derrière.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Pour alimenter la discussion ...

    Posté par  . En réponse à la dépêche Python dépasse Java en popularité selon l’indice TIOBE de novembre. Évalué à 5.

    Parle pour toi, l'impératif rempli d'effets de bords je n'y comprends strictement rien dès que le programme devient trop gros. C'est un paradigme qui m'est totalement incompréhensible.

    C'est comme ça que fonctionne un ordinateur et les cours de programmation commencent tous par expliquer le fonctionnement d'un ordinateur. La relation entre ce que tu écris dans ton code et ce qui est exécuté par la machine est largement plus simple que ce qu'implique le fonctionnel.

    Les débutants ne commencent pas par faire de grands programmes. Comme dans toutes choses tu commence simple et tu progresse.

    Qu'est ce qu'il y a de compliqué là-dedans ? Prenons le reduce (ou fold) : c'est un peu comme une boucle de rétroaction.

    Je ne sais pas quoi répondre. On est pas dans le même monde.

    Comment fonctionne-t-il ? C'est simple

    Pour faire un type d'opération tu as ressenti le besoin de parler de boucle de rétroaction (concept de mécanique sophistiqué). Son implémentation simple implique de la récursivité. Tu verrais la difficulté pour les prof de collèges pour expliquer la récursivité aux élèves…

    Peut être que l'on ne comprends pas le mot simple de la même façon. Je parle de facilité d'accès et pas de simplicité algorithmique. La programmation fonctionnel permet d'obtenir des

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Pourquoi si compliquĂ© ?

    Posté par  . En réponse au journal Sauvegarde de données. Évalué à 7.

    Mon dispositif fait déjà de la sauvegarde incrémentale que ça soit avec mon script ou avec unison, mais vu le volume de données aujourd'hui je ne peux guère remonter qu'à une semaine.

    Tu produit tant de données ? Ou tu roll tant de données que ça par semaine ?

    Quand on commence à avoir beaucoup de données (beaucoup c'est à l'appréciation de chacun, mais je pense que c'est quand tu commence à te demander si tu a la place pour faire ce que tu veux), il est important de segmenter tes données en te demandant combien de temps tu souhaite les garder, quelle fréquence tu les met à jour, quel volume ça représente,…

    Personnellement je n'applique pas du tout le même backup aux données « vivantes » de mon dossier personnel et aux données que je souhaite garder aussi longtemps que possible avec mes photos et vidéos. Je ne sauvegarde pas de la même façon, je n'y accède pas de la même façon, etc.

    Ça peut grandement aider et simplifier.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Quelques prĂ©cisions

    Posté par  . En réponse à la dépêche Le Conseil d’État reconnaît que le gouvernement US peut accéder aux données de santé des Français. Évalué à 4.

    Ben non. Tu peux pas dire « ben fais exactement ce que fais le leader et on en parle ». Ça ne fonctionne pas comme ça.

    • la marche est beaucoup trop haute, il faut choisir ce qu'on fait maintenant pas Ă  terme, ça doit ĂŞtre dirigĂ© par les besoins
    • on ne crĂ©e pas de l'innovation en reproduisant exactement ce qui est dĂ©jĂ  fait. Les 5 ans que tu aura dĂ©pensĂ© (Ă  perte) pour rejoindre le leader, il aura passĂ© 5 ans Ă  prendre de l'avance et mĂŞme si tu le rejoins quel intĂ©rĂŞt de venir vers toi si tu n'es qu'une copie

    Tu remarquera par exemple que GCP, AWS et Azure ont des approches différentes. Azure et l'écosystème firebase par exemple sont à un très haut niveau de valeur ajoutée pour des besoins particulier Azure pour de l'IoT et Firebase pour du web/mobile. Il y a une tentative en Europe pour créer dans la même orientation mais pour l'industriel car c'est un domaine pas encore beaucoup passé au cloud. Bien sûr il est possible de tout faire avec AWS, mais AWS pour de l'IoT à coté d'Azure fais figure de simple hébergeur à l'ancienne.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Pour alimenter la discussion ...

    Posté par  . En réponse à la dépêche Python dépasse Java en popularité selon l’indice TIOBE de novembre. Évalué à 4.

    Tu montre des expressions d'une ligne. En une ligne quasiment tout langage qui n'est pas volontairement abscons sera simple.

    Mais il est bien plus intuitif de décrire un programme de manière impérative, il est aussi bien plus confortable d'avoir un accès direct aux effets de bords.

    Qui y a-t-il de compliquer à comprendre dans tout cela ?

    Avoir le bon niveau d'abstraction est quelque chose de véritablement complexe. Ça impact la lisibilité, la compréhension et l'évolutivité du code sachant que lisibilité et compréhension sont des notions tout à fait subjective et que ce ne sera pas la même chose d'un développeur à l'autre. Affirmer que l'abstraction c'est simple c'est comme dire que l'escalade c'est facile, il suffit d'attraper des prises et de se hisser dessus. Il y a beaucoup de subtilité derrière cette abstraction et non ça n'est pas simple.

    Autre chose manipuler des listes ne demande pas de notions particulières, là où la programmation fonctionnelle va te demander de comprendre des notions comme la reduction, fold, zip,… C'est élégant, mais c'est des notions plus sophistiquées.

    Enfin l'impératif va simplifier grandement le print debugging et l'élaboration incrémentale. Tu ne peux pas découper un code où tu le veux en fonctionnel ou plus exactement les primitives sont de plus haut niveau donc tu ne peux pas les étudier pas à pas. Bien sûr c'est possible, mais tu va avoir besoin de bien maitriser ce que tu fais pour pouvoir faire quelque chose qui intéresse surtout les débutants.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Quelques prĂ©cisions

    Posté par  . En réponse à la dépêche Le Conseil d’État reconnaît que le gouvernement US peut accéder aux données de santé des Français. Évalué à 6.

    La réalité est que construire cette independence cloud doit se faire d'abord, afin qu'un cloud européen soit non pas équivalent mais proche des capacités US, afin que l'effort de construire dessus puisse être justifiable.

    C'est exactement ce qui a déjà été tenté, mais ça ne marche pas comme ça. Ce n'est pas comme ça que les choses fonctionnent. Il faut diriger par les besoins sinon tu crée un truc hors sol. Sur un modèle économique très dangereux (dépenser ton capital avant de dégager des revenus) et tu te plante.

    Non ce qu'il faut c'est investir dans des projets. L'État peut très bien le faire. Sur ce projet là ou sur de plus petits. Mais ça ne se construit pas tout seul.

    Mais pour ça il faut comprendre l'enjeu et l'état du marché. Quand on pense que c'est déjà perdu, il est évident qu'on imagine pas créer quelque chose. Alors que tout montre que le marché est encore petit et qu'il y a encore des perspectives de croissance importantes. Tous les acteurs du cloud sont en croissance, c'est qu'il y a encore de la place.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: De l'engouement pour Python

    Posté par  . En réponse à la dépêche Python dépasse Java en popularité selon l’indice TIOBE de novembre. Évalué à 4.

    Je n'ai jamais vu ce genre de problème et s'il arrive tu peux annuler le merge ajouter un commit de auto reindent et faire ton merge. Je fais peux de python, mais sur du yaml, j'ai déjà souffert. Les exemples qui peuvent devenir bien relou, c'est de merger des changements d'indentation. En yaml c'est pire, mais de ce que je m'en suis servi ça m'a déjà un peu embêté.

    Tu peux même le détecter avant si tu préfère, tu peux aussi refuser le commit si tu le détecte ou avoir un linter qui rapport ça ou ajouter un hook git et le problème est probablement plus le non respect des règles parce que python ne va pas non plus apprécier des indentations inconsistantes.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • # Pertes

    Posté par  . En réponse à la dépêche Migration de Jira à Tuleap : nouvelle fonctionnalité. Évalué à 4.

    Comment sont gérés les pertes ? Ce qui ne peux pas être reproduit dans tuleap ?

    Jira (que je n'utilise plus depuis pas mal de temps) et surtout intéressant s'il est beaucoup customisé :

    • la crĂ©ation de rapport (et de mon souvenir c'est siffisament chiant Ă  faire pour ne pas trop vouloir y revenir)
    • crĂ©ation workflow avec tout ce qui va avec comme gestion des rĂ´les et gestion de formulaires pour chaque Ă©tapes du workflow
    • l'utilisation de divers plugin
    • la possibilitĂ© de scripter pas mal de chose en groovy (par exemple pour ajouter un champ calculĂ© qui pourra ensuite ĂŞtre pris en compte dans les workflow)

    Je me doute que tuleap ne reproduit pas tout (c'est même pas forcément souhaitable).

    Est-ce qu'il est possible de :

    • faire du dry-run, rollback ou une quelconque manière de revenir en arrière pour s'y retrouver ?
    • avoir un listing de tout ce qui n'est pas importĂ© pour pouvoir le gĂ©rer d'une manière ou d'une autre ?

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: De l'engouement pour Python

    Posté par  . En réponse à la dépêche Python dépasse Java en popularité selon l’indice TIOBE de novembre. Évalué à 2.

    Un peu plus haut tu as la doc qui explique très bien dans un anglais assez simple pour que même moi je puisse le lire sans trop me prendre la tête. Je te met le lien vers l'endroit où il en est question PEP 635: Motivation.

    Je ne suis pas familier avec le parcourt d'AST en python, mais ça peut servir quand tu utilise un tuple comme objet ad-hoc à le déstructurer de manière plus concise et lisible.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: De l'engouement pour Python

    Posté par  . En réponse à la dépêche Python dépasse Java en popularité selon l’indice TIOBE de novembre. Évalué à 3. Dernière modification le 08 novembre 2020 à 16:43.

    C'est pour faire de la déconstruction de ce qui est décris dans le PEP au dessus. Tu peux matcher les valeurs d'une liste ou déconstruire un objet :

    a=["foo", "bar"]
    match a:
        case ["foo", param]:
            print(param)
    
    match event.get():
        case Click(position=(x, y)):
            handle_click_at(x, y)

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: De l'engouement pour Python

    Posté par  . En réponse à la dépêche Python dépasse Java en popularité selon l’indice TIOBE de novembre. Évalué à 4.

    La rupture en question c'est une partie de la bibliothèque standard qui a était déplacée dans une bibliothèque. Tu ajoute cette bibliothèque dans ton classpath et sans même avoir à rebuild le code.

    Par contre JavaEEJakarta EE a/va bien péter la compatibilité et ça ça va être couteux

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: De l'engouement pour Python

    Posté par  . En réponse à la dépêche Python dépasse Java en popularité selon l’indice TIOBE de novembre. Évalué à 3.

    1) Le pattern matching n'est pas juste un switch.

    Je le sais bien, mais à l'époque ça complexifiait le langage. Le pattern matchin est bien plus complexe.

    2) La syntaxe Python permet (dans certains cas) d'introduire des nouveaux mots-clefs sans casser l'utilisation du mot en question dans des noms de variables existants, car le contexte est différent. Ex: on peut introduire la syntaxe match: sans casser, re.match(…) ou une variable qui s'appelerait match.

    C'est l'utilisation des soft keyword ? Je ne connaissais pas et j'ai beaucoup de mal à trouver de la doc dessus, mais je comprends l'idée. Ça me parait bizarre de gérer case et case différemment de tous les autres mots clefs de structure de contrôle, par contre.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Pour alimenter la discussion ...

    Posté par  . En réponse à la dépêche Python dépasse Java en popularité selon l’indice TIOBE de novembre. Évalué à 6.

    Par contre pourquoi Ruby n'a t il pas connu la même popularité ?

    Parce que python.

    La progression de python en big data/data science (c'est assez générique je parle de numpy à sparc en passant par panda et les notebooks) et dans l'enseignement lui ont donné un coup de projecteur qui limite beaucoup la place pour ses alternatives.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: De l'engouement pour Python

    Posté par  . En réponse à la dépêche Python dépasse Java en popularité selon l’indice TIOBE de novembre. Évalué à 6.

    Enfin, une interrogation similaire ressort de l'index TIOBE : pourquoi Java, qui semble universellement décrié, a t'il toujours eu un classement aussi élevé ?

    Tu confond la bulle qui t’entoure avec l'univers ;)

    Java est un langage qui trouve très bien sa place en programmation de service :

    • l'indĂ©pendance vis Ă  vis du système d'exploitation (dans le langage, le binaire et le packaging) sont intĂ©ressant pour dĂ©velopper depuis un système d'exploitation
    • son temps de dĂ©marrage et de chauffe ont moins d'importance que la qualitĂ© du code gĂ©nĂ©rĂ© par le JIT et du garbage collector
    • un Ă©cosystème très complet et très mature avec des standardisations qui apportent de la valeur. Je ne dit pas quelles en apportent toutes, mais quelque chose comme JDBC soit une API pour interroger des bases de donnĂ©es SQL, non limitant, avec une implĂ©mentation pour toutes les bases de donnĂ©es, etc c'est vraiment agrĂ©able
    • un outillage vraiment très cool, l'IDE peut donner Ă©normĂ©ment d'information, des outils d'analyse statiques comme sonarqube qui font un super job
    • le langage Ă©volue dans la bonne direction, pour remplacer quelque chose d'en place il faut :
      • que tu apporte une valeur suffisante pour compenser la migration
      • que tu tes chances d'ĂŞtre pĂ©renne pour Ă©viter un blocage dans quelques annĂ©es
      • que la valeur que tu apporte se maintienne dans le temps, si la solution initiale t'aura rattrapĂ©e dans 3 ans faire une migration qui prend 2 ans, ne vaut probablement pas le coĂ»t

    Évidement il y a d'autres raisons bien plus dommage comme l'inertie ou le fait qu'on ne reprochera pas à un décideur de partir sur java que sur le dernier langage sorti le week-end dernier.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: De l'engouement pour Python

    Posté par  . En réponse à la dépêche Python dépasse Java en popularité selon l’indice TIOBE de novembre. Évalué à 3.

    Qu'est-ce qui s'est passé ? Ça fait 15 ans que python refuse de faire un switch.

    Par contre python n'a pas changé… Ajouter 2 mots-clefs d'un coup (si je m’appuie sur la PEP636), il y a pas mieux pour casser la compatibilité…

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: De l'engouement pour Python

    Posté par  . En réponse à la dépêche Python dépasse Java en popularité selon l’indice TIOBE de novembre. Évalué à 5.

    Java : trop de boilplater, trop d'objets, trop …

    Il y a beaucoup plus d'objets en python. Pour le boilerplate depuis la version 6 (sorti il y a 14 ans tout de même) du java ça va en s'améliorant.

    Typescript : trop proche de js du coup

    C'est vraiment aller vite en besogne. Tu compare 2 langages qui ont des typages qui sont très différents pour en disqualifier un. C'est vraiment aller vite en besogne.

    Scala : du java en plus compliqué, hum…

    Pas la même syntaxe, pas le même typage, pas la même sémantique,…

    Comprends bien, chacun aime les langages qu'il veut sur des critères qui lui sont propres objectif ou non. C'est juste que sur ces 3 cas là (au moins il y aurait des choses à dire sur d'autres), tu me semble avoir des préconçus qui n'ont pas de sens.

    Collectionner les langages c'est très tentant, mais approfondir leur compréhension c'est vraiment important. Par exemple affirmer que python n'a pas de typage, c'est faux.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • # Merci

    Posté par  . En réponse au journal Interview de Michel Pigenet : la loi des associations 1901. Évalué à 4.

    Merci pour cet article intéressant.

    Je ne savais pas ce qu'était les congrégations. C'est un groupe religieux (le sens exact semble pouvoir évoluer).

    Je ne m'étais jamais trop arrêté sur l'idée de la liberté d'association. Je comprends personnellement que ça ne coule pas de source. Les « associations » qui peuvent potentiellement remettre en cause les institutions (parce qu'elles sont armées ou par exemple la religion) peuvent poser des problèmes. Surtout quand une république est encore jeune et a besoin d'assoir sa légitimité. Par contre ça m'avait surpris de voir comment l'État s'appuie sur des associations comme les Assedics.

    Je suis surpris par contre de ne pas voir de mention de la franc-maçonnerie. Les confréries ont dû être touchées par cette histoire.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Impression de dĂ©jĂ  vu

    Posté par  . En réponse au lien Julia, le code informatique qui bouleverse la science. Évalué à 4.

    Dans le milieu scientifique que je fréquentais, ce n'était carrément pas une demande. La plupart ne savaient pas ce que c'était.

    C'est normal, on demande rarement quelque chose dont on ne sais pas qu'il existe, mais le paradigme fonctionnel est généralement plus confortable quand on vient des mathématiques car il exprime plus les mathématiques plus idiomatiquement. La fonction factoriel en haskell peut s'écrire comme ça :

    factorial 0 = 1
    factorial n = n * factorial (n - 1)

    On fait difficilement plus limpide pour qui fait des mathématiques.

    Concrètement, par rapport à openmp ?

    openmp c'est limité comme forme de parallélisme.

    Ce n'est pas « le langage », mais ça marche partout.

    openmp5 dont la spec a 2 ans continue d'être implémenté dans gcc et est surtout implémenté pour C et C++ plus que pour fortran.

    Et quand ils voulaient faire des trucs compliqués, quand les perfs devenaient nécessaires, quand ça marchait pas, ils venaient demander de l'aide aux 3 du labo qui s'en sortaient mieux.

    C'est pratique de pouvoir aider sans dire « non mais attends on va tout réécrire dans un langage que tu ne saura pas lire ».

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Impression de dĂ©jĂ  vu

    Posté par  . En réponse au lien Julia, le code informatique qui bouleverse la science. Évalué à 4.

    C++ basique ou du Fortran.

    Avoir accès à un paradigme fonctionnel ? Avoir la parallélisation géré au sein du langage ? Avoir un gestionnaire de paquet ?

    Si vous ne voulez pas vraiment programmer[…]

    C'est à dire ?

    [python] suffit presque tout le temps d'un point de vue perf

    Les nombreux projets qui cherchent Ă  augmenter les performances de python me semblent ne pas aller dans ton sens.

    De plus, vu le niveau moyen des scientifiques qui programment, de nombreux problèmes de perf viennent des algorithmes plus que du langage.

    C'est une bonne raison pour ne pas les laisser avec un langage leur permettant un accès direct à la mémoire.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

  • [^] # Re: Ça a l'air top.

    Posté par  . En réponse au lien alternative à youtube-dl . Évalué à 4. Dernière modification le 30 octobre 2020 à 19:04.

    Common Gateway Interface c'est une façon simple et standard de lancer un programme sur une requête http.

    https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll