votre avatar

33A20158-2813-4F0D-9D4A-FD05E2C42E48

est avec nous depuis le 13 novembre 2014 ❤️

Bio

Oups.
On dirait que quelqu'un ici aime garder ses petits secrets, comme si de par hasard il y avait quelque chose à cacher...
Désolé, ô lectrice de passage, cher lecteur égaré, pas de révélation sensationnelle pour le moment sur ce profil.
Repassez plus tard ?

1704 commentaires

Φsat-2 ESA

Le 22/04/2024 à 13h 35

https://ubotica.com/product/cognisat-xe1-product-overview/

Donc juste un accélérateur de calculs tensoriels, pas grand chose à voir avec une quelconque intelligence artificielle.

Tensorflow, c'est principalement un outil de descente de gradient pour la recherche de minimum local dans un espace de dimension élevée. Minimum local qu'on espère le plus global possible afin d'obtenir de bons résultats lors de l'utilisation réelle. Est-ce que ça servira un jour pour une hypothétique IA, peut-être. Pour l'instant, c'est juste du machine learning.

C'est vrai qu'on se demande encore comment un outil de descente de gradient pourrait être utilisé pour entraîner un réseau de neurones.

Enfin, "on" c'est seulement certaines personnes, parce que manifestement les chercheurs en IA, eux, ils savent.

Alexandria Ocasio-Cortez (AOC)

Le 18/04/2024 à 15h 38

Donc ce serait con parce que c’est une menace qui motiverait le refus par contre ce n’est pas con quand c’est la menace d’être exclus socialement qui motiverait l’acceptation?


Je grossis le trait volontairement en ajoutant moi même une supposition car théoriquement la menace vient de nul part vu que pour moi le deepfake n’existe pas dans la problématique initial : la prise de connaissance initial de la gestion du droit a l’image avant toute inscription sur les réseaux sociaux (ainsi que du caractère extraterritorial d’internet et donc des différentes lois...)


Sachant qu’avant ce choix l’individu s’en passait très bien et qu’il est évident qu’il n’y a pas eu suffisamment de mutation génétique depuis la sorti de facebook (et autre) pour en faire un pré-requis a l’existence et que la posture initial c’est la non acceptation.

Donc maintenir cette posture en cas d’incompréhension est une situation normal et un comportement rationnel (au moins le temps de la compréhension et de la prise de décision).

Je le répète mais on peut prendre en compte la problématique des deepfakes indépendamment de la problématique du faible niveau de compréhension du droit a l’image des gens qui s’inscrivent sur les réseaux sociaux.

De la même manière qu’on peu dissocier l’image du sujet , ce qui amha est le plus gros problème sur les réseaux sociaux depuis facebook car c’est un site qui a clairement misé sur le besoin de reconnaissance des gens en leur demandant leur vrai nom, les inscrit ne savent pour la plupart pas faire la distinction entre eux même et leur représentation.

le lien qui a fini par marcher

Le 18/04/2024 à 09h 38

Il n'a pas écrit l'équivalent de "donc chacun se soigne dans son coin".

Et ça ne répond pas a "la responsabilité de qui si la personne prend des médicaments dans son coin?" ou encore "que faire pour éviter ça?".

Désolé si le fais d’évoquer des victimes en incapacite certains mais quand on y comprend rien (ce qui est parfaitement entendable) il y a peut-être une autre option que d’accepter qui s’appelle refuser .

Si cette alternative est conne j’aimerais savoir en quoi.

