J'ai modernisé un distributeur automatique des années 80 en 3 minutes avec Bob d'IBM (Analyse complète)

BBetter Stack
컴퓨터/소프트웨어경영/리더십AI/미래기술

Transcript

00:00:00Regardez ça.
00:00:01C'est intéressant.
00:00:02Il n'a ajouté aucun test, car c'est classique pour les applications mainframe héritées qui reposent
00:00:07sur des tests manuels ou des outils de test spécifiques aux mainframes absents du dépôt.
00:00:13Voici Bob, le nouvel IDE d'IBM, qu'ils appellent votre partenaire de développement boosté par l'IA.
00:00:20Il y a quelques mois, j'ai fait une vidéo sur les modèles phares Granite d'IBM, et maintenant ils passent
00:00:25au niveau supérieur en lançant une toute nouvelle plateforme IDE avec un avatar mignon et une tonne
00:00:31de fonctionnalités géniales, toutes propulsées par leurs modèles Granite.
00:00:34Dans cette vidéo, nous allons examiner Bob de plus près, voir comment il fonctionne, le tester et déterminer
00:00:39si Bob est vraiment le prochain architecte autonome que nous attendions tous.
00:00:45Ça va être très amusant, alors plongeons dans le vif du sujet.
00:00:51Dans un monde de Claude Codes, Geminis, codecs et autres harnais de modèles d'IA, on est en droit
00:00:58de se demander ce qui rend Bob spécial ou unique.
00:01:01Eh bien, alors que la plupart des assistants se concentrent sur le "vibe coding", qui consiste essentiellement à générer
00:01:06des extraits de code le plus rapidement possible, Bob est conçu pour la gouvernance architecturale.
00:01:11Il ne s'agit pas d'une simple fenêtre de chat, mais d'un flux de travail agentique qui sépare la planification
00:01:17de l'exécution.
00:01:18IBM a spécifiquement conçu Bob avec un ensemble de fonctionnalités utiles qui vous permettent de contrôler soigneusement
00:01:23les différentes phases de vos cycles de développement, comme la planification, le codage, la revue, etc.
00:01:30Et vous pouvez le voir dans leur sélecteur de mode tout en bas du chat.
00:01:34Vous avez un mode "ask" pour les questions rapides, un mode "code" pour l'implémentation et un mode "plan".
00:01:40Et vous pouvez même créer vos propres modes personnalisés adaptés à vos besoins.
00:01:44Mais l'une de mes fonctionnalités préférées est leur mode de revue.
00:01:48Vous pouvez exécuter une commande slash review, et Bob utilise ses garde-fous de sécurité intégrés pour rechercher
00:01:53des éléments comme des secrets codés en dur, des risques d'injection ou de faibles pratiques OWASP.
00:01:59Il vous offre même un panneau dédié aux résultats où vous pouvez trier les problèmes, à l'instar d'un outil
00:02:05professionnel d'audit de sécurité.
00:02:07Mais celui-ci est intégré directement dans votre IDE.
00:02:09Et si vous préférez les lignes de commande, vous pouvez également l'utiliser dans le terminal avec Bob Shell.
00:02:14Et comme IBM est l'une des plus anciennes entreprises technologiques et qu'ils ont des racines très profondes
00:02:18dans les systèmes mainframe, Bob a probablement une compréhension spécialisée des langages plus anciens
00:02:24comme le COBOL.
00:02:25J'ai donc décidé de le mettre à l'épreuve ultime.
00:02:28Vous savez comment tout le monde plaisante sur le fait que le COBOL est l'un des langages les plus anciens qui alimente encore
00:02:33beaucoup de systèmes bancaires et de distributeurs automatiques, et à quel point tout le monde est terrifié à l'idée de toucher au
00:02:38code source par peur de briser une pipeline financière mondiale ?
00:02:42Eh bien, j'ai récupéré un dépôt COBOL open source appelé zBank, et nous allons voir si Bob
00:02:48peut faire de l'ingénierie inverse sur cette logique mainframe héritée et la moderniser de manière autonome en une
00:02:53application Python fonctionnelle.
00:02:55Dès que j'ouvre Bob pour la première fois, il vous demande d'importer vos paramètres depuis
00:03:00d'autres IDE populaires comme VS Code.
00:03:03Je vais donc le faire.
00:03:04Et maintenant, une fois à l'intérieur, nous pouvons voir qu'il ressemble beaucoup à VS Code, mais avec
00:03:09un petit panneau de chat Bob mignon sur le côté.
00:03:12Et ici, nous pouvons voir que nous pouvons également choisir l'un des modes dont nous avons discuté précédemment.
00:03:17Comme je ne planifie pas de nouveau projet, je vais simplement utiliser le mode code pour demander à
00:03:22Bob de commencer à coder immédiatement.
00:03:24Et pour le prompt, j'ai précisé que Bob est un développeur Python chargé de
00:03:28moderniser l'ancienne pile COBOL de distributeur automatique pour la transformer en une application web claire propulsée
00:03:34par Streamlit avec une interface utilisateur attrayante.
00:03:37Et avant que Bob ne commence à écrire le code, il affiche un modèle d'approbation automatique très détaillé.
00:03:43C'est une touche agréable, car vous pouvez spécifier exactement ce que l'agent est autorisé
00:03:47à faire sans votre permission.
00:03:49Soyons honnêtes, je pense que la plupart du temps, nous cliquons tout le temps sur l'approbation automatique.
00:03:53Mais ici, vous pouvez réellement définir une sandbox claire, donc vous pouvez choisir.
00:03:58Mais pour cette démonstration, je vais l'autoriser à lire et écrire des fichiers dans notre repo, puis le laisser
00:04:03faire son travail.
00:04:04Il a fallu environ trois minutes à Bob pour terminer la tâche, maintenant lançons l'application et
00:04:08voyons comment elle fonctionne réellement.
00:04:10Nous avons donc cette belle page de connexion sombre dès le début.
00:04:13Et nous pouvons nous connecter avec les identifiants de démonstration codés en dur pour tester.
00:04:18Le tableau de bord a l'air assez correct, bien que le texte de la fenêtre contextuelle soit trop brillant.
00:04:22Il manque donc un peu de jugement en matière de design, mais toutes les opérations sont fonctionnelles.
00:04:27Dans l'ensemble, il a réussi à terminer cette tâche et à moderniser la pile COBOL.
00:04:33Maintenant, je veux essayer la fonction de revue.
00:04:35Cela forcera Bob à effectuer un audit complet de la base de code et à trouver tout problème de sécurité potentiel.
00:04:42Une fois exécuté, nous voyons apparaître un nouveau panneau de résultats Bob, où nous pouvons
00:04:46examiner chaque problème plus en détail.
00:04:49Et si nous cliquons sur l'un des problèmes, vous pouvez voir qu'il y a aussi ce bouton ampoule
00:04:54pratique.
00:04:55En cliquant dessus, Bob essaiera automatiquement de résoudre ce problème de son propre chef.
00:05:00Non seulement cela, mais après l'avoir corrigé, il demande aussi si nous voulons ajouter un test unitaire dédié
00:05:05pour ce problème spécifique.
00:05:08Allons-y, cliquons dessus.
00:05:10Et maintenant, nous pouvons voir que Bob ajoute des tests supplémentaires et les exécute pour vérifier deux fois que
00:05:15le problème est effectivement résolu.
00:05:17Ici, nous pouvons aussi voir les journaux de diff des modifications apportées par Bob.
00:05:21Essayons un autre problème.
00:05:22Celui-ci est intéressant.
00:05:23Il a détecté un problème potentiel de condition de concurrence.
00:05:26Cliquez donc sur l'ampoule et essayons de le corriger.
00:05:29Oh, wow.
00:05:30La correction est en fait une modification d'une seule ligne pour ajouter une commande begin immediate pour un verrouillage
00:05:35approprié dans SQLite.
00:05:37Assez sympa.
00:05:38Maintenant, nous pouvons à nouveau le laisser corriger et lui demander d'ajouter des tests appropriés pour s'assurer
00:05:43que le problème est correctement géré.
00:05:46Il reste une dernière chose que je veux vérifier.
00:05:47Je vais ouvrir une nouvelle copie de ce dépôt sans nos modifications Python.
00:05:52Et je veux exécuter la commande de revue sur l'implémentation COBOL originale pour voir s'il
00:05:57trouve des problèmes potentiels.
00:05:59Regardez ça.
00:06:00Il a trouvé huit problèmes.
00:06:02Il peut donc identifier en toute confiance des bugs critiques, même dans des langages aussi vieux que le COBOL.
00:06:08Je ne comprends pas ce qui se passe ici.
00:06:10Mais essayons de résoudre l'un de ces problèmes.
00:06:12Une fois de plus, après l'avoir corrigé, Bob demande si nous voulons y ajouter des tests dédiés.
00:06:19Cliquez sur oui.
00:06:20Regardez ça.
00:06:21C'est intéressant.
00:06:23Il n'a ajouté aucun test, car c'est typique des applications mainframe héritées qui reposent
00:06:28sur des tests manuels ou des outils de test spécifiques au mainframe non présents dans le dépôt.
00:06:33Wow.
00:06:34Donc je suppose que c'est une pile si ancienne qu'ils ne testaient même pas automatiquement à
00:06:39l'époque.
00:06:40Il n'existe probablement aucun framework de test pour le COBOL dans la nature.
00:06:45C'est donc assez intéressant.
00:06:47Mais bref, voilà les amis.
00:06:49C'est Bob en un mot.
00:06:51C'est peut-être un avis controversé, mais j'aime honnêtement beaucoup utiliser des IDE plutôt que des lignes de commande où
00:06:57je ne comprends pas ce que fait l'agent la plupart du temps.
00:07:00J'apprécie vraiment le fait qu'un outil comme Bob possède des panneaux séparés et des contrôles d'interface utilisateur pour
00:07:06des choses comme les approbations ou les résultats de revue.
00:07:09Je trouve que cela offre une manière beaucoup plus structurée de travailler au sein des bases de code, de diviser
00:07:15les tâches et d'avoir une image complète de ce qui se passe réellement.
00:07:19Donc si vous voulez essayer Bob par vous-même, ils proposent un essai gratuit qui inclut 40 pièces Bob
00:07:24à dépenser.
00:07:25Et pour comparaison, le test que nous venons de faire a coûté environ quatre pièces Bob, et une pièce Bob
00:07:30équivaut à 50 cents USD.
00:07:33Alors que pensez-vous de Bob ?
00:07:34L'avez-vous essayé ?
00:07:35L'utiliserez-vous ?
00:07:36Faites-le-nous savoir dans la section des commentaires ci-dessous.
00:07:38Et les amis, si vous aimez ces types d'analyses techniques, faites-le-moi savoir en fracassant
00:07:42ce bouton like sous la vidéo.
00:07:44Et n'oubliez pas non plus de vous abonner à notre chaîne.
00:07:47C'était Andris de Betterstack, et je vous verrai dans les prochaines vidéos.

