Why OldTech Keeps Kicking
Hugh Pickens writes "In 1991 Stewart Alsop, the editor of InfoWorld, predicted that the last mainframe computer would be unplugged by 1996. Just last month, IBM introduced the latest version of its mainframe, and technologies from the golden age of big-box computing continue to be vital components in modern infrastructure. The New York Times explores why old technology is still around, using radio and the mainframe as perfect examples. 'The mainframe is the classic survivor technology, and it owes its longevity to sound business decisions. I.B.M. overhauled the insides of the mainframe, using low-cost microprocessors as the computing engine. The company invested and updated the mainframe software, so that banks, corporations and government agencies could still rely on the mainframe as the rock-solid reliable and secure computer for vital transactions and data, while allowing it to take on new chores like running Web-based programs.'"
As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
Because the people who are used to that tech haven't kicked (the bucket).
Basic psychology. People stick with what they're used to, even if it doesn't always make the most sense.
Look at the inability of people to drive using joysticks, instead sticking to the classic wheel arrangement. I've seen drive by wire setups using joysticks, they work well, but people just can't get into them.
Karma Whoring for Fun and Profit.
I DON'T SEE WHAT THE BIG PROBLEM IS. I
HAVE BEEN POSTING FROM MY COMMODORE 64 F
OR TWENTY YEARS NOW AND IT IS WORKING JU
ST FINE FOR ME!
The damned lameness filter has just managed to destroy my joke. Thanks a lot, filter.
Sigs are too short to say anything truly profound so read the above post instead.
Some things are just good ideas that work well. That's all there is to it. Sure, something more refined may come along one day, but it will need to be significantly better and offer a lot more. Otherwise, tried and true technology will hang around. Pretty simple, really.
This guy's the limit!
Ten years gone, and still relevant.
Damn I miss Byte.
Best Slashdot Co
The x86 architecture
The QWERTY keyboard
SATA (yes, folks, a serial version of the old IBM AT bus!)
Drive letters, DOS devices
Does anyone actually use the tar program for its original purpose anymore?
"mainframe sales are a tiny fraction of the personal computer market"
I'm pretty sure that mainframe sales are 0% of the personal computer market.
Intron: the portion of DNA which expresses nothing useful.
Does noone else see the irony in a newspaper exploring the reasoning behind "old" technology being used in modern environments?
With a "Bill Gates" 640k view of the world, of course we wouldn't need mainframe computers. Desktops now have more than enough power to run even the largest server applications of 1991 hands down and it's easy to see where that statement came from.
The problem with the vision is that Stewart Alsop didn't take into account the growing complexity of computer programs. We have plenty of (in comparison to the software of 1991) inefficient applications that require ridiculous amounts of computer power to serve and process everything we need done. We have complex server applications like gigantic databases and games and video servers that couldn't exist in the 1991 world.
The mainframe of yesteryear may now fit into the physical space of today's desktop... or smaller, but that doesn't mean there won't be a need for a bigger and faster one to take its place. That's as true now as it was then.
Well, back to rejecting software patent applications.
I was at a conference and at a BOF where I raised this question and technology. One person said that at the end of the day Microsoft will be replaced by Google apps.
I said, yeah sure Microsoft will be replaced like IBM and the mainframe will be replaced. He then went on and explained to me on how the mainframe is dead. I looked at him and laughed because there are still oodles of people using the mainframe and there will be oodles of people using Microsoft.
It is not that Google apps will replace, but will complement Microsoft, like the mainframe compliments Microsoft. Where the real understanding begins is when you know what to use when...
"You can't make a race horse of a pig"
"No," said Samuel, "but you can make very fast pig"
First, mainframes have many reliability and redundancy features that aren't found or aren't common in other hardware. If you spend the money, you can get 100% uptime guarantees.
Second, there's a lot of software written for the mainframe that works. It does important stuff, and what it does is probably not exceedingly well documented, and porting all that shit to something new is a massive, risky, expensive task.
Why mess with what works, particularly if the vendor seems to be willing to keep the product line going? There's no pressing reason to move, apart from people's prejudices about the mainframe, and the benefits really don't come close to outweighing the costs/risks.
FTA: First, it seems, there is a core technology requirement: there must be some enduring advantage in the old technology that is not entirely supplanted by the new.
This is what keeps a lot of "old" technology going. Over the past 30 years, I've seen the predicted demises of printed books, keyboard-entry word processing, land-line phone systems, and so on. Yet, each of them seems to still be chugging along. e-books are here, but, as it turns out they have lacks when it comes to the readability and portability, as well as being usable in many environments. Keyboard entry word processing was supposed to have been supplanted long since by voice recognition technology, which is another technology which always seems to be "5 or 10 years away". Cell phones were supposed to supplant all land-line phones, but it turns out there are places you can't get a signal, and you can also do a lot of other things with that land line that you can't do with a cell. Each of these supposed supplantive technologies turned out to have issues that the "old" tech didn't have. It doesn't mean that the new wasn't useful, but in terms of supplanting the old, it didn't happen.
I keep waiting for people to stop using the wheel and come up with a more efficient solution. It can't last forever, ya know...
I used to make CD players for one of the tech giants, as such I was in China alot. When I say "make" I'll be more specific - I wrote the firmware.
I remember vividly a conversation with one of the chinese project managers. I was discussing the build quality of a new CD player for the US markets. It had that brown cardboard like PCB that the racks leap off if you wave a soldering iron in the general vicinity. The PCBS, the unit front, the enfire casework was glued together with a hot glue gun. The radio tuning circuit was wire wrapped around a pencil and then "frozen" in place with dripped wax whilst the software was expected to adapt to mask any tolerance issues. The manager and his team gave it a projected life span of 18 months, then the consumer would be back to buy another, he was really enthusiastic about the repeat business.
*That* is why old tech survives because it was built to last, not with built in obsolescence. And no, I never brought a CD player from my employer ever again.
I keep seeing new ways to do the same old things; perform a credit transaction, store a health record, track inventory etc. Many of these requirements have changed little for decades if not centuries, and new requirements like enhanced security are easily accomodated in a centralized environment.
The original systems created to satisfy these requirements were lightweight and efficient to run on the machinery of the time and easily managed by virtue of being centralized. By contrast, many new solutions are bloated and hard to manage because of their de-centralised nature and the need to use whatever networking protocol was simplest to implement regardless of its suitability for the task. God forbid that anyone has to look at a terminal font to get information from a system - if it's not in Times new Roman then it's just not proper information.
The sole purpose for the replacement of the older systems seems to have been "because we wanted a GUI" to make it un-neccessary to train our users or because companies thought that they could axe experienced network admins and terminal equipment that they perceived to be 'locking them' to a vendor. Now I see that in many cases the management of large systems has been "de-skilled" and involves such a cocktail of technologies that nobody knows quite how it all hangs together (least of all how secure it all is).
Best just throw in more resources to make the IT problem go away, at least it's spread over several bills so it seems easier to pay for...
Nullius in verba
Coming from a person who has worked a lot on cars, I would prefer to work on an older car any day. Why? Simply put, there are fewer points of failure. When your car doesn't run right, what do you check? In older models you have things to check which are mostly mechanical. In newer models you have some mechanical and some electronic, which leaves a lot of things to investigate and can end up being a humongous hassle. (*begin short rant* for example what idiot thought it was a good idea to electronic fuel pumps inside the gas tank whereas mechanical fuel pumps are connected to the engine *end short rant*) There may be small variations in advancements in the mechanical parts, but those are tried and true and have been implemented since probably the 50s. The tried and true old technology is relatively more simple than the newer technology and easier to fix as long as it can serve the same function. This may be slightly different for older electronic technology, but I would figure that the comparison to cars would work just fine.
Absolute power corrupts absolutely. indymedia
That's ancient tech.
How about a bottle or a bucket?
Try an even older and more generic container, a sack.
Old tech hangs around because it does it's job and has not been improved upon in any meaningful fashion by later tech.
Incandescent lights might actually exit the stage soon...
Good judgement comes from experience, and experience comes from bad judgement.
- W. Wriston, former Citibank CEO
Digital TV does everything analog TV does, except it can provide better video and sound quality and multiple streams in the same amount of EM spectrum.
What would be the cost of hiring on top of the existing mainframe admins and developers a team to migrate this stuff to Windows or UNIX? Remember some of this code is written by people who not only have left the company but may have died. Then you have to hire new developers and administrators for the UNIX/Windows systems. Change always creates the potential for problems, so expect a higher percentage of disruptions to the business as you're doling out all this money. If IBM is making it easy for you to keep what you have going, and also allows Linux, web etc. capability, why spend all that money to transition? The answer is that a lot of times companies don't. I worked at a Fortune 100 company that still had plenty of IBM mainframes. They even had a lot of their printing handled by the mainframes, although there were Windows and UNIX gateways into the print queue.
PC's have been around for over 25 years. Is that not old? They constantly evolve.
Mainframes constantly evolve.
Mainframes went 64 bit before the PC ever did. Virtualisation is just gaining ground on the PC.
Mainframes have had that for decades with Domains and LPAR's.
Whats old technology, a PC server farm with dedicated server per app, and maybe 10 concurrent users, or a mainframe running many applications with thousands of users, and terrabytes of i/o throughput.
be interesting to find out how often the guy is this wrong.
I still remember from the old whole earth catalog, how they recommended these super expensive foam swords - sort of a pre yuppie yuppism.
Actually, no matter how fast your PC is, PCs and mainframes are engineered for different things. Many mainframe-class machines specialize in transaction processing and are designed for total I/O speed, rather than chip clock speed. People also pay the big bucks for mainframes not because they are fast but because they never, ever crash nor require downtime. Don't let Apple calling a G4 Mac a "supercomputer" confuse you -- a mainframe is still highly specialized equipment, and I doubt there's any application that you personally might need to run that would require one. On the other hand, no matter how fast desktop chips get, it seems unlikely to me that major Wall Street banks would ever switch from mainframes to PC-class hardware for financial transaction processing.
Breakfast served all day!
COBOL code runs in some shops where the source code is even gone! I know one system I wrot ein the early 80's is still running. I left that company in the mid 80s. Other palces you find stuff all the time written by peopl that have moved within the company, left the company, retired or even died.
Heck, I was writing a new COBOL program the week before last. Why? Because it gets the job done, with a minimum of fuss. And the code was based upon a similar COBOL program of about 3 years ago, which works, so I was able to crank out a WORKING program with only an hour or so of work. Convert to Java? Try 3 weeks work, which I just don't have time for.
Why are the mainframes still here? What machines are you going to use to put terabyte sized databases on that require access 24 x 7 for hundreds of users?
If I can line up enough jobs to run a mainframe for 8 hours standalone (yes, take the whole machine and peg it to 100% for 8 hours), just to do maintenance on my databases on Thanksgiving day, when am I ever going to get enough time to do it in a server environment?
Mainframes are still around because the engineering is better.
There's no secret about how to do this. It wouldn't even add much cost to servers to do it right. Here's what's needed.
Once you have all that fault isolation, you know which component broke. This produces ongoing pressure for better components. It empowers customers to be effective hardasses about components breaking. With proper fault isolation and logging, you know what broke, you know when it broke, you know if others like it broke, and you probably know why it broke. So you know exactly which vendor needs the clue stick applied. There's none of this "reinstall the operating system and maybe it will go away" crap.
Mainframes are about three things:
- Reliability
- Availability
- Capacity (including compatibility across upgrades)
in that order.
Reliability is the absolute must. Dropping pennies through the cracks adds up to big bucks in lost coinage and much BIGGER bucks in legal trouble from the people whose pennies got lost. Consistently total the bill wrong and you face class action suits, too.
Mainframes don't make errors, period. The internal components DO make errors, and the mainframe fixes the errors so the result is correct (though it may be delayed by milliseconds when a bit drops internally). They do this a number of ways: Error detection/bus-logging/stop-fix-restart, redundant components and voting, redundant components and comparison (see "error detection..."), error correcting codes to name just a few.
Redundant collections of less reliable machines don't cut it. Businesses solve the "distributed update problem" by avoiding it: Transactions are processed on a single, ultra-reliable, server. The data is backed up (offsite and often dynamically via a network) so that, in case of disaster, they can switch to ANOTHER single, ultra-reliable, server. But spreading the work over multiple flakey machines is not an option. (They know how to do it with people. But they don't want to go there with computers when there's a better option.)
- Availability is right up there.
Drop the real-time logging of phone calls for a reboot and a baby-bell's ong-distance phone lines are free. That's in the million bux and hour range. But it's a drop in the bucket compared to the cost of an outage in the trading support systems of a major brokerage.
- Capacity must continue to be "enough" as a business grows.
Throttling a growing business because the IT department can't crunch the extra transactions kills shareholder value. And this includes compatibility: Thrashing the applications and inducing delays and bugs, just to port to a machine of the necessary capacity, also isn't an option. A business-critical legacy application has to "just work" if the system must be upgraded for higher capacity. The source may be long lost and the programmer long dead, so even recompilation (or reASSEMBLY) may not be practical options. (Even if the source code ISN'T lost it may be in a language that's no longer supported and/or with no experts available.)
===
Makers of non-mainframe computers and their components and operating systems still haven't "gotten it" on these issues. The hardware designs are almost totally composed of "single points of failure" and flake out from time to time. OS crashes are a way of life (especially with the "dominant desktop OS" - which is what business decision-makers see).
The chip makers blew it with things like Weitek's floating-point accelerator that didn't do denormals and Intel's Pentium bug. (Those little numbers are VERY important for things like interest calculations.) In particular, Intel could have recovered from that by immediately replacing the chips with the fixed ones and giving business customers priority. Instead they fought it and claimed that the errors didn't matter for anybody but the users of "high-end games". GAMES? What does THAT look like to a guy in a business suit in the executive suite of a fortune 500 corporation?
Imperfect computers can work for the desktops that support the imperfect people who handle the day-to-day operation. The infrastructure is already in place for distributing the load across them and recovering from their errors. And they can work for the core of a network - where protocols can repeat dropped packets and machines can route around failed peers and cables. But like the EDGE of a network (where a customer's lines funnel through a single box, which must have telephone-switch-like reliability), the core of corporations' information processing is already built on and optimized for near-perfectly-operating machines. Despite their cost they're FAR cheaper and less risky than switching to, and running on, something less.
Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
Much of the Prius is drive by wire (especially the throttle)--but they kept the old model. When I first got my prius I thought simulating the "creep" in an automatic transmission on drive by wire was stupid. I now think it makes sense--as that's what we're really used to. In other ways, keeping existing models but changing the implementation is good design.
I'm not sure I see what's wrong with the steering wheel as an input device for turning a car. However, there's no real reason why the wheel could just be turning a potentiometer that controls the steering. The original reason for a steering wheel was the mechanical advantage (thus the reason trucks had bigger steering wheels. Perhaps we should go back to the tiller -- which was what some of the original cars had.
I can so say what you find unusual about your sig, as this post (don't count my sig that follows) has that oddity too. Huzzah! I admit it's off topic, so mod accordingly. Sigh.
RETURN without GOSUB in line 1050
I think old tech survives because of two reasons, one following the other. First, businesses develop inertia along a certain platform. For example, banks write a lot of code that is restricted to run in a mainframe environment (for whatever reason, it can't be moved off). "Inertia," in this case, means that a lot of code and business processes and practice have been developed around that platform. Perhaps even jobs have been created that are primarily concerned with the care and feeding of this platform and all it supports.
Then, time passes. People forget, and people leave. New people take over. At some point, if enough complexity develops and sits over a long enough period of time, the entity that owns the platform and all it supports basically loses control of it. They have no knowledge contained outside the system itself...to make significant changes requires someone to delve into it and tease out the why's and wherefore's of how it works. Either that, or replace it wholesale, abandoning all of the functionality of the code and the stability that comes along with the associated business processes.
If no one quite understands how something works, or even the totality of what it does, then it becomes easier to upgrade an existing platform than replace it. In some cases, the platform can only be upgraded in certain ways that maintains some restrictions of the original platform. And that's why old tech has staying power. No one knows what it does, how it works, or understands the impact of or effort required to replace it.
I think this cycle is inevitable to some extent where complex systems are required to fulfill some needed function. However, I also think there is much that businesses could do to prevent these issues where they are not necessary. I think the fundamental thing that needlessly ties businesses down to old tech is an improper segmentation of responsibilities within the company. Many times, departments and created and responsibilities assigned based not on the actual work that needs to be done, but rather the prejudices of executive management. A work force should be divided up based on areas of related responsibility and the dependencies between those groups, and nothing else. (This is usually how things are done at the low level of organizing groups, but go one or two levels up on the org chart and the concept seems to no longer apply at most places.)
but have you considered the following argument: shut up.
"Mainframe" is servicable, supported, robust, high performance, and reliable. You're buying that when you buy "mainframe," it just so happens that IBM packages that in a larger sized computer. Technology is a fairly small part of that idea. To make "mainframe" go away you have to convince the world that the idea is no good, but it's really really really good.
There's an old saying in the industry that still holds true: "Nobody gets fired for buying IBM." They provide the customer service businesses trust, and that's what closes the deal in large-scale business systems (and brings in a large, ongoing revenue stream). Look at their name: International Business Machines. Their reputation came from getting the job done year after year, from protecting the money spent on applications, development, and client data from instant obsolescence.
Companies remember that IBM mainframes give them years of faithful service, with on-site support a phone call away. Compare that to your PC experience!
I love this "single point of failure" argument. It's a fallacy. The only single point of failure with a single mainframe is the building it physically sits in. A single mainframe is internally redundant in every possible respect you can think of (and several you didn't think of). It is that cluster you talk about fondly, except there's no (error-prone) self-assembly and no particular management burden required. It. Just. Works.
But if you're concerned about a building failure -- fire, flood, whatever -- you can buy a second machine. IBM will sell that second machine to you at a lower price. You can put the second machine in a second building, you can run fiber (preferably with two separate physical paths) between the two machines, keep them many tens of kilometers apart, and run them as a single, seamless cluster (called a Geographically Dispersed Parallel Sysplex). And, as a programmer, you have absolutely zero coding responsibility to make that all work. If anything bad happens all your transactions instantly flip over to the other site, in-flight, real-time. And you don't lose a single byte or a single customer, and you can prove you didn't. You can also service any element of that cluster -- any element, from software to hardware to network to whatever -- without any interruption in business service. Yes, you can upgrade your database engine version while everybody's credit cards keep working. Neat party trick, that, but it's business-as-usual for mainframes.
Scalable? Each machine contains up to 64 main processors (and a minimum of two spares!) running at 4.4 GHz with more cache (and more cache levels, including copious shared cache) than anything else. (Even the clock speed argument is gone. It's a faster clock speed than X86.) Plus scores of secondary processors -- the main processors only do real work, not encryption or I/O. They don't even handle clustering -- there are dedicated processors for that. You can stuff 1.5 TB of RAM in each frame. And you can have a single cluster -- which behaves like a single logical machine from a programmer's point of view -- containing up to 32 of these machines. That's a single "machine" with 2048 main processors and hundreds (thousands?) of assist processors. Beyond that you can still do everything an Intel cluster can, like conventional load-balancing (e.g. HTTP spraying) across multiple 2048-CPU clusters. But no one has yet invented a core banking system, for example, that exceeds even a couple of these 64-way machines for a large Chinese bank, to give you some perspective.
No, this stuff is in a different league. Please read up on it sometime before dismissing it offhand. I don't dismiss the value of X86 blades for certain applications, but this mainframe stuff is very different and has important roles. Telecom switching, maybe maybe not. Telecom billing, you bet.
Some industries have a tendancy to hang on to old tech because of regulatory compliance and how difficult it is to get new systems approved. Case in point: Nuclear power plants. They have control systems that still rely on old tech, even though much has been improved over the ages, simply because they rely on fail-safes and redundancies that are governed by processes and procedures that were developed and put into place many moons ago, which they had to go through great lengths to get approved by regulatory bodies like the nuclear regulatory commission. In order to upgrade a system even in a small sector of a nuclear plant means thorough scrutiny and a whole lot of red tape to get through before approval, which is very costly and time consuming.
Which is why nuclear power plants still rely on mainframe computers, analog control systems and those big bulky institutional green control panels in the control room with lots of blinking lights, dials, knobs and buttons that look like mid 50's science fiction movies. (Nobody wants to stare at that all day- they'll go stir-crazy.)
Contrast that to one coal burning behemoth I visited that had a fiber networked distributed control system running on a modern server system, with a number of large flat screen panels in a modern operations center that looked more like a TV news studio, displaying the status of all the systems; and changes can be initiated with a couple keystrokes or even through a GUI.
The problem with the old systems at nuclear power plants is that many of the people who know them are of retirement age. As one guy who was tasked with maintaining the control systems in one nuke plant's repair shop told me, "Everyone in here is a grandfather". The younger people fresh out of engineering school who are taking their place were schooled on the modern systems like what's at the coal burning plant. There is a crisis going on because a lot of the old-timers are being forced into early retirement (taking their body of knowledge with them) faster than their replacements can learn from them.
You can. There's an emulator called Hercules which implements the S/370, ESA/390 and z/390 instruction sets. You still need a copy of the relevant OS to run on it but some of the older IBM mainframe OSes are public domain, and there is an implementation of Linux for the 390 architecture.