Analytics

Saturday, October 13, 2018

Post #3839 J: Dreams, Surprise Attacks and Sniper Bids

Dreams, Surprise Attacks and Sniper Bids


As a college student, I had a recurring nightmare: I would be coming into a final exam, completely unprepared, never having gone to lecture, read the textbooks, done the exercises, etc. I felt there was no way in hell I could pass the exam. Last night, years after my last college graduation, I had a variation of this theme. I was a doctoral student in a class where a group project counted as a major part of the grade, when I found myself excluded from the group presentation, and the professor did not provide me with an accommodation. (Low grades, like C or less, can be fatal in graduate school. For example, in one graduate program, your second C meant disqualification from the program.)

There was an actual similar incident I went through at UH taking graduate student analysis. I'm not a fan of group projects in general; it's difficult to distinguish who contributed what, and you often have to referee conflicts in groups. To give a telling example, I recently wrote about a UTEP coed who cheated with a male student on a database homework assignment. (The following is based on what was told to me by other students, not at my initiative.) The coed, after her temper tantrums in class and in my office, recruited fellow students to go and complain about me to the Dean of Students. [I have never met a Dean of Students who wasn't an asshole.]  One of the recruits, who was also working with her on a group project in another class, started contradicting the lies the coed was telling the Dean of Students, which resulted in both the coed and Dean of Students shouting at him. He later came to me for help; the coed apparently had administrative privileges for the other class project and as a reprisal, locked him out of the project.  I told him I had no control over the other professor's class and he needed to contact him directly. On a side note, when I tried to thank him for speaking in my behalf, he said, "I didn't do it for you! I did it for the sake of the truth." As a postscript, just before graduation that year, he came to my office and asked to take my picture (which is embedded in a past blog post), saying something to the effect he wanted to have pictures of teachers who had the most impact in his studies. The last thing I heard, he was off to the MBA program at the University of Virginia.

Going back to my systems analysis class, I had agreed to join a group of a couple of Indians or Pakistanis (non-MIS majors), on the condition that I (as an MIS PhD student) write up the final paper. This project was about a somewhat dated IBM methodology. And I soon found myself on the defensive as the Indians kept wanting to insert IBM marketing hype into the project. I knew the professor would see through that and take points off (I would). The other group wanted no part of the argument but were inclined to support the Indians because they started the group. Then the Indians broke the agreement by seizing control of the paper.

At this point I went to the professor. She was reluctant to offer an accommodation since it was too late for me to start my own group. I explained that I considered what they were doing was a form of academic dishonesty and I didn't want to be a part of it. She said she wanted me to make a good faith effort to work things out with the group and if I couldn't, she would make some accommodation.

It seems at some point after our meeting, whether at her or the group's initiative, she had a discussion with the others and (in one of the dumbest blunders ever made by a professor) told them she was willing to offer me an accommodation. Me, I wanted to go to the next group meeting like I wanted to go to the dentist for a root canal. It took them all of 10 seconds for them to tell me to go my own way.

As if it were possible, the professor then pulled another bonehead mistake: she scheduled the group's presentation prior to mine. I had built a creative bridge, among other things making a reference to Nolan's stage hypothesis. They stole all my contribution to the project, presenting my work as theirs--and catching me flatfooted as I had made transparencies based on my own project work. And then after I politely listened to their mostly stolen presentation, they sat in the front row and sabotaged my presentation by talking loudly  (the professor, of course, did nothing). There are few times I've been pissed off at a professor, and I couldn't afford to be as a doctoral student. She tersely responded to the effect, "I know what was going on; you got a good grade. Don't worry about it."

I wouldn't say I'm a control freak, but I like to be prepared. I've sometimes managed to fight off surprise attacks. Back in 2002, UC held a couple of IT contracts with Chicago Park District. (I've posted part of this story in the past), one a production outsourcing control, another to update their ERP system from version 11.0.x to 11i. In most shops, ERP upgrades take at least 6 months of dry runs, etc. UC Consulting promised a 3-month delivery from mid-August to mid-November, including 2 dry runs of the upgrade; they needed the last 6 weeks or so of the year for closing the calendar year books. I don't think UC was making permanent hiring in the aftermath of the Nasdaq crash. I worked as a subcontractor at a relatively low rate for the outsource unit, primarily because of my extensive pre-, post upgrade experience (not to mention multiple upgrades). Three months would have been a stretch hitting the ground running.

