I Modernized an 80s ATM System in 3 Minutes with IBM’s Bob (Full Breakdown)

BBetter Stack
Computing/SoftwareManagementInternet Technology

Transcript

00:00:00Check this out.
00:00:01This is interesting.
00:00:02It didn't add any tests because this is typical for legacy mainframe applications that rely
00:00:07on manual testing or mainframe specific testing tools not present in the repository.
00:00:13This is Bob, IBM's new IDE, which they call your AI powered development partner.
00:00:20So a few months ago, I did a video on IBM's flagship granite models, and now they're pushing
00:00:25it to the next level by releasing a brand new IDE platform with a cute avatar and a ton
00:00:31of cool features, all powered by their granite models.
00:00:34In this video, we'll take a closer look at Bob, see how it works, test it out, and figure
00:00:39out if Bob is really the next autonomous architect we've all been waiting for.
00:00:45It's gonna be a lot of fun, so let's dive into it.
00:00:51So in a world of Claude codes, Geminis, codecs, and all other AI model harnesses, it begs
00:00:58the question, what makes Bob special or unique?
00:01:01Well, while most assistants are focused on vibe coding, which is basically just generating
00:01:06snippets as fast as possible, Bob is built for architectural governance.
00:01:11It's less about a single chat window and more about an agentic workflow that separates planning
00:01:17from execution.
00:01:18IBM specifically designed Bob to have a set of helpful features that let you carefully
00:01:23control different phases of your development cycles, like planning, coding, reviewing, etc.
00:01:30And you can see this in their mode picker at the very bottom of the chat.
00:01:34You have an ask mode for quick questions or code mode for implementation and a plan mode.
00:01:40And you can even create your own custom modes tailored to your needs.
00:01:44But one of my favorite features is their review mode.
00:01:48You can run a slash review command, and Bob uses its built-in security guardrails to scan
00:01:53for things like hard-coded secrets, injection risks, or weak OWASP practices.
00:01:59It even gives you a dedicated findings panel where you can triage issues similar to a professional
00:02:05security audit tool.
00:02:07But this one is built directly in your IDE.
00:02:09And if you prefer CLIs, you can also use it in the terminal with Bob Shell.
00:02:14And because IBM is one of the oldest tech companies out there and they have such deep
00:02:18roots in mainframe systems, Bob probably has a specialized understanding of older languages
00:02:24like COBOL.
00:02:25So I decided to put it up to the ultimate test.
00:02:28You know how everyone jokes that COBOL is one of the most ancient languages that still powers
00:02:33a lot of banking systems and ATM machines, and how everyone is terrified to touch the
00:02:38source code out of fear of breaking a global financial pipeline?
00:02:42Well, I've grabbed an open-source COBOL repository called zBank, and we're going to see if Bob
00:02:48can reverse engineer this legacy mainframe logic and autonomously modernize it into a
00:02:53functional Python app.
00:02:55So as soon as I open Bob for the first time, it will ask you to import your settings from
00:03:00other popular IDEs like VS Code.
00:03:03So I'm going to go ahead and do that.
00:03:04And now, once we're inside, we can see that it looks very similar to VS Code, but with
00:03:09a little cute Bob chat panel on the side.
00:03:12And here we can see that we can also choose one of the modes that we discussed earlier.
00:03:17Since I'm not planning a new project, I'm just going to go ahead with the code mode to ask
00:03:22Bob to start coding right away.
00:03:24And for the prompt, I've specified that Bob is a Python developer who's been tasked with
00:03:28modernizing the old COBOL ATM machine stack and turn it into a nice clear web app powered
00:03:34by Streamlit with a good looking UI.
00:03:37And before Bob starts writing the code, it displays a very detailed auto approval model.
00:03:43And this is a nice touch because here you can specify exactly what the agent is allowed
00:03:47to do without your permission.
00:03:49And let's be real, I think most of the time we're just hitting auto approval all the time.
00:03:53But here you can actually define a clear sandbox so you can pick and choose.
00:03:58But for this demo, I'm going to allow it to read and write files in our repo and then let
00:04:03it do its thing.
00:04:04So it took Bob roughly three minutes to finish the task and now let's spin up the app and
00:04:08see how it actually works.
00:04:10So we got this nice dark themed login page at the very start.
00:04:13And we can log in with the hard coded demo credentials to test it out.
00:04:18And the dashboard also looks quite decent, although the pop up text is too bright.
00:04:22So it does lack a bit of design judgment, but all the operations are functional.
00:04:27So overall, it did manage to successfully complete this task and modernize the COBOL stack.
00:04:33And now I want to try the review function.
00:04:35This will force Bob to do a full audit of the codebase and find any potential security issues.
00:04:42Once we run this, we now see that there's a new Bob findings panel, which just popped
00:04:46up, where we can examine each issue in more detail.
00:04:49And if we click on one of the issues, you can see that there's also this handy light bulb
00:04:54button.
00:04:55And if we click that, Bob will automatically go ahead and try to fix this issue on its own.
00:05:00And not only that, but after fixing it, it also asks if we want to add a dedicated unit
00:05:05test for that specific issue.
00:05:08So let's go ahead and click that.
00:05:10And now we can see that Bob adds additional tests and executes them to double check that
00:05:15the issue is indeed fixed.
00:05:17And here we can also see the diff logs of the changes Bob made.
00:05:21Let's try another issue.
00:05:22This one is interesting.
00:05:23It detected a potential race condition issue.
00:05:26So let's click on the light bulb and try to fix that one.
00:05:29Oh, wow.
00:05:30The fix for this is actually a one liner change to add a begin immediate command for proper
00:05:35locking in SQLite.
00:05:37Pretty nice.
00:05:38So now again, we can let it fix it and then ask it to add proper tests for it to make sure
00:05:43that the issue is properly handled.
00:05:46And there's one last thing I want to check.
00:05:47So I'm going to open a new copy of this repository without our Python changes.
00:05:52And I want to run the review command on the original COBOL implementation to see if it
00:05:57finds any potential issues.
00:05:59And look at that.
00:06:00It found eight issues.
00:06:02So it can confidently identify critical bugs, even in such old languages as COBOL.
00:06:08And I don't I don't understand what's going on here.
00:06:10But let's just try and fix one of these issues.
00:06:12And once again, after fixing it, Bob asks if we want to add dedicated tests to it.
00:06:19So let's click yes.
00:06:20And check this out.
00:06:21This is interesting.
00:06:23It didn't add any tests because this is typical for legacy mainframe applications that rely
00:06:28on manual testing or mainframe specific testing tools not present in the repository.
00:06:33Wow.
00:06:34So I guess this is such an ancient stack that they didn't even test it automatically back
00:06:39then.
00:06:40So there are probably no testing frameworks for COBOL that exists in the wild.
00:06:45So that is pretty interesting.
00:06:47But anyway, there you have it, folks.
00:06:49That is Bob in a nutshell.
00:06:51Now this might be a hot take, but I honestly really like using IDEs opposed to CLIs where
00:06:57I don't understand what the agent is doing most of the time.
00:07:00I really value the fact that such a tool like Bob has separate panels and UI controls for
00:07:06things like approvals or review findings.
00:07:09I find that it provides a much more structured way of working within code bases and splitting
00:07:15tasks and having a full picture of what's actually going on.
00:07:19So if you want to try Bob for yourself, they do provide a free trial that includes 40 Bob
00:07:24coins to spend.
00:07:25And for comparison, the test we just did there cost around four Bob coins and one Bob coin
00:07:30is equivalent to 50 cents USD.
00:07:33So what do you think about Bob?
00:07:34Have you tried it?
00:07:35Will you use it?
00:07:36Let us know in the comment section down below.
00:07:38And folks, if you like these types of technical breakdowns, please let me know by smashing
00:07:42that like button underneath the video.
00:07:44And also don't forget to subscribe to our channel.
00:07:47This has been Andris from Betterstack, and I will see you in the next videos.