Cette alternative est conne parce que, comme d'habitude, elle ne relève pas d'un choix personnel mais de menaces extérieures qui ne pèsent pas sur toutes les personnes de la même façon. On a une catégorie de gens (appelons-les "mâles alpha") qui ne risquent pas grand-chose (je n'ai pas dit "rien") en acceptant de publier des photos d'eux, tandis que tous les autres courent le risque de se faire harceler.

En pratique, seuls lesdits mâles alpha ont donc réellement le choix, tous les autres doivent rester invisibles.

Il n'a pas écrit l'équivalent de "donc chacun se soigne dans son coin".


Je cite : "mais aussi pour une responsabilisation individuelle de la gestion des droits."
Et ça ne répond pas a "la responsabilité de qui si la personne prend des médicaments dans son coin?" ou encore "que faire pour éviter ça?".


Heu, si. L'existence du délit d'exercice illégal de la médecine, ça veut dire que des mesures sont prises (notamment l'obligation d'une ordonnance pour la délivrance de certaines substances) justement pour "éviter ça".

Le 18/04/2024 à 08h 30

Certes, mais ce n'est pas le sujet de la brève. Relis, je suis sûr que tu peux comprendre.

Non je ne crois pas qu'il va comprendre. Cette brève est un appeau à trolls et on a déjà une belle brochette, avec ceux qui se proposent d'expliquer à AOC comment surfer sur Internet pour éviter de voir ses propres photos détournées, ceux qui vont lui expliquer qu'elle n'avait qu'à pas devenir une femme publique, et celui qui réduit ça au fait que les femmes sexuellement actives sont mal vues... Ah oui, cerise sur le gâteau, on a aussi celui qui va lui expliquer que c'est pas bien grave, vu qu'elle est trop moche que pour faire b.nd.r qui que ce soit.

Bref, on invoque Brandolini et on passe à autre chose.

Le 18/04/2024 à 08h 24

J'aime le deux poids, deux mesures avec une question manichéenne piège digne d'un bon journaleux.

Pour éviter de justifier l'ignorance, mal chronique ayant pour résultat des postures hallucinantes, sur le même plan du "nul n'est censé ignorer la loi," nul n'est censé ignoré l'informatique surtout dans notre ère d'hyper connexion et d'accessibilité à la technologie.

"Dans notre ère d'hyper médicalisation et d'accessibilité aux médicaments, nul n'est censé ignorer la médecine, donc chacun se soigne seul dans son coin, personne n'est puni pour exercice illégal de la médecine et tant pis pour ta tronche si tu te trompes dans les dosages."

Tu trouves ça débile ? Oui, ça l'est. Pourtant c'est exactement l'argument que tu viens de sortir à propos de l'informatique...

Le 17/04/2024 à 07h 49

« Oeil pour oeil, vagin pour bite »

E que s'apelerio : la loi du Talon.

Pour Achille en tout cas, ça a marché.

Le 16/04/2024 à 10h 07

Non, car "EN GENERAL" et maglré l'avis que je pourrait avoir ou pas, dans nos sociétés, être actif sexuellement est bien vu pour le mâle et mal vu pour la femelle...




Indépendamment, et ne souhaitant nullement nier voir minimiser le traumatisme qu'elle a pu affronter lors de son agression physique; Je serai quand même curieux de savoir qu'elle recherche ou action l'ayant amené à retrouver cette dite falsification.

Non, car "EN GENERAL" et maglré l'avis que je pourrait avoir ou pas, dans nos sociétés, être actif sexuellement est bien vu pour le mâle et mal vu pour la femelle..


Hmm, le patron d'une société GAFAM au choix en train de se faire mettre par un bbc, j'suis pas sûr qu'il apprécie l'attention.

.> Je serai quand même curieux de savoir qu'elle recherche ou action l'ayant amené à retrouver cette dite falsification.

Ah bah oui ! C'est de sa faute, elle a peut-être explicitement cherché des images pornographiques d'elle-même pour pouvor se plaindre ensuite. Mais quelle s*e !!!

Non, mais, honnêtement, est-ce que vous réalisez à quel point vous tentez à tout prix de minimiser la chose et de ramener ça à votre propre interprétation ?

Le 16/04/2024 à 09h 54

Il existe aussi des contenus générés de ce type ciblant des personnalités masculines. Il y a de nombreux LoRA pour reproduire leur visage sur les sites de partage de modèles IA.

Il existe aussi des poissons volants, mais ils ne constituent pas la majorité du genre !


Jean Gabin, Michel Audiard, Le Président.

Sans nier que quelques hommes sont aussi victimes de la chose, l'asymétrie est quand-même flagrante... Non ?

Le 16/04/2024 à 09h 45

Est-ce que vous auriez un exemple où un sujet n'était pas traité quand il concernait uniquement les femmes et a été miraculeusement résolu en 15j quand il a atteint les hommes ?

Non, par contre j'ai des exemples où le fait de tout prendre au premier degré et le manque d'empathie sont fortement corrélés.

Le 16/04/2024 à 08h 55

Par exemple, elle pourrait demander à toutes les femmes de diffuser massivement des images pornographiques des hommes publics, politiques ou magnats de l'industrie tech.

Combien on parie qu'ils vont alors enfin se remuer le c*l et trouver une solution durable en moins de 15 jours ?

Le 17/04/2024 à 11h 34

Exactement comme on pèse un sac de patates: en mesurant la "force" gravitationnelle qu'elle exerce sur ce qui l'entoure. Dans le cas du sac de patates ça déforme le ressort de la balance, dans le cas d'une étoile ça change la trajectoire des objets proches.

Elon Musk regarde l'objectif

Le 10/04/2024 à 09h 25

Mais ça c'est très bien, et ce n'est pas mon sujet. Mon sujet c'est que les médias veulent que les gens qui ne lisent pas Musk aient aussi une opinion sur lui (et sur les sujets qu'il aborde).

Tu vas me dire que tu préfères les gens avec filtre, qui disent ce que tu veux entendre tout en pensant et faisant l'inverse ?

