> Here we reach a point that is simultaneously the platform’s greatest advantage and heaviest burden. Due to such deep integration with dedicated and expensive hardware, IBM i is an “elite” system, in the less positive sense. A mere mortal, computer science student, or enthusiast has no chance to “touch” this system in the comfort of their home. You cannot download an ISO image from the internet, install it on a virtual machine in VirtualBox, or run it on your laptop. The barrier to entry is set at the price level of an IBM Power server, which effectively cuts off the supply of “fresh blood” and makes knowledge of this fascinating architecture passed down almost like guild knowledge, only within large organizations.
I took a course about these back in college. I thought it would be mind-expanding to see how computing could be outside of conventional Windows/Unix/Linux inspired environments, and use something with a very different design. The instructor had a desktop of one of these in his office. I remember logging into an official IBM educational system with a terminal emulator for an assignment.
Unfortunately, the instructor left about a month in, and I switched to a course involving UML modeling for programming Lego Mindstorm robots. Being hands-on with Mindstorms was cool, but I wonder what could have been had I finished the other course.
I'd recommend people read "Inside the AS400" by Frank G. Soltis, as the concepts behind the OS are quite strange and unlike anything else I've ever seen. Unfortunately paper copies are pretty expensive, but there's a high quality PDF floating around on Bittorrent.
The article makes me feel the author doesn’t have a deep understanding of some of the mechanisms. TIMI, iirc, is similar to Java (or Smalltalk) bytecode. I’m not sure it’s translated to native instructions on install or on module load, but the native code is kept so that the compilation doesn’t need to happen again. It’s as if the JVM saved a .nativeclass file when a .class file is loaded (kind of one level lower than what Python does, turning a .py file into a .pyc, or .pyo).
The concept of a flat object space we saw in Smalltalk and Lisps (the “system image”) would be seen again, kind of, in the Newton, the Palm, and, IIRC, in Taligent’s Pink. It’s a shame the IBMi is so poorly documented (in sharp contrast with its Z big brother) that no emulator capable of booting OS/400 images exists.
It’s not that this approach is perfect though - it’s really hard to bootstrap a Smalltalk image from scratch. I assume making an IBMi image without a running IBMi system would be similarly challenging.
The main database of the company i work for is DB2 on a very recent IBM System. In terms of sql there’s nothing i miss that postgresql has.
If only the company for the software which runs on top of the DB2 would have used single column primary keys (some go over 7 columns) and not decimal for dates…
>Thanks to this, an administrator seeing the string 123456/QUSER/QZDASOINIT immediately knows who and what launched it, without having to map mysterious PID numbers to service names.
did old UNIXes didn't have process names or something ? Those are exactly same information (pid/user/process name) UNIX derivatives or hell, windows get
Author seems to be blindsided by the "different" enough to not have any useful insight in it
As a youth a few decades ago I had an opportunity to play with one of these systems at home (and I actually still have it boxed up somewhere). I managed to acquire a 9401 Model 150 that fell off the back of a truck, it came with a 5250 terminal and a heavy box of documentation. Even as a kid who had started playing with linux in high school I really struggled to get it to IPL - the system was seriously weird from anything I had known before. Strangely enough, within two years of that I ended up working for IBM and went on to be trained on servicing AS/400 and iSeries systems. What was fascinating as an outsider coming in to IBM was just how hard they clutched their pearls on the AS/400 system. I also serviced RS/6000 (pSeries) and RS/6000 SP clusters so I saw two different sides of the house operate. I was a typical pimply faced youth eager to learn, and the pSeries guys, both in the field and in IBM training schools were happy to feed me all the info I could digest. When I needed software for testing stuff on my own personal AIX box, stuff would get passed my way no questions asked. On the iSeries side, they would quite literally tell me "no" and shut the door in my face if I was asking too many questions. Despite the fact that OS400 can't be ran on any other hardware than IBM's, IBM guards the SLIC or OS "golden tapes" very jealously. The class for learning how to service iSeries was four weeks long back then, and our brains got crammed full of tons of information. But if I asked questions outside the scope of servicing the hardware I'd still get the door slammed in my face ("that's a different class kid, your manager will have to approve that").
I only worked there for about five years and I am grateful for the experience. I'm also glad I left when I did to avoid becoming "institutionalized" in my thinking as I had witnessed others had become. I have to assume that the pearl clutching came from IBM's experience with Amdahl and its prized mainframe (zSeries). They had become so afraid of competition that they were even afraid us lowly CE's would start freelancing and selling consulting services on the side on OS/400 work. As a result of that, you have a walled garden which is very hard for fresh talent to penetrate and IBM likes it fine that way.
I'm curious how much of the AS/400 architecture leaks out to the application developers. In the end, the vast majority of the work done on these machines was done in RPG and COBOL.
Curious if most of the architecture was visible to the actual operators, but the developers themselves were, perhaps, a bit isolated from it all.
Because, I don't think HN is a site for "Unix/NT" enthusiasts, but more so high level "computerists" in general. And I don't think that AS/400 application developers would be any less interested in computing than other developers.
Yet, anecdotally, over the years, as much as I've heard bits and pieces about how interesting the AS/400 system is, I've heard anyone talking it up. How they're able to do Cool Computing Thing because of the OS or architecture that can't readily be done on other systems at the time. How the unique features of the AS/400 solved their application and systems problems.
At my office, long ago, we were looking to replace our entire system, and we actually went to an AS/400 demo. But it was very expensive, and whatever they were selling wasn't really resonating with me as a developer, or my boss as a manager. Always wondered "what if" had we got such a system and had to use it in anger what it would have been like.
So, I am a nurse by trade, and I somehow ended up as the administrator of one of these systems for a hospital for a number of years. I honestly had no idea how bespoke of a system it was, which I guess is a testament to its robustness!
...that and the two grey-bearded guys I had working for me took care of it like their baby.
11 comments of 36
[ 0.27 ms ] story [ 22.7 ms ] threadSome of my first exposure to enterprise IT was via the AS/400 and served as a fantastic basis for the cloud stack and agents of today.
I took a course about these back in college. I thought it would be mind-expanding to see how computing could be outside of conventional Windows/Unix/Linux inspired environments, and use something with a very different design. The instructor had a desktop of one of these in his office. I remember logging into an official IBM educational system with a terminal emulator for an assignment.
Unfortunately, the instructor left about a month in, and I switched to a course involving UML modeling for programming Lego Mindstorm robots. Being hands-on with Mindstorms was cool, but I wonder what could have been had I finished the other course.
The concept of a flat object space we saw in Smalltalk and Lisps (the “system image”) would be seen again, kind of, in the Newton, the Palm, and, IIRC, in Taligent’s Pink. It’s a shame the IBMi is so poorly documented (in sharp contrast with its Z big brother) that no emulator capable of booting OS/400 images exists.
It’s not that this approach is perfect though - it’s really hard to bootstrap a Smalltalk image from scratch. I assume making an IBMi image without a running IBMi system would be similarly challenging.
If only the company for the software which runs on top of the DB2 would have used single column primary keys (some go over 7 columns) and not decimal for dates…
>Thanks to this, an administrator seeing the string 123456/QUSER/QZDASOINIT immediately knows who and what launched it, without having to map mysterious PID numbers to service names.
did old UNIXes didn't have process names or something ? Those are exactly same information (pid/user/process name) UNIX derivatives or hell, windows get
Author seems to be blindsided by the "different" enough to not have any useful insight in it
I only worked there for about five years and I am grateful for the experience. I'm also glad I left when I did to avoid becoming "institutionalized" in my thinking as I had witnessed others had become. I have to assume that the pearl clutching came from IBM's experience with Amdahl and its prized mainframe (zSeries). They had become so afraid of competition that they were even afraid us lowly CE's would start freelancing and selling consulting services on the side on OS/400 work. As a result of that, you have a walled garden which is very hard for fresh talent to penetrate and IBM likes it fine that way.
Curious if most of the architecture was visible to the actual operators, but the developers themselves were, perhaps, a bit isolated from it all.
Because, I don't think HN is a site for "Unix/NT" enthusiasts, but more so high level "computerists" in general. And I don't think that AS/400 application developers would be any less interested in computing than other developers.
Yet, anecdotally, over the years, as much as I've heard bits and pieces about how interesting the AS/400 system is, I've heard anyone talking it up. How they're able to do Cool Computing Thing because of the OS or architecture that can't readily be done on other systems at the time. How the unique features of the AS/400 solved their application and systems problems.
At my office, long ago, we were looking to replace our entire system, and we actually went to an AS/400 demo. But it was very expensive, and whatever they were selling wasn't really resonating with me as a developer, or my boss as a manager. Always wondered "what if" had we got such a system and had to use it in anger what it would have been like.
Anyone have any war stories to share?
...that and the two grey-bearded guys I had working for me took care of it like their baby.