Wrong judgment call for what, exactly? For "how much can we get away with?" đ
https://www.theregister.com/2026/03/30/github_copilot_ads_pull_requests
Engineer in industrial cybersecurity by day. Interests include Unix, security, cryptography. I know enough about sand to not let it do the thinking for me.
Non-technical interests are climbing, watchmaking, records, beer, and whisky. Oh, and MTG.
Will toot terrible puns in either English or French.
Trans rights are human rights. Fascists can rot in hell.
| recursion() | https://infosec.exchange/@karl |
Wrong judgment call for what, exactly? For "how much can we get away with?" đ
https://www.theregister.com/2026/03/30/github_copilot_ads_pull_requests
Photographer Frank Relle revels in Louisianaâs otherworldly swampland, which he's been captivated with since childhood.
Je suis dĂ©veloppeuse web depuis une grosse quinzaine dâannĂ©es. Les IA gĂ©nĂ©ratives sont en train de me dĂ©goĂ»ter de mon mĂ©tier. Je dĂ©teste avoir le ventre qui se tord et la voix qui se brise quand jâessaie dâexpliquer Ă quel point je les dĂ©teste. Alors jâĂ©cris, les yeux brillants. Je dĂ©teste lâidĂ©e dâĂȘtre dans cette industrie qui, globalement, continue dâutiliser ces outils. Chaque problĂšme quâils posent, pris sĂ©parĂ©ment, suffit Ă mes yeux pour sâen passer, et pourtant mes pairs continuent de les produire, de les dĂ©fendre, de les utiliser. Jâen ai marre de ne plus pouvoir faire trois pas dans le monde de la tech sans croiser un gars qui mâexplique que tous les problĂšmes de lâIA sont causĂ©s par les utilisateurs qui ne savent pas sâen servir correctement. Je suis dĂ©goĂ»tĂ©e. Câest assez nouveau, en fait. Pourtant, je suis une femme qui a Ă©tudiĂ© en Ă©cole dâingĂ©nieurs et travaillĂ© dans diverses boĂźtes dâinformatique pendant seize ans : des dĂ©goĂ»tants, jâen ai cĂŽtoyĂ©s. Des machos, des violents, des alcoolisĂ©s, des vieux et des jeunes, avec et sans cravate. Curieux, en fait, que je nâaie pas Ă©tĂ© dĂ©goĂ»tĂ©e plus tĂŽt, par ces dĂ©goĂ»tants tellement mieux payĂ©s que moi, comme tant dâautres femmes de la tech avant moi. Mais les IA gĂ©nĂ©ratives, câest diffĂ©rent. Elles dĂ©truisent tout. Lâenvironnement. LâhumanitĂ©. Et, câest lĂ que ça devient personnel, elles dĂ©truisent trĂšs prĂ©cisĂ©ment ce que jâaime dans mon mĂ©tier pour mieux me noyer dans le reste. Personnellement je refuse de me servir des IA gĂ©nĂ©ratives ; je mesure la chance dâĂȘtre mon propre employeur et dâavoir la libertĂ© de refuser. Tant dâautres ont expliquĂ© ce qui ne va pas avec les IA gĂ©nĂ©ratives. Je ne ferais que rĂ©pĂ©ter. Je vais essayer de me concentrer ici sur ce qui mâa fait aimer ce mĂ©tier. De ce mĂ©tier, et dans lâabsolu, jâaime principalement trois choses : crĂ©er, apprendre et transmettre. Le mĂ©tier de dev a ceci de sympathique â en tout cas il avait ceci de sympathique avant 2022 â quâil permet de varier les plaisirs en permanence avec des petites combinaisons : apprendre en crĂ©ant, crĂ©er pour transmettre, et apprendre en transmettant. CrĂ©er Tout le monde nâest pas de mon avis, mais je trouve que le dĂ©veloppement logiciel est un mĂ©tier crĂ©atif. Quand je conçois et code dans de bonnes conditions, je me sens comme quand je dessine. Jâaime cette partie mĂ©ditative oĂč je rĂ©flĂ©chis tranquillement devant mon carnet, oĂč au clavier les pensĂ©es sâenchaĂźnent au bout de mes doigts pour progressivement donner forme Ă des interfaces et des algorithmes. Jâaime pouvoir dire âah je suis contente dâavoir eu cette idĂ©e pour cet Ă©cran/cet algorithmeâ. Jâaime pouvoir crĂ©er en maniant le CSS, le SQL, et Python entre les deux. Je peux crĂ©er des objets numĂ©riques trĂšs sĂ©rieux et utiles, les concevoir de façon trĂšs robuste et me faire payer pour ça, mais jâai aussi le champ libre pour crĂ©er des blagues et des fantaisies poĂ©tiques interactives. Donc jâaime Ă la fois concevoir et Ă©crire. Jâentends quâon nâaime pas Ă©crire du code, bien que ça mâĂ©chappe un peu. Ces gens-lĂ deviennent paraĂźt-il architectes. Franchement ça ne mâa jamais tentĂ©e. Je trouve ça un peu bizarre de vouloir exercer dans le domaine de lâingĂ©nierie logicielle alors quâon nâaime pas coder. Câest comme un illustrateur qui nâaimerait pas dessiner. La conception et lâĂ©criture, ce nâest pas une Ă©tape que jâai envie de dĂ©lĂ©guer, non seulement par goĂ»t mais aussi par pragmatisme. Peut-ĂȘtre que câest la raison la plus personnelle de mon rejet des IA gĂ©nĂ©ratives, je ne sais pas Ă quel point câest vrai pour dâautres. Maintenir Jâai une mĂ©moire bizarre qui me rend efficace pour maintenir du code que je comprends ; et je le comprends dâautant mieux que jâai eu un accĂšs direct Ă la personne qui lâa Ă©crit. Mes ex-collĂšgues de TEA se souviendront peut-ĂȘtre de mon premier jour de boĂźte, oĂč jâai rĂ©solu en 10 minutes un bug qui les occupait depuis plusieurs jours. Certains emails de confirmation dâachat nâĂ©taient pas envoyĂ©s par lâexpĂ©diteur attendu. Ce problĂšme avait Ă©tĂ© causĂ© par mes anciens collĂšgues de SSII dont je savais quâils aimaient bien utiliser le mot-clĂ© static dans leurs classes PHP, parce que le directeur technique de lâĂ©poque avait dit que câĂ©tait plus performant. Et toc, jâai supprimĂ© le mot-clĂ© static fautif pour que la propriĂ©tĂ© redevienne propre aux instances, et les mails se sont soudain retrouvĂ©s envoyĂ©s par le bon expĂ©diteur. (Pourquoi me souviens-je de cet Ă©pisode en 2026 alors quâil date de 2013 ? Note de service pour mon cerveau : jâaimerais mieux me souvenir du numĂ©ro de tĂ©lĂ©phone du barbu mignon quâon croise tous les jours. Tu sais, celui quâon a Ă©pousĂ© en 2012. Mais passons.) Partant de lĂ , du fait que je comprends le code dâautant mieux que je comprends son autrice, autant dire que je suis redoutable, et jâassume totalement lâitalique, pour maintenir du code que jâai Ă©crit moi-mĂȘme. Car en effet, je dispose dâun accĂšs direct et permanent Ă moi-mĂȘme. En partant dâune ligne de log, dâune demi-capture dâĂ©cran ou dâun message de tchat, Ă©ventuellement en posant une ou deux questions de contexte, je peux comprendre en quelques secondes dâoĂč vient le bug et ressembler Ă une sorte de magicienne du code auprĂšs de mes client·es. Alors quâen fait ce qui mâaide, câest surtout de connaĂźtre la personne qui a Ă©crit le code. ConnaĂźtre Remarquez, souvent ça mâaide aussi de connaĂźtre la personne qui utilise mon code. Par exemple chez GalactĂ©e, pour qui jâai codĂ© un outil de suivi dâactivitĂ© de bĂ©nĂ©volat (nombre et durĂ©e des appels de soutien Ă lâallaitement), jâai pu identifier un bug assez spectaculaire essentiellement car je connaissais les habitudes de Charlotte, lâunique camarade qui le rencontrait. Elle Ă©tait trĂšs active â et elle lâest toujours, pluie de cĆurs multicolores sur elle qui aide tellement de mĂšres en galĂšre avec leur allaitement â en permanence tĂ©lĂ©phonique. Donc elle avait beaucoup de statistiques Ă saisir. Quâelle a voulu saisir toutes dâun coup Ă la fin de lâannĂ©e pour prĂ©parer lâAG. Moi jâavais gentiment mis sur la page dâaccueil des animatrices un formulaire de saisie rapide des derniers crĂ©neaux de perm oĂč les statistiques manquaient⊠Sauf que Charlotte, elle en avait tellement que son formulaire contenait plus de champs que la config max_input_vars. Quand jâai dĂ©couvert, dans les logs, lâexistence de la limite, jâai rapidement compris le problĂšme : jâai pu indiquer Ă Charlotte un chemin dĂ©tournĂ© pour saisir ses donnĂ©es pendant que je replongeais au bon endroit dans le code pour limiter le nombre de champs affichĂ©s. Ce bug est restĂ© dans mes archives mentales comme âle bug Charlotteâ. Jây repense avec tendresse Ă chaque fois que je rencontre un formulaire qui contient trop de champs au goĂ»t du serveur. Jâai des exemples de bugs dans dâautres langages (CSS, Python, SQL) que je nâaurais pas pu rĂ©soudre aussi rapidement â voire pas pu rĂ©soudre du tout, peut-ĂȘtre â si je nâavais pas cette mĂ©moire des chemins mentaux pris pour la conception et lâĂ©criture du code. Lire Alors oui, parfois on travaille avec du code que lâon nâa pas Ă©crit, et câest bien. Souvent, on travaille sur du code et on nâa pas la possibilitĂ© de discuter avec son autrice car elle est partie vers dâautres aventures, et câest super car on ne veut pas enchaĂźner les gens Ă leur ordi. Donc souvent, je me retrouve Ă relire le code de quelquâun dâautre. En fait, jâaime bien. Parfois, ça se lit comme un roman. Je peux retracer Ă partir du code le raisonnement de lâautre, parfois pour savoir quelle Ă©tape du raisonnement a failli et le corriger a posteriori. Je constate aprĂšs avoir lu du code pendant des annĂ©es que chaque dev apporte sa personnalitĂ© Ă son code. Les annotations git font dâailleurs partie des Ă©lĂ©ments que je regarde maintenant quand jâarrive sur une nouvelle base de code, car lâautrice et la date sont des infos trĂšs intĂ©ressantes. LĂ je vois que câest Bidule, dont je sais quâelle Ă©tait plutĂŽt junior et peu accompagnĂ©e lors de lâĂ©criture du code, donc je mâattends Ă des petits soucis de perf assez rapides Ă rĂ©gler. LĂ je vois que câest Truc, qui fait du code un peu perchĂ© mais souvent trĂšs malin, donc je vais probablement piquer des idĂ©es. LĂ câest Machin qui utilise des noms de variables un peu trop courts Ă mon goĂ»t, je vais prendre un peu de temps pour comprendre et renommer tout ça afin de faciliter la prochaine relecture. LĂ je vois que câest⊠moi ? Ah oui, je ne connaissais pas encore le module chose en 2024, je vais raccourcir ce petit bout de fonction. Pour revenir Ă ce que je dĂ©teste chez les IA gĂ©nĂ©ratives : elles dĂ©truisent ce lien Ă lâhumain que je perçois dans le code, cette base de raisonnement qui nâexiste soudain plus du tout. Je nâai plus dâautrice pour mâexpliquer, je nâai plus personne Ă comprendre. Jâai constatĂ© vraiment douloureusement que le code gĂ©nĂ©rĂ© ne se lit pas du tout de la mĂȘme façon que du code Ă©crit. Il ne se âdĂ©ploieâ pas dans mon espace mental dâune façon que jâarrive Ă exploiter. LĂ oĂč jâĂ©tais efficace, voire redoutable, depuis des annĂ©es, je me retrouvais Ă patauger dans des bouts de code sans cohĂ©rence et Ă penser que câĂ©tait moi le problĂšme. Jâai besoin de pouvoir saisir lâhumain en relisant le code pour, moi, fonctionner. Donc mĂȘme si moi je reste comme une vieille Ă Ă©crire mon code moi-mĂȘme, je vais souffrir en relisant le code que mes pairs ont gĂ©nĂ©rĂ©. Cela ne rend pas trĂšs attirante la perspective de rester encore 25 ans dans le mĂ©tier. Apprendre Le dĂ©veloppement logiciel, câest aussi un mĂ©tier de la connaissance oĂč on ne sâarrĂȘte jamais dâapprendre. Ăa devrait ĂȘtre le mĂ©tier parfait pour moi qui ai Ă©crit, ado, ce qui est restĂ© mon dicton prĂ©fĂ©rĂ© : « on commence Ă vieillir quand on finit dâapprendre ». Alors, pardonnez-moi le terme, quâest-ce qui a merdĂ© ? Pourquoi en suis-je arrivĂ©e Ă ce point dâamertume ? Je ne sais pas comment bien vous faire comprendre quâĂ mes yeux, lâapprentissage continuel est une composante fondamentale du mĂ©tier. On apprend en faisant. On fait Ă partir de ce que lâon a appris. Les dev les plus prometteuses et prometteurs que jâai croisé·es nâĂ©taient pas celles et ceux qui savaient le plus de choses, mais celles qui savaient le mieux apprendre, ceux qui avaient lâesprit le plus ouvert. Je retiens trĂšs bien les informations qui me sont livrĂ©es avec un morceau de contexte. Notamment, je me souviens des gens et des circonstances et ma mĂ©moire code ça en dur pour de longues annĂ©es. Mon ex mâa parlĂ© des masques de sous-rĂ©seau, au dĂ©but du siĂšcle. Mon tendre Ă©poux mâa appris une foule de choses allant de la tarte au citron Ă Excel. (Câest plutĂŽt pour la tarte au citron que je lâai Ă©pousĂ©, pour info.) En Python, Florian mâa permis de comprendre les comprĂ©hensions, Anthony mâa montrĂ© all() et any() et mâa appris Ă aimer ce langage, tout ça pendant un mois de dĂ©cembre dĂ©sĆuvrĂ©. Jean-Michel a Ă©tĂ© le tas sur lequel jâai appris Django quand je suis arrivĂ©e sur son projet la bouche en cĆur avec surtout de lâexpĂ©rience en PHP. (Pardon JM, je ne voulais pas te traiter de tas, câĂ©tait juste pour jouer avec lâexpressionâŠ) Carmen nous a parlĂ© de parametrize(), ma fonctionnalitĂ© prĂ©fĂ©rĂ©e de pytest, lors dâun meetup de meufs. RaphaĂ«l G. est toujours ma rĂ©fĂ©rence pour le CSS et lâhumour alsacien grĂące Ă ses confĂ©rences incroyables. En accessibilitĂ©, je peux citer plein de gens rencontrĂ©s Ă Paris Web. Ce client juriste qui passait par lĂ mâa appris involontairement, Ă la faveur dâune mise en prod un surlendemain de vaccin, lâexistence des enregistrements DNS de type AAA. Et longtemps aprĂšs que les brumes vaccinales se sont dissipĂ©es, Arthur mâa indiquĂ© quâen fait câest AAAA (purĂ©e celui-lĂ je ne lâoublierai pas #lahonte). (Pourquoi me souvenir de tous ces dĂ©tails et toujours pas du numĂ©ro de tĂ©lĂ©phone de mon mari ? VraimentâŠ) Comment me souviendrais-je de tout cela si tout ce que jâapprenais se trouvait dans le mĂȘme contexte ? Transmettre Lâexercice du mĂ©tier pratiquĂ© dans des conditions idĂ©ales favorise la transmission presque constante des connaissances. Au quotidien, une heure de pair programming câest une quantitĂ© surprenante de petites et grandes informations qui sont Ă©changĂ©es dans les deux sens ; on parle du code quâon Ă©crit, mais aussi de nos outils. Une discussion autour dâune pull request câest lâoccasion dâamĂ©liorer le code produit mais aussi de prĂ©ciser ce que lâon sait sur la CI, sur lâinstallation des dĂ©pendances, etc. Un meetup, câest lâoccasion dâen apprendre davantage sur un sujet technique, et surtout sur lâĂ©tat du marchĂ© local de lâemploi des dev. Une confĂ©rence, pareil mais Ă une Ă©chelle nationale ou internationale. Un shitpost sur Mastodon ou feu Twitter, câest lâoccasion de prendre des notes sur les habitudes des autres, sur un outil Ă tester le lendemain, une confĂ©rence Ă visiter. Petit Ă petit, au fil des mois et des annĂ©es, jâai construit ma compĂ©tence comme une somme de petites choses que je sais faire plus ou moins par hasard car jâai rencontrĂ© un ensemble de belles personnes qui mâont marquĂ©e et transmis un peu de leur savoir. Pour faire une rĂ©fĂ©rence un peu facile : ce mĂ©tier, câest surtout des rencontres. La technique je trouve ça assez secondaire. Travailler uniquement avec lâIA gĂ©nĂ©rative prive de ces rencontres toutes et tous les dev qui commencent. Tout ce que lâon transmet, câest encore plus de donnĂ©es Ă la machine. Elle ne vous le rendra pas. Conclure Je suis inquiĂšte de constater que je ne me sens pas beaucoup mieux aprĂšs avoir Ă©crit plus de 2200 mots. Je rage de savoir que mon travail va ĂȘtre avalĂ© par des bots et recrachĂ© au hasard sous forme de soupe sans Ăąme. Je me demande si une rĂąlerie supplĂ©mentaire sur lâIA va changer quelque chose ; je crains que non. Je crains aussi un peu pour mon employabilitĂ©, Ă affirmer publiquement que je refuse lâIA gĂ©nĂ©rative. En rĂ©sumĂ© : ça ne va pas fort. Je ne suis pas trĂšs sĂ»re de vouloir rester dĂ©veloppeuse dans ces conditions. En 2026 jâai pris la rĂ©solution de regarder dâautres mĂ©tiers. De loin, pour lâinstant. Juste pour rĂ©flĂ©chir. Pour savoir dans quelle direction accĂ©lĂ©rer quand je serai en Ăąge de faire ma crise de la quarantaine. Je mâapprĂȘte Ă suivre une formation de prise de parole au micro. Jâenvisage dâaller assister Ă des oraux de concours de lâenseignement. Et surtout, jâai rouvert mon dossier de reconversion en sage-femme. Le mĂ©tier me semble encore plus intĂ©ressant quâen 2018. Mes quelques annĂ©es de plus me donnent encore plus de raisons de vouloir lâexercer. Jâaimerais vous assurer que je mâarrĂȘterai en chemin si la bulle Ă©clate enfin, mais je crois que câest trop tard.
if you're using AI regularly to generate text/presentations that you intend to use persuasively i don't think i can trust a single thing you say. Where does the AI end and the human begin?
I think this is why im so against AI generated commit messages especially if the code was written by a human, you wrote the code so you should be able to demonstrate that you understand what the change does and why.
If you're deferring that to an AI and you made a subtle logic error that it decides to justify for you suddenly we have obfuscated our own fucking zero days. Good luck finding the bug if the commit message describes the error as if it was intentional.
For general text, if you start with the conclusion and let the AI write the justification then there is no justification!!! Details matter, having a paper trail for decision making matters.
I wonder how many executives will escape the consequences of their white collar crimes by blaming AI.
AI zombification is coming and it's going to create a distinct difference in communication styles between those who do and don't use it, honestly that point is already here.
And we're gonna find out yet again that marx was right when it becomes clear that AI usage correlates with class lines.
Did they just bend the copper pipes by hand?
Of course they did. And now the pipes are not neatly aligned. Specialized tools are expensive and only meant for professionals. Bruh. They better hide their botched job correctly once they come back to do the embellishments.
There's a leak in my ceiling. The insurance arranges for someone to come and fix (after four weeks of durdling around).
Guy's not briefed. Comes with half the gear needed to do proper work. Uses mine haphazardly.
I'm staying there to oversee the works, because I really have no confidence in them doing a decent job otherwise (if at all).