4 ms·
IBM i is advanced in some interesting ways, but the design has plenty of drawbacks. The database (DB2) is baked right into the operating system and is an integr
by snuxoll 9y ago
IBM i is advanced in some interesting ways, but the design has plenty of drawbacks. The database (DB2) is baked right into the operating system and is an integral component virtually every application relies on it - you can access tables via SQL or directly through record access (equivalent to fopen(), but against database tables). In fact, the “traditional” UNIX like filesystem (the IFS) on IBM I is an entirely different world, the object storage subsystem (the database) is where 99% of everything live on IBM I including most applications. Applications aren’t compiled to machine code directly, outside the lowest level code needed to get the system running - they’re all stored as bytecode and compiled to machines code on first run, which is how IBM has taken advantage of newer POWER releases without requiring customers beg vendors to upgrade or rebuild their code. There’s a hell of a lot more, but these are two key components of the design.
As for writing software, you basically have no choice but to use tooling IBM has support for. There is a emulated POSIX environment (PASE) but it’s mostly used by IBM to port things from AIX - the traditional IBM i languages are RPG plus C/C++ as a newer addition, but they have runtimes for Java, Python, Node and a few others. The traditional languages are the only way you have to make classic green screen apps, while the latter are there primarily to host web applications.
- krylon 9y ago> but the design has plenty of drawbacks As somebody who has never been near an AS/400, what are those drawbacks? Besides the environment being weird in the sense that it is unlike anything else? The only bad thing I have ever someone say about the AS/400 was a supervisor I worked for during my training who had at one point written RPG programs, and she said ... some pretty unfriendly things about RPG. Which is not say that's the only problem; like I said, I have no knowledge of the system beyond what Wikipedia tells me about it.
- snuxoll 9y agoThere’s extremely limited compatibility with POSIX software, PASE exists but you aren’t just going to be porting applications with minimal or zero effort. Honestly IBM i makes little sense as a modern application platform, and DB2 for i is wonky plus licensing for it sucks (if you’re connecting from anything but Java where you can use open source drivers expect to pay through the node for DB2 Connect unless your application also runs on i).
- DrScump 9y agoAs for writing software, you basically have no choice but to use tooling IBM has support for. Is that really the case now? Even back in the 1980s, other software publishers made great tools and compilers for OS/MVS mainframes. Boole and Babbage's Resolve did a lot of cool stuff, including giving you the mainframe equivalent of "su" right down to the TSO terminal level. And we didn't even use IBM compilers; Capex had optimized compilers with great system dump formatting.