Bob Rogers is a walking, talking IBM history book. He started at the company in 1969 when he was just 19 years old. His first job was as a computer operator. Two years later, he graduated from Marist College and went to work full-time for Big Blue as a programmer. A "company lifer," as he describes himself, Rogers retired from IBM in late 2012. "Basically, I worked there 40-plus years before retiring," he says. "Almost all of it was in operating systems development with various names like OS/390, z/OS and so forth. My major accomplishment was the smooth transition to the 64-bit z/Architecture at the turn of the millennium. I was the lead software designer for that transition. I did other things along the way in my long career, but that was my major accomplishment."
But he wasn't gone for very long. He got a call in February 2015 to come back as a "retiree supplemental," working in VM this time. "So, I took my pool cue back off the wall and got involved in things again," he jokes. "What enticed me back was the fact that VM is such an extremely cool technology. I like the fact that you can take a single machine and make it behave like multiple machines. Maybe people take that for granted now, because there is VMware out there. But this goes back to 1967, even before me, in terms of this simulation of the machine architecture so that a single machine could be shared as if it were multiple machines by multiple different operating systems. I was an operator on CP-67, which was the progenitor of VM. Right then, I fell in love with it."
When Rogers was full-time at IBM, he was a Distinguished Engineer. Now, he is technically on staff as a senior programmer. "It's very isolating to be retired after you've spent your whole life with a series of relatively important jobs in the technical field," he states. "I liked my job so much that I never really developed a hobby. The other day I had a conversation with a guy in Poughkeepsie who I used to work with that was very stimulating. I would say something, and he would refine it. It's just very satisfying to be able to do that again, to have those kinds of conversations again."
The conversations he often has now with other programmers and engineers are historical in nature. Rogers truly has a wealth of knowledge about IBM's early days, how far the company has come, how much it has had to overcome and where it is headed in the future. When asked to comment on some of the more interesting mistakes that led to important improvements in the mainframe, he was quick to answer.
"From a business point of view, when we introduced ESA, it was a solution looking for a problem. The original mainframe architecture had a 16-megabyte address space. As time went on, computers became more powerful, customers were doing more work and so forth. This amount of space became constraining. The customer experienced a great deal of pain trying to get their work done with this constrained address space. So, we came out with an architecture called 370-XA in which the address space was 2 gigabytes. I worked a lot on that, and that's really when I became an operating systems programmer. Before that, I did a lot of miscellaneous stuff on the periphery."
He continues, "A couple of years later, the company reacted in the opposite direction and put out a new architecture, which allowed for additional address spaces. It would be a solution to some constraint problem of the future, but it didn't really provide any value at the time. The competitors of IBM had enough time to implement that architecture before it had a great deal of value. So, in terms of an innovation causing an increase in IBM's market share, it didn't work."
The next transition was one that he led on the software side to 64-bit. It was a 16-exabyte address space. "I had learned from what I perceived to be the mistake in the delivery of ESA," he recalls. "The previous architecture was announced and made available and thus could be replicated by competitors before it had sufficient value to compel the customers to buy the IBM machines that had this new architecture. It gave rivals time to catch up. When I was leading the 64-bit project, I said, 'This isn't going to happen again!' I arranged to have substantial value from the new architecture to be available in the operating system two months before the machine came out. The value of the new architecture was in that operating system for early adopters as an 'Easter egg.' So, there was no window."
As it turns out, neither of IBM's two big plug-compatible competitors, Hitachi and Fujitsu, decided to implement the 64-bit architecture. "They no longer had the wiggle room," Rogers explains. "By the time they could make a huge investment to be able to implement what IBM had already done, everybody would have owned an IBM machine, and everybody would have migrated off of their machines. It would have been an uphill battle. So, both Hitachi and Fujisu decided to recede. I suspect that made a lot of money for IBM."
Looking back, Rogers recalls that there were a number of important decisions on IBM's part that made the mainframe great. "Before the System 360 line," he says, "if you were a bank or whatever, you'd go out and you would buy a machine. You were starting to automate some of your manual processes on this machine, keeping track of accounting and so forth. Let's say your bank grows or you acquire another bank. Now you need a bigger computer. So, you'd go out and buy another computer. The bad news is this other computer does not run the software you'd been running because the machines were not compatible. Even machines that all came from IBM in a sequence were not compatible and able to run the same software. Maybe that was a surmountable problem when there wasn't that much software. But as time went on, this was going to be very limiting."
Rogers continues, "IBM came up with the idea of an architecture. Instead of just building one-off machines, the decision was made to define a machine architecture under which 'If the software does this, the machine will do that.' Then, you can take that architecture and implement it using different speed technologies and different cost technologies. So, you can have a low-end machine that's not very powerful. But it implements this architecture, so the software sees the same thing on this entire line of machines starting from the low end going all the way up to a machine that may be 40 times as powerful as the low end. But the same software could run because the machines implemented this architecture.”
Rogers recalls that there was once a project called Future Systems, under which IBM was going to come out with a new and more advanced architecture. But the company's research department did a study and found out that even IBM could not sell a machine that was not 370 compatible. "In other words," Rogers explains, "there was so much software out there and so much knowledge about the 370 platform, that even IBM could not introduce a machine that wasn't compatible with it. There used to be competitors like Honeywell, Rand, Sperry and later Rand Sperry along with different computer manufacturers. They all went out of business, and what rose were plug-compatible vendors or people who would build a machine that could run the 370 software. "
Rogers has been a "plug-compatible" fit with IBM from the get-go. In his more than four decades at the company, he hasn't had a bunch of people he would call mentors. But he has definitely taken inspiration from several colleagues who he has worked closely with. One of them was Bernie Pierce, who was a mainframe performance analyst and designer. "He taught me that software is a business," Rogers states. "Because most people like me get bogged down in the technical details, seeing what they can create and build and make work. But Bernie was the one who would ask, 'How do we spin this so we can make some actual money?'"
Another colleague who inspired him was Dave Stucki, a software designer and implementer who was well known for being a top-flight debugger. "Dave always worked late," Rogers says. "So, if you wanted to interact with Dave, you'd just hang around. I learned so much just by being willing to listen. He was the best at keeping abreast of everything that's going on. I would ask, 'Why is it that Dave knows everything?!' The reason why is because people simply thought that Dave did know everything. He had that way about him. So, when they would come up with a new design for what they were going to do, they'd go to Dave to get his review. Basically, he would get a free tutorial. He didn't have to wait until the manuals came out. The people who were building something would come to him and explain it to him, and he would just sit there and listen and nod. I'd look at him and say, 'That's what I want to do! ' And for a part of my career, I achieved that. People would come to me and invite me to their review meetings, because I did know a lot about the overall system. The more that happens, the more you become qualified to be the guy they think you are!"
Bob Rogers worked on mainframe system software for 43 years at IBM before retiring as a Distinguished Engineer in 2012. He started with IBM as a computer operator in 1969 and worked on mainframe operating system development for his entire career at the company. Rogers has been for many years, and continues to be, a popular speaker at SHARE, the z Systems Technical University and other venues. He is currently working with Trident Services, a California-based z/OS software and services company, and also part-time on the zVM team for IBM.
— Information Inc.