Ich habe ein 80er-Jahre-Geldautomatensystem in 3 Minuten mit IBMs Bob modernisiert (Vollständige Analyse)

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

Transcript

00:00:00Schaut euch das an.
00:00:01Das ist interessant.
00:00:02Es wurden keine Tests hinzugefügt, da dies typisch für alte Mainframe-Anwendungen ist, die
00:00:07auf manuellen Tests oder speziellen Mainframe-Testtools basieren, die nicht im Repository vorhanden sind.
00:00:13Das ist Bob, IBMs neue IDE, die sie ihren KI-gestützten Entwicklungspartner nennen.
00:00:20Vor ein paar Monaten habe ich ein Video über IBMs Flaggschiff-Granite-Modelle gemacht, und jetzt gehen sie
00:00:25einen Schritt weiter, indem sie eine brandneue IDE-Plattform mit einem niedlichen Avatar und einer Menge
00:00:31cooler Funktionen veröffentlichen, die alle von ihren Granite-Modellen angetrieben werden.
00:00:34In diesem Video werden wir uns Bob genauer ansehen, schauen, wie es funktioniert, es testen und herausfinden,
00:00:39ob Bob wirklich der nächste autonome Architekt ist, auf den wir alle gewartet haben.
00:00:45Das wird eine Menge Spaß machen, also lasst uns direkt eintauchen.
00:00:51In einer Welt von Claude Codes, Geminis, Codecs und all den anderen KI-Modell-Harnesses stellt sich
00:00:58die Frage: Was macht Bob so besonders oder einzigartig?
00:01:01Nun, während die meisten Assistenten auf Vibe-Coding fokussiert sind, was im Grunde nur bedeutet, so schnell
00:01:06wie möglich Code-Schnipsel zu generieren, ist Bob für architektonische Governance gebaut.
00:01:11Es geht weniger um ein einzelnes Chat-Fenster, sondern um einen agentenbasierten Workflow, der Planung
00:01:17von der Ausführung trennt.
00:01:18IBM hat Bob speziell so entworfen, dass er eine Reihe hilfreicher Funktionen besitzt, mit denen man sorgfältig
00:01:23verschiedene Phasen der Entwicklungszyklen steuern kann, wie Planung, Codierung, Überprüfung usw.
00:01:30Und das sieht man an der Modus-Auswahl ganz unten im Chat.
00:01:34Man hat einen Ask-Modus für schnelle Fragen, einen Code-Modus für die Implementierung und einen Plan-Modus.
00:01:40Und man kann sogar eigene, benutzerdefinierte Modi erstellen, die auf die eigenen Bedürfnisse zugeschnitten sind.
00:01:44Aber eine meiner Lieblingsfunktionen ist der Überprüfungsmodus.
00:01:48Man kann einen Slash-Review-Befehl ausführen, und Bob nutzt seine eingebauten Sicherheitsleitplanken, um nach
00:01:53Dingen wie hartcodierten Geheimnissen, Injektionsrisiken oder schwachen OWASP-Praktiken zu suchen.
00:01:59Es bietet sogar ein eigenes Ergebnis-Panel, in dem man Probleme wie bei einem professionellen
00:02:05Sicherheits-Audit-Tool triagieren kann.
00:02:07Aber dieses ist direkt in die IDE integriert.
00:02:09Und wenn man CLIs bevorzugt, kann man es auch im Terminal mit Bob Shell verwenden.
00:02:14Und da IBM eines der ältesten Technologieunternehmen überhaupt ist und so tiefe
00:02:18Wurzeln in Mainframe-Systemen hat, hat Bob wahrscheinlich ein spezielles Verständnis für ältere Sprachen
00:02:24wie COBOL.
00:02:25Also habe ich beschlossen, es dem ultimativen Test zu unterziehen.
00:02:28Ihr wisst, wie jeder scherzt, dass COBOL eine der ältesten Sprachen ist, die immer noch viele
00:02:33Bankensysteme und Geldautomaten antreibt, und wie jeder Angst hat, den Quellcode zu berühren,
00:02:38aus Angst, eine globale Finanzpipeline zu unterbrechen?
00:02:42Nun, ich habe ein Open-Source-COBOL-Repository namens zBank genommen, und wir werden sehen, ob Bob
00:02:48diese alte Mainframe-Logik zurückentwickeln und autonom in eine
00:02:53funktionale Python-App modernisieren kann.
00:02:55Sobald ich Bob zum ersten Mal öffne, werde ich aufgefordert, meine Einstellungen von
00:03:00anderen beliebten IDEs wie VS Code zu importieren.
00:03:03Also werde ich das jetzt tun.
00:03:04Und jetzt, wenn wir drin sind, sehen wir, dass es sehr ähnlich wie VS Code aussieht, aber mit
00:03:09einem kleinen, niedlichen Bob-Chat-Panel an der Seite.
00:03:12Und hier können wir sehen, dass wir auch einen der Modi wählen können, die wir zuvor besprochen haben.
00:03:17Da ich kein neues Projekt plane, werde ich einfach den Code-Modus verwenden, um Bob zu bitten,
00:03:22sofort mit dem Codieren zu beginnen.
00:03:24Und für den Prompt habe ich spezifiziert, dass Bob ein Python-Entwickler ist, der die Aufgabe hat,
00:03:28den alten COBOL-Geldautomaten-Stack zu modernisieren und in eine schöne, klare Web-App zu verwandeln,
00:03:34die von Streamlit mit einer gut aussehenden UI betrieben wird.
00:03:37Und bevor Bob anfängt, den Code zu schreiben, zeigt es ein sehr detailliertes Auto-Genehmigungsmodell an.
00:03:43Und das ist eine nette Sache, denn hier kann man genau festlegen, was der Agent
00:03:47ohne die eigene Erlaubnis tun darf.
00:03:49Und seien wir ehrlich, ich denke, die meiste Zeit klicken wir einfach ständig auf Auto-Genehmigung.
00:03:53Aber hier kann man tatsächlich eine klare Sandbox definieren, also kann man auswählen.
00:03:58Aber für diese Demo werde ich erlauben, Dateien in unserem Repo zu lesen und zu schreiben und dann
00:04:03Bob seine Arbeit machen lassen.
00:04:04Es hat Bob ungefähr drei Minuten gekostet, die Aufgabe zu erledigen, und jetzt starten wir die App und
00:04:08sehen, wie sie tatsächlich funktioniert.
00:04:10Wir haben also diese schöne dunkel gestaltete Anmeldeseite ganz am Anfang.
00:04:13Und wir können uns mit den hartcodierten Demo-Anmeldedaten anmelden, um es zu testen.
00:04:18Und das Dashboard sieht auch ziemlich gut aus, obwohl der Pop-up-Text zu hell ist.
00:04:22Es mangelt also ein wenig an Design-Urteilsvermögen, aber alle Operationen sind funktional.
00:04:27Insgesamt ist es ihm also gelungen, diese Aufgabe erfolgreich zu erledigen und den COBOL-Stack zu modernisieren.
00:04:33Und jetzt möchte ich die Überprüfungsfunktion ausprobieren.
00:04:35Dadurch wird Bob gezwungen, eine vollständige Prüfung des Codes durchzuführen und potenzielle Sicherheitsprobleme zu finden.
00:04:42Sobald wir das ausführen, sehen wir nun, dass es ein neues Bob-Ergebnis-Panel gibt, das gerade
00:04:46aufgetaucht ist, wo wir jedes Problem genauer untersuchen können.
00:04:49Und wenn wir auf eines der Probleme klicken, sieht man, dass es auch diese praktische Glühbirnen-Schaltfläche
00:04:54gibt.
00:04:55Und wenn wir darauf klicken, wird Bob automatisch versuchen, dieses Problem von sich aus zu beheben.
00:05:00Und nicht nur das, nach der Behebung fragt es auch, ob wir einen dedizierten Unit-Test
00:05:05für dieses spezifische Problem hinzufügen möchten.
00:05:08Also klicken wir da drauf.
00:05:10Und jetzt sehen wir, dass Bob zusätzliche Tests hinzufügt und sie ausführt, um doppelt zu überprüfen, ob
00:05:15das Problem tatsächlich behoben ist.
00:05:17Und hier können wir auch die Diff-Logs der Änderungen sehen, die Bob vorgenommen hat.
00:05:21Lass uns ein anderes Problem versuchen.
00:05:22Dieses hier ist interessant.
00:05:23Es hat ein potenzielles Race-Condition-Problem erkannt.
00:05:26Also klicken wir auf die Glühbirne und versuchen, das zu beheben.
00:05:29Oh, wow.
00:05:30Die Lösung hierfür ist eigentlich eine Ein-Zeilen-Änderung, um einen Befehl für sofortiges Beginnen zur ordnungsgemäßen
00:05:35Sperrung in SQLite hinzuzufügen.
00:05:37Ziemlich nett.
00:05:38Also können wir es wieder beheben lassen und dann bitten, ordnungsgemäße Tests dafür hinzuzufügen, um sicherzugehen,
00:05:43dass das Problem ordnungsgemäß behandelt wird.
00:05:46Und es gibt noch eine letzte Sache, die ich überprüfen möchte.
00:05:47Also öffne ich eine neue Kopie dieses Repositorys ohne unsere Python-Änderungen.
00:05:52Und ich möchte den Überprüfungsbefehl auf der ursprünglichen COBOL-Implementierung ausführen, um zu sehen, ob es
00:05:57irgendwelche potenziellen Probleme findet.
00:05:59Und schaut euch das an.
00:06:00Es hat acht Probleme gefunden.
00:06:02Es kann also selbst in so alten Sprachen wie COBOL kritische Bugs sicher identifizieren.
00:06:08Und ich, ich verstehe nicht, was hier vor sich geht.
00:06:10Aber lasst uns einfach versuchen, eines dieser Probleme zu beheben.
00:06:12Und wieder einmal fragt Bob nach der Behebung, ob wir dedizierte Tests dafür hinzufügen wollen.
00:06:19Also klicken wir auf Ja.
00:06:20Und schaut euch das an.
00:06:21Das ist interessant.
00:06:23Es hat keine Tests hinzugefügt, da dies typisch für alte Mainframe-Anwendungen ist, die
00:06:28auf manuellen Tests oder speziellen Mainframe-Testtools basieren, die nicht im Repository vorhanden sind.
00:06:33Wow.
00:06:34Also nehme ich an, das ist ein so alter Stack, dass sie damals nicht einmal automatisch
00:06:39getestet haben.
00:06:40Es gibt also wahrscheinlich keine Testframeworks für COBOL, die in der freien Natur existieren.
00:06:45Das ist also ziemlich interessant.
00:06:47Aber wie auch immer, da habt ihr es, Leute.
00:06:49Das ist Bob im Grunde genommen.
00:06:51Nun, das mag eine gewagte Meinung sein, aber ich mag es ehrlich gesagt wirklich, IDEs im Gegensatz zu CLIs zu verwenden, bei denen
00:06:57ich die meiste Zeit nicht verstehe, was der Agent tut.
00:07:00Ich schätze es wirklich sehr, dass ein Tool wie Bob separate Panels und UI-Steuerelemente für
00:07:06Dinge wie Genehmigungen oder Überprüfungsergebnisse hat.
00:07:09Ich finde, es bietet eine viel strukturiertere Art und Weise, innerhalb von Codebasen zu arbeiten, Aufgaben aufzuteilen
00:07:15und ein vollständiges Bild davon zu haben, was eigentlich vor sich geht.
00:07:19Wenn ihr also Bob selbst ausprobieren wollt, bieten sie eine kostenlose Testversion an, die 40 Bob-Münzen zum
00:07:24Ausgeben beinhaltet.
00:07:25Und zum Vergleich: der Test, den wir gerade durchgeführt haben, hat etwa vier Bob-Münzen gekostet, und eine Bob-Münze
00:07:30entspricht 50 Cent USD.
00:07:33Also, was denkt ihr über Bob?
00:07:34Habt ihr es ausprobiert?
00:07:35Werdet ihr es benutzen?
00:07:36Lasst es uns in den Kommentaren unten wissen.
00:07:38Und Leute, wenn ihr diese Art von technischen Aufschlüsselungen mögt, lasst es mich bitte wissen, indem ihr diesen
00:07:42Like-Button unter dem Video drückt.
00:07:44Und vergesst auch nicht, unseren Kanal zu abonnieren.
00:07:47Das war Andris von Betterstack, und ich sehe euch in den nächsten Videos.