les médias veulent que les gens qui ne lisent pas Musk aient aussi une opinion sur lui (et sur les sujets qu'il aborde).


Et donc ? Tu n'as probablement jamais lu un seul écrit de Bill Gates, et pourtant tu as une opinion sur lui de par ce que rapportent les media. Pareil pour Gandhi, Saint Augustin, Einstein ou le petit moustachu, tu ne les connais que parce que les autres ont dit d'eux et cependant cette image est assez exacte.
Tu vas me dire que tu préfères les gens avec filtre, qui disent ce que tu veux entendre tout en pensant et faisant l'inverse ?


Faux dilemme et homme de paille dans une même phrase. Bel effort.

Microsoft

Le 05/04/2024 à 15h 57

Je devais confondre avec appimage...

Tant de standards dans Linux que je confonds tout... :mdr:

PS: du coup quel est le standard consensuel qu'il faut utiliser ? Cela a été décidé par qui ? est-ce qu'on mixer du snap, flatpak et openimage sur une distro ?

Oui, on peut mélanger du snap, du flatpak et de l'appimage sur une machine, il suffit d'utiliser la commande apt-yum pour les installer.

Le 05/04/2024 à 13h 59

Niveau bureautique, je serais le seul à trouver que leurs interfaces sont devenues vraiment merdiques après (c'est pas nouveau) office 2007? A tel point que je préfère désormais vraiment utiliser LibreOffice pour faire la totalité du doc et l'importer en phase finale pour y passer les macros (des modèles de doc de la boite) sans heurts. On passe son temps à chercher tout ce qui était accessible d'un clic auparavant et c'est juste insupportable. Pourtant je suis pas un gros utilisateurs et je trouve cela déjà cauchemardesque.

Niveau support matériel, on n'est objectivement plus au rayon "goût et couleurs" d'une interface et le jour ou Microsoft supportera tout cela, on ne se posera plus de questions sur ta santé mentale mon garçon:
https://github.com/torvalds/linux/tree/master/arch

Pour la stabilité, idem. Et quand cela déraille en prime les logs sont tellement merdiques qu'un windows ne se dépanne pas (d'une erreur de configuration ou autre), il se réinstalle! De toutes manières sans vrai shell duquel on peut faire tout ce qui est serait possible en graphique (voir bien plus), c'est simple quand l'UI ne démarre pas y compris en mode dépannage on est sans solution.

Quand on pense à ce qui existait déjà de multitache/multiutilisateurs et traversé depuis les origines par la pile réseau côté unices, qu'IBM choisisse les 2 neuneus avec la pire proposition technique m'a toujours interrogé. La seule réponse logique étant que, bien conscient du potentiel de l'architecture ouverte PC bientôt équipée de processeurs avec une MMU (nécessaire à un multitâche propre) et d'une carte réseau, il fallait préserver le juteux business des stations de travail Unix en bridant durablement le PC avec l'OS le plus merdique de la création.

Quand on pense à ce qui existait déjà de multitache/multiutilisateurs et traversé depuis les origines par la pile réseau côté unices, qu'IBM choisisse les 2 neuneus avec la pire proposition technique m'a toujours interrogé.


Ben déjà si IBM voulait faire quelque chose de correct, il n'y aurait pas mis le pire processeur 16 bits possible, il aurait mis un truc qui supporte nativement au moins 16MB d'adressage... C'est la faute à IBM qui tenait absolument à ne pas utiliser un processeur Motorola mais plutôt un truc d'une petite société qu'IBM aurait pu plus facilement contrôler (Motorola était nettement plus grand qu'Intel à l'époque) et même chose pour le logiciel (mais là ils ont choisi Microsoft car leur BASIC était omniprésent - rappelons qu'à l'origine un IBM PC d'entrée de gamme n'était pas livré avec PC-DOS mais juste un BASIC en ROM et ... mais oui ... un lecteur de cassettes comme mémoire de masse)

Le 02/04/2024 à 16h 32

«"» est le «double quote» anglais, pas les guillemets français.

Tant qu'on est à couper les hair en four... le caractère " n'est pas non plus ces double quote anglais (qui, comme pour les guillemets français, existent en une version ouvrante et une version fermante), c'est juste une approximation utilisée sur les machines à écrire et transposée en ASCII...

Le 02/04/2024 à 10h 46

Le DSA impose des contraintes commerciales sur les offres logicielles, pas de"s contraintes techniques sur leur implémentation.

Rien n'interdit à Microsift d'implémenter Word en utilisant C# sous prétexte qu'un logiciel proposé par un fournisseur ne pourrait pas être basé sur un framework propsé par le même fournisseur, sinon on n'a pas fini.

Consommation électrique du CERN

Le 26/03/2024 à 13h 10

Je pense qu'on a bien compris que ce n'est pas un poisson d'avril de la part de Next mais c'est dommage de relayer ce genre d'"informations" inutiles, surtout une semaine en avance alors qu'il y a sans doute bien d'autres informations plus importantes à communiquer.

Faux Dilemme : ce n'est pas parce que le site relaie cette information - certes frivole - qu'il ne relaie pas aussi les informations importantes.

Edit: lien fonctionnel

Le 26/03/2024 à 09h 48

Ceci n'est pas un poisson d'avril de la part de Next. Next se borne à relayer une publication du CERN dans le domaine des télécommunications, ce qui est le coeur de métier de Next.

Ceci étant et pour parler des sempiternels marronniers, je m'étonne que personne n'ait encore évoqué Open Office.

poupées russes à l'effigie de Poutine et Trump

Le 25/03/2024 à 17h 50

Dire des conneries peut être punissable vu qu'il peut y avoir diffamation. Essayer de tromper un tribunal en invoquant une jurisprudences fictive ça devrait être punissable d'une manière ou d'une autre. C'est trop facile de plaider la bêtise et l'incompétence.

Merci de me citer complètement. :windu:

J'ai dit : dire des conneries de bonne foi n'est pas punissable.
Diffamer, essayer tromper un tribunal, ce n'est plus de la bonne foi.

Le 25/03/2024 à 10h 37

Dire des conneries n'est pas punissable en tant que telle par la loi, c'est vrai. Par contre, faire preuve de manquement professionnel et/ou d'incompétence, ça oui, ça peut l'être ;)

