pulkomandy a écrit 2249 commentaires

  • [^] # Re: Trop tôt pour moi

    Posté par  (site web personnel, Mastodon) . En réponse au lien Les IA génératives sont en train de me dégoûter de mon métier.. Évalué à 7 (+4/-0).

    Il y a des restaurants qui font de la bouffe correcte mais pas très bonne. Mais on leur donne pas d'étoile au guioe michelin. Il y a même des distributeurs de pizza 100% automatiques.

    Il y a des plombiers qui font des soudures correctes mans pas très bonnes. Mais on leur demande pas de construire des réacteurs nucléaires (enfin j'espère).

    C'est pareil pour l'informatique. Selon les entreprises, les clients et les projets, les moyens et les enjeux ne sont pas les mêmes. Dans mon cas, l'utilisation oe LLM est tout simplement interdite (et ce n'est pas ma décision, même si ça me convient très bien).

  • [^] # Re: Pendant ce temps

    Posté par  (site web personnel, Mastodon) . En réponse au journal De développeur à orchestrateur, comment l'IA a changé ma vie. Évalué à 5 (+2/-0).

    C'est toujours de l'optimisation, c'est juste que dans un cas on cherche à optimiser la vitesse d'exécution du code et dans l'autre on cherche à optimiser le temps passé par les développeurs à écrire le code (ou les risques de régression en refactorisant le code existant, ou d'autres facteurs).

    Selon les projets, c'est l'un ou l'autre qui coûte le plus cher.

  • [^] # Re: dommage de ne se concentrer que sur les jeux ....

    Posté par  (site web personnel, Mastodon) . En réponse au journal Wine 11 : NTSYNC débarque en production et ça envoie du lourd. Évalué à 5 (+2/-0).

    J'utilise plein de trucs qui datent d'avant l'invention de la carte SD pour ma part.

    C'est donc forcément Windows (ou Wine) et un port parallèle ou série, ou parfois des disquettes (bien que dans ce dernier cas, des solutions existent pour passer par une carte SD).

    Ceci dit, même si ton fichier à la fin est sur une carte SD, il faut bien l'avoir généré avec un outil à un moment dans la chaîne.

  • [^] # Re: anglicismes

    Posté par  (site web personnel, Mastodon) . En réponse au journal Un skill pour apprendre à l'IA à utiliser Manjaro. Évalué à 6 (+3/-0).

    Je propose "publication glissante" et "compétence" à la place. Pour ce dernier, utiliser le terme français met mieux en évidence le ridicule du truc en évitant la distance que l'anglais peut mettre (pour un locuteur non natif) entre le mot choisi et la réalité des choses.

  • [^] # Re: Quid du code?

    Posté par  (site web personnel, Mastodon) . En réponse au lien Proposition de loi relative à l'instauration d'une présomption d'exploitation des contenus culturels par les fournisseurs d'intelligence artificielle. Évalué à 10 (+7/-0).

    il ne semble faire aucun doute que l'aspiration et l'analyse par un système automatisé sont licites;

    euh, non?

    Relis la license, elle est pas très longue et très claire, il y a une condition à respecter:

    Si tu réutilises du code sus license MIT, tu dois inclure le texte complet de la license ainsi que la mention de copyright avec les années et les noms des auteurs.

    Ce n'est pas très contraignant, mais ça permet de tracer le code et de savoir qui l'a écrit (car, c'est bien connu, les développeurs de logiciels libres travaillent pour la gloire, pas pour l'argent).

    Si le LLM recrache une fonction sous license MIT sans mettre le nom de l'auteur, le copyright, et le texte de la license, ça ne especte pas la license. Il y a des chances que la license soit disponible dans la mémoire du LLM. Mais les noms des auteurs et les copyright, c'est moins sûr…

  • [^] # Re: Pendant ce temps

    Posté par  (site web personnel, Mastodon) . En réponse au journal De développeur à orchestrateur, comment l'IA a changé ma vie. Évalué à 10 (+16/-0).

    Alors j'aime beaucoup encadrer des stagiaires. Pourtant, je sais d'avance que le code produit ne va pas être utilisable, qu'il va falloir repasser 15 fois sur les relectures. Je sais que ça va me prendre 5 fois plus de temps que de faire les choses moi-même. Par contre, si ça fonctionne bien, à la fin du stage, j'ai un collègue qui est monté en compétence, et qui est opérationnel pour commencer à prendre part au développement du projet.

    "Encadrer" des LLM, qui ne peuvent jamais apprendre ce qu'on leur explique, et devoir répéter, répéter, et encore répéter? Et en plus, savoir qu'on travaille moins vite que si on faisait les choses soi même, c'est l'enfer. Pourquoi des gens s'infligent-ils ça?

  • [^] # Re: Corrections et compléments

    Posté par  (site web personnel, Mastodon) . En réponse au journal Je domotise mes volets roulants (avec cron et mqtt). Évalué à 4 (+1/-0).

    ça fonctionne presque parfaitement, l'un des 3 volets ne s'ouvre qu'à 90%, il faut que je trouve pourquoi. Je vais vérifier sa calibration…

  • [^] # Re: Douche froide

    Posté par  (site web personnel, Mastodon) . En réponse au journal Je domotise mes volets roulants (avec cron et mqtt). Évalué à 6 (+3/-0).

    J'ai, heureusement, des volets manuels dans les chambres. Même sans incendie, effectivement la perspective d'une coupure de courant survenant lorsque les volets sont fermés m'embête un peu. Mais je n'ai pas eu le choix: les volets étaient électriques et motorisés avant que je les domotise. Donc ce problème se posait déjà.

  • [^] # Re: SFR

    Posté par  (site web personnel, Mastodon) . En réponse au journal Sortir du CGNAT chez Red by SFR, c'est facile. Évalué à 3 (+0/-0).

    J'ai u un humain compétent en ligne dans la minute. Non seulement lors de ce déménagement, mais aussi lors de plusieurs incidents précédents où ma ligne ne fonctionnait plus, cela a été rétabli rapidement (quelques jours maximum).

    Le bot whatsapp et l'application sont très facilement contournables une fois que vous connaissez l'url des formulaires de contact.

  • # Résumé

    Posté par  (site web personnel, Mastodon) . En réponse au lien BrokenArXiv: How Often Do LLMs Claim To Prove False Theorems?. Évalué à 7 (+4/-0).

    On demande à des LLM d'essayer de prouver des théorèmes qui sont faux.

    Le meilleur modèle arrive à répondre que le théorème est faux dans environ 40% des cas. Et encore, si on pose plusieurs fois la question, de temps en temps il peut ne pas voir le problème, donc il y a seulement 20% des cas ou le problème est détecté de façon fiable.

    Les autres LLM sont encore plus à la ramasse, avec un qui atteint un tout petit score de 3%.

    Ceci avec une évaluation relativement généreuse:

    • On ne vérifie pas si le raisonnement pour prouver que le théorème est faux est correct. Le modèle peut donc gagner des points avec un raisonnement mathématique foireux ou sur un coup de chance.
    • Des points partiels sont accordés si le modèle choisit de modifier silencieusement la question posée pour obtenir un théorème qui est effectivement vrai, et prouver ce dernier.

    Bref: ne demandez pas à votre LLM de prouver un théorème, sauf si vous êtes déjà absolument sûr qu'il existe bien une preuve.

  • # Corrections et compléments

    Posté par  (site web personnel, Mastodon) . En réponse au journal Je domotise mes volets roulants (avec cron et mqtt). Évalué à 5 (+2/-0).

    Une erreur s'est glissée dans l'exemple de mosquitto_sub: il faut utiliser l'option -v au lieu de -d pour avoir l'affichage du topic. -d fonctionne aussi mais affiche en plus plein d'autres choses pas intéressantes.

    J'ai mis en place une règle cron pour lancer un script toute les minutes via /etc/cron.d/shutters:

    MAILTO=root
    
    */5 * * * * pulkomandy /usr/local/bin/shutters.py
    

    Le contenu du script:

    #!/usr/bin/python3
    
    import paho.mqtt.client as mqtt
    from datetime import datetime
    import sys
    
    now = datetime.now()
    
    action = None
    
    OPEN = 99
    WARN = 90
    HALF = 50
    CLOSE = 0
    
    shutters = [
        "zwave/Salon_Ouest/Shutter_Salon_Ouest/switch_multilevel/endpoint_1/targetValue/set",
        "zwave/Salon_Est/Shutter_Salon_Est/switch_multilevel/endpoint_1/targetValue/set",
        "zwave/Cuisine/Shutter_Cuisine/switch_multilevel/endpoint_1/targetValue/set",
    ]
    
    
    if now.month < 4 or month > 9:
        # Winter mode: close at night
        if now.hour == 7 and now.minute > 40 and now.minute <= 45:
            action = OPEN
    
        # Close a little bit first, make sure everyone is inside
        if now.hour == 20 and now.minute > 55 and now.minute <= 60:
            action = WARN
        if now.hour == 21 and now.minute > 0 and now.minute <= 5:
            action = CLOSE
    else:
        # Summer mode: close during the day
        # On weekends, only half-close to let some light in
        if now.weekday() > 4:
            if now.hour == 8 and now.minute > 25 and now.minute <= 30:
                action = WARN
            if now.hour == 8 and now.minute > 30 and now.minute <= 35:
                action = HALF
            if now.hour == 23 and now.minute > 0 and now.minute <= 5:
                action = OPEN
        else:
            if now.hour == 8 and now.minute > 25 and now.minute <= 30:
                action = WARN
            if now.hour == 8 and now.minute > 30 and now.minute <= 35:
                action = CLOSE
            if now.hour == 17 and now.minute > 25 and now.minute <= 30:
                action = WARN
            if now.hour == 17 and now.minute > 30 and now.minute <= 35:
                action = HALF
            if now.hour == 23 and now.minute > 0 and now.minute <= 5:
                action = OPEN
    
    # If there is nothing to do, well, do nothing
    if action is None:
        sys.exit(0)
    
    client = mqtt.Client()
    
    # Number of pending requests
    pending = -1
    
    # Callback called when the client is connected.
    # Publish all commands and set "pending" to continue looping until they are processed.
    @client.connect_callback()
    def on_connect(client, userdata, flags, reason_code):
        global pending
        pending = len(shutters)
        for shutter in shutters:
            client.publish(shutter, action)
    
    # Publish esponse callback. Decrement the pending request count
    @client.publish_callback()
    def on_publish(client, userdata, mid):
        global pending
        pending = pending - 1
    
    # Connect and wait for all requests to be processed
    client.connect("localhost")
    
    while pending != 0:
        client.loop()

    Je verrai si cela nécessite des améliorations plus tard. On peut beaucoup simplifier en faisant un script qui accepte en argument le pourcentage d'ouverture des volets, et plusieurs règles cron pour l'appeler aux heures adéquates. Pour commencer j'ai fait sans trop réfléchir, un script appelé toutes les 5 minutes, qui décide pour chaque tranche de 5 minutes ce qu'il a besoin de faire ou pas.

    Déjà je vous dirai demain si mes volets se sont bien ouverts tout seuls!

  • [^] # Re: Anticiper l'avenir

    Posté par  (site web personnel, Mastodon) . En réponse au journal Je domotise mes volets roulants (avec cron et mqtt). Évalué à 3 (+0/-0).

    Tiens, je n'ai jamais pensé à ça. Chez moi j'ai du zigbee, et je n'ai pas constaté de problème de communication sur la borne wifi ou le recepteur zigbee.

    Oui en fait c'est peu probable qu'il y aie vraiment des problèmes. Le wifi sera sans doute beaucoup plus perturbé par la présence d'autres réseaux wifi chez les voisins, et par le four à micro-ondes (qui m'a posé des problèmes à l'époque où il se trouvait au milieu de l'appartement, avec la box d'un côté et l'ordinateur de l'autre. J'avais des coupures de vidéos youtube lorsque je me préparais un chocolat chaud. Mais ce n'est plus le cas, sûrement le matériel récent est plus résistant, et puis le wifi est compatible 5GHz maintenant).

    Mais il fallait bien une raison ou une autre pour justifier le choix du Z-Wave. Je n'ai du coup rien contre le Zigbee, que je n'ai pas testé (pour l'instant…).

  • [^] # Re: Licence de Qt

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Nouveautés de Sailfish OS 5.0. Évalué à 4 (+1/-0).

    Pour lever tout doute, c'est toujours la même chose en Qt 6: https://doc.qt.io/qt-6/licensing.html

  • [^] # Re: Pour résumer

    Posté par  (site web personnel, Mastodon) . En réponse au lien Un test du Tangara, le clone de l'iPod pour hacker en open hardware. Évalué à 5 (+2/-0).

    Ils n'ont vendu que 1200 unités, c'est donc de la production en série moyenne (ni petite, ni grande) qui est probablement la plus pénible à faire: pas assez pour faire un moule d'injection plastique, mais trop pour pouvoir facilement imprimer en 3D par exemple. La solution retenue est donc de l'usiner à partir d'un bloc de polycarbonate. Ce qui fait qu'il faut acheter un bloc de plastique puis en réduire la majorité en copeaux. Peu efficace du point de vue de l'utilisation du matériau, mais c'est probablement la solution la plus économique pour ce volume de production.

    Même chose pour l'assemblage des circuits imprimés: les coûts de configuration des machines "pick and place" vont être plus importants que le coût des composants placés dedans.

    Il faut compter aussi l'emballage, l'expédition (probablement vers plusieurs pays avec les casse-tête administratifs que ça comporte), la certification CE et FCC, et surtout le prototypage du matériel et le développement du firmware.

    Finalement, sur un tel volume de production, ce n'est pas le prix des composants électroniques qui domine les coûts (ça ne vaut effectivement vraiment pas très cher).

  • [^] # Re: Pour résumer

    Posté par  (site web personnel, Mastodon) . En réponse au lien Un test du Tangara, le clone de l'iPod pour hacker en open hardware. Évalué à 8 (+5/-0).

    Le choix de matériel (un processeur ESP32) pour ce lecteur MP3 me semble surprenant. Ce sont des composants où la RAM disponible se compte en kilo-octets, ce qui est bien peu. Une RAM externe de 8Mo se rajoute, mais elle est accessible en SPI ce qui semble peu pratique.

    Ce CPU étant un peu limité, il y en a un deuxième juste pour gérer la communication via le port USB.

    Le premier iPod avait 32Mo de RAM puis cela est passé à 64Mo à partir de la 5ème génération (capable de lire de la vidéo).

    Peut-être qu'un autre choix de matériel aurait permis d'avoir un peu plus de marge de maneuvre pour écrire le logiciel plus facilement, ou bien pourquoi pas utiliser Rockbox au lieu de re-développer tout un firmware?

  • [^] # Re: IPv4 agnostique de ton FAI

    Posté par  (site web personnel, Mastodon) . En réponse au journal Sortir du CGNAT chez Red by SFR, c'est facile. Évalué à 6 (+3/-0).

    En fait je ne gère que la réception des mails et pas l'envoi. C'est beaucoup plus facile.

    Pour l'envoi actuellement je passe par gmail qui relaie mes messages. Il y a longtemps j'étais abonné chez Alice ADSL et je pouvais utiliser les serveurs de free comme relais, mais chez Red je n'ai pas réussi à faire la même chose.

    Il faudra que je regarde si je peux trouver un autre fournisseur pour ça. Effectivement, auto héberger l'envoi sans avoir de reverse DNS correct et avec une IP "résidentielle" risque d'être compliqué.

  • [^] # Re: Aucune adresse précédente

    Posté par  (site web personnel, Mastodon) . En réponse au journal Sortir du CGNAT chez Red by SFR, c'est facile. Évalué à 8 (+5/-0).

    ça semble possible de demander un "rollback IPv4" même en étant nouveau client. En tout cas je ne vois pas de raison pour laquelle ça ne fonctionnerait pas. Dans mon cas il s'agit d'un déménagement mais j'ai changé de numéro de téléphone, d'adresse IP et de version de la box. Donc finalement c'est presque une nouvelle ouverture de ligne.

    Mais il faut effectivement contacter le service technique par téléphone, et peut-être qu'il faut avoir la chance de tomber sur quelqu'un qui comprend ce qu'on demande. J'ai lu sur d'autres forums que certains clients ont du tenter leur chance plusieurs fois. Peut-être que certains mots clés (dire qu'on a un NAS, parler de CGNAT ou de Rollback IPv4) permettent de se faire comprendre sans avoir à rentrer trop dans les détails techniques.

  • [^] # Re: Du coup, ce n'est pas si facile ;)

    Posté par  (site web personnel, Mastodon) . En réponse au journal Sortir du CGNAT chez Red by SFR, c'est facile. Évalué à 7 (+4/-0).

    Oui ça serait encore plus simple en effet.

    Mais j'ai été surpris par la réactivité du service technique et par le fait qu'ils aient pris note de me recontacter une semaine plus tard pour faire la manipulation sans que j'aie besoin de refaire une demande.

    Il doit être possible de contourner l'appli ou le bot whatsapp en se rendant directement sur l'URL de contact.

    Mais ces adresses ne sont pas faciles à trouver sur leur site.

    Vous aurez besoin du numéro de téléphone de la ligne concernée, mais si vous ne l'avez pas sous la main, d'autres moyens de la retrouver sont possibles (adresse mail associée, par exemple).

  • [^] # Re: Je confirme

    Posté par  (site web personnel, Mastodon) . En réponse au lien Nouvel effet secondaire pervers du pillage massif du web par les entreprises d'IA (robots BnF empêchés de faire leur travail). Évalué à 4 (+1/-0).

    Une autre solution pour les envoyer dans le sink sans identification c'est un lien non visible par les humains, arrivant très tôt dans la page, voir sur une page de garde.

    Moi j'ai mis un lien visible dont le texte est à peu près "ne cliquez pas ici, ceci est une protection contre les robots, vous allez vous faire bannir du serveur".

    Mais les requêtes proviennent d'un tellement grand nombre d'IPs que le bannissement (par cette méthode et d'autres) reste peu efficace. Chaque IP fait moins de requêtes qu'un visiteur normal du site chargeant la page d'accueil et les quelques ressources (images, css, …) qui y sont liées.

  • [^] # Re: le github du projet...

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Nouvelles de Haiku - Hiver 2025-26. Évalué à 5 (+2/-0).

    Le projet Haiku n'utilise pas Github, c'est simplement un mirroir.

    Le code est auto hébergé et la forge logicielle utilisée se compose de Gerrit (pour la revue de code et le serveur Git) et Trac (pour le suivi des tickets).

    Quelques dépôts annexes sont pour l'instant hébergés chez Github, mais une migration vers Codeberg est en cours pour ces derniers.

  • [^] # Re: moui

    Posté par  (site web personnel, Mastodon) . En réponse au lien Nouvel effet secondaire pervers du pillage massif du web par les entreprises d'IA (robots BnF empêchés de faire leur travail). Évalué à 10 (+8/-0).

    La BNF collecte toutes sortes de choses, on en avait entendu parler par exemple lors de la fermeture des Skyblogs. Ils ont été archivés mais contiennent beaucoup de données personnelles (photos, etc). Il faut donc trouver l'équilibre entre la préservation de ces pages, et la protection de la vie privée des personnes concernées, le droit à l'oubli, etc.

    La solution est de préserver les pages mais de ne pas les rendre accessibles à tout le monde sur internet.

    Cette approche est complémentaire de celle d'autres projets comme archive.org, qui eux font le choix de tout exposer publiquement, et s'exposent à des demandes de suppression de données et à diverses attaques en justice pour cette raison. C'est très pratique d'avoir archive.org, et le mode de fonctionnement de la BNF est un peu "vieille école", certes. Mais finalement, les deux se complètent assez bien. Le jour où internet n'existera plus, si la BNF a bien fait son travail, les pages archivées seront toujours consultables. Tout comme l'INA préserve ce qui a été diffusé à la radio et à la télévision, mais ne met pas tout en consultation gratuite, par exemple.

  • [^] # Re: Résumé de la situation

    Posté par  (site web personnel, Mastodon) . En réponse au lien GNU/Linux Open Hardware PowerPC notebook. Évalué à 3 (+0/-0).

    Oui c'est une architecture morte chez NXP. Les nouveaux modèles utilisent de l'ARM. Dans les premières générations, les périphériques développés pour le PowerPC étaient conservées mais le coeur de CPU remplacé, ce qui causait quelques problèmes euh… intéressants car les deux n'ont pas le même boutisme/endianness. Il fallait bien faire attention dans la documentation, avec certaines parties numérotant les bits à partir du poids faible et d'autres à partir du poids fort…

    Ils avaient déjà fait le même genre de migration pour les processeurs venant de la famille Motorola Dragonball, à l'origine avec un coeur 68000, qui sont remplacé par la série iMX avec du ARM.

    Si je ne dis pas de bêtise, les QorIQ (PowerPC) sont remplacés par la série Layerscape LX (ARM), pour laquelle il y a des modèles avec un contrôleur mémoire DDR4, par exemple.

    Je ne m'attend pas à voir de nouveaux modèles dans la famille QorIQ, la production va sûrement continuer quelques temps pour les clients existants, mais si j'étais en train de concevoir une carte mère, ce n'est pas sur cette architecture que j'aurais misé.

    Je suppose que l'objectif du projet, au moins en partie, est d'attirer les utilisateurs de MorphOS et AmigaOS, ces deux systèmes n'étant toujours pas portés sur d'autres architectures.

  • [^] # Re: Résumé de la situation

    Posté par  (site web personnel, Mastodon) . En réponse au lien GNU/Linux Open Hardware PowerPC notebook. Évalué à 3 (+0/-0).

    Il y a probablement un NDA signé avec NXP hour avoir accès à l'ensemble de leur documentation ainsi que le supprt de leurs FAE (field application engineers) dont le rôle est d'aider les clients à mettre en place leurs projets, mais aussi de recenser les difficultés rencontrées, améliorer la documentation, rédiger des "application notes", …

    Le NDA et le fait qu'une partie du travail soit faite par NXP explique peut-être ce besoin d'autorisation pour la publication des schémas complets. Un cas de figure qui n'est probablement pas prévu dans les contrat NDA types car c'est (trop) rare que de tels schémas soient publiés, et encore moins sous license libre.

  • # Résumé de la situation

    Posté par  (site web personnel, Mastodon) . En réponse au lien GNU/Linux Open Hardware PowerPC notebook. Évalué à 5 (+2/-0).

    • Le projet de laptop semble en pause pour l'instant, l'attention se porte depuis 2025 sur une carte mère desktop.
    • Le CPU proposé est toujours le T2080 de NXP, basé sur 4 coeurs e6500 (un design datant de 2012) à 1.6GHz maximum. Et donc la mémoire DDR3 d'époque qui va avec.
    • Il y a une nouvelle campagne de dons pour financer cette nouvelle carte mère. Depuis décembre 2025, cette campagne a collecté 90€ sur les 12500 nécessaires, ou bien le compteur de dons ne fonctionne pas (la liste des donateurs sur le côté de la page affiche un peu plus si on fait la somme, mais pas beaucoup).
  • [^] # Re: Méthode Shadock ?

    Posté par  (site web personnel, Mastodon) . En réponse au lien Amazon fait relire le code généré par IA par des dev seniors. Évalué à 5 (+2/-0).

    Pardon, je voulais répondre au lien et pas à un commentaire, j'ai pas cliqué au bon endroit.