Key Takeaway

Die IBM-IDE Bob ermöglicht durch strukturierte, agentenbasierte Workflows und integrierte Sicherheitsleitplanken die automatisierte Modernisierung von Legacy-Systemen wie COBOL in moderne Python-Anwendungen.

Highlights

  • IBMs KI-Entwicklungspartner Bob trennt durch einen agentenbasierten Workflow die Planung von der Ausführung.

  • Die IDE bietet einen integrierten Überprüfungsmodus, der Code auf Sicherheitsrisiken wie hartcodierte Geheimnisse und OWASP-Schwachstellen scannt.

  • Die Modernisierung eines COBOL-basierten Geldautomaten-Stacks in eine funktionale Streamlit-Python-App dauerte drei Minuten.

  • Bob erkennt kritische Bugs in COBOL-Codebasen, kann jedoch aufgrund fehlender Testframeworks in alten Mainframe-Umgebungen keine automatisierten Unit-Tests hinzufügen.

  • Die Testversion von Bob enthält 40 Münzen, wobei eine Münze einem Wert von 0,50 USD entspricht.

Timeline

Funktionsweise und Architektur von Bob

  • Bob fokussiert sich auf architektonische Governance statt auf reine Code-Generierung.
  • Die IDE bietet dedizierte Modi für Planung, Codierung und Sicherheitsüberprüfungen.
  • Ein integriertes Ergebnis-Panel ermöglicht die Triagierung von Sicherheitsproblemen direkt in der Entwicklungsumgebung.