Un avocat qui ne vérifie pas une jurisprudence, c'est pour moi un manquement professionnel.

On est parfaitement d'accord sur ce point, mais il doit être sanctionné par l'Ordre (radié, interdit d'exercer etc...), pas par le juge qui traite l'affaire dans laquelle il plaide.

Le 25/03/2024 à 10h 35

Dire des conneries de bonne foi n'est pas puni par la loi.


Sardine ! Sors de ce corps !!!

G. Palareff :pleure:

Le 25/03/2024 à 10h 09

Dire des conneries de bonne foi n'est pas puni par la loi. S'il doit être sanctionné, c'est au niveau du conseil de l'ordre des avocats (ou ce qui en tient lieu aux USA) et non au niveau judiciaire.

Windows 11

Le 21/03/2024 à 10h 37

Le problème avec vi ce n'est pas de le lancer.
C'est de l'arrêter.

Ferris the crab, unofficial mascot for Rust

Le 11/03/2024 à 18h 01

Je me suis amusé à le compiler et à le lancer, histoire de voir. Toi qui est si fier de ton programme, sache qu'il génère 8 warnings avec gcc 9.4 (je croyais qu'il fallait les éviter ? C'est en tout cas ce que tu demandais commentaire 6.31 (je ne l'invente pas).

Et le comble, c'est que ton programme se termine par un beau segmentation fault à l'exécution.

`
Current Minimum Maximum
Core 0 : Khz Khz Khz
Core 1 : Khz Khz Khz
Core 2 : Khz Khz Khz
Core 3 : Khz Khz Khz
Core 4 : Khz Khz Khz
Core 5 : Khz Khz Khz
Core 6 : Khz Khz Khz
Core 7 : Khz Khz Khz

Total : Khz Khz Khz
Average : Khz Khz Khz

Nb Mini :
Nb Maxi :

Extr. Min: Khz Khz Khz
Extr. Max: Khz Khz Khz
Segmentation fault
`

(tu m'excuseras, je me suis contenté d'un copier/coller de la console, je n'ai pas envie de m'amuser à héberger une image pour ensuite la coller ici).

Alors, tu peux dire tout ce que tu veux de ton programme, tu ne peux pas lutter contre les faits.

Le plus drôle dans tout ça, c'est que j'ai trouvé un buffer overflow exploitable, et que je voulais justement le compiler/tester pour vérifier, mais que je n'ai même pas eu à le faire, car ton programme plante de lui-même.

J'applaudie, à 2 mains, les 20 ans d'expérience mis avec tant de valeur dans ton commentaire précédent :top:

Pareil. Quand j'ai vu les warnings (un %d dans un printf pour formater des long) j'ai pas été plus loin. De toute évidence, sur son architecture les long et les int ont la même taille... C'est probablement pour cela que sur sa machine à lui il n'y a aucun warning. Et comme "pas de warning = programme OK", tout roule.

Et puis comme dit si bien alex.d ailleurs dans le thread, y'a pas de vulnérabilité dans printf :D

Le 11/03/2024 à 17h 44

Ah oui, je commence à comprendre : tu fais du z-linux ... CàD une implémentation très IBM d'un environnement Linux (j'ai fait aussi de l'AIX et y'a des contextes où c'est pas bon à manger surtout quand il s'agit d'une appli multi-OS).

La maintenabilité justement, c'est en environnement zOS où j'ai pu voir passer les pires trucs pondus par des « barbus-plein-d'XP ».

Dans ce genre de contexte de travail, les documentations projet tiennent sur une page : Cf Machin-pas-loin-de-la-retraite-ou-déjà-parti. Et les DSI derrière qui attendent en embuscade le départ en retraite pour tout décommissionner en urgence afin que cela ne leur pète pas au nez.
Une fois, des vieux programmes Z ont été rachetés à un client et la prise en main des bouzins a été longue et dure. Plusieurs mois de reverse-engenering pour s’apercevoir qu'on aurait plus vite fait de repartir de la page blanche.

La maintenabilité efficace, par ordre de priorité pour moi :
1. Programmation structurée
2. Capacité à comprendre pour un dev extérieur et accessoirement par l'auteur lui-même
3. Cohérence d'écriture globale : va maintenir un source avec 5 ou 6 styles d'écriture différents et avec du C, ça peut faire très vite mal à la tête.
4. Mail et/ou N° de téléphone de la personne qui a l'histoire du programme en tête : mieux vaut demander à un qui sait plutôt qu'à 2 qui cherchent

