Life Lesson Number 3: Data Management, and SQL, is here to stay
One of the first tasks as the new computer operator was to help write queries for Oracle RDB that ran on the VAX. This was my first exposure to SQL, database management, etc. The interesting thing is that OpenVMS has a database manager directly built into the OS called RMS. You could "query" your OS just like your data. Almost like DMVs in SQL Server today...but we had this in the early 1980's!
I learned "SQL" but didn't even know it was SQL. I was the "go-to" guy whenever someone needed an ad-hoc query. "I need a list of adjunct professors who did not return their building keys after the semester." No problem, I can do that. "I need to know which alumni have not given to the pledge drive this year." No problem, give me a day. I was writing so many ad-hoc queries that I wrote a little macro in WordPerfect for VMS (yes, there was such a thing) that would help a user schedule queries for off-hours.
I really did not understand how valuable I had become. I was NOT a CompSci major. For some reason I had this notion that I would make a good high school history teacher.
During my junior year I applied for a job working for Electronic Data Systems. At the time the only "toll-free" numbers started with 1-800. Suddenly the RespOrg system, which is responsible for toll-free numbers, was running out of available numbers. I was recommended for the job based on my experience with VMS and Oracle RDB. The job was to extend the system to support 1-888 numbers. Two of the first 888 numbers in existence were registered in the RespOrg system to me. 1-888-WENTZEL (1-888-936-8935) and 1-888-ASSHOLE. I essentially "squatted" those two numbers. The former I held on to until 2001 when I was tired of paying the yearly registration fee. The latter I lost because I forgot to pay the yearly fee. The RespOrg system, at the time, ran much like the domain name registration system does today. I later found out Howard Stern had purchased the rights to 877-ASSHOLE, reportedly for many hundreds of thousands of dollars.
The entire RespOrg project was solely an issue of data management. How do we take a hierarchical database and extend it for flexibility? But I *still* didn't realize I was doing data management and "SQL".
My first real job out of college was as a help desk tech. My cube-mate was using TeraData and was having problems with her query. I leaned over and helped her with her filtering and she asked if I knew "SQL". I wasn't really sure, "but I know how to do THAT." It turned out that THAT was SQL.
My value was soon recognized and I was promoted into a better job, writing queries.
SQL and data management isn't going anywhere, regardless of the NoSQL movement (if it is a "movement", is it "religious" or "bowel"?).
Life Lesson Number 4: Rebooting rarely fixes anything on a server.
Somehow I keep digressing from VAX/VMS.
The VAX 11/780 that we had in college never required rebooting. I was "in charge" of this beast and I religiously patched the software whenever we got a "kit" in the mail from DEC. But it never needed to be rebooted.
One time my junior year we were hit with an internal email-bomb. We allowed people to write basic email macros that let them to do things like auto-reply to emails and set up "distribution lists". We didn't put a lot of security around this so eventually a CompSci major (really, a "script kiddie") got his kicks by writing an email-bomb that put a SEND command in an infinite loop using auto-reply. I was contacted when people started complaining that their emails were being delayed-on-send by a couple of HOURS.
It probably took me 20 minutes to realize the problem was the macro and then disable it. I expected response time to improve, but it didn't. The VAX was crawling along trying to empty its mail queue. I didn't think it was a big deal, I assumed it would eventually clear its messages...which were all failing delivery anyway. It wasn't long before the VP came along and asked me why I didn't reboot it yet.
"Um, you can reboot a VAX?" I had never done that. I rebooted my IBM PS/1 daily. But I didn't know how to reboot something the size of a washer/dryer. I wasn't really a "system operator" and had not prepared for that. Remember, I was not a CS major and my formal VAX training involved RTFM. I was just a quick-study liberal arts guy. I knew how to restore VAX files from tape, but that's it. I told the VP that I would reboot it and he left. I never did reboot it. I let the queues clear naturally. VMS was such a stable OS that there are stories of VAX systems being up for decades between reboots. Assuming you don't do something totally stupid, and you keep your system properly patched, follow good security principles, and do not over-engineer your software, rebooting should be a rarity.
I still have co-workers today that believe it is necessary to reboot a SQL Server every 30 days. Why? "The error log gets too big to open up so it's just easier to reboot which gives me a new error log." ...Or..."It's just good to clear out the old memory once in awhile." Yeah, a cold cache is better than a warm cache. BTW, these are enterprise-class servers.
Life Lesson Number 5: Never Lie in IT, there's always someone smarter, or with an ax to grind, that will make you look foolish
Eventually we migrated the 780 to a VAXstation later my junior year. The "microVAX" was a "minicomputer" with the form factor of a desktop PC. The 780 was the size of a refrigerator/washer/dryer combo.
The process of migrating the data required one reboot of the 780. Although I was highly trusted considering I wasn't a CS major, the VP wanted to shadow me. When it came time to issue the reboot command I still didn't know how to do it. Why didn't I research it last time?
VP: "I thought you rebooted the VAX after the mail-bomb."
Me: "Oh I did, I just can't remember what command I used."
VP: "Do me a favor and type 'show sys' at the prompt."
(example show sys output)
Damn. I was caught. You see, "show sys" will tell you the last time a VMS system was rebooted. I slowly typed the command. The response indicated the last reboot was 7 years ago. I'm not kidding on that either. 7 years.
The VP scowled.
Me: "I guess the reboot didn't 'take'."
VP: "Don't lie to me, you didn't reboot, did you?"
It was at this moment when I learned that "lying" and "professionalism" are mutually exclusive. Yes, I 'fessed up. But did I really "learn" my lesson?
More on that in my next post.