The consulting group was badly managed from the get-go. The project manager did not know how to hire competent DBAs (and never asked my input: they did have me screen one applicant, manifestly unqualified: when I told him someone would be in touch, he said, "I'll see you Monday". It turns out they had guaranteed him 2 weeks before he even talked with me.) I caught their first DBA breaking into my production server twice over 2 weeks. He also had no experience with Oracle databases on Windows (some significant differences).  He got replaced by the most incompetent DBA I've met to this very day.

It was a nightmare that still haunts me some 16 years later. I had to attend morning status meetings, so I had front-seat view of the dysfunction. They were bitching over the fact the development server they got had 3 CPU's vs. a production server's 7 CPU's (let me point out they never got to the test upgrade stage without me). They argued they didn't want to do work in the cold server room and wanted the city to provide software so they could access the server from the warm of the office. They didn't want to support my production refreshes to the development server. (Oracle didn't support cloning of their EBS databases until 11i. We, of course, did clones on our own, including certain infrastructure modifications (e.g., server names, ports, etc.) It took me 3.5 hours or so. But the second lead spent 2 weeks (the first guy spent 2 weeks) focusing on trying to get Oracle to backport adclone (which was never going to happen), then spent at least another week or so trying to get CPD to license a third-party cloning tool. I mean, the whole upgrade assumed having a clone database up and running. They had literally spent 4-5 weeks not doing a single step of the first run upgrade; they distrusted for purely arbitrary reasons my clones.

One of the first major decisions where the UC consulting group and I disagreed was a "big picture" issue. I hope not to get into the weeds here. Sometimes Oracle provided a way for IT managers to consolidate under a higher version of the RDBMS. Now in our case that meant going go 8i vs. 8 of the database. There was a slight benefit--you could split part of the update, but really this was maybe 1 hour out of 4 or 5 days. The price, however, is that you had to do a lot of interoperability patching so 8i would work with 11.0.3. And why? Basically most of Category 1-3 consisted of closeout tasks against EBS to get to the database upgrade stage (otherwise). Going to 8i early had no advantage in our case; it was a risk of any issues of interoperability patching for what? Doing 2-3 hours of EBS closeout tasks? Plus, there was no way we were getting 2 outages for the upgrade. The problem was that only I understood this, not the alleged PhD PM, not the clients, not their subcontractor employees. It required common sense to understand there was no benefit (and a lot of risk) for doing interoperability patching to close out the EBS for the upgrade. Typically I was challenged by an idiotic "show me where Oracle says that". No, Oracle technical writers are not going to project into our scenario. You have to understand the context for much bigger enterprises and trying to manage a large number of databases; you need to understand the steps leading up to the database upgrade and the tradeoff in implementing interoperability patching, which is not necessary if you can close off EBS activities in a short period of time.

Then there was the bonehead move by the second DBA which was to run RapidWiz (the upgrade driver) on a server with Oracle installed (like the development server). It warned against running RapidWiz on a server with installed Oracle software in big,boldface type. Think DBA #2 asked me for another server? NOPE. So the idiots ran RapidWiz, at some point the server was bounced, and now their database wasn't coming up. Why? Because the registry was saying, "We are running 8i, and you can't run an 8 database without upgrading it." I'm saying to these idiots, the reason you run RapidWiz at this stage is to get the closeout scripts'; I  told I could do it and put the scripts on a share drive. And DBA #2 asks, "Show me where Oracle says that."  [Expletive deleted! He ignores Oracle's explicit warning, which in my view was grounds for termination.] So then I go and fix the registry, so they can bring up the database, and the boneheaded one says, "I'm not going to trust that; he hacked the registry."

This comes up in a later meeting, where I point out the boldfaced warning to the PM and my boss, and they seem to buy into CB/DBA #2's psychotic reinterpretation of plain English. My boss tells me to get Oracle Support to see in black-and-white, it means what it says in plain English. Oracle Support has its own issues to deal with, and the guy initially balks at my request. He comes back at me, "Do they know we will not support any upgrade where they ignore our instructions?" He had no idea the level of stupidity I was dealing with.

