La solution c'est de ne pas donner ces infos à des gens. Le mieux pour ça c'est de ne pas avoir d'amis. Je pourrais t'en parler plus en détails si je n'avais pas peur qu'on risque de devenir amis à force de discuter …
Tu peux aussi comparer aux manifs de Black Lives Matter après la mort de Georges Floyd. La conclusion c'est peut être pas que les US sont différents de la France mais que les forces de l'ordre ont été plutôt molles cette fois.
J'ai entendu plusieurs témoignages similaires de gens qui ont fini par démissionner parce qu'ils sentaient que leur boîte les mettaient au placard, sans pour autant accepter de les licencier.
Je ne me suis jamais retrouvé dans une situation pareille et j'ai sans doute du mal à imaginer ce qu'on ressent, mais j'ai l'impression que ça ne me dérangerait pas plus que ça, si j'étais face à un employeur qui me met au placard, qui fait preuve de mauvaise volonté, ne cherche pas à trouver une solution mais refuse de me licencier, de me la couler franchement douce en faisant moins que le minimum syndical et en passant le plus clair de mon temps de travail à en chercher un autre. Le jour où ils trouvent que tu ne travailles pas assez à leur goût, je suppose qu'ils se décident à te renvoyer …
Mais du coup ça ne marche bien que si tu as un seul ordi. Idée d'extension : gérer plusieurs clients permettant de décider si l'ensemble du "parc" est idle ou non :)
Techniquement tu as accès à deux services différents : l'article en plein écran où l'article sur les 3/4 de l'écran. Donc même avec le texte original tu peux argumenter que ça n'est pas légal. Tout dépend de l'interprétation du mot service …
J'ai regardé pour te faire ça et du coup je suis tombé sur un os.
Tu retournes le nombre de pions bien placés, mais pas le nombre de pions de la bonne couleur mais mal placés:
Par exemple:
Test (4 letters among ROGBYAPW):
OBAW
0 good 4 bad
Test (4 letters among ROGBYAPW):
PGRY
0 good 4 bad
Test (4 letters among ROGBYAPW):
YRPG
4 good 0 bad
Bravo 3 attempts
En essayant les huit lettres sur les deux premiers essais, j'ai 0 good et 4 bad à chaque fois. Pourtant le premier à aucune lettre bonne. Le deuxième à les 4 bonnes lettres mais aucune au bon endroit.
En fait, les chiffres ci-dessus sont faux.
Mon code avait un bug: je comptais le nombre de coups nécessaires pour être sûr de la combinaison (je m'arrêtais quand les combinaison possibles étaient réduites à 1). Mais pour gagner, il faut jouer cette combinaison. Donc dans certains cas, il fallait un coup de plus pour gagner.
Cette stratégie est du "one-step ahead" et comme dit précédemment, n'est pas nécessairement la meilleure. C'est celle décrite par Knuth dans son papier (mais pour 6 couleurs).
Un papier de 2013, "An Optimal Mastermind (4,7) Strategy and More Results in the Expected Case" par Geoffroy Ville recherche une solution optimale pour le Mastermind à 7 couleurs (6 couleurs plus trous autorisés) et donne des résultats: https://arxiv.org/pdf/1305.1010.pdf
Je sais que j'arrive après la bataille, mais je me suis penché sur la question et j'ai eu l'approche suivante:
Créer la liste de toutes les combinaisons possibles (après tout il n'y en a que 84 = 4096). Pour chaque combinaison, compter le nombre de combinaisons qui rapportent chaque score (donc parcourir 4096*4096 = 16 millions de combinaisons au premier coup, c'est faisable). Ensuite, calculer l'espérance d'élimination associée à chaque coup jouable. Jouer le coup qui va éliminer le plus de combinaisons.
On peut alors recommencer en ne considérant que les combinaisons qui n'ont pas été éliminées.
Au final, le premier coup est assez lent, tout ça pour sortir 4 chiffres différents, on peut donc le hard-coder pour aller plus vite.
Le résultat est:
- 3 essais dans 22% des cas
- 4 essais dans 68% des cas
- 5 essais dans 10% des cas
À noter que ce n'est peut être pas l'approche optimale. On joue le coup qui a la meilleure espérance, mais il peut aboutir à une situation où tous les coups suivants sont mauvais alors qu'un autre coup légèrement moins bon peut aboutir à une situation ou un coup suivant est suffisamment bon pour compenser. En pratique, je pense que c'est assez proche de l'optimal quand même (au moins pour 4 pions choisis parmi 8 couleurs).
Petit bonus, avec 8 couleurs et 4 pions, la probabilité d'avoir 2 pions de la même couleur est étonnamment élevée si on choisit la combinaison aléatoirement:
Après avoir lu l'article sur Unsplash, qui semble avoir réinventé le placement de produit et réussir à le vendre assez bien aux investisseurs, je suis perplexe. Est-ce mieux ou moins bien que les pubs "externes" ? Certes ce n'est plus interruptif, mais ça façonne le contenu. N'est-ce pas plus pervers encore?
Pour l'instant le meilleur genre de pub à mon goût, ce sont celles de Joueur du Grenier: un sketch unique et drôle clairement identifié comme message publicitaire.
Pas sur TPF(en tout cas ce que j'en ai côtoyé). C'était soit du C soit de l'assembleur TPF. Le C était du vieux C bien pourri et le compilo mal optimisé, les perfs n'etaient pas vraiment au rendez-vous. Donc tout ce qui était non-critique niveau perfs était en C, le reste en assembleur.
D'ailleurs, pendant que des devs migraient à du C++/Linux, d'autres bossaient à convertir du C en assembleur TPF pour récupérer du CPU et compenser l'augmentation de traffic.
Maintenant que je l'ai lu, l'article est intéressant tout en étant à côté de la plaque. Parler du "coût d'import" d'une librairie n'a pas de sens d'une manière générale. Une implémentation fixed point header only en C++ n'a pas de "coût d'import".
Ce qui est marrant c'est que l'auteur est consciente de ça et termine l'article en donnant les vraies raisons: pourquoi réécrire quelque chose qui marche et réécrire coûte plus cher qu'écrire.
J'ai pas encore lu l'article mais la virgule fixe, c'est juste tout multiplier par une valeur fixée (216 par exemple). Du coup je ne vois pas en quoi ça poserait problème à un langage.
Je ne suis pas un spécialiste de ce dont il est question dans l'article, mais les références aux choses que je connais me font penser que l'article est probablement bourré de mensonges:
Or why you see airline booking agents use that same black screen with green type to change your flight? “Oh, that’s COBOL — that’s definitely COBOL,” laughs Craig Bailey, a senior engineer at Faircom, a firm that makes software to help firms manage those old systems.
Pour avoir travaillé dans le secteur, c'est faux. Ce qui dominait autrefois c'était TPF, les mainframes IBM. Le code était en assembleur. À ma connaissance presque tous les acteurs du secteurs ont réussi à s'en débarrasser presque complètement (oui ça fait beaucoup de presques). En tout cas, pas de Cobol en vue. Oui les terminaux texte sont toujours présents et compatibles (souvent dans une fenêtre Windows de nos jours), ça ne veut pas dire que ce n'est pas du
C++/Java/Go/Python/Rust sous Linux qui tourne côté serveur.
[^] # Re: Ne pas partager sa liste de contact
Posté par Colin Pitrat (site web personnel) . En réponse au journal WhatsApp et Facebook, quels sont mes droits?. Évalué à 10.
La solution c'est de ne pas donner ces infos à des gens. Le mieux pour ça c'est de ne pas avoir d'amis. Je pourrais t'en parler plus en détails si je n'avais pas peur qu'on risque de devenir amis à force de discuter …
[^] # Re: ça interpelle différemment
Posté par Colin Pitrat (site web personnel) . En réponse au journal Trump == Hitler. Évalué à -2.
En même temps, si t'étais flic, tu préférerais affronter des gens plus armés que toi ou moins armés que toi?
[^] # Re: ça interpelle différemment
Posté par Colin Pitrat (site web personnel) . En réponse au journal Trump == Hitler. Évalué à 6.
Tu peux aussi comparer aux manifs de Black Lives Matter après la mort de Georges Floyd. La conclusion c'est peut être pas que les US sont différents de la France mais que les forces de l'ordre ont été plutôt molles cette fois.
# Question con
Posté par Colin Pitrat (site web personnel) . En réponse au journal Comment se faire justice soi-même ?. Évalué à 8.
Pourquoi avoir démissionné ?
J'ai entendu plusieurs témoignages similaires de gens qui ont fini par démissionner parce qu'ils sentaient que leur boîte les mettaient au placard, sans pour autant accepter de les licencier.
Je ne me suis jamais retrouvé dans une situation pareille et j'ai sans doute du mal à imaginer ce qu'on ressent, mais j'ai l'impression que ça ne me dérangerait pas plus que ça, si j'étais face à un employeur qui me met au placard, qui fait preuve de mauvaise volonté, ne cherche pas à trouver une solution mais refuse de me licencier, de me la couler franchement douce en faisant moins que le minimum syndical et en passant le plus clair de mon temps de travail à en chercher un autre. Le jour où ils trouvent que tu ne travailles pas assez à leur goût, je suppose qu'ils se décident à te renvoyer …
[^] # Re: Félicitations !
Posté par Colin Pitrat (site web personnel) . En réponse au journal Idle Do, un script pour faire tourner des commandes quand l'ordinateur est inactif. Évalué à 5.
Mais du coup ça ne marche bien que si tu as un seul ordi. Idée d'extension : gérer plusieurs clients permettant de décider si l'ensemble du "parc" est idle ou non :)
[^] # Re: Abonnement
Posté par Colin Pitrat (site web personnel) . En réponse au journal Le Monde, vous voulez bien respecter le RGPD (spécifiquement la partie consentement) ?. Évalué à 5.
Mais ce bandeau n'est apparemment pas affiché si tu acceptes les cookies publicitaires.
[^] # Re: "Pourquoi voyez-vous ce message ?"
Posté par Colin Pitrat (site web personnel) . En réponse au journal Le Monde, vous voulez bien respecter le RGPD (spécifiquement la partie consentement) ?. Évalué à 3.
Techniquement tu as accès à deux services différents : l'article en plein écran où l'article sur les 3/4 de l'écran. Donc même avec le texte original tu peux argumenter que ça n'est pas légal. Tout dépend de l'interprétation du mot service …
[^] # Re: il manque 01
Posté par Colin Pitrat (site web personnel) . En réponse au journal C'est traditionnel, ne boudons pas notre plaisir !. Évalué à 4.
Quand tu seras maître du Monde, tu leur feras respecter le RGPD ? https://linuxfr.org/users/antistress/journaux/le-monde-vous-voulez-bien-respecter-le-rgpd-specifiquement-la-partie-consentement
[^] # Re: il manque 01
Posté par Colin Pitrat (site web personnel) . En réponse au journal C'est traditionnel, ne boudons pas notre plaisir !. Évalué à 2.
Pourquoi revenir dessus ? C'est établi alors maintenant avançons. Histoire que l'an 1 soit un peu moins pourri que l'an -1.
[^] # Re: Titre qui fait peur?
Posté par Colin Pitrat (site web personnel) . En réponse au journal Android < 7.1 va refuser les connections TLS certifiées par Let's Encrypt. Évalué à 4.
Techniquement c'est correct si je comprends bien : dans 3 ans Android < 7.1 va refuser les connections TLS certifiées par Let's Encrypt.
Enfin, si c'est comme le brexit y'aura une autre solution (la même ?) dans 3 ans.
# Facile
Posté par Colin Pitrat (site web personnel) . En réponse au journal [HS] Comment prononcez-vous Knoppix ?. Évalué à 5.
Canopée-baton-croix
[^] # Re: Un peu à la bourre
Posté par Colin Pitrat (site web personnel) . En réponse au journal Yes Master. Évalué à 2.
J'ai regardé pour te faire ça et du coup je suis tombé sur un os.
Tu retournes le nombre de pions bien placés, mais pas le nombre de pions de la bonne couleur mais mal placés:
Par exemple:
En essayant les huit lettres sur les deux premiers essais, j'ai 0 good et 4 bad à chaque fois. Pourtant le premier à aucune lettre bonne. Le deuxième à les 4 bonnes lettres mais aucune au bon endroit.
Du coup, https://github.com/matteli/yesmaster/issues/1
[^] # Re: Un peu à la bourre
Posté par Colin Pitrat (site web personnel) . En réponse au journal Yes Master. Évalué à 2. Dernière modification le 07 décembre 2020 à 11:49.
En fait, les chiffres ci-dessus sont faux.
Mon code avait un bug: je comptais le nombre de coups nécessaires pour être sûr de la combinaison (je m'arrêtais quand les combinaison possibles étaient réduites à 1). Mais pour gagner, il faut jouer cette combinaison. Donc dans certains cas, il fallait un coup de plus pour gagner.
Cette stratégie est du "one-step ahead" et comme dit précédemment, n'est pas nécessairement la meilleure. C'est celle décrite par Knuth dans son papier (mais pour 6 couleurs).
Un papier de 2013, "An Optimal Mastermind (4,7) Strategy and More Results in the Expected Case" par Geoffroy Ville recherche une solution optimale pour le Mastermind à 7 couleurs (6 couleurs plus trous autorisés) et donne des résultats:
https://arxiv.org/pdf/1305.1010.pdf
Je continue de creuser et documente mes trouvailles et mon code à http://colin.pitrat.free.fr/?p=539
[^] # Re: Un peu à la bourre
Posté par Colin Pitrat (site web personnel) . En réponse au journal Yes Master. Évalué à 2.
Alors j'ai tout recodé moi même, mais je vais jeter un coup d’œil, ça devrait être faisable :-)
# Un peu à la bourre
Posté par Colin Pitrat (site web personnel) . En réponse au journal Yes Master. Évalué à 3.
Je sais que j'arrive après la bataille, mais je me suis penché sur la question et j'ai eu l'approche suivante:
Créer la liste de toutes les combinaisons possibles (après tout il n'y en a que 84 = 4096). Pour chaque combinaison, compter le nombre de combinaisons qui rapportent chaque score (donc parcourir 4096*4096 = 16 millions de combinaisons au premier coup, c'est faisable). Ensuite, calculer l'espérance d'élimination associée à chaque coup jouable. Jouer le coup qui va éliminer le plus de combinaisons.
On peut alors recommencer en ne considérant que les combinaisons qui n'ont pas été éliminées.
Au final, le premier coup est assez lent, tout ça pour sortir 4 chiffres différents, on peut donc le hard-coder pour aller plus vite.
Le résultat est:
- 3 essais dans 22% des cas
- 4 essais dans 68% des cas
- 5 essais dans 10% des cas
À noter que ce n'est peut être pas l'approche optimale. On joue le coup qui a la meilleure espérance, mais il peut aboutir à une situation où tous les coups suivants sont mauvais alors qu'un autre coup légèrement moins bon peut aboutir à une situation ou un coup suivant est suffisamment bon pour compenser. En pratique, je pense que c'est assez proche de l'optimal quand même (au moins pour 4 pions choisis parmi 8 couleurs).
Petit bonus, avec 8 couleurs et 4 pions, la probabilité d'avoir 2 pions de la même couleur est étonnamment élevée si on choisit la combinaison aléatoirement:
4 couleurs différentes: 1680 / 4096 = 41%
3 couleurs différentes: 2016 / 4096 = 49%
2 couleurs différentes, 2 pions chaque: 168 / 4096 = 4%
2 couleurs différentes, 3 pions d'une couleur: 224 / 4096 = 5%
1 seule couleur: 8 / 4096 = 0.2%
[^] # Re: Point d'entrée
Posté par Colin Pitrat (site web personnel) . En réponse au journal Défis PeerTube. Évalué à 8.
Tout est dit :)
# Placement de produit
Posté par Colin Pitrat (site web personnel) . En réponse à la dépêche Revue de presse de l’April pour la semaine 47 de l’année 2020. Évalué à 4.
Après avoir lu l'article sur Unsplash, qui semble avoir réinventé le placement de produit et réussir à le vendre assez bien aux investisseurs, je suis perplexe. Est-ce mieux ou moins bien que les pubs "externes" ? Certes ce n'est plus interruptif, mais ça façonne le contenu. N'est-ce pas plus pervers encore?
Pour l'instant le meilleur genre de pub à mon goût, ce sont celles de Joueur du Grenier: un sketch unique et drôle clairement identifié comme message publicitaire.
[^] # Re: Autre article
Posté par Colin Pitrat (site web personnel) . En réponse au journal COBOL : c'est dans les vieilles marmites.... Évalué à 3.
Sur un uint64 par contre ce serait drôlement bien!
[^] # Re: Sauf que ...
Posté par Colin Pitrat (site web personnel) . En réponse au journal COBOL : c'est dans les vieilles marmites.... Évalué à 4.
Pas sur TPF(en tout cas ce que j'en ai côtoyé). C'était soit du C soit de l'assembleur TPF. Le C était du vieux C bien pourri et le compilo mal optimisé, les perfs n'etaient pas vraiment au rendez-vous. Donc tout ce qui était non-critique niveau perfs était en C, le reste en assembleur.
D'ailleurs, pendant que des devs migraient à du C++/Linux, d'autres bossaient à convertir du C en assembleur TPF pour récupérer du CPU et compenser l'augmentation de traffic.
[^] # Re: Eh oui...
Posté par Colin Pitrat (site web personnel) . En réponse au journal DHCP et heure système. Évalué à 8.
Il ne parle pas de NTP il parle de DHCP. Sans réseau il ne peut pas espérer que ntpd va mettre son ordi à l'heure …
[^] # Re: Un peu d'histoire à la Higgins et café du commerce, et du troll velu et méchant ...
Posté par Colin Pitrat (site web personnel) . En réponse au journal COBOL : c'est dans les vieilles marmites.... Évalué à 3.
Pas la peine de te mettre au Java, la mode touche à sa fin. Essai le Rust plutôt :)
[^] # Re: Autre article
Posté par Colin Pitrat (site web personnel) . En réponse au journal COBOL : c'est dans les vieilles marmites.... Évalué à 2.
Et aussi une question d'arrondi au moment de l'affichage.
[^] # Re: Autre article
Posté par Colin Pitrat (site web personnel) . En réponse au journal COBOL : c'est dans les vieilles marmites.... Évalué à 7.
Maintenant que je l'ai lu, l'article est intéressant tout en étant à côté de la plaque. Parler du "coût d'import" d'une librairie n'a pas de sens d'une manière générale. Une implémentation fixed point header only en C++ n'a pas de "coût d'import".
Ce qui est marrant c'est que l'auteur est consciente de ça et termine l'article en donnant les vraies raisons: pourquoi réécrire quelque chose qui marche et réécrire coûte plus cher qu'écrire.
[^] # Re: Autre article
Posté par Colin Pitrat (site web personnel) . En réponse au journal COBOL : c'est dans les vieilles marmites.... Évalué à -1.
J'ai pas encore lu l'article mais la virgule fixe, c'est juste tout multiplier par une valeur fixée (216 par exemple). Du coup je ne vois pas en quoi ça poserait problème à un langage.
# Sauf que ...
Posté par Colin Pitrat (site web personnel) . En réponse au journal COBOL : c'est dans les vieilles marmites.... Évalué à 8. Dernière modification le 22 novembre 2020 à 09:07.
Je ne suis pas un spécialiste de ce dont il est question dans l'article, mais les références aux choses que je connais me font penser que l'article est probablement bourré de mensonges:
Pour avoir travaillé dans le secteur, c'est faux. Ce qui dominait autrefois c'était TPF, les mainframes IBM. Le code était en assembleur. À ma connaissance presque tous les acteurs du secteurs ont réussi à s'en débarrasser presque complètement (oui ça fait beaucoup de presques). En tout cas, pas de Cobol en vue. Oui les terminaux texte sont toujours présents et compatibles (souvent dans une fenêtre Windows de nos jours), ça ne veut pas dire que ce n'est pas du
C++/Java/Go/Python/Rust sous Linux qui tourne côté serveur.