Key Takeaway

Bob transforme la modernisation de bases de code héritées en un processus agentique sécurisé et structuré, capable de convertir du COBOL en Python fonctionnel en trois minutes grâce à ses fonctionnalités de gouvernance et d'audit intégrées.

Highlights

  • Bob est un IDE axé sur la gouvernance architecturale qui sépare explicitement la planification de l'exécution du code.

  • L'outil intègre une commande slash review pour identifier automatiquement les secrets codés en dur, les risques d'injection et les faiblesses OWASP.

  • Le modèle Granite d'IBM permet à l'agent de comprendre et de moderniser des langages hérités complexes comme le COBOL.

  • La modernisation autonome d'un dépôt COBOL vers une application Python avec interface Streamlit a nécessité seulement trois minutes.

  • La plateforme propose une structure de coût où quatre pièces Bob (à 50 cents USD l'unité) suffisent pour effectuer un audit et une modernisation complète d'un dépôt.

  • Les garde-fous de sécurité permettent d'ajouter des tests unitaires dédiés automatiquement après la correction de chaque vulnérabilité détectée.

Timeline

Architecture et fonctionnalités de Bob

  • Bob privilégie la gouvernance architecturale sur le simple codage rapide.
  • Le sélecteur de mode permet de passer de la planification à l'exécution et à la revue.
  • L'IDE inclut un panneau de sécurité dédié pour l'audit des vulnérabilités.

Contrairement aux assistants axés sur la génération rapide de code, Bob se concentre sur les cycles de développement contrôlés. Il propose des modes distincts pour la planification, le codage et la revue, permettant un contrôle granulaire. Son outil de revue intégré recherche activement des secrets ou des failles de sécurité, offrant une interface similaire à un logiciel d'audit professionnel.

Modernisation d'une pile COBOL

  • Un dépôt COBOL open source nommé zBank a été modernisé en une application Streamlit.
  • Le processus de modernisation a été achevé en trois minutes de manière autonome.
  • L'agent propose un modèle d'approbation détaillé pour définir les permissions de lecture et d'écriture.

La capacité de Bob a été mise à l'épreuve sur la modernisation d'un système bancaire legacy en COBOL. Après avoir configuré les permissions dans une sandbox, l'agent a généré une application web Python fonctionnelle avec une interface utilisateur. Ce test a validé la capacité de l'outil à gérer des langages anciens sans briser la logique métier sous-jacente.

Audit de sécurité et correction autonome

  • Le bouton ampoule permet de corriger automatiquement les problèmes de sécurité identifiés.
  • Bob est capable d'ajouter des tests unitaires pour valider la résolution des bugs détectés.
  • Le système identifie des bugs critiques même dans l'implémentation COBOL originale.

L'outil ne se contente pas de trouver des erreurs, il propose des corrections en un clic pour des problèmes comme les conditions de concurrence dans SQLite. Bien que les systèmes COBOL très anciens ne supportent parfois pas les tests unitaires modernes, Bob démontre une capacité avancée à analyser la dette technique et à sécuriser la base de code, le tout pour un coût opérationnel maîtrisé de 2 dollars par audit complet.

Community Posts

View all posts