Key Takeaway

IBM's Bob IDE improves legacy system modernization by providing an agentic workflow that autonomously reverse-engineers COBOL code into functional Python apps while simultaneously conducting security audits and generating unit tests.

Highlights

  • IBM's Bob is an AI-powered IDE designed for architectural governance and agentic workflows rather than simple code generation.

  • The platform features an automated review mode that identifies hard-coded secrets, injection risks, and weak OWASP practices.

  • Bob successfully reverse-engineered an open-source COBOL 'zBank' repository and modernized it into a functional Python web application in approximately 3 minutes.

  • Security audits in Bob allow users to click a light bulb icon to trigger autonomous fixes and add relevant unit tests.

  • The tool provides granular control through an auto-approval model, allowing users to define specific file read and write permissions for the agent.

  • Testing a free trial of Bob costs 4 coins, where 1 coin is valued at $0.50 USD.

Timeline

Architectural Design and Workflow Capabilities

  • Bob prioritizes architectural governance over rapid snippet generation.
  • The IDE supports separate modes for planning, coding, and review.
  • Built-in security guardrails scan for injection risks and hard-coded secrets.

Unlike standard AI coding assistants that focus on high-speed code generation, this tool separates development phases to maintain structural control. Users select specific modes via a picker to dictate the agent's behavior. A dedicated security audit feature allows for triaging issues directly within the development environment, functioning similarly to professional security audit tools.

Modernizing Legacy COBOL Systems

  • The IDE successfully converted legacy COBOL logic into a Streamlit-powered Python application.
  • Conversion of the zBank repository took approximately 3 minutes.
  • An auto-approval model allows users to define sandbox boundaries for agent autonomy.

To test its mainframe capabilities, the agent was tasked with migrating an open-source COBOL ATM stack. After importing existing settings from other IDEs like VS Code, the agent followed a specified prompt to build a UI-driven web application. Users can configure the agent's permissions before execution to manage read and write access to the repository.

Security Auditing and Automated Remediation

  • The review command identified 8 critical issues in the original COBOL codebase.
  • Autonomous fixes include generating dedicated unit tests to verify issue resolution.
  • Legacy systems often lack testing frameworks, which prevents automatic test generation for older stacks.

The tool audits code to find vulnerabilities like potential race conditions, which it can resolve with one-line changes like adding locking commands for SQLite. While the agent automatically generates tests for modern code, it detects when a repository lacks the necessary framework to support testing, which is common in ancient mainframe applications.

UI Integration and Pricing

  • Structured UI panels for approvals and findings increase project visibility.
  • A free trial provides 40 coins, where each coin equals $0.50 USD.
  • Typical tasks cost approximately 4 coins to execute.

Structured interfaces provide visibility into agent actions, which are often obscured in CLI-based tools. Pricing is based on a coin system, with individual tasks consuming a small fraction of the total trial allotment. This structure allows developers to audit the decision-making process through dedicated panels.

Community Posts

View all posts