Tiens... même le makefile (trois lignes de code !!!) est foiré. T'as oublié de lister le fichier .h comme dépendance pour l'exécutable. Si tu changes un truc juste dans le .h, le make ne recompilera pas l'application. C'est bien la peine de maintenir un makefile...

Chapeau pour tes 20 ans d'XP, tu les caches vraiment bien.

Le 11/03/2024 à 12h 49

Tout ça, ça date d'avant C89, c'est de la préhistoire. Plus personne n'utilise ça. La version par défaut dans le gcc actuel est C11.

Plus personne, sauf les gens qui maintiennent du code legacy. :phiphi:

Le 11/03/2024 à 11h 12

La vulnérabilité n'est pas dans le langage, mais dans la façon de s'en servir. Ton exemple printf() est très mal choisi. Si tu veux citer une vrai vulnérabilité, alors parle plutôt de gets() (qui pour le coup est une vraie faille, mais la fonction est déprécié depuis longtemps).

On parlait d'une vulnérabilité dans le langage, pas dans la librairie standard.

gets() est une vulnérabilité exclusivement due à la librairie standard (il manque 'juste" la longueur du buffer dans les arguments - problème que n'a pas fgets)

Par contre le fait d'avoir des arguments quelconques sans aucun contrôle de type (ni même d'implémentation portable avant l'avènement de la notation va_args) pour permettre le fonctionnement de printf (ou scanf si tu y tiens vraiment...) est bien une caractéristique du langage.

Le 11/03/2024 à 11h 04

Ah oui, je commence à comprendre : tu fais du z-linux ... CàD une implémentation très IBM d'un environnement Linux (j'ai fait aussi de l'AIX et y'a des contextes où c'est pas bon à manger surtout quand il s'agit d'une appli multi-OS).

La maintenabilité justement, c'est en environnement zOS où j'ai pu voir passer les pires trucs pondus par des « barbus-plein-d'XP ».

Dans ce genre de contexte de travail, les documentations projet tiennent sur une page : Cf Machin-pas-loin-de-la-retraite-ou-déjà-parti. Et les DSI derrière qui attendent en embuscade le départ en retraite pour tout décommissionner en urgence afin que cela ne leur pète pas au nez.
Une fois, des vieux programmes Z ont été rachetés à un client et la prise en main des bouzins a été longue et dure. Plusieurs mois de reverse-engenering pour s’apercevoir qu'on aurait plus vite fait de repartir de la page blanche.

La maintenabilité efficace, par ordre de priorité pour moi :
1. Programmation structurée
2. Capacité à comprendre pour un dev extérieur et accessoirement par l'auteur lui-même
3. Cohérence d'écriture globale : va maintenir un source avec 5 ou 6 styles d'écriture différents et avec du C, ça peut faire très vite mal à la tête.
4. Mail et/ou N° de téléphone de la personne qui a l'histoire du programme en tête : mieux vaut demander à un qui sait plutôt qu'à 2 qui cherchent

J'admire cet art subtil de tirer des conclusions foireuses. Je ne travaille pas sur z/OS et je n'ai jamais codé pour un mainframe. Je te parle juste d'un exemple d'architecture différente pour t'expliquer qu'il n'y a pas qu'Intel qui fait des processeurs.

Capacité à comprendre pour un dev extérieur et accessoirement par l'auteur lui-même


Tu m'expliques pourquoi tu castes explicitement le résulat de atoi vers un long ? Outre que c'est inutile, ça rend le programme difficile à comprendre car celui qui le lit va devoir se demander pourquoi tu fais ça.

C'est pour la faciliter la compréhension que tu lis une string avec fread au lieu de fgets ?
Cohérence d'écriture globale


C'est pour la cohérence que la variable "Buffer" commence par une capitale, contrairement à toutes les autres variables ?
ça peut faire très vite mal à la tête.


Je confirme, ton code est indigeste
Mail et/ou N° de téléphone de la personne qui a l'histoire du programme en tête


Woaw... Bien sûr.

Le 11/03/2024 à 09h 04

Le C est un langage qui permet d'écrire du code vulnérable. Mais il n'y a pas de vulnérabilité dans le langage.

Après, il faut utiliser le bon outil pour la bonne tâche. Le C n'est pas la bonne solution dans tous les cas, mais il est erroné de vouloir déconseiller l'usage du C dans tous les cas.

Heu si, il y a des vulnérabilités en C. Le fait qu'on puisse prendre l'adresse d'une variable qui contient un pointeur et caster vers autre chose permet de modifier arbitrairement la valeur d'un pointeur, ce qui interdit de structurer les pointeurs pour les rendre ne fût-ce qu'un peu plus safe. Le fait qu'une variable déclarée sur le stack et non explicitement initialisée contient n'importe quoi y compris un pointeur vers de la mémoire non allouée. etc. Et je ne parle même pas des antiquités K&R qui ne vérifient même pas le type des arguments d'une fonction, ce qui a permis l'émergence de la fonction standard printf() qui est une mélodie à elle toute seule.

