Slashdot Mirror


Why The Dinosaurs Won't Die

DaveAtFraud writes "Ace's Hardware has a nice introductory article to the animal that will not die: The Mainframe. Ever wonder why these things are still around and what makes them different from a PC or UNIX box? The article is IBM-centric so there's no discussion of say the CDC Cyber series but when most people don't even believe that mainframes exist anymore, what the hay, let's disabuse them of that notion first. Hopefully, the author will follow up with the additional promised articles that go into more technical detail but this is a good place to start. I wonder if they still make card readers, too?" This guide came out last month, but it's worth looking through, even just for the pictures.

20 of 571 comments (clear)

  1. Pft, overanalysis by Skyshadow · · Score: 5, Insightful
    This is an easy one: Mainframes are still around because they house working, stable and extremely mission-critical apps for very large and established corporations.

    Nobody in their right mind is going to mess with them until they absolutely can't get strung along anymore, because they know that crashing, say, a HMO's appointment handling system would be what we call a "career limiting" move.

    If it ain't broke, don't fix it. If it ain't broke and it's mission critical to the tune of millions of dollars an hour, avoid it like someone carrying the plague, ebola, leprosy, herpes and a bad hangnail.

    --
    Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
    1. Re:Pft, overanalysis by znu · · Score: 5, Insightful

      No, application reliability is definitely a very important part of the mainframe's continued success. It's true, obviously, that the hardware can't make the software work correctly. But many of the applications being used on mainframes have been around for decades -- they're known to be reliable. As the article points out, vendors go to huge lengths to maintain backwards compatibility. So a business looking to replace an aging mainframe basically has two options: port or rewrite its software for another platform (possibly introducing a lot of bugs), or simply swap an old mainframe out for a new one that's essentially guaranteed to be perfectly compatible software that's proven its reliability over the course of many years.

      --
      This space unintentionally left unblank.
  2. Why i think mainframes aint dying by Shadukar · · Score: 5, Insightful

    Imagine...

    You're a big organisation thats been in business for 50+ years. You are in the biz of manufacturing Weezops (or whatever) for the various Gazaah(wtf?!) industries.

    10-20 years ago you paid a big buttload of cash for a mainframe.

    Today this main frame is chugging away. Occasionaly you need to screw in the vaccum tube, or maybe fill up the cooling liquid and in winter its a little noisy.

    However, your little dino is happily chugging away, calculating whatever you want it and doing whatever it was that you got it for.

    Its working. Its doing that you paid big cash for. You dont need it to make coffe, play videos, particpate in distributed.net or send spam. You want it to chug along. And its doign it.

    Why change? Why pay another buttload of cash because someone is telling you "whoa, what you got here? an oversized heater?! pay another buttload of cash for this new machine that will do everything its doing PLUS play mp3s for you, make coffe, crack encryptions, search for ufos and connect your grandma to the net!"

    I dont think so.
    If a machine, no matter how old, is working, and you paid a lot of cash for it, no business will get rid of it to get something new just because its new/flashy.

    Just like banks and credit card companies who still use systems like GlobeStar, 8 colors text based account management software written over 10 years ago. Why? because it does the job. Pull down menus, icons, angry slad shooting out of cdrom drives, live video straming, its all nice and cute, but if you have somethign that works, does the job the way you want it and how you want it, there's no need to change.

    Sorry its so drawn out and long, but thats the way i see it. Plus I am sure you enjoyed the sleep :)

    In words of a famous comedian, "Those are my ideals, if you dont like them, I have others"

  3. Coming from a former computer operator... by extagboy · · Score: 4, Insightful

    the reason they won't yet die is that they are incredibly reliable. If you need a computer that has to work all the time you need a mainframe. Now, the software isn't the funnest thing to work with and you don't get pretty graphics (for the most part) but nothing can compare to its rock solid reliability. Another reason is that the hardware itself runs forever. Most of the older stuff still running was built to last. Unlike alot of today's hardware that is only built to last until it's obsolete.

  4. Re:This is all well and good... by Skyshadow · · Score: 5, Insightful
    I think you're missing the point in regards to most mainframe software.

    In my experience, this stuff hasn't changes significantly in years -- it's tweaked now and then, but it basically works and as such isn't messed with.

    What you have to remember is that entities who are still using mainframes are both (a) very large and (b) very well established. The mainframes tend to be involved with really important tasks that are mission critical (and I mean "mission critical" in a very real sense, not in the 1999 out-webserver-is-down way), like flight reservation systems or bank account tracking systems.

    What I'm trying to say is that it's a really bad idea to mess with these systems unless you really have to -- anyone with a couple years at a suitably large company could tell you that there's nothing to be gained and everything to be lost by messing with them. The hardware and support costs are laughible if you compare them with what just a few minutes of downtime from buggy new software would cause.

    --
    Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
  5. We tossed the same thoughts around at work... by ackthpt · · Score: 5, Insightful
    Many times we've tossed similar thoughts around at work, when would PC's replace big iron. Well, CPU speed isn't all it's cracked up to be. It's like a hamster going 3,000 RPM on a treadmill. Fast, yeah, but it's still a hamster. PC's are firmly geared toward single user, desktop apps, even x86 servers take a lot of money to measure up to the HP 9000 we're running our development system on.

    I'm sure the humblest x86 can now run rings around old PDP 11 and IBM 360 systems, but it's still amazing how fast some parts of those old machines were, including core memory swap disks.

    --

    A feeling of having made the same mistake before: Deja Foobar
  6. Re:This is all well and good... by wik · · Score: 5, Insightful

    Google is unique in that it doesn't really matter whether the latest data is in its cache or not, or even if they lose it or not. It could take a hit, even lose all of the data that it crawled through yesterday, yet still have an operational site (I know I wouldn't be able to tell the difference, could you?)

    You don't want your bank using the same unreliable hardware. Do you want to wait a week while the maintenance guy comes along to replace the failed node that held the records of your last deposit?

    Mainframes are built for customers who simply can't take downtime or data loss. Some businesses can, many can't. If you build a bank off this idea, let me know. I'll be sure to stay away.

    --
    / \
    \ / ASCII ribbon campaign for peace
    x
    / \
  7. They will neve die here is why by codepunk · · Score: 5, Insightful

    The terminal interface is the most efficent human interface designed to date for data entry. I have never seen a GUI app that can come close to the user efficency of the ole mainframe terminal interfaces. That combined with the scalability, reliablity and ease of maintenence will insure that the mainframe will be around for yet a very long time.

    --


    Got Code?
    1. Re:They will neve die here is why by Frater+219 · · Score: 5, Insightful
      The terminal interface is the most efficent human interface designed to date for data entry.

      A couple of weeks ago I had the unpleasant experience of going to the dentist four times in ten days. (Slashdotters note: this is what happens when you avoid going to the dentist for three years.) However, whilst sitting in the waiting room in terror over the prospect of being assigned the newbie of the two dentists, I observed a curious phenomenon in progress:

      ... the elder receptionist training a new hire in using the office automation system.

      I was a little bit surprised when I noticed that this system wasn't made of Web forms -- though the systems on the desk were Wintel PCs, they weren't running Internet Explorer. Nor were they running a GUI front-end to a database, some PowerBuilder or MS Access widget conglomeration. No, the application running on those PCs was ... an IBM 3270 emulator.

      "There you go. Now move down to 10:00 ... now F10 that ... and hit F6 to print."

      From the dialogue between the two receptionists, I could tell several things about this application. First off, it certainly required and expected a certain amount training to use. To submit a form to the mainframe (located at a distant data center) required hitting F10, not clicking on a "Submit" button. There was no concession here to being "intuitive" -- the trainee simply had to learn that F10 means "submit form".

      Yet this was consistent -- F10 always meant "submit form", at every stage of the workflow. (So much so that the elder had made "F10" into a verb, as you may have noticed above, meaning "to submit form".) No unexpected dialog boxes came up with panicky but unnecessary messages, needing to be clicked away. The application's behavior created a consistent, predictable, learnable workflow. The elder receptionist spoke with complete confidence about the system's behavior, though she was certainly not an "IT person" -- in however many years she had been using it, I suspect it had never failed her once. This was not an application that she expected might crash or do something stupid and eat an appointment. Nor had it been "upgraded" three times in the past year to a version with fancier and completely unrecognizable widgets.

      Now, I work in IT. I spend all day with Unix, Windows, and Mac users. I also make a point of observing people's interactions with other data systems -- Windows-based supermarket cash registers, handheld card scanners at conferences, information kiosks at tourist attractions, and so forth. Rarely if ever do I hear the sort of quiet confidence in the computer's behavior which I've observed in end-users of mainframe applications.

      This is not "computer as irascible demon, seeking to lash out at its summoner," like Windows. It isn't "computer as consistent and friendly but sometimes fumble-fingered servant," like the Mac OS. And it certainly isn't "computer as Necronomicon," like Unix.

      It just works. So of course its users depend on it.

  8. Two words, Sequenced Transactions by anonymous+cupboard · · Score: 5, Insightful
    When you are a bank, an exchange or something similar you want to uniquely sequence every transaction. Why, well if you sold A and used the proceeds to buy B and then sell B to buy C and one of those transactions fails, you need to unroll the following transactions.

    So you need to tag every transaction with a unique sequence number. This is really, really difficult when you don't have a single system with an amazing I/O throughput to assign those numbers.

    A Google type solution uses a lot of execution units each with limited I/O capability. Queries may be parallelised without much interaction. In my example, every transaction must be synchronised. It doesn't matter if the application is spread over a cluster, the nodes must still coordinate to assign the sequnce number.

    I agree though with your point about adding better cluster management though to open source operating systems. However, this is much more difficult than improvements to a standalone system because how many people can afford to run a cluster of say 4 or more systems for playing around.

  9. Economic inertia / Enterprise-scale applications by securitas · · Score: 5, Insightful


    The argument for what I call economic inertia is a good one, especially with corporate shareholders these days demanding that management squeeze everything they can out of every dollar and stretch every last penny as far as it will go.

    A mainframe that does everything that you need it to do (and more) and works well with your company processes is worth far more to you than the investment of time and resources in an untested, unknown system that may or may not work. Remember that new systems don't go online until after extensive use and testing in parallel with the current one (if it's done correctly). That means duplication of efforts and resources.

    Anyone who has worked at a company that builds enterprise-scale applications or mission-critical solutions knows that when the customer has an XYZ mainframe, you'd better have applications that support XYZ or you'll find the contract goes to your competitor who does. It's not an option not to support it.

    Unless there is a strong business case for moving to a newer technology, mainframes will be with us for quite a long time.

    A hint to the coders out there: the number of people who know and understand these systems is declining. There's a mint to be made if you can deliver services to support them.

  10. Re:GUI + Mainframe by psamuels · · Score: 4, Insightful
    However, I have seen and heard of a lot of problems getting non-HTTP protocols through firewalls, etc.

    I keep hearing this, and it keeps making no sense.

    • The purpose of a firewall is to keep out undesired network traffic.
    • The purpose of using (or tunneling through) HTTP is to pass through a firewall without explicit configuration / permission.
    • If the guy running the firewall thinks your application is secure enough anyway, he'll open up the necessary ports and you won't have to tunnel through HTTP.
    • Conversely, if your application isn't considered secure enough to open up a firewall port for, isn't it kind of a bad idea to subvert the firewall instead? Doesn't that sort of negate the purpose of having a firewall in the first place?

    If the application deployment guy and the firewall guy can't agree on whether to open the firewall port, the company has bigger problems. Somebody needs to be in charge.

    In summary, using HTTP for the sole purpose of defeating firewalls is an arms race between two branches of IT. Now, arms races between competitors is what capitalism is all about ... but arms races within a company are pointless. You're supposed to be on the same team here! Instead you set up a situation where the app developers and the firewall admins both have to use increasingly sophisticated measures to do their jobs.

    And don't give me that "but the firewall guy doesn't know how / can't be bothered to open up ports when we ask for them". That's his job. If nobody at the company has the time or skill to operate a firewall, you may as well not even have one.

    I have to conclude that the real purpose of this whole fad of overloading HTTP with things that have nothing to do with HTTP is for deploy unauthorised applications - things the company doesn't know about and hasn't approved.

    --
    "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
  11. Re:This is all well and good... by passthecrackpipe · · Score: 5, Insightful
    Well, besides the fact that this is a carbon-copy post from the ars forum, you don't get the point of mainframes at all. You simply can't compare PC's with Mainframes. They have different properties, different design criteria, and pose different solutions to different problems. Sure, with clusters you may reach a higher then usual level of uptime (BTW, clusters are not new, and are not "arriving from the pc world" - your post makes me think that your closest encounter with technology is staring at Lara Croft's boobs on your playstation 2), but it is not just about uptime. The fact that mainframes are so reliable is just an interesting selling point, not the main feature (something the article didn't get out properly).

    The main feature of mainframes are the staggering amounts of data it can move. The mainframe is like the bulldozer of the Computer world. The CPU is terribly slow at certain operations - run X11 on it, and have 20 people log in - say bye bye to your performance. But the amounts of data it can move, and the speed with which it can move that data is nothing short of amazing. Oh, and let's see you doing processor lock-stepping on a PC-based cluster.

    I can't believe you got modded up to +5 for this drivel....

    --
    People who think they know everything are a great annoyance to those of us who do.
  12. And this is why they will die... by Early90sRetroGuy · · Score: 4, Insightful

    I just got laid off from an operator position at a large, old company that has invested a lot of time and money into their IBM AS/400's. Not exactly mainframes, but it's the same idea. They have been there forever, they're doing their job, etc. No problems with the machines at all. The only problem is that the developers are nearly all in their 60's and will probably retire soon. And most of this generation (and probably the last one) don't even want to look at anything in COBOL, RPG, CL, or whatever the system's applications are developed with, much less make it a career. Eventually these things will die because nobody will know what to do with them. In 10 years it will be damn near impossible to find people who will work with anything that isn't GUI-based. Chris

    1. Re:And this is why they will die... by bungo · · Score: 4, Insightful

      Don't be silly. They're not dying out.

      While I get to play with Oracle, Apache, Java, etc, the group I work with is only 10 people, where as not 10 feet away from is one of the many groups of mainframe only developers.

      They have their 3270 emulators, program in COBOL, do some JCL, and there are a couple of hundred of them. Quite a number of them are under 30 (although there are also quite a few over 50).

      Alot of these mainframers here are on contract from a few main agencies. These people are full-time employees of the agencies - places like EDS.

      They're not dying out, because if they loose one, then EDS finds another monkey, trains it for a few months on JCL and COBOL and then puts them out on contract rates.

      There seems to be a never ending supply of these monkeys who exchange their life for a boring, stable, if not well paid, job.

      --

      --
      "The best part? I became an ordained minister while not wearing pants." -- CleverNickName
  13. hardware reliability doesn't matter... by constantnormal · · Score: 4, Insightful

    ... when the applications designs are flawed, turgid chunks of garbage that poorly attempt to mimic a bizarre corporate organizational structure that is changing next week.

    Hardware design always has been (and probably always will be) WAY out in front of software design, and yet people are all too willing to spend the odd extra million on hardware while putting as little effort into software as possible.

    In most companies they are clutching obsolete applications like life preservers, when in reality they are anchors.

  14. Re:Mainframe power - the reality by FJ · · Score: 5, Insightful

    First, let me say you are being misled.

    MIPS doesn't stand for million instructions per second. It stands for Meaningless Indicator of Processor Speed. IBM never liked publishing benchmarks for mainframes because they don't say the whole story.

    Mainframes don't run one application. They run thousands at the same time. I/O requests, CPU, and device contention are just a few of the many factors in a machine's speed. Just look at your PC. If you get the fastest dual Pentium, that just tells CPU spped. Put a slow hard drive and a 2MB video card, and any PC will seem faster. Mainframes are the same way so IBM has always been reluctant to publish numbers because businesses scream.

    As for the software being buggy you are exactly right. The difference is that some of that software has had 20-30 years to work out the bugs.

    And finally, yes, you are correct in saying that computationally demanding tasks using floating point multiplication and division don't perform well on the mainframe. Most businesses don't need to compute PI, so it was never a priority to IBM. Floating point addition & subtraction are very very fast if you write your application correctly.

    The really sad thing that holds processor speed back on the mainframes is the software licenses. On a mainframe, the faster the machine, the more your software costs. This made it possible for smaller companies to buy a little mainframe. The big customers pay the most. This means you never buy a bigger machine than you need, because the software license costs get more expensive and no business wasts money.

  15. Re:Mainframe power - the reality by Zathrus · · Score: 5, Insightful

    And how much I/O can your PC do? Or a cluster of PCs? Nowhere even close to what mainframes can handle... 24 GB/s -- take 96 Gigabit ethernet cards, stick them all in your PC (oh... you can't...), and then blast them at absolute maximum theoretical bandwidth.

    Of course, if you want to be "realistic" you'll have to use 128 Gb ethernet interfaces, since the maximum realized bandwidth on a full duplex circuit is around 1.5 Gbps.

    Oh... what's that? Your bus can't even handle the full bandwidth of a single Gigabit ethernet interface? Well, then I suppose your I/O is going to royally suck in comparison.

    Oh, and let's not even get on the topic of reliability... PCs just aren't. I'm a PC guy (I shudder at the thought of having to deal with mainframes), but I know their limitations. And while you're dead wrong about travel reservation systems running on PC clusters (they don't - the entire backend system is still on mainframes), whoop de doo if it was run on PCs. This isn't something where a node going down would cause major problems.

    If a node goes down on the air traffic control system, however, you can damn well bet there's problems. Big ones. Weighing several hundred tons, moving at a few hundred miles an hour, and disinclined to stay aloft while you take a few hours to get the system back up.

    maybe live with a little data incoherency

    Yes... a little data incoherency is no big deal. I'm sure the power grid will work just fine with a "little" incoherency. You don't mind a power plant (be it coal, nuke, whatever) having a massive cascade failure every couple years, right?

    I have absolutely no desire to ever work on mainframes -- the software in place is largely old and crufty, but by god it works. The hardware isn't old crap either -- you can buy new machines that will run the old software perfectly. And have capabilities that us PC weenies can't even comprehend. You realize that virtually every advance in the PC industry was tested and proven in the mainframe world first, right?

  16. Re:This is all well and good... by IGnatius+T+Foobar · · Score: 4, Insightful
    But there is an interesting possibility arriving from the PC world: clusters. PC hardware is so staggeringly cheap that it's becomming viable to run enterprise applications accross clusters of PC's, viewing each PC as un-reliable and likely to fail.


    A cluster of PC's isn't even in the same league as a mainframe. PC operating systems aren't designed for that type of thing. Anyone stupid enough to try this is probably also stupid enough to try using Microsoft Cluster Services. And anyone who has seen Microsoft Cluster Services in action knows that it only protects you from hardware failure --- if Windows fails (and we all know that Windows is far less reliable than the hardware it runs on), you get two parallel blue screens. (Don't mod this up as 'Funny' -- I'm dead serious here.)

    Linux is reliable but most of the clustering software we have available for Linux is geared more towards parallelizing an application and getting more work done with more machines, than towards N+1 reliability. You need to be able to have processes maintain their state in parallel on multiple machines -- not an easy thing to do.
    --
    Tired of FB/Google censorship? Visit UNCENSORED!
  17. I'm guessing you're a software developer :) by Loundry · · Score: 4, Insightful

    In most companies they are clutching obsolete applications like life preservers, when in reality they are anchors.

    God knows you're right! When I worked at very-large-retailer-to-be-unnamed in the IT department I was floored by how much crappy software they had built on top of their hardware. I can't remember how many times I thought, "Why not just use CVS?" or "Why do we have to use this thing?"

    First, if you replace something that's working, even if it's working extremely ineffeciently, it might break. The perception of something breaking is about one trillion times worse to the PHBs and the execs than the perception of something working extremely ineffeciently, especially in a retail management mindset.

    Second, especially if you have legions of data-entry people trained to use the extremely ineffecient software, then the cost to replace and retrain is higher in the short-term than to stay with the extremely inefficient system. PHBs and execs, especially in a retail mindset, can't thing about long-term cost savings in IT becuase IT is already a "cost center," not a "profit center."

    In short, two reasons for bone-headed software in the enterprise: perception and cost. Mainly perception.

    --
    I don't make the rules. I just make fun of them.