Im Gegensatz zu Tools, die nur Code-Schnipsel generieren, nutzt Bob agentenbasierte Workflows zur Steuerung von Entwicklungszyklen. Nutzer können zwischen Ask-, Code- und Plan-Modi wählen oder eigene Modi definieren. Der Überprüfungsmodus scannt den Code automatisch nach Sicherheitslücken und bietet eine Benutzeroberfläche zur professionellen Fehlerbehebung.

Modernisierung eines COBOL-Systems

  • Ein COBOL-Geldautomaten-Stack wurde in eine Python-Web-App mit Streamlit-UI umgewandelt.
  • Der Modernisierungsprozess erforderte drei Minuten Bearbeitungszeit.
  • Benutzer können im Auto-Genehmigungsmodell eine Sandbox definieren, die Lese- und Schreibrechte im Repository steuert.

Die Leistungsfähigkeit bei der Migration von Legacy-Code wurde anhand eines Open-Source-Repositorys namens zBank getestet. Bob modernisierte die Mainframe-Logik erfolgreich in eine moderne Web-App. Während der Ausführung wird der Zugriff durch detaillierte Genehmigungsregeln kontrolliert, um unbefugte Änderungen zu verhindern.

Sicherheitsprüfung und Fehlerbehebung

  • Bob korrigiert erkannte Sicherheitsrisiken wie Race-Conditions automatisch durch ein-zeilige Code-Anpassungen.
  • Nach Fehlerbehebungen schlägt das Tool die Implementierung spezifischer Unit-Tests vor.
  • In alten Sprachen wie COBOL identifizierte das Tool acht kritische Probleme, konnte jedoch keine Tests hinzufügen.

Die Überprüfungsfunktion erzwingt eine vollständige Analyse des Codes. Bei der Behebung von Sicherheitsproblemen, wie etwa Race-Conditions in SQLite, werden Lösungen vorgeschlagen, die per Knopfdruck übernommen werden können. Das Fehlen von Testframeworks in der ursprünglichen COBOL-Umgebung verdeutlicht die Limitierungen bei der Arbeit mit historischen Systemen.

Fazit und Kostenstruktur

  • Die strukturierte Benutzeroberfläche bietet mehr Kontrolle als CLI-basierte Agenten.
  • Die Testversion bietet 40 Münzen, wobei eine Münze einem Wert von 50 Cent entspricht.
  • Der durchgeführte Modernisierungstest kostete etwa vier Bob-Münzen.

Die Trennung von UI-Steuerelementen für Genehmigungen und Analyseergebnisse sorgt für eine höhere Transparenz der Agenten-Aktionen. Die Kostenstruktur basiert auf einer Münz-Währung, was eine kalkulierbare Nutzung des Tools ermöglicht.

Community Posts

View all posts