Un développeur a entrepris d'utiliser l'IA pour créer un pilote Wi‑Fi natif FreeBSD pour une puce Broadcom BCM4350. Claude Code a échoué lorsqu'il a travaillé sans une planification. Dans un second temps, l'IA a généré une spécification complète du pilote, puis le code lui-même, en testant et ajustant les versions successives jusqu’à obtenir un module noyau fonctionnel capable de gérer la recherche de réseaux, la connexion aux bandes 2,4 GHz et 5 GHz, ainsi que l’authentification WPA/WPA2. L'ensemble du processus a été automatisé, sans que le développeur ait écrit manuellement le code final, illustrant à la fois les possibilités et les limites de l’IA dans le génie logiciel.Les fabricants de modèles d'IA soutiennent que la technologie va révolutionner l'ingénierie logicielle en automatisant la génération de code, les tests et la détection de bogues, ce qui accélèrera le développement et améliorera la qualité. L'IA vise à transformer le cycle de vie des logiciels et augmenter la productivité des développeurs. Cependant, les tests menés en conditions réelles ont donné des résultats contrastés, avec des coûts parfois très élevés.
Le développeur Varankin Vladimir possède un vieux MacBook Pro 2016 qui prenait la poussière. Il a décidé de le recycler pour jouer avec FreeBSD. Problème : la puce Wi-Fi Broadcom BCM4350 de l'appareil n'est pas supportée nativement par FreeBSD. La solution habituelle consiste à faire tourner une petite VM Linux (wifibox) pour gérer le matériel via le pilote Linux brcmfmac. Il voit là une nouvelle occasion de créer un vrai pilote natif pour FreeBSD.
Acte 1 : l'approche naïve avec Claude Code
L'idée initiale est simple : demander à Claude Code de porter le code Linux de brcmfmac vers FreeBSD, en s'appuyant sur LinuxKPI, la couche de compatibilité de FreeBSD. Le module a bien compilé, mais une fois testé sur le vrai matériel, les paniques noyau s'enchaînaient. L'agent accumulait des rustines et des wrappers #ifdef, le diff grossissait démesurément, et le pilote ne fonctionnait toujours pas. L'approche brute-force avait atteint ses limites.
Acte 2 : écrire une spécification d'abord
Inspiré par une vidéo du développeur de logiciels open source Armin Ronacher sur l'agent Pi, Varankin Vladimir change radicalement de méthode. Plutôt que de coder directement, il demande à l'IA de produire une spécification détaillée du fonctionnement interne du pilote brcmfmac, focalisée sur le chip BCM4350. Le résultat est un "livre" de 11 chapitres couvrant les structures de données, le protocole, le firmware, la gestion des événements, etc.
Pour s'assurer de la fiabilité, il fait relire la spécification par un second agent (Codex), puis valider les corrections par un troisième (Opus), en posant systématiquement le code source comme référence de vérité. Ce processus itératif de relecture croisée entre modèles lui permet d'obtenir une base documentaire solide.
Acte 3 : construire le pilote proprement
Armé de sa spécification, il lance un nouveau projet. Avant tout codage, il demande à l'agent de lister les décisions importantes à prendre et de tout documenter dans un fichier AGENTS.md pour que les sessions futures restent cohérentes. Le travail devient alors une routine productive : l'agent dispose d'un accès SSH à la machine de build et à la VM de test, avance méthodiquement selon ses propres jalons, et documente chaque progression.
Quand un crash survient, Varankin Vladimir ouvre une session distincte pour analyser et enregistrer le problème avant de le corriger. Enfin, un module noyau FreeBSD fonctionnel pour BCM4350 voit le jour, supportant le scan réseau, la connectivité 2,4 GHz/5 GHz et l'authentification WPA/WPA2.
Le rapport indique que le développeur n'a lui-même écrit aucune ligne de code. Le pilote fonctionne pour certaines tâches, mais il comporte encore des problèmes connus et n’est recommandé qu’à des fins d’étude et de test, pas pour un usage en production. L'expérience illustre aussi la valeur et les limites de l’IA dans des tâches complexes de développement logiciel. Le code source du pilote est publié sur GitHub (dépôt : narqo/freebsd-brcmfmac).
L'expérience mitigée menée par Anthropic avec Claude
Anthropic a annoncé qu'une équipe de 16 agents Claude Opus 4.6 ont écrit, en deux semaines et sans accès à Internet, un compilateur C en Rust de 100 000 lignes. Le compilateur est capable de compiler Linux et même le jeu Doom, Anthropic estimant qu'il s'agit d'une avancée. Mais lorsque l'on examine de plus près les performances réelles, l'utilité et la qualité du code, le discours passe de « percée révolutionnaire » à « expérience très coûteuse ».
Les tests suggèrent que les modèles excellent pour les parties « faciles » de la conception des compilateurs, mais échouent dans la logique algorithmique complexe requise pour l'optimisation. Les compilateurs se composent de deux parties : le frontend (analyse du...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.

