Programming on IBM i is a trade with rules of its own, and nearly all of them have a reason that is written down nowhere: you learn by watching somebody work, and when that somebody retires the reason leaves with them.
This guide writes down what is usually handed on by word of mouth. Where the code lives, how it becomes a program, what separates a module from a service program, why the same file can be read in two completely different ways, and how to work out where something broke when the close is stuck at seven in the morning.
Who it is for
Anyone arriving from other languages. RPG is not the problem: the syntax takes a week. The problem is everything around it — source held inside a file, compilation producing an object, activation groups, the difference between reading a file record by record and querying it in SQL. People arriving from Java or Python know how to write code and do not know where to put it.
Anyone who has worked here for years. Much of this guide is familiar ground to long-time programmers on the platform, but not all of it: the chapters on ILE, embedded SQL and modernisation touch things many shops never adopted — not because they were weighed and rejected, but because they were never discussed.
What it is not
It is not an RPG course. There are no exercises, and syntax appears only where it explains a concept. Anyone after the language statement by statement will find IBM's documentation, which is complete and well made on this — it is just in English, and it assumes the context this guide tries to give.
Nor is it a manifesto about modernisation. Code that has run in production for twenty years is not technical debt by virtue of being old: it is capital that has stopped costing money. The modernisation chapter is about changing the parts worth changing, not about rewriting everything.
How it is organised
It starts with where the code lives and how it becomes a runnable object, because that is the step that confuses outsiders most. Then the two languages you actually meet, RPG and CL. Then data, which on this platform can be described in two ways and read in two ways. Then the part used most and taught least: working out where something broke. And finally how to change software without stopping it, and what tools the work is done with today.
Read the chapters in order the first time. After that they stand on their own.
Note
this guide assumes you know what a library is and how the library list works. If those are new terms, the systems guide covers that ground, and the two paths cross often: many problems that look like programming problems are environment problems.
Comments
No comments yet. Be the first to comment!
You need an account to comment. Log in · Sign up