Pub400.com – Your public IBM I 7.5 server
pub400.com
pub400.com
I used VAX/VMS and VM370/CMS in the 80s. I have fond memories of VAX/VMS and still log in to the machine at the computer museum to play dungeon. Would also program Lisp or so, but have not figured out how to transfer files.
For IBM my feelings are more mixed. The VM side was certainly what the rest of the world got only 30 years later. The CMS side felt already a bit obsolete then when you could run X11 on a Sun.
Have never used AS/400, but from all what I have heard it is horrible even compared to CMS.
I think this is run by a company that does offer commercial AS/400 instances, but they also provide free non-commercial accounts on this one box. Which is nice because it's not trivial to get your hands on your own system as a hobbyist.
> Have never used AS/400, but from all what I have heard it is horrible even compared to CMS.
I wouldn't say it's horrible compared to CMS. It's just _very_ different. I have played with quite a few operating systems...it's a bit of a hobby of mine... and OS/400 is the most different.
In terms of writing simple terminal-oriented forms applications to do basic CRUD operations against a relational database, OS/400 is actually pretty nice.
It's just such a WEIRD system.
The thing I find frustrating about it is that while it has a lot of interesting security controls, the defaults are wide open and I suspect there aren't a lot of people who could secure it to the point where you could give untrusted users "shell" access and not worry you've left some little nook or cranny open to them that you didn't mean to. [Presumably at least one of those people are involved with the pub400.com system!]
I also made a subpar guide to getting started on IBM i with RPGLE at https://barrettotte.github.io/IBMi-Book. Its a really fun language/environment and I recommend anyone take a try at coding something trivial.
I don't understand what advantages the AS/400 has over other machines.
Nowadays probably applications which really need reliability and uptime would benefit the most. Logistics stuff where you really need a central source of truth. Etc.
Or you’re the kind of programmer who wants a system that treats objects as full first class objects.
Something which AS/400 (now renamed IBM i) has never provided. People who’ve never studied it in detail get led astray by the “object-oriented” marketing hype into thinking it is something like Smalltalk-it ain’t.
Imagine a form of “OO” in which all classes (“object types”) were defined by the OS vendor and end-users or third party developers lacked the power to create new classes, they could only create instances of those defined by the OS vendor. And in which there is no real notion of inheritance-except for adhoc approximations to it, such as “type” fields in certain classes. That’s what “OO” means in OS/400.
And maybe they originally intended to lift those limitations - but it never happened. And AS/400 (and now IBM i) was essentially “version 2” of System/38, with incompatible changes, but changes which were modest rather than expansive (e.g. increasing maximum object name length from 8 to 10 - I wonder why they bothered with such a small increase, why not 16 or 32?)
The biggest incompatibility between S/38 and AS/400 is still in the object name syntax, but not in the maximum length – rather, in how qualified names are written. In S/38, a qualified object name is of the form OBJECT.LIBRARY, whereas AS/400 changes it to LIBRARY/OBJECT. (A "library" is essentially what other platforms call a "directory", except it doesn't just contain files, actually any kind of object; and, there is no hierarchy, libraries cannot be nested – except for the special system library QSYS, which contains every other library).
The change in the separator from . to / was necessary for S/36 compatibility - unlike S/38, S/36 allowed dots in names, so for S/36 compatibility, dot was added to the allowed characters in object names. This meant dot could no longer be used to separate the object and library in a qualified name, so slash was used instead. The reversal of the order was not strictly necessary, but was likely motivated by the fact that it is more consistent with what most other major operating systems do (MVS dataset names; paths on Unix, DOS, OS/2 and Windows; OpenVMS; among others).
"Rekursiv: an object-oriented cpu" November 1988 Byte 13(12)
https://www.researchgate.net/publication/243546728_Rekursiv_...
Such companies though may need to up their salaries significantly. Pay is ultimately the reason show up to work.
These days (and for quite a while), the boxes that run IBM i are the same POWER servers that can run AIX and Linux. Before the platforms consolidated, they were still POWER servers, it was just a different firmware between the "i Series" (ran OS/400) and "p Series" (ran AIX and Linux) POWER boxes.
Sadly, they appear to have now discontinued their free "hobbyist" program, although they still sell the emulator commercially (apparently, the MCP emulator costs US$11,000 for a 5-year license – some people will spend even more than that on a "hobby", but you'd have to be pretty devoted to a hobby to do that, and I doubt many people have that much devotion to a dying mainframe OS)
Still, that's better than IBM has ever done for IBM i. Not aware there has ever been an emulator for it. There are POWER emulators (QEMU for example), but while they can run AIX and Linux, I'm not aware of any which can run IBM i. Maybe IBM has one internally, but if they do, they are very tight-lipped about it. In theory, an open source emulator such as QEMU could be enhanced to be able to run it – but IBM's licensing probably won't allow it, which is part of why nobody appears to have done so.
IBM Cloud hosts IBM i, but it is rather expensive. In a US data centre, 0.25 core of an S922, 1GB RAM, 10GB disk will cost you US$382/month. By comparison, the same hardware for bring-your-own Linux will cost you US$32/month, showing how much of that is software licensing. AIX is US$39/month – much more reasonable software charges than IBM i is. RZKH PowerBunker, the German company which runs PUB400, can't do much better than IBM, given they still have to pay IBM licensing fees. Their prices start at US$200/month, which is cheaper than IBM, but actually a much lower hardware spec (1/20th of a core rather than 1/4 of a core). For equivalent hardware, they charge (roughly) double what IBM Cloud does.
They also said there were more iSeries in Salt Lake City than the SF Bay Area, which was HP & Sun's backyard.
I guess some BITNET buddies might have been on VM/CMS, but I think even our student bookstore avoided selling IBMs; they had Macs and NeXT stations on the showroom floor.
However, as the 1980s progressed, most of it migrated away from the mainframe, on to Unix systems and PCs. So, starting in 1989, you would have missed most of it. IBM mainframes survived longer for administrative computing (accounting, payroll, student records, etc)–but thru the 1990s and 2000s almost all of that went away too.
There are still a few colleges/universities out there who run IBM mainframes – primarily to teach them to students as a technology – Marist College in Poughkeepsie, New York comes particularly to mind. But nothing like it used to be.
I worked with AS/400s in the mid-2000s. I don't regret my time with it, but doom was on everyone's lips even back then. The main use case of the system was replaced by J2EE in big corps, and LAMP stacks everywhere else. IBM didn't particularly see this as a problem, since the WebSphere (J2EE) brand was doing fine.
As I recall, IBM's plan for the future of the ecosystem was basically to push training courses in community colleges. Probably they assumed it pointless to compete for the same pool of developers who would bolt to Facebook or Google as soon as they could get an offer.
I first encountered them working in a call center and we got a new client that did travel booking so we had to order in a bunch of as/400 systems, and training for the agents so they could handle them.
2nd experience was at a consultancy firm where we had to hire in an external consultant to work with as/400 systems.
When I finally got to see what these as/400 systems did I was convinced this is a scam. IBM and Big Travel are in bed together to keep this system alive and to keep people buying it and hiring consultants who are certified in it. Of course the certifications probably come from IBM too.
I've seen WFH travel people who have a modern GUI to the AS/400 running on Windows, but it's still the as/400 TUI inside a modern GUI. What a fucking waste of time to make that wrapper.
This is an API that desperately needs replacing and modernizing. The fact that it's still not replaced by a better system, and people insist on creating crazy wrappers for it, tells me that someone is putting the breaks on. Maybe it's tied to the international flights industry too, maybe that's where the modernization needs to happen.
Either way as a modern developer I see absolutely no reason to keep clinging to this outdated system.
I doubt you ordered a "bunch of AS/400's" that is not how it worked and the smallest systems still cost 6 figures. You probably had 1 and you bought a bunch of terminals or something.
The AS/400 has always had to fight for its survival inside IBM because it never drove a lot of the services revenue IBM was trying to grow in the 90's. The AS/400 was famous for being stuck in a closet and running non-stop with maybe a single employee that managed it. It did not sell a lot of IBM consulting and services. IBM mainly sells it via "Business Partners" so there is probably some ISV in the Travel industry that wrote an application that a lot of people used and they are the one selling AS/400's on behalf of IBM to customers that want to use their application.
IBM never made it very easy for developers to learn and support the system on their own. They are too expensive for someone to buy a small one to learn on and the cloud option just did not exist. About all IBM did to help was offer attractive lease options so that companies like mine could afford to have systems to develop our software on.
That said in the early 90's we had to spend over 100K just to buy the tape drives necessary to make "copies" of our software to send to customers. So a customer wants to try our software we have to copy our software on to a tape that probably costs $25+ and then FedEx it to them along with a bunch of heavy 3-ring binders of documentation. It is amazing things ever worked out back then and we survived.
Anyway, I often miss the AS/400. Writing RPG to do transaction processing against DB2/400 always seemed a lot cleaner and more straight forward than SQL and other languages. It also became possible to write real GUI applications though most took the path you described. We rewrote our UI using Eclipse and Java (we were a developer tool). The Java UI talked to the backend API that was still running RPG and ran on the AS/400. I've been gone for 17 years but all that code is still running today.
Granted whatever is running on them could probably run on a Raspberry Pi, but the rewrite would be a 2 million dollar contract by IBM Global Services and the Raspberry Pi would die every 2 years.
Casting Pointers https://www.ibm.com/docs/en/ssw_ibm_i_74/rzarh/aconv.htm