Wandering Down Memory Lane...
More than a few years ago, my wife and I were living in our first two-bedroom apartment. I got a call from my old Campus Computing superviosr who was in the process of upgrading the St. John's University student computing environment to a new VAX system. He wanted to know if I wanted the old VAX 11/785 computer they had. Yes, the VAX which was about the size of two side-slide file cabinets, needed an external cabinet about the size of a two-drawer file cabinet for the operating system disk and the storage disk, the big free-standing tape drive, and the nearly-as-big max-bus cabinet. Yup, the one I helped to connect to the then-new TOMUS system that networked the library card-catalog systems between my university and the others in the MIAC conference that St. John's belonged to - all of which were small private colleges in the upper midwest, most in Minnesota, Wisconsin, Iowa and Illinois, at the time.
And my wife said I had to say NO. Talk about disappointing - even though the offer didn't come with a single VT-100 terminal. But hey, I knew where to get terminal emulation software... And yes, I had been utterly corrupted by my first professional IT position being on a VAX running VMS software.
For those of you less fortunate, who used other computing systems, my first paid IT gig was in part responsible for working a weekend shift once a week in one of the smaller "Micro labs" where a room full of IBM-PC compatible machines had been set up, and students could use them for class projects, classwork, or ... well, exposure to them, I suppose, back in the day when the campus computing environment was primarily Facility-based systems with some percentage of the student body fortunate enough to bring in their own computers.
Yeah, unlike today's world where I'm guessing the rare student who arrives on campus without a high-powered laptop are in the extreme minority, but back in the day, I had a medium-small group of friends, about 100, on campus - and two friends who had computers in their dorm rooms. One was an Apple IIE and the other was a desktop PC Compatible. Both of them could connect to the academic system with modems. I could only use the system when I was on site.
And early on, my first "software development" job was assigned by accident to me, by that same system manager who offered me the VAX. A utility called AddUser had been developed to simplify adding student accounts to the system. As a student worker your primary job duty was to work through the pile of new account applications that sat on the admin's desk. She sat up front triaging everything and making sure all of the bookkeeping was updated - which made sure we got credited for our work hours, and the other bills got paid.
Adduser came with a one-inch thick binder of lookup material. A number of choices that the student had which asked what their reason for requesting an account. This defined and limited their access to the various tools available. And because I was on staff for Academic Computing, I had access to everything. Which also meant the Manual Wall. Around the corner of the office, out of site for anyone coming in, was a pair of bookshelves, twelve feet tall (it was a tall basement floor) filled with orange and gray binders. The manual for every piece of software in the system.
One of the nicknames I had picked up from somewhere, which had helped me get the Academic Computer job, was Comman. Not quite complimentary from some of the kids studying programming, I had perfected the LOGIN.COM file. On VMS, the file was the AUTOEXEC.BAT equivalent, each time you logged in, it executed, setting your environment and abbreviations. So I could type "CALL FRED" and my terminal would first execute a "WHO" command that showed everyone logged in, it would check to see if Fred's actual username was logged in (we were typically first initial and last name), if he was accepting calls, and then pull up the "Phone" app, which was pretty much a chat tool. I had abbreviations to allow me to execute many command-line combinations quickly. And use some other utilities which were available to all users but poorly understood.
Like file protection. Back in the mid to late eighties multi-user systems were just being invented and perfected. when we added you to the system, you were assigned to at least one group, based on your reason for getting an account. There were some tools open to people who just wanted accounts, other tools open to people taking basic programming classes. More advanced tool to more advanced students, and other things to other groups. The system's security was split into four levels. You defined access by System, Owner, Group, and World. And the access was defined as if you might be able to Read, Write, Edit, or Delete. If you tried to prevent your files from being seen or read by the system, we didn't even back it up. But we did, when we encountered these, log in as SYSTEM, and then override the user's preference to look at the files. One of the jobs I got was when my boss would direct me to monitor certain user accounts and what they were up to. We had one kid who was attending school part time as a College Student, while he was still in high school. We'd had a conversation, before he knew I worked for ACS, about the system and specific access He saw me on the terminals and was curious, so he was asking me if I knew how he might steal or otherwise acquire access to the system management privilege. He was thinking it would be possible to write directly to the disks to give himself privileges. He didn't know that we had two disks - one disk was the operating system and account information, the other disk was the one that the student accounts could access. The only way students got access to the system disk was read access - no write access was allowed to that disk if you were not logged into a few terminals - and all of those were hard-coded and in our office.
So while he kept trying, I kept an eye on him and on several occasions I'd print out that he was working on and hand it to my boss. He would make a call or two and then direct me to protect or delete certain files. He never managed to obtain the access he wanted. Fortunately.
But anyway, after System and Owner, there were Group and World - Group was the members of your specific group, which depended on what you had signed up for, and World was everyone else. What was very poorly understood was a system called ACL - Access Control Lists. I could go into an editor and select specific people and give them read/write/edit/delete access to specific files and folders.
Seriously - this wee feature was, later on, the key to another fairly major accomplishment for me. After leaving college and working in retail for a few years, I got a real computer job. I was configuring, installing, and supporting software. In this case, a time and attendance application written by a company called Kronos. Aside from also being the homeworld of Klingons, they had been based in Waltham, Massachusetts, and sold both hardware and software. I started out working on the DOS system. I learned many parts of the system and did do some pretty big implementations in very complex environments. In one location, I wrote an entire system of batch files to allow the operator to collect, by modem, payroll files from four other locations. They wanted to track production information in addition to work time. My employer sold a tool that converted database output files into files that could be imported into a spreadsheet like Lotus 123. You could select certain information you wanted to export for each employee, so we developed a way for floor supervisors to go to a clock terminal and push a button, swipe a card, and enter a number. This would record the production for that team, that shift, in the system. We would then filter it out at the end of the week.
The trick was that each site would produce information files for each day of the week. I recorded processes called keystroke files, like a macro, that exported the same data each week in the same way. The batch files I wrote for each location would take the files and combine them into a ZIP file and put it in a specific directory, after moving the previous week's file into an archive. She collected these compressed files, put them on her system, and then I wrote another tool to unpack each location, filter and create output files for each location, each day, and those files were transferred to their mainframe for producing the annual bonus checks for each employee.
The difficult part was our translation tool expected a specific filename for the input, used another specific file to figure out what information to filter out and put in the output file, which also had the same name after every run. So I would have to find and copy the input file to that name, run the process for the standard pay output, then replace that defined filter with the bonus data filter, run the process again (after I moved the first output somewhere safe), and repeat. Then repeat for the other six days of the week, five times, one for each location.
So I convinced our programmers to upgrade our translation tool so that we could do /I to specify the input file name, /O for the output file, and /F for the filter file name.
And after all of that experience, my boss came to my desk. "I saw your resume said you had VMS experience. Can you look into this?" The boom my desk made when she set the large box labeled SCO UNIX wasn't too intimidating, but I had to learn a new operating system and figure out how to configure it so I could use a network connection to poll the terminals.
A year or so later the CEO of our company came back to my desk. "Do you still remember anything from VMS?" We chatted a bit then he hauled me up to the front of the office where our sales team lived. Into the sales manager's office who was on a call with someone from corporate, who was insisting we didn't have the know-how to install on VMS. I sat down, he pointed at me, and tapped a paper on his desk, which said "VMS Expert?" I waited until the person on the other end of the phone made a comment about no one in our organization understanding the system protection. "You mean RWED for SOGW?" I asked, using only the letters. The other end of the conversation paused "What do those mean?" "Are you sure you understand System, Owner, Group, and World?" "Well, I do, yes, but what were those other letters?" "You mean read, write, execute and delete?" "Yes, do you know how that works?" "I certainly do, but do you understand how much more powerful the ACLS are?" Absolute silence for twenty seconds.
I was sent back to my desk, and a few days later a fax was brought to my desk. "Here you go, show 'em" our sales manager said and the fax promptly started to roll up. I took the roll to our copier, and copied off individual pages so I could use a normal pen to answer their questions. It did not take much time at all for me to scan the pages and find a few errors. So I used the most diplomatic language to explain where they screwed up. I noted the time I finished the test, and faxed it back to the number provided. It was about ten minutes later my phone rang and I answered it. The voice on the other end of the phone was not someone I had known, but he introduced himself. I do not recall the name today, but back then he did tell me he had worked on the team that wrote and enhanced VMS before joining Kronos. He asked about a couple of my answers, specifically those where I noted that ACLs were far more powerful than the standard protection system because with them, rather than tailoring access to a group, I could limit the access to individual accounts, which could then be restricted by time and connection location before people could access a restricted system.
After a few minutes, I could tell he was remembering features I had used on our college VAX. A couple of buddies had written a very complex database system that was, well, a game. It allowed the user to pre-define a matrix, or table, of layers of rows and columns. You could define the properties of each of those defined cells. They had chosen to define a description, and then it allowed users to move around in the matrix - think the old style command line Adventure game.
One of the features I'd added to their system was an external notes system that allowed users to communicate with one another whie in the same grid cell. And we also created a location that was a town bulletin board where people could leave notes and messages for one another that could be placed in an "envelope" and secured to only be delivered to a specific individual, or visible to the entire group.
"I don't believe it" the fellow on the other end of the line said. "You are absolutely right. We're going to delay this a few weeks and take advantage of that - and I'll get you a special exemption - you are certified to install and support this thing."
So that was how I went from managing a software store to being the only person on the planet who had become certified by Kronos to install on every operating system for which they sold versions. I will admit that being grandfathered into the Windows installation group did suck a little bit, because I never got the chance to use it, I had instead become responsible for UNIX, AS/400, and VMS along with DOS.
But those were, I guess, the days. I really enjoyed working on the VMS operating system, and I do suppose I would have regretted taking that old VAX 11/785 and not having any way to plug it in and run it. Though I will tell you that, to this day, I'm still missing a lot of the features VMS had. But it is what it is, I suppose. Everyone's probably got that system they wish had kept up with the times...
Comments
Post a Comment