Talk to anyone who has ever worked on a mainframe and you will see that they are acutely aware of important factors that are sometimes overlooked on other platforms. Things like security, control, scalability, and reliability are second nature to mainframe computer systems and applications. Unfortunately, though, the bulk of new IT developer and programmers are not mainframe literate. This should change. But maybe not for the reasons you are thinking.
Yes, I am a mainframe bigot. I readily admit that. In my humble opinion there is no finer platform for mission critical software development than the good old mainframe. And that is why every new programmer should have to work a tour of duty on mainframe systems and applications at some point – preferably right after graduating from college.
Why would I recommend such a thing? Well, it is because of the robust system management processes and procedures which are in place and working extremely well within every mainframe shop in the world. This is simply not the case for Windows, Unix, and other platforms. By working on mainframe systems newbies will learn the correct IT discipline for managing mission critical software.
What do I mean by that? How about a couple of examples: It should not be an acceptable practice to just insert a CD and indiscriminately install software onto a production machine. Mainframe systems have well-documented and enforced change management procedures that need to be followed before any software is installed into a production environment.
Nor should it be acceptable to just flip the switch and reboot the server. Mainframe systems have safeguards against such practices. And mainframes rarely, if ever, need to be restarted because the system is hung or because of a software glitch. Or put into words that PC dudes can understand: there is no mainframe “blue screen of death.” Indeed, months, sometimes years, can go by without having to power down and re-IPL the mainframe.
And don’t even think about trying to get around security protocols. In mainframe shops there is an entire group of people in the operations department responsible for protecting and securing mainframe systems, applications, and data. Security should not be the afterthought that it sometimes can be in the Windows world.
Ever wonder why there are no mainframe viruses? A properly secured operating system and environment makes viruses extremely unlikely. And with much of the world’s most important and sensitive data residing on mainframes, don’t you think that hackers would just love to crack into those mainframes more frequently? Of course they would, but they can’t because of the rigorous security!
Project planning, configuration management, capacity planning, job scheduling and automation, storage management, database administration, operations management, and so on – all are managed and required in every mainframe site I’ve ever been involved with. When no mainframe is involved many of these things are afterthoughts, if they’re even thought of at all. There is even a term – the accidental DBA – that has been coined in the SQL Server world for developers who become the DBA because nobody else is doing it. Such a situation is unheard of in the mainframe world – indeed, you’d be laughed at if you even suggested it!
Growing up in a PC world is a big part of the problem. Although there may be many things to snark about with regard to personal computers, one of the biggest is that they were never designed to be used the way that mainframes are used. Yet we call a sufficiently “pumped-up” PC a “server” – and then try to treat it like we treat mainframes. Oh, we may turn it on its side and tape a piece of paper on it bearing a phrase like “Do Not Shut Off – This is the Production Server”… but that is a far cry from the glass house that we’ve built to nourish and feed the mainframe environment.
Now to be fair, the infrastructure and best practices for managing distributed systems are improving. There are many shops that have begun to build better processes for controlling their non-mainframe computing environments. Indeed, some organizations have built an infrastructure around their distributed applications that rivals the mainframe glass house. But this is more the exception than the rule. With time, of course, the policies, practices, and procedures for managing distributed systems can improve to mainframe levels. But will they? That is hard to do when things are constantly changing with open source software, cloud computing, big data, and whatever the next heaping of hype turns out to be.
The bottom line is that today’s distributed systems – that is, Linux, Unix, and Windows-based systems – typically do not deliver the stability, availability, security, or performance of mainframe systems. As such, a forced tour of duty supporting or developing applications for a mainframe would do every IT professional a whole world of good.
Regular Planet Mainframe Blog Contributor
Craig Mullins is President & Principal Consultant of Mullins Consulting, Inc., and the publisher/editor of The Database Site. Craig also writes for many popular IT and database journals and web sites, and is a frequent speaker on database issues at IT conferences. He has been named by IBM as a Gold Consultant and an Information Champion. He was recently named one of the Top 200 Thought Leaders in Big Data & Analytics by AnalyticsWeek magazine.
I agree with your article Craig. I never worked with mainframes, but i am always thirsty to try it IRL.
Thank you, Nailson. I do not have any control over the appearance of the blog text, but I’m sure the publishers will note your concern. I, too, would prefer black (as well as a little bit bigger font size since most of us mainframers are a bit older…)
There is no substitution for the disciplines we learned in the mainframe world. Unfortunately the current generation of decision makers look at us as archaic as they strive to match the performance,reliability and security that we took for granted as necessary and included in all applications.
That’s ok… I worked in it for almost 2 years and do not see any bright future in it. What’s out there in the tech world in which I can switch to and which is related to Mainframes also ?
Hi Kanwaljeet – If you wanted to work in an adjunct world to the mainframe, and assuming you are a programmer. I would seriously look at your metal C skills and also server side java script. Lots of opportunities in the transactional side of mainframes within CICS to still use what may be termed “modern programming languages” but still have your code run through a mainframe. A bit more competitive for work but a definite need exists.
Kanwaljeet Singh, If you are interested in development/support in Linux, start from there with Linux/Z . This way, your concerns /interests can be addressed well. my 2 cents .
We in the tech world (through Slashdot) are always herniag about dead technologies. They usually don’t die but at most slowly come out of use. There are SO many COBOL jobs out there amongst other niche computer / tech jobs.Even in a down turned economy there are still plenty of job openings for such persons. I learned COBOL early on but changed with what I thought was were the market was going.As it turned out if I continued COBOL programming and non-PC based learning I would be very well employed now!
Every time I hear a newly raised concern about some aspect of processing (performance, security, reliability, availability, “data sharing” among servers, concurrent processing of tens of thousands of users accessing ‘common data stores’, etc.) using NON-Mainframe “servers” / technologies, knowing those problems were ‘SOLVED’ DECADES AGO by Mainframe technologies, I just have to laugh a little. Seeing all the “bad press” the Dinosaur Mainframes get in the ‘general popular’ and ‘current technology’ media (and in conversation with practitioners of various “kiddie technologies” currently used), makes me wonder where where IT world is going, and why.
I basically agree with Mr. Mullins’ premise.
Working with mainframes forces you into a universe where you necessarily are a team member and not the only show in town. Since the system is managed by a team, not an individual, all changes (hardware, software, environment) are made by the team and various duties of the team members (testing, operations, change control, security, etc.) prevent any one person from doing dumb things. Being a member of a team places people into a think-it-through-first mindset, knowing that their proposals will be scrutinized by the entire team before they are implemented. This level of discipline, as mentioned by Mr. Ibert, is the take-away lesson from living in this environment.
Mr. Mullins says, “…the infrastructure and best practices for managing distributed systems are improving.” While this is true its worth noting that the mainframe world has been doing this for decades (Mr. O’Neal) and has it down to a science. Why are these just starting to “improve” now in the sub-mainframe world? I would venture to say is because they have not yet achieved “Every IT Professional Should Work in a Mainframe Environment.”
I believe the trust in security is a bit misplaced. A lot of the security seems to depend on a properly secured perimeter. While z/OS and z/VM will do a lot to prevent intrusion and exfiltration, there is no magical solution. As for the resilience and availability, not everyone needs five nines and those who do will pay for it, either in mainframes or in properly managed warehouse-size clusters of (relatively) inexpensive Linux boxes.
There is some interesting discussion happening over at Hacker News.
Hacker, of course, in the respectable meaning.
https://news.ycombinator.com/item?id=20298211
It’d be nice to have a dialogue between the mainframe experts over here with the mostly cloud and Linux crowd over there.
Reality can be stubborn. COBOL will outlive all of us, and for good reason.
https://www.linkedin.com/pulse/coboldb2-programming-hard-work-versus-buying-power-luther-dehaven/
That’s ok… I worked in it for almost 2 years and do not see any bright future in it. What’s out there in the tech world in which I can switch to and which is related to Mainframes also ?
There is no substitution for the disciplines we learned in the mainframe world. Unfortunately the current generation of decision makers look at us as archaic as they strive to match the performance,reliability and security that we took for granted as necessary and included in all applications.
I am a Windows Admin, and I have worked with a LOT of Unix guys who think the exact way you do. They had their racks, and I had mine. And we peacefully coexisted – for the most part. 🙂
They definitely should. But not all can do this at some point.