Skip to main content

Command Palette

Search for a command to run...

Learn IBMI/AS400

I Built learn-as400: A Practical Learning Guide for IBM i Developers

Updated
3 min readView as Markdown
Learn IBMI/AS400
G

Software Development Engineer -2 of Open Source technologies @eradani-inc

IBM i has a reputation for being stable, reliable, and difficult to replace. Many businesses still depend on applications written in RPG, CL, DDS, and Db2 for i. At the same time, finding structured and modern learning material for IBM i development can be surprisingly difficult.

That is why I created learn-as400.

The original idea was to build an interview question bank. While working on it, I realised that interview preparation alone was too narrow. A good question often introduces a complete concept: how a job runs, how a library list is resolved, why a record is locked, or what happens when a service program changes.

So the project became a learning guide as well as an interview companion.

What is included?

The guide currently contains 31 chapters, 204 explained questions, and 155 interactive MCQs. The topics range from IBM i fundamentals to production troubleshooting.

Some of the areas covered include:

  • IBM i objects, libraries, and library lists

  • Physical files, logical files, DDS, and file operations

  • Db2 for i, SQL, cursors, and query design

  • RPG, RPGLE, RPG IV, opcodes, procedures, and data structures

  • CL and CLLE job orchestration

  • Jobs, job queues, subsystems, batch processing, and scheduling

  • ILE modules, programs, service programs, binding, and activation groups

  • Data queues, data areas, message queues, commitment control, and locks

  • Debugging, security, APIs, integration, performance, and recovery

  • Real-world design scenarios and tricky interview questions

Each question has an expandable answer so the learner can first think through the problem before reading the explanation. The answers focus on practical reasoning, trade-offs, common mistakes, and production behaviour.

Coding practice is included too

A separate coding chapter contains RPG exercises in both fixed-format and fully free-format styles. This is useful for developers who are maintaining older applications as well as those writing modern RPG.

The exercises cover keyed reads, SETLL and READE, updates, validation, and restartable batch processing. Each exercise includes an explanation of the expected behaviour and the situations that should be tested.

The MCQs also include code-completion questions, so the learner has to understand what an operation does rather than only memorising definitions.

References and verification

Every chapter links to IBM documentation or IBM Redbooks for further reading. The explanations are intended to make the concepts easier to approach, but IBM’s documentation remains the authority.

IBM i behaviour can depend on the operating-system release, compiler level, Technology Refresh, PTFs, configuration, and application environment. Readers should verify technical details against the documentation for their target system before implementing anything.

The project is open source and available on GitHub. Suggestions, corrections, and additional question ideas are welcome.