Monthly Archives: June 2017

Jun 30

How to use named indicators in RPG

Programming , IBM i , RPG

When is an RPG indicator more than just a number? We can use a named data structure to overlay over the top of all the indicators used in the program. Using this technique, we can define a sensible name for the each of the memory spaces associated with the indicators. For example — when the user […]

More Waffle
Jun 28

You say Tomato, I say Pomedoro

Life , Programming

Over the last year, I’ve found a marked decrease in productivity during project work due what seems like a lot more life interruptions. I’m (a) easily distracted, (b) the king of procrastination and (c) frequently trying to multi-task to such a wide degree that I almost completely zone out and have revisit and rework things […]

More Waffle
Jun 25

What is RPG OA?

IBM i , Programming , Webservice

I was talking about RPG OA today. If you’re an IBM i techie, then you will know about OA already. You probably understand its power and potential in our IBM-i world. If youre a bit more old school, you’ve been churning out column based code for years, or you are living under a rock in […]

More Waffle
Jun 19

If Programming Languages Were Religions

IBM i , Life

RPG would be Jehovah’s Witnesses – RPG programmers are of the elite 144,000 left in the world (because there are only 144,000 left in the world) and believe they are in the last days of the present world and lots of people make fun of them for their beliefs and rigid standards. The modern generation […]

More Waffle
Jun 14

West Coast Programmers


“Remember, you are on the West Coast now. You are expected to have and use at least one of these….surf board, sail board, skate board. Walking is permitted only in unusual circumstances. Generally you should be running, biking, skate boarding etc. to get from one place to another on terra firma. That is just a […]

More Waffle
Jun 03

RPG Example reading JSON using JSON_TABLE from IFS

IBM i , Programming , RPG , Webservice

Decode JSON webservice reply data (already stored in IFS) using JSON_TABLE This reads the JSON from the IFS – decodes it using JSON_TABLE and reports on time taken to perform decode. In this case the JSON data is a simple layout that looks like this: {“users”:[{“userID”:”@123″,”firstName”:”Billy”,”lastName”:”Bob”,”initials”:”123″,”company”:110,”division”:30,”department”:325,”secProfile”:””},{“userID”:”AAATEMP”,”firstName”:”Albert”,”lastName”:”Smith”,”initials”:”AAA”,”company”:110,”division”:1,”department”:1,”secProfile”:””},{“userID”:”AAATEST”,”firstName”:”Andy”,”lastName”:”Tester”,”initials”:”AAA”,”company”:110,”division”:1,”department”:530,”secProfile”:”AAT”},{“userID”:”AAA3″,”firstName”:”Fred”,”lastName”:”Blogs”,”initials”:”AA3″,”company”:110,”division”:1,”department”:1,”secProfile”:”AAA”},{“userID”:”AATEST”,”firstName”:”AA”,”lastName”:”TEST”,”initials”:”AAT”,”company”:110,”division”:1,”department”:1,”secProfile”:””},{“userID”:”ABB”,”firstName”:”Abba”,”lastName”:”Dancing Queen”,”initials”:””,”company”:110,”division”:1,”department”:1,”secProfile”:””},{“userID”:”BINGBONG”,”firstName”:”Bing”,”lastName”:”Bong”,”initials”:”BB”,”company”:110,”division”:2,”department”:2,”secProfile”:””},{“userID”:”LITTENN”,”firstName”:”Nick”,”lastName”:”Litten”,”initials”:”NJL”,”company”:001,”division”:1,”department”:123,”secProfile”:”Secret Squirrel”}]} This JSON example contains the values: USERID […]

More Waffle