Le 11/03/2024 à 08h 40

Le 0 binaire, j'm'en tape. C'est la conversion numérique qui est utilisée après.

S'il y avait eu utilisation des strings dans un printf par exemple, oui, il y aurait eu un memset.

Le 0 binaire, j'm'en tape. C'est la conversion numérique qui est utilisée après.


La spécification de atoi c'est qu'elle reçoit une string. En C une string est terminée par un NUL. Si ce NUL n'est pas là, rien ne prouve que atoi ne va pas continuer à lire les caractères qui suivent. La spec dit que atoi arrête la conversion, pas nécessairement le scan de la string. Le fait qu'atoi est implémenté par une boucle "while le catactère courant est entre '0' et '9'' est un détail d'implémentation qui est généralement valide sur une architecture X86 ou ARM, mais peut-être pas sur une architecture IBM z9, ou une encore différente qui sortira l'année prochaine. Rien n'interdit à atoi() de continuer à scanner plus loin s'il le désire. Il ne peut pas aller plus loin que le NUL mais rien ne dit qu'il ne va pas aussi lire le caractère qui suit le \n.

Maintenabilité :fou:

Le 11/03/2024 à 08h 20

Tout ton commentaire ne sert à rien. Dans un exposé universitaire, tu aurais raison mais pas là.

Effectivement, si la commande lancée par le popen aurait retourné un stream sans fin de ligne ni 0 binaire, cela aurait été pris en compte (avec un p'tit memset). Cette approche plus dépouillée sert la maintenabilité. Et ta proposition est juste, mais n'aide pas la maintenance.

Mon code fonctionne car les procédures appelées forment un ensemble.

PS : surconfiance avec + de 20 ans d'XP sur le sujet ... mais bien sûr.

Si tu tiens vraiment à jouer à kikalaplugrosse, ça fait 38 ans que je fais du C professionnellement.

"Cette approche dépouillée" mon dieu... Ce n'est pas une approche dépouillée/

Quant à la ligne suivante où tu castes explicitement le résultat de atoi vers un long, tout ça pour retourner le nombre de processeurs (qui ne devrait en toute logique pas dépasser 65535 dans le meilleur des cas...) oui de fait ça respire 20 ans d'expérience... Vingt ans de cut-n-paste de code que tu ne comprends pas.

Le 10/03/2024 à 14h 18

En absolu, d'un point de vue purement universitaire et théorique ... tu as raison.

Mais, quand tu regardes ce pourquoi la variable va être utilisée, la plage de valeurs recues est très limitée. A vrai dire, j'aurai pu réduire la taille de la variable car la valeur la plus grande est sur 10 caractères, donc un Buffer[11] aurait fait le job.

Et pour finir avec les strings, la commande donnée au popen retourne une string, donc une série de caractères terminée par un 0 binaire. Du coup, je suis sûr d'avoir une string en bon et dûe forme dans le atoi ...

C'est dingue ce que le manque d'XP et une croyance universitaire crasse peuvent faire dire.

Houlà... que de certitudes qui ne se basent sur rien d'autre qu'une ignorance crasse... Et quelle belle démonstration du postulat de Dunning Kruger.

Non, passer Buffer à 11 ou une quelconque autre valeur ne changera rien à l'affaire (et je passe sur le fait que tu hard-codes la taille du buffer au lieu d'utiliser une constante...) . Le simple fait que tu le proposes prouve que tu n'as rien compris. Le problème ce n'est pas le fread qui va écrire trop loin, ce n'est pas un buffer potentiellement trop petit, c'est le atoi qui va lire trop loin car rien ne garantit que le buffer sera terminé par un zéro binaire.

Car non, la commande passée à popen ne renvoie pas une string, elle renvoie un stream de bytes que fread va mettre dans la variable Buffer. Mais cela ne constitue pas une "string" au sens C car le stream ne contient pas de zéro binaire en fin, et fread n'en mettra pas. Pour mettre un tel byte nul en fin, il eut fallu faire un truc du genre (de tête et quick-n-dirty, et pas portable car suppose que sizeof(char) == 1, mais obligé vu que tu n'as pas jugé utile de définir un constante pour la taille du buffer) :

Buffer[fread(Buffer,1,sizeof(Buffer)-1,fd)] = '\0';

Note à quel point c'est différent de ce que tu as écrit, notamment il faut lire au maximum 15 éléments de taille 1, et non 1 élément de taille 15 de façon que fread renvoie le nombre de bytes lus histoire qu'on puisse accoler un NUL en fin.

Ou alors... utiliser fgets() ???

Tout ceci prouve que tu n'as jamais écrit du code qui fonctionne autrement que par hasard et sur ta propre machine. Donc, au niveau expérience, évite de voir la paille dans l'oeil de ton voisin, ça t'évitera de passer pour un noob.

Le 08/03/2024 à 11h 33

