Ce sont des index, pas des bases de données. C’est fait pour trouver rapidement une aiguille dans une botte de foin, c’est pas vraiment fait pour le stockage long terme de données.
l'utilisation de Kafka comme "pseudo-bdd" est très rarement une bonne idée.
Dur de leur en vouloir cela dit, c’est une plateforme d’event streaming 😃
Bon, les gars, troller a fond les ballons, c'est fun, mais on va peut être penser à arrêter les conneries un peu la. Surtout quand l'argument principal c'est d'enculer les mouches sémantiquement.
"[…] hiring a “child” sex worker. […] be a teenager, not a child."
C'est tout, donc pas de "défense", pas de "exaggerated condemnation", il parle ici juste de nommer.
Si t'avais prit 2 secondes pour ouvrir un dictionnaire, tu saurais que child est définit dans la plupart des dictionnaires comme "a young human being below the age of puberty or below the legal age of majority.". L'emphase est de moi, ca c'est l'oxford, mais Cambridge, Merriam Webster et meme dictionary.com ont la meme definition.
Donc bref, ce que RMS dit en substance la "l'accusation de vol de voiture est exagérée, il a pas volé une voiture, il a volé un monospace!!". J'ai vraiment du mal a ne pas interpreter ca comme une tentative de dédouaner des pratiques plus que douteuse.
"tried to start dating/sexual relationship"
Pas d'achat, donc pas le sujet que tu amènes, tu fuis en espérant qu'on gobe que ça parle d'achat pour ne pas assumer devoir te confronter à la loi française (ou ailleurs) qui autorise certains mineurs à avoir du sexe avec des personnes de 60 ans.
Ben voyons. Marrant comme t'oublies la partie "He tried to lead Ms Corfman step by step into sex, but he always respected “no” from her and his other dates". En gros, "ouais, il l'a clairement groomé, mais ca va, parce qu'il a respecté les nons jusqu'a ce qu'il l'ai suffisament groomé". Super classe.
Si la colline sur laquelle tu veux mourir, c'est de justifier Roy fucking Moore et le pédopiégeage a coup d'hyper rationalisation, fait toi plaisir mec. Mais RMS est passé par la avant toi, et ca s'est pas super bien fini pour lui.
Sont tarés… en espérant qu'un juge sera compréhensif (faut bien tomber).
Oui, et non. D'une part, faut convaincre le DA (procureur) d'amener ca devant un juge avant de convaincre le juge.
D'autre part, ya bien un moment ou il faut mettre une limite. C'est pour ca aussi qu'on a des humains dans le process, tout comme pour le cas US.
La loi française est mieux adaptée au scenario typique, couple de 14 et 15 ans par example. Mais elle est particulièrement floue entre mineurs. Un gamin de 14 ans 11 mois et 29 jours peut se faire tripoter la nouille par une petite de 8 ans, et c'est franchement pas clair ce qu'il peut leur arriver.
Ou pour utiliser un exemple moins extreme, une relation entre un mineur de 17 ans et un mineur de 12 ans passe comme une lettre a la poste, et c'est pourtant franchement tres tres tres limite comme situation a priori. Edit: et ya toujours un probleme de frontière dure. 17/14 ans, le jour ou l'un passe a 18, paf au trou, alors que la veille ca rentrait comme papa dans maman.
Si t'as une solution qui a pas de frontière dures, ni de zone de flou douteuse, on t'écoutes :)
En l'occurence, tous les trucs mentionnés par Drew DeVault, ce sont des trucs qu'il a mis sur sont site personnel
Site perso qui en 2018 avait un gros lien en haut "faites un donation a la FSF!", mentionne la FSF plusieurs fois sur la page d'accueil. En 2010, sa bio était sur la page d'accueil et disait "j'ai fondé la fsf".
Dans l'ensemble, oui, c'est tout a fait possible de clairement séparer son bog perso de son boulot a soit. Mais faut faire un vrai effort de separation. Dire "j'ai fondé la FSF, donnez a la FSF, FSF rulez, au fait, cette page a rien a voir avec la FSF", on peut pas vraiment dire que ca fait une separation.
A noter que RMS est américain, que la loi des Etats dit souvent que pas de sexe entre adulte de 18 ans et 0 jours et ado de 18 ans moins 1 jour (si j'ai bien compris la loi de certains Etat ne fait pas de notion de différence d'âge
Si tu parles de l'affaire Minsky, oui et non. Les iles vierges US définissent Rape in the second degree comme une personne a plus de 18, l'autre entre 16 et 18, et plus de 5 ans d'écarts entre les deux. 17 et 19, ca passe. 17 et 73, passe pas.
Rape in the third degree si une personne a entre 16 et 18, et l'autre entre 13 et 16, pas d'exceptions.
First degree, c'est le viol "traditionnel", a savoir non consentant/coercition/évanoui/bourré/mentalement incapable de consentir/etc.
Pour le reste, comme toujours aux us, c'est état par état, et yen a 50, donc ca fait du monde.
Du coup la question est: si une personne devient publique, a t-elle le droit de s'exprimer sur d'autres sujets que ceux qui l'ont rendu public?
Ta question est bizarre. Bien sur qu'elle a le droit.
La question est surtout de savoir si la communauté qu'elle représente va toujours vouloir être représentée par cette personne si la personne s'exprime sur des sujets qui n'ont rien a voir avec la communauté. Ses actions ont des consequences.
Ta joueuse de tennis ne représente personne a part elle meme et ses sponsors. La défense des animaux, c'est cool, mais si elle se met a exprimer des opinions polémiques sur la situation du moyen orient, ses sponsors vont avoir quelque chose a y redire. Ou pas, ca depend de ce qu'elle dit, de comment elle le dit, et de comment c'est perçu par le reste du monde, et surtout par la cible de ses sponsors.
Pour Stallman, c'est pareil. C'etait le porte parole de la FSF (techniquement, president, mais a ce niveau, il représente tres clairement une association dont le but est la promotion du logiciel libre), et transitivement, d'une communauté plutot grosse et active. Le mec a représenté la FSF et le mouvement open source devant des ministres français, donc on va pas couper les cheveux en 4.
Il peut dire ce qu'il veut quand il veut. Les gens qu'ils représentent ne vont pas forcement être d'accord avec lui par contre, et potentiellement vouloir un autre représentant. Personne n'a cherche a l'empêcher de dire ce qu'il voulait dire. Des gens associé a la FSF ont par contre jugé ses propos outranciers, et ne veulent pas être associé avec lui. S'en suit un une situation "soit il part, soit nous on part".
C'est pour ca que quand ton boulot c'est des relations publiques, t'évites de d'exprimer publiquement sur des sujets polémiques qui ne touchent pas directement ton domaine.
Dois-je interdire à mes fille de lire les livres d'Harry Potter parce que son auteur a des idées de merde?
Ca c'est un autre sujet. Tu peux, et probablement doit, séparer l'oeuvre de l'artiste. J'adore Noir Désir, meme si je peux pas dire que je soit un fan de Bertrand Cantat. Le fait qu'il ait tue sa copine n'enleve rien a sa musique.
Tes filles ne savent pas forcement qui est l'auteur d'harry potter, ni ce qu'elle pense sur des sujets polémiques. Si elles ont l'age de comprendre, ca mangerais pas de pain de leur expliquer la difference entre l'oeuvre et l'auteur cela dit, c'est une bonne leçon pour elles.
Apres, savoir si tu es ok pour lui donner des sous tout en sachant ce qu'elle pense, c'est une decision personnelle.
Stallman par contre a honnêtement absolument rien produit depuis le debut des années 90. Son boulot depuis, c'est de la PR: conference, évangélisme, etc. Tu peux pas séparer l'oeuvre de l'auteur dans cette situation.
alors forcément après tu arrives à t'inventer que je dis des choses
J’ai rien inventé du tout, 2 des 4 exemples ont moins de 6 mois, et les 2 autres on t’as tous vu les répéter ad nauseam depuis plus de 10 ans.
horribles
Jamais dit qu’elles étaient horribles, juste que tes propensions à l’homme de paille et à l’hyper rationalisation sont inversement proportionnelles à la nuance de tes propos.
Le cas dans le point:
e pauvre, faut croire qu'on l'a attaché là, mais bon attaché tout en deva t se deplacer quand même, vous suivez? Pas moi
les gens adorent attaquer en inventant des raisons quand elles sont incapables de parler du sujet et/ou quand elles ne trouvent pas assez d'ennemis
Mais dites moi pas que c’est pas vrai?!?
Genre des mecs qui débattent sans fin, construisant des homme de pailles gigantesque dans leur tête, classifiant ensuite les autres comme ami ou ennemi suivant ces lignes arbitraires, et le plus souvent imaginaires, sans même les connaître, ni même les avoir lu (pour être tout à fait honnête)? Genre « les libristes absolutistes contre les pragmatique », « les méchant open source washeur contre les vrai gars du libres »(à ne pas confondre avec les premiers), « les anti liberté imposeur de gpl contre les vrai gars qui laissent le choix » (a ne pas confondre avec les premiers, ni les seconds d’ailleurs faut suivre un peu, merde), « les citadins ecolos du dimanche contre les vrai gars de la campagne », « les gars de la campagne qui font le CHOIX d’avoir besoin d’une voiture à la campagne contre les vrais gars de la ville vivant dans l’hyper centre » (on a dit faut suivre!), ce genre de choses?
Mais qui donc oserait faire quelque chose comme ça? Ma bonne dame, franchement, tout fout le camp.
Tu réalises que si on prétend ne faire aucune abstraction, toute donnée numérique n’est que chaînes de bits ?
Oui, et l’univers entier (et donc les bits aussi) se réduit à 4 types de particules élémentaires plus la gravité. C’est pas pour autant qu’on écrit du code dans le modèle standard. La façon dont on modélise l’information en science de l’information (aka informatique) me paraît être assez importante.
l’assembleur est peut être partout, mais on a des bootstrapping compiler depuis les années 50, et c’est pas pour rien que personne a écrit un langage en assembleur (ou en bash) ces 50 dernières années.
Je vais arrêter la, parce que si la discussion en arrive à « c’est quoi la différence entre l’absence de valeur et 0 » et « de toutes façons c’est qu’un voltage dans un circuit électronique », je suis pas sur qu’on aille très loin. La prochaine étape c’est « brainfuck et white space aussi sont Turing complet ».
Et je rappelle tout de même que jq peut avoir une syntaxe compliquée, il n’y a aucun besoin en traitement du JSON qui lui soit inatteignable
le problème c’est pas jq, le problème c’est de récupérer la sortie de jq de façon utilisable.
Le json est pas mal foutu, si 2 champs ont une semantique différente, tu les sépares. Mais bash est tellement limité que tu peux pas récupérer plus d’un champ à la fois sans rentrer dans un champ de mines. Utiliser des séparateurs magique (genré \n, ou une virgule, ou que sais je) ne marche pas, parce que ces caractères peuvent être dans ta valeur. A moins que tu veuilles te fader un parseur csv compliant avec toute la spec en bash, ou échapper tes valeurs de partout, pour ensuite les desechapper, mais tu reviens au même problème: c’est affreusement compliqué et casse gueule.
Et surtout, à ce compte là, autant écrire un parseur json en premier lieu. A ben zut, c’est physiquement pas possible à cause du typage. Tu le vois, le problème?
Est-ce qu’on reproche au C ces types natifs limités ? Ou a Perl de ne pouvoir avoir des arrays de pointeurs ? Même en Python les types d’objets « complexes » sont basés sur les trois types de base : scalaire, list et dict (sachant que tout scalaire peut être considéré comme une liste selon le besoin.
Le problème c’est pas les types de bases limites. Enfin, si, c’est un problème. Mais c’est pas mon point. Les tableaux en bash ne peuvent que contenir des chaînes. Pas de null, parce que ça existe pas en bash, pas un autre tableaux, rien. Des tableaux à 2 dimensions, c’est pas particulièrement rare, quand même. A plus forte raison quand les tableaux associatifs sont la seule structure de données que t’as.
Le concept du bash, c’est d’orchestrer des binaires en renvoyant la sortie de l’un vers l’entrée de l’autre, de manipuler de façon légère le système de fichier. Commencer à scripter du Kukes à coup de jq sort très largement de ce champ. Ruby/python feront ça les doigts dans le nez par contre.
T’as déjà eu affaire à du PowerShell ? :)
Sorti de survoler des scripts internes, non. Après, powershell a au moins le bon goût d’être typé, et te donner un output structuré (sans avoir besoin de te prendre les pieds dans le tapis avec sed et awk). Mais surtout, c’est pas le sujet.
Oui, et ? Tu dirais que l’assembleur est obsolète ?
Euh, ben, un petit peu quand même. C’est pas exactement un langage qui a le vent en poupe. C’est une niche de chez niche, quand t’as pas d’autre choix disponible.
Genre si t’as besoin de récupérer 2 champs de ton json, ça commence à devenir plutôt compliqué. Ou extraire un tableau. Ou si un champs est null. Fin ça devient super limité dès que tu sort de la base de la base du chemin content.
Des tableaux (liste ou hash) tu as ça aussi en bash
multidimensionnels, les arrays? Ou c’est juste un bon gros hack de chez mémé, avec une syntaxe absolument imbitable? Et t’as des sets aussi? Qu’est ce qu’il se passe si tu traites un tableau comme une map, il se passe des choses bizarres parce que le language ne connaît qu’un seul type, les chaînes, et que donc array[1] est la même chose que array["1"] bien que ça ne veuille pas du tout dire la même chose?
la programmation multi-thread est native (&, wait), tout comme l’usage de signaux (kill, trap)
oui, bon a ce compte la, l’assembleur aussi est multi thread.
Oui, c'est sur que rm -rf / toto avec des backticks, ca va pas donner le résultat escompté, vu que c'est un passthrough direct sur le shell. Ruby ne va pas magiquement échapper les paths. Ce qui était précisément le point de mon message: a un cout presque nul, tu peux éviter les plus gros pièges du shell. Au pire, tu te retrouves avec les meme problèmes que le shell, tout en ayant probablement une solution qui te prendrait 20 minutes a trouver.
D'ou l'intérêt d'utiliser les packages natifs, genre FileUtils. Les methods sont meme nommées apres les commande de base.
Ce bout de code fait exactement ce que tu veux qu'il fasse (plutot que d'effacer tout /tmp)
Le shell, par exemple Bash, vient avec un « éco système » qui n’a rien à envier à celui de Perl ou celui de Python : il est composé de binaires tels que "curl", "bc", etc….
Je vais pas parler de python que je ne connais pas. Mais je peux parler de Ruby, que je connais essentiellement en remplacement de bash/rakefile.
Ton argument ne fait aucun sens. Lancer une ligne de commande en Ruby c’est une ligne (backtick ou system, en fonction d’où tu veux faire aller le stdout), avec la grosse, grosse, grosse différence va te permettre d’éviter les conneries du bash. Du genre « oups, y’avait un espace dans le path et paf la commande rm », pour citer la plus connue. Tu parles de curl, une requête http c’est aussi une ligne en Ruby, et pas besoin de jq à la truelle pour ressortir le champ que tu veux. Et t’auras ton champ typé correctement. En gros, l’approche de base c’est d’écrire du code natif Ruby, et si quelque chose devient relou, tu peux toujours ressortir ta ligne de commande sur le point précis qui est relou. Mais au moins, t’aurais acces à des trucs « moderne », genre des tableaux, des maps, et même des nombres. Perso, je m’en sert pour scripter les builds en ligne de commande Xcode, ce qui au final inclue un peu plus que juste lancer xcodebuild.
Tout ça pour dire, l’écosystème bash est pour ainsi dire inexistant (et honnêtement, c’est pas pour rien). Ruby te donneras la même chose avec un typage qui date pas de 1974, et une base solide de base dans l’interpreteur (sans gem externes).
Ah ah ha… si tu as la chance de bosser dans une structure qui applique sans exceptions les principes de la CI, du gitops, etc, systématiquement, bah tant mieux pour toi
Je suis pas sur de comprendre ou tu veux en venir. Une instance Jenkins, c’est grosso modo une heure à mettre en place, avec discovery des pull requests, ping back à GitHub etc. Et demander de ne pas builder/packager/déployer depuis le laptop de jean rené, c’est pas le bout du monde quand même?
Je suis pas forcément en désaccord avec toi sur le sentiment, mais y’a 2 points qui me font tiquer.
parce qu’en 202X le shell/Perl est obsolète ?
Honnêtement? Oui. C’est dur à lire, dur à maintenir, super casse gueule, et les compétences court pas foule. Quand on a Ruby et python aussi largement déployé, qui viennent avec un eco système aussi gros, y’a vraiment aucune excuse pour faire du Shell. Perl est « moins pire », grâce à son eco système, mais ça reste un langage super aride et casse gueule.
evidement, y’a toujours des exceptions. Pour citer un exemple, booking.com notamment à beaucoup (trop) de Perl dans son backend, mais c’est plus de la dette technique qu’autre chose à ce niveau si t’en parles avec eux.
Sans oublier de mettre en place une chaîne de CI exprès pour ce « projet »
Eh. On est plus en 97. La CI, c’est la base de la base. Et ça fait bien 10 ans que les outils sont suffisamment avancés pour faire du self service à coup plus que raisonnable.
return, ok, mais break/continue peuvent tres tres souvent (mais pas toujours!) être remplacés de façon bien plus elegante par une combinaison de map/flatMap/findFirst/filter/forEach/que sais je encore. Alors, ok, tout les langages n'ont pas ce genre d'api, mais quand meme java l'a depuis une décennie, on est en droit de penser que c'est une feature de base :)
Sans forcement les interdire, les déconseiller me parait être une bonne idée.
dont la philosophie est de ne pas faire de programmation défensive mais de laisser planter (et avoir un superviseur qui relance le processus).
Le probleme c'est que les memes causes ont généralement les memes consequences, laisser le process planter et prier tres fort qu'il se banane pas apres avoir été relancé, c'est tres #yolo quand meme. Si la cause du bug c'est une race, ou un évènement ponctuel spécifique qui est null quand il devrait pas l'être, c'est une chose, et ton process va probablement revenir a la normal (ou pas), potentiellement au prix d'avoir atomise les autres transactions qui étaient potentiellement en cours dans le meme process (donc potentiellement, pas nul du tout).
Mais si c'est un job qui process des données, ou profile utilisateur qui a un champ nul quand il devrait pas, tu peux relancer le processus autant de fois que tu veux, ca va pas mieux marcher apres le millionième relancement que la premiere fois.
Soit ton typage comprends la notion de null, et tu force le call site lui meme a répondre a la question existentielle "une collection qui n'existe pas peut elle avoir une taille?", soit il le fait pas. Dans ce cas, t'as 2 options: declarer qu'une collection qui n'existe pas a une taille de 0, ou decider que c'est une exception (et ca, ca va vraiment pas arranger la lisibilité du code, parce qu'une exception c'est juste 2 goto empilé l'un sur l'autre qui portent un gros imperméable avec un faux nez et une fausse moustache sur celui du haut).
Au sujet de la semantique, declarer qu'une collection nulle a une taille de 0 est loin d'être ouf. Si tu regardes la question sous l'angle "combien de patates sont dans ce sac a patates", effectivement, c'est mal définit quand le sac a patate n'existe pas.
Mais la question réellement posée a 99% de chances d'être "De combien de patates suis-je en possession?", et ca enleve l'ambiguïté: tu ne possedes aucune patate si tu ne possèdes pas de sac a patates, ou si le sac a patates est vide. Et c'est a priori renforcé par le fait que si t'as ce probleme en premier lieu, t'es en mode fonctionnel, pas objet (sinon t'aurais le probleme du null avant meme de poser la question), et donc la question est littéralement "combien de patates?" pas "quelle est la taille de ce sac a patates?".
Tu peux probablement trouver une variante de ce probleme qui ne se résoud pas en changeant l'énoncé de la question, mais dans ce cas ci, ca se résoud tres facilement.
euh, ouais, pas vraiment. Optional.get() peut te peter un NoSuchElement (unchecked en plus, la classe) et la difference entre myVar.isPresent() et myVar != null est quand meme vachement subtile.
Sans compter que ca devient vachement meta quand tu te rends compte que ton optional peut être null, et qu'en fonction du contexte, tu vas potentiellement devoir null check ton optional.
tout simplement parce que le diff la merge request ne passait pas verticalement avec toute cette indentation.
Autant les pyramids of doom sont un VRAI probleme, et je matraque constamment a mes équipes que guard else c'est pas fait pour le chien (oui, on fait du swift, et guard a en cadeau bonux une garantie du compilateur que le block return ou fatalError()), que la lisibilité et réduire le contexte a garder en tete en relecture est plus important qu'une règle arbitraire "un seul return par fonction", autant l'excuse du "le diff est pas lisible" est assez bidon.
Utilise un outil different si ton outil est pas capable de faire des trucs de base. J'ai eu le meme débat (assez houleux) a propos de nos règles PMD qui interdit les "space terminated strings", l'excuse donnée étant que le mec qui a mit au point les règles et qui faisait pas mal de review utilisait un outil des bois qui était pas foutu de filtrer les whitespace des diffs.
Bon, apres, si tu fais surtout du python, effectivement, c'est une autre histoire.
Note que je n'attaque jamais les gens qui disent n'avoir rien à foutre de l'écologie. Et ceux qui ont l'écologie dans le sang peuvent acheter un logement plus adapté à leur affichage, mais non, ils préfèrent acheter la voiture électrique. Tu gobes ça, sérieusement?
Non, je le gobe pas. En tout cas, pas plus que ta fausse dichotomie “rien à foutre de rien”/“écolo qui a ça dans le sang”. Y’a tout un spectre entre les deux, que tu refuse de reconnaître, comme d’hab, parce que t’es absolument incapable de reconnaître la moindre nuance dans tes discours, t’es toujours dans les classifications extrêmes.
C’est sur ce point qu’on t’a demandé une source, que t’es bien évidemment incapable de produire parce que ce côté binaire/manichéen n’existe que dans ta tête.
Sur ce, je vais arrêter la, parce qu’on tourne déjà en rond, et ça fait pas 2 messages qu’on a commencé.
Maintenant, si vous avez des contre-arguments, je suis preneur, car votre réaction jusqu'à présent c'est surtout de ne pas se dire que j'ai peut-être raison comme si vous ne vouliez pas voir les faits en face.
Le Manichéisme légendaire de Zenitram. T'as un peu du mal avec la logique mec.
En gros, tu nous dit que puisque A est vrai, alors B, qui n'a rien a voir avec A, est aussi vrai. Ici A est "on a besoin de plus que des voitures électriques pour stopper le changement climatique", et B est une espèce de tirade en mode "les autres, mais on sait pas vraiment qui, fortement sous entendu ceux qui ont acheté une voiture électrique et qui sont des gros hypocrites (aussi fortement sous entendu, pas comme toi, un vrai Écossais écolo).
Sinon, j'ai une nouvelle défrisante pour toi: augmenter la couverture des transports en communs, ca prend du temps. Des années, voire des décennies. Les lignes de trains, ca se pose pas comme ca. Le pequin moyen, il peut voter ou il veut, ca va pas y changer grand chose. Et tiens toi bien, parce que la ca va VRAIMENT te défriser: le pequin moyen, il faut toujours qu'il se déplace pendant que les transports en communs se construisent – truc de ouf!
Et j'ai une autre nouvelle défrisante pour toi, je sais que c'est tres dur a comprendre dans ton monde 100% noir/blanc, mais le monde est fait de nuances. Et on peut tout a fait attaquer un probleme par plusieurs angles en meme temps – truc de ouf aussi!
Pourquoi prétendre qu'ils ne sont pas consentants???
Pourquoi prétendre qu’ils le sont tous à 100%?
Le consentement est pas forcément si tranché que ça. Tu réponds à fil qui cite Karen Lancaume, qui clairement n’était pas franchement contente de sa carrière. Elle a fini par quitter son mari qui “la laissait faire ça”, et se suicider.
Je suis pas dans ses petits papiers, mais ça me frappe pas comme quelqu’un qui faisait ça par passion.
Et non, ça veut pas dire qu’il faut interdire tout le pr0n, mais, putain, t’es super relou à nier en bloc ce qui est clairement un problème vieux comme le monde. ‘Fin c’est pas franchement différent de la prostitution, c’est juste une forme différente de prostitution, et ça fait qq millénaires qu’on sait que juste parce que la madame a prit les sous, ça veut pas dire qu’elle est forcément d’accord pour que te secouer la nouille, et qu’elle fait potentiellement ça sous la contrainte.
[^] # Re: On aimerait pas tous la même chose
Posté par groumly . En réponse au journal Laptop Frame.Work 13 pouces. Évalué à 2.
Rj 45 et usb a sur l’écran, ça répond à beaucoup de cas d’usages, et ça fait très exactement un seul câble à brancher sur le laptop.
[^] # Re: elasticsearch ?
Posté par groumly . En réponse au journal Tour d'horizon de l'état des bases NoSQL. Évalué à 4.
Ce sont des index, pas des bases de données. C’est fait pour trouver rapidement une aiguille dans une botte de foin, c’est pas vraiment fait pour le stockage long terme de données.
Dur de leur en vouloir cela dit, c’est une plateforme d’event streaming 😃
[^] # Re: question de clarification
Posté par groumly . En réponse au journal L’avis de RMS sur les relations sexuelles. Évalué à 3.
Bon, les gars, troller a fond les ballons, c'est fun, mais on va peut être penser à arrêter les conneries un peu la. Surtout quand l'argument principal c'est d'enculer les mouches sémantiquement.
Si t'avais prit 2 secondes pour ouvrir un dictionnaire, tu saurais que
child
est définit dans la plupart des dictionnaires comme "a young human being below the age of puberty or below the legal age of majority.". L'emphase est de moi, ca c'est l'oxford, mais Cambridge, Merriam Webster et meme dictionary.com ont la meme definition.Donc bref, ce que RMS dit en substance la "l'accusation de vol de voiture est exagérée, il a pas volé une voiture, il a volé un monospace!!". J'ai vraiment du mal a ne pas interpreter ca comme une tentative de dédouaner des pratiques plus que douteuse.
Ben voyons. Marrant comme t'oublies la partie "He tried to lead Ms Corfman step by step into sex, but he always respected “no” from her and his other dates". En gros, "ouais, il l'a clairement groomé, mais ca va, parce qu'il a respecté les nons jusqu'a ce qu'il l'ai suffisament groomé". Super classe.
Si la colline sur laquelle tu veux mourir, c'est de justifier Roy fucking Moore et le pédopiégeage a coup d'hyper rationalisation, fait toi plaisir mec. Mais RMS est passé par la avant toi, et ca s'est pas super bien fini pour lui.
[^] # Re: question de clarification
Posté par groumly . En réponse au journal L’avis de RMS sur les relations sexuelles. Évalué à 3. Dernière modification le 30 novembre 2023 à 00:53.
Oui, et non. D'une part, faut convaincre le DA (procureur) d'amener ca devant un juge avant de convaincre le juge.
D'autre part, ya bien un moment ou il faut mettre une limite. C'est pour ca aussi qu'on a des humains dans le process, tout comme pour le cas US.
La loi française est mieux adaptée au scenario typique, couple de 14 et 15 ans par example. Mais elle est particulièrement floue entre mineurs. Un gamin de 14 ans 11 mois et 29 jours peut se faire tripoter la nouille par une petite de 8 ans, et c'est franchement pas clair ce qu'il peut leur arriver.
Ou pour utiliser un exemple moins extreme, une relation entre un mineur de 17 ans et un mineur de 12 ans passe comme une lettre a la poste, et c'est pourtant franchement tres tres tres limite comme situation a priori. Edit: et ya toujours un probleme de frontière dure. 17/14 ans, le jour ou l'un passe a 18, paf au trou, alors que la veille ca rentrait comme papa dans maman.
Si t'as une solution qui a pas de frontière dures, ni de zone de flou douteuse, on t'écoutes :)
[^] # Re: personne publique et hors-sujet
Posté par groumly . En réponse au journal L’avis de RMS sur les relations sexuelles. Évalué à 3.
Site perso qui en 2018 avait un gros lien en haut "faites un donation a la FSF!", mentionne la FSF plusieurs fois sur la page d'accueil. En 2010, sa bio était sur la page d'accueil et disait "j'ai fondé la fsf".
Dans l'ensemble, oui, c'est tout a fait possible de clairement séparer son bog perso de son boulot a soit. Mais faut faire un vrai effort de separation. Dire "j'ai fondé la FSF, donnez a la FSF, FSF rulez, au fait, cette page a rien a voir avec la FSF", on peut pas vraiment dire que ca fait une separation.
[^] # Re: question de clarification
Posté par groumly . En réponse au journal L’avis de RMS sur les relations sexuelles. Évalué à 4.
Si tu parles de l'affaire Minsky, oui et non. Les iles vierges US définissent Rape in the second degree comme une personne a plus de 18, l'autre entre 16 et 18, et plus de 5 ans d'écarts entre les deux. 17 et 19, ca passe. 17 et 73, passe pas.
Rape in the third degree si une personne a entre 16 et 18, et l'autre entre 13 et 16, pas d'exceptions.
First degree, c'est le viol "traditionnel", a savoir non consentant/coercition/évanoui/bourré/mentalement incapable de consentir/etc.
Pour le reste, comme toujours aux us, c'est état par état, et yen a 50, donc ca fait du monde.
[^] # Re: personne publique et hors-sujet
Posté par groumly . En réponse au journal L’avis de RMS sur les relations sexuelles. Évalué à 5.
Ta question est bizarre. Bien sur qu'elle a le droit.
La question est surtout de savoir si la communauté qu'elle représente va toujours vouloir être représentée par cette personne si la personne s'exprime sur des sujets qui n'ont rien a voir avec la communauté. Ses actions ont des consequences.
Ta joueuse de tennis ne représente personne a part elle meme et ses sponsors. La défense des animaux, c'est cool, mais si elle se met a exprimer des opinions polémiques sur la situation du moyen orient, ses sponsors vont avoir quelque chose a y redire. Ou pas, ca depend de ce qu'elle dit, de comment elle le dit, et de comment c'est perçu par le reste du monde, et surtout par la cible de ses sponsors.
Pour Stallman, c'est pareil. C'etait le porte parole de la FSF (techniquement, president, mais a ce niveau, il représente tres clairement une association dont le but est la promotion du logiciel libre), et transitivement, d'une communauté plutot grosse et active. Le mec a représenté la FSF et le mouvement open source devant des ministres français, donc on va pas couper les cheveux en 4.
Il peut dire ce qu'il veut quand il veut. Les gens qu'ils représentent ne vont pas forcement être d'accord avec lui par contre, et potentiellement vouloir un autre représentant. Personne n'a cherche a l'empêcher de dire ce qu'il voulait dire. Des gens associé a la FSF ont par contre jugé ses propos outranciers, et ne veulent pas être associé avec lui. S'en suit un une situation "soit il part, soit nous on part".
C'est pour ca que quand ton boulot c'est des relations publiques, t'évites de d'exprimer publiquement sur des sujets polémiques qui ne touchent pas directement ton domaine.
Ca c'est un autre sujet. Tu peux, et probablement doit, séparer l'oeuvre de l'artiste. J'adore Noir Désir, meme si je peux pas dire que je soit un fan de Bertrand Cantat. Le fait qu'il ait tue sa copine n'enleve rien a sa musique.
Tes filles ne savent pas forcement qui est l'auteur d'harry potter, ni ce qu'elle pense sur des sujets polémiques. Si elles ont l'age de comprendre, ca mangerais pas de pain de leur expliquer la difference entre l'oeuvre et l'auteur cela dit, c'est une bonne leçon pour elles.
Apres, savoir si tu es ok pour lui donner des sous tout en sachant ce qu'elle pense, c'est une decision personnelle.
Stallman par contre a honnêtement absolument rien produit depuis le debut des années 90. Son boulot depuis, c'est de la PR: conference, évangélisme, etc. Tu peux pas séparer l'oeuvre de l'auteur dans cette situation.
[^] # Re: très hors sujet, ou pas en fait
Posté par groumly . En réponse au journal L’avis de RMS sur les relations sexuelles. Évalué à 7.
J’ai rien inventé du tout, 2 des 4 exemples ont moins de 6 mois, et les 2 autres on t’as tous vu les répéter ad nauseam depuis plus de 10 ans.
Jamais dit qu’elles étaient horribles, juste que tes propensions à l’homme de paille et à l’hyper rationalisation sont inversement proportionnelles à la nuance de tes propos.
Le cas dans le point:
[^] # Re: Réalité
Posté par groumly . En réponse au journal L’avis de RMS sur les relations sexuelles. Évalué à 8.
Mais dites moi pas que c’est pas vrai?!?
Genre des mecs qui débattent sans fin, construisant des homme de pailles gigantesque dans leur tête, classifiant ensuite les autres comme ami ou ennemi suivant ces lignes arbitraires, et le plus souvent imaginaires, sans même les connaître, ni même les avoir lu (pour être tout à fait honnête)? Genre « les libristes absolutistes contre les pragmatique », « les méchant open source washeur contre les vrai gars du libres »(à ne pas confondre avec les premiers), « les anti liberté imposeur de gpl contre les vrai gars qui laissent le choix » (a ne pas confondre avec les premiers, ni les seconds d’ailleurs faut suivre un peu, merde), « les citadins ecolos du dimanche contre les vrai gars de la campagne », « les gars de la campagne qui font le CHOIX d’avoir besoin d’une voiture à la campagne contre les vrais gars de la ville vivant dans l’hyper centre » (on a dit faut suivre!), ce genre de choses?
Mais qui donc oserait faire quelque chose comme ça? Ma bonne dame, franchement, tout fout le camp.
[^] # Re: De la pertinence du KISS et d l’anticipation des besoins futurs
Posté par groumly . En réponse au journal Le sophisme du meilleur outil. Évalué à 4.
Oui, et l’univers entier (et donc les bits aussi) se réduit à 4 types de particules élémentaires plus la gravité. C’est pas pour autant qu’on écrit du code dans le modèle standard. La façon dont on modélise l’information en science de l’information (aka informatique) me paraît être assez importante.
l’assembleur est peut être partout, mais on a des bootstrapping compiler depuis les années 50, et c’est pas pour rien que personne a écrit un langage en assembleur (ou en bash) ces 50 dernières années.
Je vais arrêter la, parce que si la discussion en arrive à « c’est quoi la différence entre l’absence de valeur et 0 » et « de toutes façons c’est qu’un voltage dans un circuit électronique », je suis pas sur qu’on aille très loin. La prochaine étape c’est « brainfuck et white space aussi sont Turing complet ».
[^] # Re: De la pertinence du KISS et d l’anticipation des besoins futurs
Posté par groumly . En réponse au journal Le sophisme du meilleur outil. Évalué à 2.
le problème c’est pas jq, le problème c’est de récupérer la sortie de jq de façon utilisable.
Le json est pas mal foutu, si 2 champs ont une semantique différente, tu les sépares. Mais bash est tellement limité que tu peux pas récupérer plus d’un champ à la fois sans rentrer dans un champ de mines. Utiliser des séparateurs magique (genré \n, ou une virgule, ou que sais je) ne marche pas, parce que ces caractères peuvent être dans ta valeur. A moins que tu veuilles te fader un parseur csv compliant avec toute la spec en bash, ou échapper tes valeurs de partout, pour ensuite les desechapper, mais tu reviens au même problème: c’est affreusement compliqué et casse gueule.
Et surtout, à ce compte là, autant écrire un parseur json en premier lieu. A ben zut, c’est physiquement pas possible à cause du typage. Tu le vois, le problème?
Le problème c’est pas les types de bases limites. Enfin, si, c’est un problème. Mais c’est pas mon point. Les tableaux en bash ne peuvent que contenir des chaînes. Pas de null, parce que ça existe pas en bash, pas un autre tableaux, rien. Des tableaux à 2 dimensions, c’est pas particulièrement rare, quand même. A plus forte raison quand les tableaux associatifs sont la seule structure de données que t’as.
Le concept du bash, c’est d’orchestrer des binaires en renvoyant la sortie de l’un vers l’entrée de l’autre, de manipuler de façon légère le système de fichier. Commencer à scripter du Kukes à coup de jq sort très largement de ce champ. Ruby/python feront ça les doigts dans le nez par contre.
Sorti de survoler des scripts internes, non. Après, powershell a au moins le bon goût d’être typé, et te donner un output structuré (sans avoir besoin de te prendre les pieds dans le tapis avec sed et awk). Mais surtout, c’est pas le sujet.
Euh, ben, un petit peu quand même. C’est pas exactement un langage qui a le vent en poupe. C’est une niche de chez niche, quand t’as pas d’autre choix disponible.
[^] # Re: De la pertinence du KISS et d l’anticipation des besoins futurs
Posté par groumly . En réponse au journal Le sophisme du meilleur outil. Évalué à 3. Dernière modification le 23 novembre 2023 à 05:38.
Genre si t’as besoin de récupérer 2 champs de ton json, ça commence à devenir plutôt compliqué. Ou extraire un tableau. Ou si un champs est null. Fin ça devient super limité dès que tu sort de la base de la base du chemin content.
multidimensionnels, les arrays? Ou c’est juste un bon gros hack de chez mémé, avec une syntaxe absolument imbitable? Et t’as des sets aussi? Qu’est ce qu’il se passe si tu traites un tableau comme une map, il se passe des choses bizarres parce que le language ne connaît qu’un seul type, les chaînes, et que donc array[1] est la même chose que array["1"] bien que ça ne veuille pas du tout dire la même chose?
oui, bon a ce compte la, l’assembleur aussi est multi thread.
[^] # Re: De la pertinence du KISS et d l’anticipation des besoins futurs
Posté par groumly . En réponse au journal Le sophisme du meilleur outil. Évalué à 2.
Oui, c'est sur que
rm -rf / toto
avec des backticks, ca va pas donner le résultat escompté, vu que c'est un passthrough direct sur le shell. Ruby ne va pas magiquement échapper les paths. Ce qui était précisément le point de mon message: a un cout presque nul, tu peux éviter les plus gros pièges du shell. Au pire, tu te retrouves avec les meme problèmes que le shell, tout en ayant probablement une solution qui te prendrait 20 minutes a trouver.D'ou l'intérêt d'utiliser les packages natifs, genre FileUtils. Les methods sont meme nommées apres les commande de base.
Ce bout de code fait exactement ce que tu veux qu'il fasse (plutot que d'effacer tout
/tmp
)Idem avec ton
-f
:[^] # Re: De la pertinence du KISS et d l’anticipation des besoins futurs
Posté par groumly . En réponse au journal Le sophisme du meilleur outil. Évalué à 3.
Je vais pas parler de python que je ne connais pas. Mais je peux parler de Ruby, que je connais essentiellement en remplacement de bash/rakefile.
Ton argument ne fait aucun sens. Lancer une ligne de commande en Ruby c’est une ligne (backtick ou
system
, en fonction d’où tu veux faire aller le stdout), avec la grosse, grosse, grosse différence va te permettre d’éviter les conneries du bash. Du genre « oups, y’avait un espace dans le path et paf la commande rm », pour citer la plus connue. Tu parles de curl, une requête http c’est aussi une ligne en Ruby, et pas besoin de jq à la truelle pour ressortir le champ que tu veux. Et t’auras ton champ typé correctement. En gros, l’approche de base c’est d’écrire du code natif Ruby, et si quelque chose devient relou, tu peux toujours ressortir ta ligne de commande sur le point précis qui est relou. Mais au moins, t’aurais acces à des trucs « moderne », genre des tableaux, des maps, et même des nombres. Perso, je m’en sert pour scripter les builds en ligne de commande Xcode, ce qui au final inclue un peu plus que juste lancer xcodebuild.Tout ça pour dire, l’écosystème bash est pour ainsi dire inexistant (et honnêtement, c’est pas pour rien). Ruby te donneras la même chose avec un typage qui date pas de 1974, et une base solide de base dans l’interpreteur (sans gem externes).
Je suis pas sur de comprendre ou tu veux en venir. Une instance Jenkins, c’est grosso modo une heure à mettre en place, avec discovery des pull requests, ping back à GitHub etc. Et demander de ne pas builder/packager/déployer depuis le laptop de jean rené, c’est pas le bout du monde quand même?
[^] # Re: De la pertinence du KISS et d l’anticipation des besoins futurs
Posté par groumly . En réponse au journal Le sophisme du meilleur outil. Évalué à 3.
Je suis pas forcément en désaccord avec toi sur le sentiment, mais y’a 2 points qui me font tiquer.
Honnêtement? Oui. C’est dur à lire, dur à maintenir, super casse gueule, et les compétences court pas foule. Quand on a Ruby et python aussi largement déployé, qui viennent avec un eco système aussi gros, y’a vraiment aucune excuse pour faire du Shell. Perl est « moins pire », grâce à son eco système, mais ça reste un langage super aride et casse gueule.
evidement, y’a toujours des exceptions. Pour citer un exemple, booking.com notamment à beaucoup (trop) de Perl dans son backend, mais c’est plus de la dette technique qu’autre chose à ce niveau si t’en parles avec eux.
Eh. On est plus en 97. La CI, c’est la base de la base. Et ça fait bien 10 ans que les outils sont suffisamment avancés pour faire du self service à coup plus que raisonnable.
[^] # Re: sealed ?
Posté par groumly . En réponse au journal La plus belle ligne de code. Évalué à 3.
Ça casse pas plus le principe de liskov que final (interface a, public final class b implements a).
Liskov dit que les classes filles doivent conserver exactement le même contrat que la classe mère. Pas que la classe mère peut être étendu à l’infini.
[^] # Re: continue
Posté par groumly . En réponse au journal La plus belle ligne de code. Évalué à 4.
return, ok, mais break/continue peuvent tres tres souvent (mais pas toujours!) être remplacés de façon bien plus elegante par une combinaison de map/flatMap/findFirst/filter/forEach/que sais je encore. Alors, ok, tout les langages n'ont pas ce genre d'api, mais quand meme java l'a depuis une décennie, on est en droit de penser que c'est une feature de base :)
Sans forcement les interdire, les déconseiller me parait être une bonne idée.
[^] # Re: j'ai du mal à comprendre un truc ....
Posté par groumly . En réponse au journal La plus belle ligne de code. Évalué à 6.
Le probleme c'est que les memes causes ont généralement les memes consequences, laisser le process planter et prier tres fort qu'il se banane pas apres avoir été relancé, c'est tres #yolo quand meme. Si la cause du bug c'est une race, ou un évènement ponctuel spécifique qui est null quand il devrait pas l'être, c'est une chose, et ton process va probablement revenir a la normal (ou pas), potentiellement au prix d'avoir atomise les autres transactions qui étaient potentiellement en cours dans le meme process (donc potentiellement, pas nul du tout).
Mais si c'est un job qui process des données, ou profile utilisateur qui a un champ nul quand il devrait pas, tu peux relancer le processus autant de fois que tu veux, ca va pas mieux marcher apres le millionième relancement que la premiere fois.
Soit ton typage comprends la notion de null, et tu force le call site lui meme a répondre a la question existentielle "une collection qui n'existe pas peut elle avoir une taille?", soit il le fait pas. Dans ce cas, t'as 2 options: declarer qu'une collection qui n'existe pas a une taille de 0, ou decider que c'est une exception (et ca, ca va vraiment pas arranger la lisibilité du code, parce qu'une exception c'est juste 2 goto empilé l'un sur l'autre qui portent un gros imperméable avec un faux nez et une fausse moustache sur celui du haut).
Au sujet de la semantique, declarer qu'une collection nulle a une taille de 0 est loin d'être ouf. Si tu regardes la question sous l'angle "combien de patates sont dans ce sac a patates", effectivement, c'est mal définit quand le sac a patate n'existe pas.
Mais la question réellement posée a 99% de chances d'être "De combien de patates suis-je en possession?", et ca enleve l'ambiguïté: tu ne possedes aucune patate si tu ne possèdes pas de sac a patates, ou si le sac a patates est vide. Et c'est a priori renforcé par le fait que si t'as ce probleme en premier lieu, t'es en mode fonctionnel, pas objet (sinon t'aurais le probleme du null avant meme de poser la question), et donc la question est littéralement "combien de patates?" pas "quelle est la taille de ce sac a patates?".
Tu peux probablement trouver une variante de ce probleme qui ne se résoud pas en changeant l'énoncé de la question, mais dans ce cas ci, ca se résoud tres facilement.
[^] # Re: Optional<T>
Posté par groumly . En réponse au journal La plus belle ligne de code. Évalué à 4.
euh, ouais, pas vraiment.
Optional.get()
peut te peter unNoSuchElement
(unchecked en plus, la classe) et la difference entremyVar.isPresent()
etmyVar != null
est quand meme vachement subtile.Sans compter que ca devient vachement meta quand tu te rends compte que ton optional peut être null, et qu'en fonction du contexte, tu vas potentiellement devoir null check ton optional.
[^] # Re: return early pattern
Posté par groumly . En réponse au journal La plus belle ligne de code. Évalué à 3.
Autant les pyramids of doom sont un VRAI probleme, et je matraque constamment a mes équipes que
guard else
c'est pas fait pour le chien (oui, on fait du swift, et guard a en cadeau bonux une garantie du compilateur que le block return ou fatalError()), que la lisibilité et réduire le contexte a garder en tete en relecture est plus important qu'une règle arbitraire "un seul return par fonction", autant l'excuse du "le diff est pas lisible" est assez bidon.Utilise un outil different si ton outil est pas capable de faire des trucs de base. J'ai eu le meme débat (assez houleux) a propos de nos règles PMD qui interdit les "space terminated strings", l'excuse donnée étant que le mec qui a mit au point les règles et qui faisait pas mal de review utilisait un outil des bois qui était pas foutu de filtrer les whitespace des diffs.
Bon, apres, si tu fais surtout du python, effectivement, c'est une autre histoire.
[^] # Re: Pas encore complètement immunisé
Posté par groumly . En réponse au journal Des virus et des virus. Évalué à 8.
Non, je le gobe pas. En tout cas, pas plus que ta fausse dichotomie “rien à foutre de rien”/“écolo qui a ça dans le sang”. Y’a tout un spectre entre les deux, que tu refuse de reconnaître, comme d’hab, parce que t’es absolument incapable de reconnaître la moindre nuance dans tes discours, t’es toujours dans les classifications extrêmes.
C’est sur ce point qu’on t’a demandé une source, que t’es bien évidemment incapable de produire parce que ce côté binaire/manichéen n’existe que dans ta tête.
Sur ce, je vais arrêter la, parce qu’on tourne déjà en rond, et ça fait pas 2 messages qu’on a commencé.
[^] # Re: Pas encore complètement immunisé
Posté par groumly . En réponse au journal Des virus et des virus. Évalué à 4.
Le Manichéisme légendaire de Zenitram. T'as un peu du mal avec la logique mec.
En gros, tu nous dit que puisque A est vrai, alors B, qui n'a rien a voir avec A, est aussi vrai. Ici A est "on a besoin de plus que des voitures électriques pour stopper le changement climatique", et B est une espèce de tirade en mode "les autres, mais on sait pas vraiment qui, fortement sous entendu ceux qui ont acheté une voiture électrique et qui sont des gros hypocrites (aussi fortement sous entendu, pas comme toi, un vrai
Écossaisécolo).Sinon, j'ai une nouvelle défrisante pour toi: augmenter la couverture des transports en communs, ca prend du temps. Des années, voire des décennies. Les lignes de trains, ca se pose pas comme ca. Le pequin moyen, il peut voter ou il veut, ca va pas y changer grand chose. Et tiens toi bien, parce que la ca va VRAIMENT te défriser: le pequin moyen, il faut toujours qu'il se déplace pendant que les transports en communs se construisent – truc de ouf!
Et j'ai une autre nouvelle défrisante pour toi, je sais que c'est tres dur a comprendre dans ton monde 100% noir/blanc, mais le monde est fait de nuances. Et on peut tout a fait attaquer un probleme par plusieurs angles en meme temps – truc de ouf aussi!
[^] # Re: Pas encore complètement immunisé
Posté par groumly . En réponse au journal Des virus et des virus. Évalué à 5.
Etude Zenitram institute of projection, financée par le conseil national pour l’homme de paille.
[^] # Re: Puritanisme
Posté par groumly . En réponse au journal Pornocriminalité : voici comment on finit par vouloir filtrer. Évalué à 2.
Il a été gaulé par la France?
[^] # Re: Puritanisme
Posté par groumly . En réponse au journal Pornocriminalité : voici comment on finit par vouloir filtrer. Évalué à 8.
Pourquoi prétendre qu’ils le sont tous à 100%?
Le consentement est pas forcément si tranché que ça. Tu réponds à fil qui cite Karen Lancaume, qui clairement n’était pas franchement contente de sa carrière. Elle a fini par quitter son mari qui “la laissait faire ça”, et se suicider.
Je suis pas dans ses petits papiers, mais ça me frappe pas comme quelqu’un qui faisait ça par passion.
Et non, ça veut pas dire qu’il faut interdire tout le pr0n, mais, putain, t’es super relou à nier en bloc ce qui est clairement un problème vieux comme le monde. ‘Fin c’est pas franchement différent de la prostitution, c’est juste une forme différente de prostitution, et ça fait qq millénaires qu’on sait que juste parce que la madame a prit les sous, ça veut pas dire qu’elle est forcément d’accord pour que te secouer la nouille, et qu’elle fait potentiellement ça sous la contrainte.