Utiliser l'IA pour porter un pilote Wi-Fi de Linux vers FreeBSD : une étude de cas

Tentative de portage direct du code par IA
Le développeur avait un MacBook Pro de 2016 avec une puce Wi-Fi Broadcom BCM4350 qui ne dispose pas de support natif sous FreeBSD. La solution de contournement typique est wifibox - une machine virtuelle Linux avec passage PCI. Au lieu de cela, ils ont tenté de porter directement le pilote Linux brcmfmac (licence ISC) vers FreeBSD en utilisant l'IA.
Ils ont cloné le sous-arbre brcmfmac et ont demandé à Claude Code de le faire fonctionner pour FreeBSD, en pointant spécifiquement vers le pilote iwlwifi comme référence pour utiliser LinuxKPI (la couche de compatibilité du noyau Linux de FreeBSD). La tentative initiale a produit un module qui se compilait mais ne fonctionnait pas car la machine virtuelle de test ne disposait pas du matériel réel.
Lors des tests avec le périphérique PCI réel, le noyau a planté. Claude Code a tenté de corriger les plantages en ajoutant des enveloppes #ifdef __FreeBSD__ et en construisant des adaptateurs et des rappels spécifiques à FreeBSD, mais a averti que le projet devenait "très compliqué et désordonné". Le diff résultant était nettement plus important que prévu, et le pilote restait non fonctionnel.
Approche par spécification d'abord
Inspiré par l'expérience d'Armin Ronacher avec Claude Opus et l'agent Pi, le développeur a changé d'approche. Reconnaissant que sa tâche était étroite (une seule puce, uniquement PCI, uniquement client Wi-Fi), il a lancé une nouvelle session Pi et a demandé à l'agent d'écrire une spécification détaillée du fonctionnement du pilote brcmfmac en se concentrant sur le BCM4350.
Il a explicitement défini le public comme "des lecteurs chargés d'implémenter la spécification dans un environnement de salle blanche" et a demandé des explications "jusqu'aux bits". L'agent a produit une spécification en 11 chapitres couvrant :
- 00-overview.md
- 01-data-structures.md
- 02-bus-layer.md
- 03-protocol-layer.md
- 04-firmware-interface.md
- 05-event-handling.md
- 06-cfg80211-operations.md
- 07-initialization.md
- 08-data-path.md
- 09-firmware-commands.md
- 10-structures-reference.md
Le développeur note que les spécifications générées par l'IA nécessitent une vérification, car on "ne peut pas simplement faire confiance à ce que l'IA a écrit".
📖 Lire la source complète : HN AI Agents
👀 See Also

Traduction en français : Un non-développeur crée un SaaS de santé en 3 semaines avec Claude et Gemini : leçons apprises
Un représentant commercial d'appareils médicaux sans expérience en programmation a créé FastCredentials.com, une plateforme de certification de conformité pour les soins de santé, en trois semaines en utilisant des assistants de codage IA. Le projet a utilisé Python/Django, Gunicorn, Nginx, Stripe, WeasyPrint, SQLite et l'API Claude pour le contenu automatisé du blog.

Un non-développeur crée un microservice IA cryptographiquement sécurisé avec Claude, Gemini et ChatGPT
Une personne de 60 ans sans expérience en programmation a créé un microservice d'IA appelé AgentGate en une semaine en utilisant Claude Code pour l'écriture, avec une vérification croisée par Gemini et ChatGPT. Le système comprend une base de données SQLite, une limitation de débit progressive, une signature cryptographique Ed25519 et plus de 50 tests réussis.

Construire une Distribution Linux avec Claude IA : Décryptage Pratique pour Développeurs
Un développeur avec 23 ans d'expérience dans la tech a créé NubiferOS, une distribution Linux renforcée en sécurité, en utilisant Claude IA comme équipe de développement entière. Le projet a impliqué 10 à 15 sessions Claude simultanées, générant environ 39 300 lignes de code et 57 500 lignes de documentation, sans aucune ligne de code écrite par un humain.

Utiliser Claude pour automatiser les mises à jour des métadonnées d'App Store Connect dans 33 langues
Un développeur iOS indépendant a utilisé Claude (via chat) pour générer un script Python qui s'authentifie avec l'API App Store Connect, traduit les métadonnées en 33 langues et publie le texte localisé des nouveautés — remplaçant des heures de travail manuel par mise à jour.