Contrôle des pipes : la chaine de caractère finit dans un atoi ... qui sortira une valeur nulle au pire. Et la plupart des programmes qui utilisent des pipes font des appels comme ça : pclose(popen("commande","r")); ... surtout utilisé dans les programmes multi-threadées pour remplacer la fonction system() non compatible avec le multi-threading.

Contrôle du système de fichiers : surtout sur une arborescence mémoire montée par le noyau (et donc mécaniquement présente sinon tu n'aurais pas même pu te connecter à la machine).

Un contrôle de malloc unitaire sur des tailles maîtrisées (dépendant du nombre de cores/threads et non d'un paramètre utilisateur) ... t'es gentil. Tu passerais ton temps à faire des malloc / realloc dans des boucles et/ou des malloc dépendants de paramètres utilisateur (donc potentiellement déconnants), là, oui le contrôle des valeurs retournées est obligatoire.

Et au jeu des vérifications, j'ai aussi oublié de contrôler l'espace disque disponible (ben oui puisqu'il y a des fopen), les T° CPU / carte mère (ben oui, ça boucle) et l'âge du capitaine.

Effectivement, tu fais bien d'arrêter ... parce qu'enfoncer les portes ouvertes des « bonnes » pratiques trouvées sur wikipedia, n'importe quel script-kiddie en est capable. Tu n'as même pas essayé de comprendre l'algo (d'ailleurs personne n'en a parlé) et pourquoi les contrôles que tu dénonces manquants ne sont pas nécessaires.

Maintenant, puisque tu as trouvé des « failles », je te propose de mettre à jour le bout de code et de nous montrer comment il devrait être. Toutefois, il faut que :
* ça compile sans warning,
* ça reste maintenable CàD compréhensible par quelqu'un qui découvre le code pour la 1ere fois (ça c'est pas simple)
* les perfs ne soient pas dégradées : CàD une conso CPU qui ne polluera pas les mesures.

Enjoy !
(d'où le fameux « keep it simple, stupid ! »)

Contrôle des pipes : la chaine de caractère finit dans un atoi ... qui sortira une valeur nulle au pire


Heu, non, au "pire" il y a un dépassement de buffer. Ni l'initialisation de l'array de caractères sur le stack ni le fread ne peuvent garantir qu'il y aura bien un byte nul pour terminer la string. S'il y a un byte nul, c'est par chance parce que le stack n'a pas encore réutilisé de l'espace déjà initilalisé par un appel précédent.

char Buffer[16] = "";

ça garantit juste que Buffer[0] est le caractère nul, mais ne dit rien des 15 autres, qui vont simplement récupérer ce qui traîne sur le stack.

Le 06/03/2024 à 11h 27

J'y connais rien en Rust, mais je me demande pourquoi on ne pourrait pas utiliser une IA générative pour "traduire" un code du C/C++ au Rust ? Ça me semble particulièrement adapté, non ?
Sans que ça fasse tout le travail, ça pourrait peut-être en faire 80%, non ?

Le "problème" n'est absolument pas syntaxique, il est sémantique. Le principe de Rust c'est qu'à tout moment il doit exister un et un seul pointeur "maître" qui référencie un bloc alloué. En C ce n'est absolument pas le cas et il existe quelques rares structures de données tordues (p. ex. stocker des listes doublement liées en faisant un XOR des deux pointeurs) qui font qu'à un moment donné il n'existe aucun pointeur vers un bloc mémoire pourtant référencé.

Le 06/03/2024 à 11h 21

Ca fait longtemps que je ne fais plus de COBOL, il autorise désormais aussi les pointeurs hélas, mais en tout cas les attaques seront différentes et probablement moins efficaces (dans le cadre de la gestion de mémoire) mais surtout en raison de l'OS sous-jacent (z/OS) qui ne fonctionne pas comme Windows ou Linux.

Mais bon, écrire un driver d'imprimante Windows en COBOL, faut aimer le sport.

Je me lance

DATA DIVISION.
77 CURRENT-LINE PIC X(132).

Le reste c'est juste un détail...

X 18 adults only

Le 11/03/2024 à 13h 14

Au risque de me répéter, c'est pas la taille qui compte...
Un DVD c'est 525i, largement inférieur à 720p, et pourtant ce n'est pas mauvais au point d'être inregardable. Il y en a encore quelques millions qui se vendent annuellement.

Le 08/03/2024 à 11h 00

Moi on m'a toujours dit que c'est pas la taille qui compte, il en faut pour tous les goûts.
Mais en vrai, quand j'utilise cet argument, je me vois souvent rétorquer "oui, mais là, quand même, heu, non, ça va pas le faire ..."

wikipedia

Le 23/02/2024 à 14h 08

Tu crois vraiment être le premier qui y a pensé, ici ???

Photomontage montrant une carte des câbles sous-marins passant à proximité du Yemen

Le 13/02/2024 à 08h 38

Le Gulf International Forum a-t-il un avis sur la façon de prononcer leur acronyme ?

des nuages de données s'échappent des cheminées de petites maisons dessinées en rang d'oignon

Le 29/11/2023 à 09h 23

Oui mais je sors la carte "biais systémique patriarcal" !

On a construit le modèle de classification à partir de ceux qui avaient fraudés. Mais on sait qu'ils avaient fraudé car on les avait contrôlé. Et ont les avait contrôlé parce qu'on se méfiait d'eux. Ah ah ah (rire patriarcal).

Non, on a construit le modèle de classification à partir des gens qu'on a contrôlés. Parmi les gens dont on se méfiait, il y en a dont on se méfiait à tort à cause du biais systémique patriarcal. Quand ils ont été contrôlés, ils étaient en règle, ce qui a ainsi permis d'affiner les règles, le biais a été identifié comme irrationnel et les gens dans la même situation ne sont plus systématiquement considérés comme suspects.

Une silhouette se détache devant un mur de carrés rouges.

Le 26/11/2023 à 09h 53

C'est un problème des plateformes de crowdsourcing et ce n'est pas nouveau. À une époque, avant internet, on appelait ça la mondialisation.

S'ils sont si pauvres que cela, alors ils n'ont certainement pas tous à la maison un PC dédié et une connexion Internet. Donc, cela veut dire que quelqu'un là bas leur fournit le matériel en échange d'une commission. Le véritable profiteur, c'est cet intermédiaire.

En Europe, Microsoft va autoriser la désinstallation d’Edge dans Windows 11

Le 20/11/2023 à 13h 54


AncalagonTotof a dit:


Bah ouais, mais moi, je fais des choses avec …




Ta vie privée ne nous regarde pas :D



Mais quand-même on peut se demander ce que tu fais. J’ai utilisé quotidiennement un Windows XP (SP2 et jamais patché depuis) de 2005 jusqu’en 2021 sans devoir le réinstaller une seule fois. Et il est toujours là fidèle au poste. Et pourtant il faut chipoter hein (le saviez vous ? git ne fonctionne pas sur un XP SP2, il a fallu installer une version antédiluvienne. Et il me sert à développer et maintenir une application legacy, avec un serveur Oracle, Delphi et tout le bazar. Le nombre de fois que j’ai dû le rebooter cavaiièrement parce que mon code a fait une connerie (ou, surtout, le debugger de Delphi qui déconne quand on met des breakpoints dans un service), je ne pourrais plus les compter…


​​Sur TikTok, l’IA sert à faire « parler » le petit Grégory ou Estelle Mouzin

Le 16/11/2023 à 10h 46


SKN a dit:


ne pas avoir connu le 3615 ULLA




Je suis (largement) assez vieux pour avoir connu, mais pas assez français. On n’avait pas de Minitel en Gelbique (ce qui a eu l’avantage que l’accès Internet s’est développé plus vite qu’en France).


Le 16/11/2023 à 10h 23

C’est déjà le cas, hein. Sur 4chan le board /aco/ (*) est rempli d’images générées par IA avec des “plug ins” pour représenter telle ou telle actrice (ou chanteuse, la gagnante étant Taylor Swift) en très coquine situation.



(*) Je n’y vais pas moi-même, hein, c’est l’ami d’un ami qui me l’a dit.


Le 16/11/2023 à 10h 18


SKN a dit:


Et est-ce que ça a été refait après ou ce précédent a calmé les hardeurs des producteurs?




SI on en croit la règle 34, il existe très certainement un film porno mettant en scène JFK :D


Le 16/11/2023 à 10h 06


SKN a dit:


Et des exemples de fiction moderne (20e/21e siècle) où on fait parler des morts qui ont réellement existé?




JFK dans Forrest Gump


Le 16/11/2023 à 10h 05

Peso, j’y vois une différence d’intention.
Dans un cas l’intention est d’informer en montrant clairement qu’il s’agit d’une reconstitution avec des acteurs. Dans l’autre cas l’intention est de brouiller les pistes, voire de désinformer (tu le dis toi-même: “les images réelles sont […] trafiquées et biaisées”…)


Le 16/11/2023 à 09h 55

Il y a une différence entre un ouvrage de fiction / fiction-documentaire (j’ai vu récemment un documentaire sur la tout Eiffel, un acteur y faisait parler Gustave Eiffel) et la réutilisation d’images réelles qu’on trafique pour faire dire autre chose.



Exemple du deuxième cas : quand Forrest Gump rencontre JFK, on l’a incrusté dans des images d’archives et fait dire au POTUS des choses qu’il n’a jamais dites… Ca avait fait un tollé à l’époque.



EDit : fôte de phrappe.


Apparemment, c’est le board d’OpenAI qui décidera « quand l’IA générale sera atteinte »

Le 16/11/2023 à 10h 42


fred42 a dit:


Le terme AI est déjà transformé en argument marketing, qu’est-ce que ça va changer ?




C’est vrai qu’on n’entend presque plus parler de blockchain qui va résoudre tous les problèmes du monde.


Le 16/11/2023 à 09h 30

L’usage est admis en français : https://fr.wiktionary.org/wiki/versatile




(En particulier) (Anglicisme) Pour des objets, qualifie l’adaptabilité à un grand nombre de situations ou d’usages, polyvalent.