I was reading Schneier this morning and one of the commenters on a thread about a breach at Monster mentioned RACF. It brought back memories. One notable one for me in particular. The reason I never became an expert on mainframes was because of the follow-up program to RACF which was ACF2.
Back when I was interning at Xerox in the early 80s, the second internship I got was working for a man by the name of Jack Starkey. Starkey was an old school consummate engineer. Buzz cut, white shirts, clubman glasses, slide rule, thin tie, crisp diction. Tough but fair, one of a dying breed. My assignment from Jack seems trivial by today's standards, but took some doing back in 1984. It was to establish a data dictionary for the Xerox PSD Support database. It ran in a tool called Datamanager on an IBM 360.
For this job I had to learn JCL. JCL is job control language and I soon discovered that there were a couple women in the department who worked there full-time making as much money as both of my parents put together just starting jobs and watching jobs written in JCL. It turned out that they weren't interested in helping any snot nosed college kid get the ins and outs of this language. Jack Starkey, quoth he 'RTFM', and so I hacked my way through half the summer.
For every Jack Starkey, there is a Jimbo Jones. I don't remember the name of my Jimbo Jones, but he was a long-haired Wozniak look-alike who was disrespectful and anti-establishment and smarter than anybody else in the building. It turned out that he used to be an almighty SysOp but either got demoted or bored. So it didn't take me long to find out from Jimbo that if I wanted to get certain tapes mounted and have my own tracksallocated on the DASD that there were shortcuts and tricks. You see my job was not only to figure out what the structure of the whole support database was, but to help in the migration process. That meant I had to move data from one data center to another. It still gives me headaches thinking about Bulk Data Transfer and how few people knew how to make it work, and how little help those who knew a little were.
At the time, some slicked back sales types descended down to Xerox to tell us about Focus 4. Focus was a new kind of database, a relational database. So we sat in the auditorium shooting paper clips at each other, Jimbo and I, while the sales creeps began to talk down to us, as if there was something magical about their new technology that none of us could understand. It was rather cool what they were showing, but they had this kind of arrogance that came from owning a technology that even IBM had yet to rollout into a product. After I displayed enough haughty nonchalance and reviewed the entire thing with Jimbo after the presentation, he confided in me. He had hacked RACF.
Hacking RACF was an accomplishment of extraordinary significance. That is because back in the 70s and early 80s, the most powerful computers were IBM mainframes (notwithstanding claims of Fujitsu and Amdahl) but every flop of their circuits was eyeballed and audited by SysOps. There was no time-sharing, there were jobs and job classes. And every job and its status was monitored at all times. The job of the SysOp was to put some business priority around the most important piece of software in the world, which was the heart of the IBM 360 operating system whose function was to allocate precious CPU cycles and even more precious Direct Access Storage Device (DASD), a glorified hard drive of maybe 500MB. I never quite learned how to convert the figures back in the day, but I remember how difficult it was for me to get one cylinder of storage, which is less than one MB. Basically a floppy's worth of data.
One of the other pieces of madness you had to deal with was the job classes, as I mentioned. So I'm trying to get the Bulk Data Transfer to move database parts from one datacenter on one coast to another on another coast. Nobody will give me more than 1 MB of storage, tell me the proper syntax for bulk data transfer or give me a job class with enough priority so that I can try more than once or twice a day.
So I'm the intern who submits faulty JCL every day and waits for my job to abort. Big fun. I can't stand it. I meet Jimbo the week before the company cuts over to ACF2, the new, unhackable security program, and he only tells me that he's hacked RACF after ACF2 is installed. Wonderful.
This became the one job I ever had where doing the documentation was more fun than doing the programming. For my documentation I used the Xerox Star Workstation, which, by the way, was hooked up to Fuji Xerox. I could send emails to scientists in Shibuya and even print documents on their printers, but could I get 1MB of data from Rochester, NY to El Segundo? Not on your life. So it was decided, I'm never going to give mainframe people the time of day.
One of my other buddies there who was also sick and tired of working with these slow tired systems left and worked for a company called Britton-Lee. He did pretty well for himself. I was so sick of IBM that I decided that no matter what, I was going to work with the workstations, client/server and object oriented programming. Unfortunately, it took another decade for business data to find its way over to peer networks. Thank God LU 6.2 was a colossal failure, because I'll be damned if I was going to take it from AS/400 folks.
But I did have one more stop on the IBM train that moderated my hatred for them and big iron. It was called VM/CMS, and I actually loved it, but that's another story.