Selling Linux to AS/400 Shops?
cgh4be asks: "I work for an IBM business partner and each year we host a technology seminar for our customers, most of which have AS/400 backgrounds. I am the 'Linux guy' at work and have been chosen to give a 1 hour presentation to these IBMers about linux. So, my question to the Slashdot community is, what points and information should I touch on in this presentation to make it effective? I'd like to give some history about it of course, but the goal is to get them to start using it in their businesses."
When's the last time an AS/400 guy got a FIRST POST?
My question is: why?
AS/400 are decent machines with a good operating system. It has the virtue to "just work". I'm not really sure you would want to replace an AS/400 with a Linux box. The AS/400 is -after all- a proven and stable platform.
I'm all for Linux, but not in this category of hardware.
You must believe that Linux is a better choice for some reason. You're going to tell them that this young, haphazardly developed, upstart OS is a better choice than a mature, thoroughly architected, industry standard OS.
I think you'd better tell us, rather than the other way around.
I have been pwned because my
AS/400 units are database servers. Sure, you can get an web server, and a firewall on the unit, but they all run out of a database anyway. The neat feature of AS/400 units that I like is I can ftp to a directory, and upload files, and they are added to the database.
Linux is much better in the other services that AS/400 units don't cover very well, but that they can cover. Such as firewalls, mail servers, file servers, and they could be used as a way to interoperate with winblows... oh, don't forget... if you get db2 for linux, you can run your database on linux and do an offsite remote sync up.
It would be useful (I think) to focus on how Linux with IBM solutions would compliment their existing AS/400 architecture. It's not generally a great idea to suggest that they scrap their existing applications and move wholesale to another OS or hardware platform.
The bottom line that they'll want to know is if it can save them money while offering an equivalent or (preferable) better service to themselves or their customers.
Focus on integration, scalability, flexibility and IBM's commitment to supporting the Linux arena.
Better the pride that resides in a Citizen of the world, than the pride that divides when a colourful rag is unfurled
Our AS400 systems were very impressive-looking in a "I AM BORG" type way. They had great reliability and service, but they were older models, expensive to maintain, and didn't have very good performance. I suspect other shops are in the same boat.
:)
We started using Linux machines as development platforms. The AS400 guys could run db2 and other IBM technologies on Linux, which was a big win. The development stations were dirt cheap and for many jobs faster than the AS400.
Eventually as that department became more comfortable with Linux they stopped placing every business application on the AS400s if a properly configured Intel/Linux box could do a cheaper/faster job without unacceptable risk exposure. It turned out quite a few applications fell into that category.
The key is to have someone who has a deep understanding of linux and also can talk to the hardcore "mainframe" admins. There is definitely a culture shock to overcome. Imagine trying to explain Linux to someone who calls service for any task that might require opening a box, pays 10k/year license fees for a glorified tar backup system, and knows so many esoteric commands and proprietary-os arcana to make VAX and UNIX together look like kiddie toys.
On a separate note, I don't think it makes a lot of sense YET to run Linux ON the iSeries. The DASD is extremely expensive, and you could run a much larger system for less money on normal PC hardware. That being said, I have heard that Linux is now the firewall of choice on iSeries, so you may want to do some research on iSeries Linux applications.
Good luck on your presentation.
- Kurt Schroeder
Interesting...can you explain this a bit more to those of us who've never seen an AS/400 in operation? After I upload a file and it's added to a database (a db2 database or some other hidden format?) is it queryable? Can I somehow "select uloaded files from sometable where upload_date between $thisdate and $thatdate" ?
:))
I know that Microsoft is planning to dramatically integrate database functions into the filesystem in an upcoming version of windows (Longhorn? Yukon? I forget)...but it seems that once again MS is not the innovators, that maybe someone did it long before them
Our AS/400s are actually new. The oldest one is only a year old. For us, despite our deep Unix and NT backgroud, Linux on an iSeries (there, I said it... the new name... blech) holds little more than sideshow value. For us, we have almost no investment in AS/400 admins or developers. We just add HP/Compaq servers if we want more Linux.
/400 shop. Someone like our parent company that has AS/400s everywhere (30+) probably sees a huge benefit to running several Linux virtual servers on an LPAR* or older single system. The key to stress is reuse of older systems. Some of the first generation RISC systems (F10s and the like) would make great highly-available Linux machines.
However...
We aren't a typical
What's more, a company with a large investment in the hardware has probably moved all but some development off of a depreciated system. The shops that have two systems still running V3R7 won't be interested.
Part of the problem is that IBM doesn't really push economical LPAR-ing for Linux up front. In our case, they said "Sell you on LPAR? Well, if you aren't interested, we can't change your mind." Really, the Rochester salespeople are technically very knowedgeable, but they just don't "sell" sometimes. And, I can't go back and get the money now to do an LPAR "just for Linux".
The other issue is that IBM (to date, anyway) doesn't push AS/400 to SAN connectivity, which increases the value of the AS/400 as the key system in your enterprise whether you run Linux on an LPAR or not. You could, in theory, run a fairly-sized enterprise with a handful of 8xx-series machines. You'd have an NT-based FSIOP (or Novell, if you swing that way) if you had a need for it. You'd LPAR a big box to carve out several virtual Linux machines to keep your development options open. And, you'd have great MTBF on the hardware (except for the problems with the 17GB drives... those die like flies). Back all of that with an enterpise-class SAN (Shark, EMC... no Hitachi or HP XP-series because they don't support the 520-byte block size), and you can snap whole systems from LPAR to LPAR and system to system. Then, you can use a CNT-like solution for data replication over IP to a disater recovery site because all your data is on your SAN.
Sorry for the ramble, but I guess the point is that making the case for Linux on an AS/400 is part of a big picture. I'd say the cost-savings of having a handful of the same hardware in your computer room but the flexibility to run virtually any application is an outstanding point.
* LPAR == Logical PARtition... it's similar to how a Sun E10k can be carved into separate systems at the hardware level. And, yes, lots of other companies have done the same thing. It's not new.
Amateurs discuss tactics. Professionals discuss logistics.
So I'm a little biased -- I've never sat down and used OS/400. But I did read through a bit of documentation, and I was thoroughly disgusted with what the OS sounds like. All commands are typed in in caps, in condensed combinations of verbs, then become lower case?
WRKSYSCTX is "work within the system context"?
The directory structure was something like an Apple II, the languages available were from the *Dark Ages*, and the prices obscene.
Why on earth would anyone *ever* want to use OS/400 over *any* variant of UNIX?
May we never see th
If you uploaded a file to the AS/400 via FTP, I believe that it creates a physical file (PF). A physical file contains records and fields, but I can't remember if the physical file it created had one gigantic record with all the data in it or if it came up with some size for each record like 65000 bytes (anybody know?). If I intended to upload something I was going to use as a database (which I always did, because the 400 made for an expensive fileserver) I'd make sure the data was in a fixed width format before uploading, create the physical file on the AS/400 first (record layout), then upload the file 'over' the physical file. Downloading a physical file gets you the database back in fixed-width format as well, IIRC.
Also interesting is the way the AS/400 (library) filesystem organizes things (disregarding the Integrated File System because I don't want to make this post longer). 'Libraries' function pretty much as directories, except that you can't nest them and there is no root 'library'. So if I was to refer to file 'FIL' I could call it 'FIL' (in which case it would be pulled from my current library) or 'BLASTER/FIL' (library 'BLASTER', file 'FIL').
Physical files on an AS/400 also have things called 'members'. These are somewhat analogous to streams under NTFS (which nobody uses). Any physical file with data in it has at least one member. Members are used to allow you to store multiple sets of records in the same file -- query the first member in the file and you're working with one set of data; query the second member and you're working with another set entirely. I confess that I am not elite enough to come up with an example where I actually defined a physical file with more than one member in it outside of experimentation.
However, I can come up with a real-world example of where they are in common use. Source code on an AS/400 is stored in a special physical file called a 'Source Physical File' (type SRCPF). Let's say that I just wrote a program (TESTPGM) in RPG/400. This program is stored in a source physical file in my library (BLASTER/BLASTER) as a member (TESTPGM). Each record in the member is a line of source code, date the line was created/changed, and a sequence number. Fortunately, if I want to grab a program from this mess using FTP I can do a 'get BLASTER/BLASTER.TESTPGM', and uploading worked similarly.
My guess is that Microsoft would implement this with a little less rigidity. IBM's interpretation probably allows them to optimize things quite well, but does make some standard file operations tricky.
I've had a limited amount of experience with AS/400 shops, but all that I've visted have been the same.
IBM likes to sell this box as a "no geeks required" system. They tell the business owner that the AS400's menu-driven system administration is so simple, he won't need expensive computer expertise on staff - the mail room guy can be the sysadmin.
Consequently, there are usually no real professional computer people on the site at all. Instead, consultants from the local IBM biz partners are hired whenever the system needs more than trivial care.
This is a gamble that sometimes works for the business - if they have a cleanly defined and implemented application, and a hardware support contract that includes regularly scheduled preventive maintenance (i.e. VACUUMING) they may save money over having a competent computer expert on salary.
However, even when the gamble doesn't pay off - say, for example, that the business applications are poorly written and require constant tweaking by the consultants - the decision to use AS400 was often made by someone who is in a position to cover up the financial mistake; mid- to low-upper- level executives will usually do so to avoid damage to their chances of promotion (top-level executives, such as CEOs and COOs, are usually more practical).
Situations like those I've described are booby traps for linux geeks. All general-purpose linux systems (including X-based systems) require some training and expertise to use efficiently. If there is nobody on-site with any "computer knack" at all, you can end up spending months customizing the system into useability (because the users may not be able to specify what they want, and you could easily end up using "trail of errors" to get a workable system that will satisfy them).
It's easy to get frustrated by the apparent blockheadedness of people who honestly just don't *know* how to use the computer. Also, managers who have been engaged in subterfuge to hide bad computing decisions are usually suspicious and easily angered. Try to keep your cool and play it by ear.
Your first step will be to explain what a filesystem is and how to manage storage of information in a hierarchical filesystem. You will be hampered in this task by the strange nomenclature used in OS/400, but hopefully most of the users will have some familiarity with PC filesystems and you can start from there.
Good luck!
Okay, my posts here are starting to sound like trolls, but I'm going to keep working at this point.
I've heard about a lot of systems billed as being "reliable". Windows folks call Windows 2k "reliable" and say they never have a problem with their servers, that they've been up for months. Linux folks call Linux more reliable than Windows, and say the same thing about their servers. Ditto for the BSD guys, the Sun guys, and evidently for the IBM guys.
So here's what I want to know -- I'll give you that the system is reliable, but that's only meaningful in the presence of unreliable alternatives. Are you claiming that an AS/400 box running OS/400 is more reliable than a BSD box, or a Solaris box, or a Linux box? I've never seen any of these just spontaneously fail or kernel panic...
May we never see th
Specialization, specialization, specialization.
Oh. And reliability.
So four words.
I cannot begin to describe how bullet-proof an AS/400 is. People simply don't believe me. One poster said that he knows people who IPL once a year. That's probably because it's *intended,* by the way - not because the machine hiccups. These suckers are the equivalent of cockroaches - they'll survive a nuclear blast.
But other than reliability, you're going to have to go after custom software markets. And not the glamorous stuff - the boring flat database stuff. I work for a good-sized printing company. We used an industry-specific ERP on an AS/400 for years and years. We still use that same app - only we now use the Windows version.
The AS/400 version was far less maintenance than the Windows version for various reasons - but the bottom line is the specialization. This isn't a couple of spreadsheets and a bar code wand out on the shop floor. This is much more involved than that and my industry type isn't the only place where this kind of software shows up. At the AS/400 mini-conferences I attended there were casino IT people, tool and die shops - even the car dealer I frequent has an AS/400 running industry-specific parts-tracking and job estimating software.
Plus these are not necessarily companies that have large R and D or programming departments. Nor *should* they. There are a lot of companies that are similar in size to ours that have IT people, a geek or two, but no one that really has the time, wherewithal or desire to replicate industry specfic software that can be easily purchased (for around $20,000 for all of the modules in our app) and supported (for about $2,000 a year.) Yeah, the hardware is expensive, but so is my time or the time of a programmer to create something that is customized for us. And oddly enough, I do have other things to do...
If you were selling Linux to me as a replacement for an AS/400, I'd first ask you what software is out there that will run my kind of manufacturing plant. I've already been down the "take some general software and customize it" road. It's a dead end.
If the answer is that I have to hire someone to write it or come up with something on my own or that you'll gladly look into consulting with my company on our specific needs, I'll hang on to my Black Beast, thankyouverymuch.
Consigned to flames of woe.
Do you think "ps -auxw" is anything less cryptic than the example you gave.
You make a good point -- I do take this for granted. However, this is also one of the more cryptic UNIX commands. Hmm. I think I should rephrase this. There are a lot of UNIX admins running around (compared to OS/400), so for better or for worse, a Solaris guy can get along pretty well on Linux. The commands are well-known by quite a few people.
On OS/400, however, the situation is worse, even assuming an equivalent level of "crypticness" because many people have to learn the OS for the first time.
The obvious attack against me is "Well, there are more MCSEs than UNIX admins, so UNIX also takes a penalty for being cryptic." I *agree* with this -- but UNIX is also being quite accomodating (because it has to be) to that majority of users, making available to them Windows-like environments like GNOME, and GUI administrative tools.
So OS/400 should have to do *more* work to be appealing to the average admin than Windows or even UNIX does...and it doesn't seem to be that it does.
Finally, I stand by my complaint that the programming environment is less than impressive -- the languages are really old. OS/400 programmers *might* just have have a deep love for COBOL or something, but it would really frusterate me.
You are right about the legacy custom apps, but that doesn't excite me about OS/400 -- it just makes me think "People *have* to use OS/400" rather than that "People *want* to use OS/400". It's the same frusteration I see when someone's written something for Win32 or the MacOS that I'd like to use on UNIX (or, occasionally, some other variant of UNIX).
May we never see th
PLEASE SWITCH TO LINUX SO YOU MAY PAY ME BIG MONEYS TO CONVERT YOUR PROGRAMS FROM RPG TO WHATEVER OTHER LANGUAGE. YOU BEST HAVE A FEW HUNDRED THOUSAND, OR ELSE!
You need to judge what is cheaper, continued maintenance of your AS/400, or the cost of paying a team of programmers to convert your programs to another language and the initial cost of your new linux servers.
Whatever you decide, prepare yourself to a fight. As a former AS/400 lackey, I can tell you that "Silverlake" partisans have the same ideological zeal toward the AS/400 that a lot of uses have toward Linux.
They are both "underground" systems (meaning not meanstream, though linix is becoming, blah, blah...), and so you're going to go up against people who are very commited.
Of course, maybe if you really want to, just get Linux to run on the Hardware and make the transition a little friendlier?
Hilary Rosen's speech was about her love of money and her desire to roll around naked in a pile of money.
I'm in a similar position. I've recently started a new AS/400 job and am trying to make my fellow IT workers aware of Open Source. I've used the IBM mid range since the mid 80s and Linux since '97.
It all depends on your target audience.
If it's AS/400 techies then show them X apps running on the AS/400 with remote Xterms. Show them a small beowulf running on one Iseries. Show them DB/2 on Linux seemlessly intergrated with DB/2 on the AS/400 etc etc _Show_ them tech.
If it's manager then comapre it to Windows, do not threaten the AS/400 that's a losing battle in their minds. Tell them about support, costs, stability availabilty of staff, lack of lock in etc. You could then go on to talk about consilidation on the AS/400. Most AS/400 people love the machine it's simple to program and operate. Linux cannot win that battle, programming on Linux is hard by comparison.
In short it's a hard sell. Most AS/400 shops have AS/400 and Windows skills. The closest you'll find to unix skills is the network admin who last touched AIX in '94.
It will take another 2 years before we'll know if AS/400 users are going to embrace Linux. I would love to run Linux in my company with a bunch of Xterms rather than PCs. It would save the company $$$
Who's talking about replacing the AS/400 with Linux? You can run Linux right on an AS/400 now. You can run a Linux webserver right inside the box, directly connected to your DB2 database or whatever legacy application or data you want to serve. You can run an additional Linux firewall to protect access to both your webserver and your AS/400. These Linux servers can also be backed up right along with your AS/400 and if necessary restored completely with a single command. You can develop your Linux applications on an Intel desktop and drag and drop them right onto the AS/400, ready to use.
/ linux /
The base operating system of the AS/400 is case insensitive, the commands are printed in all caps in the documentation so that they can be easily recognized. However the AS/400 recognizes multiple file systems including case-sensitive ones. You can even design your own if you like.
If you're hooked on Unix commands try typing QSH on an AS/400 command line and you will find yourself in a Unix environment.
AS/400 are rock solid machines. Our three systems (consolidated from 6) have not been down in the four years I've been here, through three disk failures(hot swap replaced) and a complete power outage of the data center.
You can purchase a bare-bones AS/400 (iSeries) for about $7K. That said, a system like that won't get you much further than your average Intel box, but they scale up rapidly. For the $20K mentioned you can get a fairly good performing system. If money is no object you can spend $1M+ on a 32-way system capable of running 128(or more) virtual linux servers.
For iSeries (AS/400) info try:
http://www.as400.ibm.com/
or better yet:
http://www.as400service.ibm.com/
For Linux on iSeries go to:
http://www-1.ibm.com/servers/eserver/iseries
Scott Ingvaldson
In addition to many of the good recommendations you are getting below I'd recommend:
Unix for the Mainframer
While this is more directed at MVS and not OS/400 the first chapter could end essentially being your 1 hour talk. A great example is the difference in Unix speak between: command, script and application. The underlying philosophy here is one of an interactive environment where small non-job specific programs (commands) are put together for job specific tasks (scripts) and that these are distinguished from customizing large systems (applications). Just explaining the pros and cons of this model will be insightful and will take up a good deal of time.
Incidentally in terms of the cons as a Unix guy you may not have thought about these. Here is a pretty good anti-Unix pro mainframe article which will help you see the other side S390 vs. Unix servers.
Anyway hope this helps
1) wasting time covering things they already know, or
2) hitting an open wound and pissing someone off.(... or both)
What they called you in for is to know what Linux can do for them. If you really want to impress them, I'd say try and be candid. Say both what it can do, and what you should not (currently) be used for (I'm sure there's a few of those).
If it was me, I'd start with a quick history of Unix/Linux.. how Unix was Pseudo-Open Source in it's early days and how the closing down of Unix led to the founding of the GNU foundation which opened up the way for Linus to write a kernel with the promise of all those GNU utilities to populate the hard disk.
I'd probably cover off a couple of the popular OS licenses (GNU & BSD at the least).. Let them know the downfall of the GNU license (Don't canibalize the source unless you want to free your own), and the advantages (everybody is a potential support person).
At that point, you could probably go through a quick Hall of OS fame (Sendmail, GCC, SSH, Apache, MySql/Postgres, Perl, The Web.... [Remember that Microsoft is Still using BSD code in NT's TCP stack, and IE started out as the Mosaic web browser]).
Some other things you might go through are stability, ease of use/installation (network installs are the way to go, and faster than CDs) and, of course, the ability to fix almost anything that you really want to fix -- or farm it out to someone else (distributer) if you've got more money than time.
The next thing I can think of is to do a quick overview of some of the various Linux distributions available -- big ones, little ones; general ones, specific ones.. If nothing else, it shows off how you you can customize Linux for anything from word processing to firewalls.
After that, you might mention a couple of areas where you see Linux as a possible boon directly within the company (probably underlaying why they really want to hear from you).
Free Software: Like love, it grows best when given away.
I am one, so I've got some perspective here. The AS400 (iSeries these days) is a great back office business system and database server. It is less impressive in the web connectivity department. Linux, on the other hand, is GREAT! as a firewall, as a web server, and if you could demonstrate an efficient way to connect php to an AS400 server program, you've got a dynamite solution to a mission critical problem. I think it's possible using sockets (not ODBC - that kinda sucks). I just haven't had time to figure it out yet. You could also mention about Samba and replacing Win2k Server with a $US65 alternative if your audience is captive to the evil empire (who isn't?).
linux is not meant to try to replace machines such as the AS400s using just one ix86 machine.
the idea is, to set up redundant pairs of linux machines made to do one or a few tasks.
10 linux machines can offer great uptime via the use of clustering, mirroring and fallover support.
run a Database on one pair(2), the firewall, email, and DCHP, DNS, etc on another pair(4). the third pair for file serving to the local network and FTP(6), the fourth pair for the Web server(8), and the fifth pair for other various stuff, like samba(10).
OR
just run all services on one machine and do some clustering with fallover and round robin to access resources.
linux is very very good at this, and cheap. an AS400 is a single machine most likely, that requeres routing maintainance and equipment failure which means downtime. Their is not another machine to pick up the slack in most circumstances. AS400s are expensive to support compared to a linux system.
Well, I work in a mainly Win + as400 shop. I frequently bust the as400 programmers' chops that we will have to put linux on the as400 soon.. Well, of course it is very clear to me that this is not going to happen any time soon, but it is nice to see them giving me these strange looks of the type "That Linux is NEVER going to touch my 400" ::-)
Well, anyway.. My 2 cents. A while ago we used to have a fairly simple app: basically what people use php+mysql, we were using java+as400. Well, to tell you the truth, the as400 sucked big time in running a webserver + java servlet container (it took about half hour to reload the application, which was nothing too big). In addition to that, when I showed some interest in learning the as400, or maybe querying against as a database, the as400 guru was almost going to kill me, telling me that I am never going to touch the as400 either (obviously, I was one of the enemies: a Linux fan, some knowledgde of windows). Although I don't know much about as400, I have a lot of respect for it, especially for crunching data + the fact that the whole thing is a huge database. I am not sure whether maybe our as400 is kinda old, but again, the as400 dude wanted to kill me again for wating to run queries against the as400 (since there is quite a lot of data locked up inside) with the argument that "queries will kill the as400 performance". With all due respect, these two precedents kinda put me off big time: if it is a big database, why would it suck if I run queries against it??? In general , my experience was that especially the as400 zealots have a big problem with attitude though.
Anyway, as it was pointed out earlier, linux is not going to substitute, but maybe complement - IF the as400 guys have a bit of an open mind (otherwise they tell you to go fsck yourself cause they can run everything better on the 400).
Who's talking about replacing the AS/400 with Linux? You can run Linux right on an AS/400 now. You can run a Linux webserver right inside the box, directly connected to your DB2 database or whatever legacy application or data you want to serve. You can run an additional Linux firewall to protect access to both your webserver and your AS/400. These Linux servers can also be backed up right along with your AS/400 and if necessary restored completely with a single command. You can develop your Linux applications on an Intel desktop and drag and drop them right onto the AS/400, ready to use.
/ linux /
The base operating system of the AS/400 is case insensitive, the commands are printed in all caps in the documentation so that they can be easily recognized. However the AS/400 recognizes multiple file systems including case-sensitive ones. You can even design your own if you like.
If you're hooked on Unix commands try typing QSH on an AS/400 command line and you will find yourself in a Unix environment.
AS/400 are rock solid machines. Our three systems (consolidated from 6) have not been down in the four years I've been here, through three disk failures(hot swap replaced) and a complete power outage of the data center.
You can purchase a bare-bones AS/400 (iSeries) for about $7K. That said, a system like that won't get you much further than your average Intel box, but they scale up rapidly. For the $20K mentioned you can get a fairly good performing system. If money is no object you can spend $1M+ on a 32-way system capable of running 128(or more) virtual linux servers.
For iSeries (AS/400) info try:
http://www.as400.ibm.com/
or better yet:
http://www.as400service.ibm.com/
For Linux on iSeries go to:
http://www-1.ibm.com/servers/eserver/iseries
Scott Ingvaldson