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.
Actually all modern JVM implementations, and Android, do exactly that, JIT caches that survive across executions. On Android it is additionally used to guide AOT compilation when the device is idle or charging.
TIMI is compiled to native code on installation, or explicitly, either by the admin, or on updates that render the overall compilation invalid.
AI or not, it was a nice read. Some points needed correction, but, overall, it is a nice write up on one of the roads less traveled (and still commercially supported).
> 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.
You can get IBM i (OS/400) running at home, but the hurdles are many. You need to have one of a specific set of PowerPC servers and need to "acquire" an operating system image. Which will be running in unlicensed demo mode. This YouTuber did it.
It's long been said that the biggest obstacle to wider adoption of the AS/400 is IBM itself. They offer classes, but don't make it easy - you have to join COMMON (their user group) and/or be enrolled in a university.
Amusingly, however - IBM did produce - or worked on - a Laptop AS/400, based on PowerPC for purely internal use. I believe it was designed for sales/marketing types to take on the road for demos
I was familiar with both the "laptop AS400" and the PowerPC thinkpad - these were different hardware unrelated to each other. I believe the sales demo machine was a CISC architecture demo machine that predated PowerPC, but I'm not 100% confident here. I never laid eyes on the AS400 sales demo machine but we were told about it in IBM AS/400 training school. I also had one of the PowerPC laptops running AIX for a while, nice little machines for the day.
Yes. I could not fathom why anyone would want to run anything besides AIX on them though. You can run all the other OS's on cheap commodity hardware, the draw for me was having an AIX system to work with.
> passed down almost like guild knowledge, only within large organizations.
That's the part that always killed me about trying to set foot into IBM mainframes. "Ask your system programmer". "Ask your X/Y/Z". Even when they finally decided to ease up and let people touch z/PDT, they had to make it a massive learning obstacle course to be blessed enough to buy a license (and now that's gone).
Not all of us can go out and acquire an entire IBM z and be blessed enough to be able to throw it in our basements to build up our knowledge on. :\
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.
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.
We live in the shattered remains, badly reconstructed, of what a true operating system could be - we have some of the pieces (zfs, k8s, virtualization, scaling, failover, nixos, qubes) but imagine it all put together, orchestrated, carefully documented and tested by immense number of engineers. Ah, what could have been.
The problem is license costs. IBM makes a great system but almost all their customers have been working hard to replace it, not because of issues with the quality but the high license costs.
IBM AS/400 lineup was fully designed to optimize customer segmentation and threfore capture better the customer value. For example, there were cheaper models where the hardware was exactly the same as more expensive models except for additional hardware loops to make things run slower. That’s why they had so many models, they wanted to have a price point available for every company size.
There's really only one acceptable price for an OS, and it's the same as the only acceptable price for a browser or DB - $0.00. The precedent has been pretty solidly set (Linux, FreeBSD, MySQL, Postgres, Chrome, Firefox...) at this point, hence all the pivots to charging for service and support and suchlike.
This is what it feels like to look in at Linux from the outside as a Windows admin used to corporate-enforced consistency.
Sure, Microsoft has stumbled a bit recently, but around the 2010s it was a glorious era of PowerShell and Windows Server releases that were still improving.
I remember being quite young and proud that I had built something using Samba and Kerberos that mimicked an NT domain controller, and how powerful it was for our little LAN in the dorm, and why would anyone pay M$ for this, and then barely a few years later using small business server and being like "oh, that's why".
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…
The PowerPC name is still around although it's mostly around in the form of the POWER ISA used in systems that run AIX and, I believe OS/400. IBM i used to be a largely distinct product line that grew from older IBM minicomputers but a lot of the hardware is now shared with POWER systems running AIX (and Linux?) I've been largely out of this space for a while so I may have some details wrong.
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.
>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
The article was kind of terrible. If it had more emojis I would have said it was an AI generated summary. To really understand how strange AS/400 if you need to read Frank Soltis's book (he was the original architect of it at IBM).
It's cute to see folks who have completely drunk the in-house koolaid try to communicate to outsiders, and we're better off for it. I really struggled to understand OS/400 coming in with a working knowledge of Unix/Linux, concepts as simple as creating a text file document in OS/400 don't translate at all.
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.
Actually all modern JVM implementations, and Android, do exactly that, JIT caches that survive across executions. On Android it is additionally used to guide AOT compilation when the device is idle or charging.
TIMI is compiled to native code on installation, or explicitly, either by the admin, or on updates that render the overall compilation invalid.
Considering this article was 100% AI generated (according to Pangram), I doubt the author has much understand in of anything in the article.
AI or not, it was a nice read. Some points needed correction, but, overall, it is a nice write up on one of the roads less traveled (and still commercially supported).
There’s also MCP and OS2000 from Unisys.
> 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.
You can get IBM i (OS/400) running at home, but the hurdles are many. You need to have one of a specific set of PowerPC servers and need to "acquire" an operating system image. Which will be running in unlicensed demo mode. This YouTuber did it.
https://www.youtube.com/watch?v=mUwJk81YatA
It's long been said that the biggest obstacle to wider adoption of the AS/400 is IBM itself. They offer classes, but don't make it easy - you have to join COMMON (their user group) and/or be enrolled in a university.
https://www.ibm.com/university/power/ibmi/
Amusingly, however - IBM did produce - or worked on - a Laptop AS/400, based on PowerPC for purely internal use. I believe it was designed for sales/marketing types to take on the road for demos
It likely would have been based on the PowerPC-based ThinkPad like laptop they produced which also ran AIX (IBM's version of Unix). like these https://en.wikipedia.org/wiki/ThinkPad_Power_Series
I was familiar with both the "laptop AS400" and the PowerPC thinkpad - these were different hardware unrelated to each other. I believe the sales demo machine was a CISC architecture demo machine that predated PowerPC, but I'm not 100% confident here. I never laid eyes on the AS400 sales demo machine but we were told about it in IBM AS/400 training school. I also had one of the PowerPC laptops running AIX for a while, nice little machines for the day.
Yes, they ran AIX, NT, OS/2 and Solaris, although the latter two only in half baked betas.
Yes. I could not fathom why anyone would want to run anything besides AIX on them though. You can run all the other OS's on cheap commodity hardware, the draw for me was having an AIX system to work with.
> passed down almost like guild knowledge, only within large organizations.
That's the part that always killed me about trying to set foot into IBM mainframes. "Ask your system programmer". "Ask your X/Y/Z". Even when they finally decided to ease up and let people touch z/PDT, they had to make it a massive learning obstacle course to be blessed enough to buy a license (and now that's gone).
Not all of us can go out and acquire an entire IBM z and be blessed enough to be able to throw it in our basements to build up our knowledge on. :\
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.
Anyone have any war stories to share?
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.
https://archive.org/details/insideas4000000solt
IBM i was k8s before k8s, with fewer yaml files and better backwards compat
Some 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.
We live in the shattered remains, badly reconstructed, of what a true operating system could be - we have some of the pieces (zfs, k8s, virtualization, scaling, failover, nixos, qubes) but imagine it all put together, orchestrated, carefully documented and tested by immense number of engineers. Ah, what could have been.
The problem is license costs. IBM makes a great system but almost all their customers have been working hard to replace it, not because of issues with the quality but the high license costs.
IBM AS/400 lineup was fully designed to optimize customer segmentation and threfore capture better the customer value. For example, there were cheaper models where the hardware was exactly the same as more expensive models except for additional hardware loops to make things run slower. That’s why they had so many models, they wanted to have a price point available for every company size.
There's really only one acceptable price for an OS, and it's the same as the only acceptable price for a browser or DB - $0.00. The precedent has been pretty solidly set (Linux, FreeBSD, MySQL, Postgres, Chrome, Firefox...) at this point, hence all the pivots to charging for service and support and suchlike.
The older I get, the more compelling the IBM universe seems.
This is what it feels like to look in at Linux from the outside as a Windows admin used to corporate-enforced consistency.
Sure, Microsoft has stumbled a bit recently, but around the 2010s it was a glorious era of PowerShell and Windows Server releases that were still improving.
I remember being quite young and proud that I had built something using Samba and Kerberos that mimicked an NT domain controller, and how powerful it was for our little LAN in the dorm, and why would anyone pay M$ for this, and then barely a few years later using small business server and being like "oh, that's why".
Turns out it's far easier to do stuff if you are in control of every single level.
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…
Clabretro has a great series in the making on IBM i https://youtu.be/mUwJk81YatA
Wow, from the site looks like aix is still alive, as is PowerPC
PowerPC has become POWER, and you can get hardware outside of IBM.
https://www.raptorcs.com/
https://openpowerfoundation.org/
The PowerPC name is still around although it's mostly around in the form of the POWER ISA used in systems that run AIX and, I believe OS/400. IBM i used to be a largely distinct product line that grew from older IBM minicomputers but a lot of the hardware is now shared with POWER systems running AIX (and Linux?) I've been largely out of this space for a while so I may have some details wrong.
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.
TF is even this
>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
The article was kind of terrible. If it had more emojis I would have said it was an AI generated summary. To really understand how strange AS/400 if you need to read Frank Soltis's book (he was the original architect of it at IBM).
It's cute to see folks who have completely drunk the in-house koolaid try to communicate to outsiders, and we're better off for it. I really struggled to understand OS/400 coming in with a working knowledge of Unix/Linux, concepts as simple as creating a text file document in OS/400 don't translate at all.