…and it has a couple of cool/must-have updates Current Latest Version This is the freshest drop. IBM pushes these updates a few times a year, so always grab the newest one. Previous Recent Releases Why You Should Update Right Now Version 1.1.9.11 fixed a nasty XML External Entity (XXE) injection vulnerability (CVE-2025-66516) that could let

Read More

(Before You Become a Walking Error Message) If you’re new to the IBM i world, congratulations – you’ve just stepped into one of the most powerful, stable, gloriously quirky computing platforms ever built. But before you can call yourself anything other than “that person who keeps locking QSYSOPR,” you need to memorise a handful of

Read More

“This week I’ve been mostly writing sub-procedures” If you have spent any time writing modern RPGLE on IBM i, you’ve seen small sub-procedures, bloated sub-procedures, simple, complex and plain crazy sub-procedures. Over the last week, I’ve been working hard to modernize a whole bunch of legacy RPG and SQL RPG code into cohesive, reusable sub-procedures

Read More

If you have ever stared at a dusty fixed-format RPG III program from the 1990s and thought “there has to be a better way”, then IBM’s latest AI-powered sidekick might just be your new best friend. Meet IBM BOB (yes, that’s the official name now – Project Bob has grown up). BOB is IBM’s AI-first

Read More

AKA – Taming the wild west of RPGLE/SQLRPGLE source code comments with IBM i BOB, turning cryptic developer scribbles into a perfectly standardized, comment utopia. If you spend any time maintaining IBM i systems like I do, you know how messy legacy RPGLE and SQLRPGLE source can get. One program after another with zero comments,

Read More

If you are just getting started with IBM i systems or you need a solid refresher on how the database really works under the hood, you have landed in the right place. Today we are going to walk through the complete hierarchy of IBM i data structures in a clear, step by step way. We

Read More

One of the most common headaches when you integrate your IBM i with the outside world is converting data between EBCDIC and ASCII. You get a flat file from a PC, pull JSON from a web service, or process input from another platform and suddenly your strings look like garbage. The good news is that

Read More

If you have read my previous blogs, you probably know that I recommend we all stop guessing file sizes and switch to SIZE(*NOMAX) for all physical files! Now for something a little more radical, STOP USING DDS and start defining your database objects with SQL instead! Upgrading from legacy DDS to SQL for defining tables,

Read More

In almost all the IBM-i shops I’ve worked at, we have always set the initial size of physical files to what seems like a reasonable value. Quite often we just accept the system default of 10,000 records with three increments of 1,000 records each. Sometimes we tweak one or more of those numbers, usually the

Read More

If you are developing software on IBM i systems then IBM Bob has probably caught your attention by now. This AI powered coding assistant lives right inside your IDE and acts as a smart programming partner that understands your full codebase. It helps you design, refactor, review and modernize code with real expertise in RPG,

Read More

You know the drill. You fire up the IDE full of hope, and immediately get mugged by debugging hell, fossilized 90s RPG that smells of mothballs, pointless documentation, and soul-crushing code reviews. Absolute murder. Enter IBM BOB – my cheeky AI mate who actually enjoys hoovering up all that tedious programming guff for me. In

Read More

Restoring IBM i Libraries to Different Names : The Hidden Problems (and How to Fix Them) Cross-Logical Files • SQL Temp Objects • Triggers • Procedures • Journals • Plus the DFRID(YES) Solution Today we’re diving deep into one of those IBM i gotchas that trips up even experienced admins: restoring a library to a

Read More