The politics of the situation was my boss wanted to give the idiot PM all the rope he needed to hang himself, and he didn't want the PM pointing at me as a scapegoat for his failure. He also started advertising for my position  (the requirements were so specific, they could only apply to my position) and kept a pile of DBA resumes on his desk for me to see.

So I've recently written about this part of the story before: he caused his own database to crash unrecoverably (I found out because he brought down my training database in the hopes of being able to recover, which was incompetent). At that point, I was handed control of the upgrade.

Now, finally, the client IT manager, who never met me once, finally put his foot down and refused to let the DBA's  go home. This turned to be a disaster for the project. CB was supposedly to be fired after he flew home to Tampa. I wasn't about to work with an incompetent DBA I worked with a junior DBA. We got more done over that weekend than in the first 6 weeks and I had us on the long-running upgrade patch by Sunday; we were running fairly well until sometime Monday afternoon when we ran into an issue involving a wrong response to an earlier query, a miscommunication of the junior DBA to me. There were a normal number of issues you normally run into an upgrade--some resource issues (e.g., more space for datafiles), minor client data issues, etc.

The incompetent PM, BK, became emboldened by my success over the weekend and refused to terminate CB, arguing he didn't want to train "a replacement". (He knew where I stood on CB: I had written a 7.5 page single-spaced document on mistakes I observed him make, and I wasn't with him 8 hours a day.) And every technical issue I ran into, it was like two Chicken Little's  screaming the Apocalypse had arrived. I know CB was agitating to regain his project lead role. BK continued to mismanage the project; to give a sample point of contention, I had to schedule my 8-hour schedule over a daily Metra commute, and I think my last train out was something like 5:55 PM. He had some 3-5 DBA's in name only. Most of the time the upgrade was like watching paint dry. I wanted him to staff around the clock, so they could call me if it broke down, and I could walk them through the problem and not lose hours waiting for me to fix things and resume the upgrade. I guess he felt defensive over his own role and my telling him what needed to happen. From my perspective, the city was getting zero value for his DBA slots.

In the meantime, my boss was unhappy because he felt part of my hours should be coming from the project budget. However, none of my production duties were being diminished; for the most part, I was needed if and when the upgrade process break down.

I had to go through all this context to explain what happened next. One day I got ominously called into a UC managers (mostly from out of town) meeting (and the assistant client IT manager with whom I had a decent relationship) where BK and CB presented a surprise attack multi-page argument which called for restarting the upgrade from scratch, and I correctly noted that the situation was under control. It was brutal battle, and I don't think the executives expected it. At the end, the customer sided with me, and the sabotage failed. I probably didn't myself any favors with UC management (someone hired BK), but of course BK had no intent of tipping his hand. I got feedback of the type that I won the debate but I could have been nicer about it.  But they hadn't seen the same game getting played over and over; the first time we run into an issue, I did "something wrong" and we need to start over. They had no clue about the nature and extent of the technical issue.

In the end, the element of surprise can be difficult to overcome. I recently explained late, anonymous filings into a contract renewal hearing and a literally last-minute grade appeal in my hellish experience at UWM. When people make charges in such a way as to rule out your ability to respond, there's nothing "fair" about it, there's no due process. I've actually heard progressive academics argue it would be "unfair" for me to be able to respond outside of the filing deadline since the filing snipers can't file outside the filing period.  No, it's an artificial restriction on expression and injustice; it allows the malcontent to frame the matter of contention and restricts the possibility of contrary evidence. I pointed out that grade appeals guidelines specifically ruled out subjective appeals, like the one I got, where his "evidence" was merely a dump of computer printouts and class notes--not a single allegation over the mismarking of a single test, assignment, etc. I was furious that a student was using university procedures to launch a personal attack against me, my professionalism.

There, of course, is the fact of sniper bidding of Ebay, e.g., you could be carrying the winning bid into the last few seconds of an auction and by the time you're refreshed your browser, you've lost the auction to a last-second trumping bid. To me, one should have an interval to respond to last-second bids, which are unfair to seller and competitive bidders.

And, of course, I'm making reference to the last-minute character attacks on Justice Kavanaugh. Sen. Feinstein sat on Ms. Ford's allegation, never raised or hinted at the issue during the hearing. The leak and the vague nature of the charges made it difficult for Kavanaugh to disprove the charge, e.g., he was somewhere else at the time of the incident.