Wednesday, October 24, 2012

In which an old dog finds new tricks dull

I had all-day training today for the impending SCRUM-stuff. Which we’re all pretty sure is going to be an epic disaster of all kinds of proportion. The only people more furrowed of brow than the folks assigned to the SCRUM teams are the people who are not assigned to the SCRUM teams, who are looking at the diagrams showing themselves ‘demoted’ into a generic “operations / support” box and thinking, oh, HELL to the NO! to themselves before stomping off to set up a new job-search agent on

(And I am totally not making that up – I won’t be surprised if we end up losing about 50% of the overall team during this. And you know which 50% it will be, right? Yeah, the competent ones who get five job offers the instant they say, “Ya, I was thinking about maybe pondering the possibility of looking for-” “YOU’RE HIRED! CAN YOU START TOMORROW?!”)

So, yeah. I had all day training today. Seven hours. Seven solid hours of source control training.

Here. Let me sum up the seven hours of training for you: In Visual Studios? There are folders. And sub-folders branches <=fancy development-source-control-word-for-sub-folder.

AND if you change something, it gets tracked. And you can navigate? The folders? but it’s not at all like navigating a regular old Windows file folder system. Well. Actually. It’s exactly like doing that. But with versioning.

{rubs temples}

NOW MIND YOU, I’ve sort of…played in this sandbox before. I’ve been a contractor for an embarrassingly long time, and have worked in a lot of different places using a lot of different tools and methods. I’ve done SCRUM before (loved the team, hated the work, which was mostly busy-work and done at too-rapid a pace, so that by the time you thought of a “better” way to do something it was already too late and the half-arsed jury-rigged version had gone to prod and nobody was ever interested in fixing something that wasn’t actively broken, soooooooo, crap-code it was, which left me somewhat embittered but let’s not DWELL). I’ve done what our SCRUM master referred to as “Agile but” – where technically we were ‘AGILE’ but then there were all these exactly-not-AGILE things that would happen because they “had” to because somebody-more-senior-than-you said so.

I’ve been in cowboy groups (“wallllllp, I tell you what we’re gonna do, Pilgrim: We’re gonna hot-fix it right in prod, that’s what we’re gonna do…”), and fundamentalist groups (“Thou Shalt Not break any of the elebenty-bazillion Rulz we haz, lest the $DEITY of Systems [a thousand bits be showered upon its binaries] become enraged and did you just run a query without the REQUIRED where clause?! NONONONONONO, you canNOT use a MERE inner join to limit results, you MUST ALWAYS use SOME form of WHERE!!!”) (<= I kid you not – true story - it was REQUIRED that you have the word ‘WHERE’ followed by ‘some condition’ – and because I am a real shite that way, I wrote “WHERE 1 = 1” more than a few times as my ‘theologically dictated must-always-have-a WHERE clause.’) (That always evaluates to ‘true,’ so, no harm no foul. Now, WHERE 1 = 0? That’s kind of a fun one: If you put, for example, “SELECT * INTO new_table FROM old_table WHERE 1 = 0”? Know what you get? A nearly identical, empty new table! It won’t have indexes, foreign key constraints, blah blah blah, but it will have the same structure – kind of a fast-n-dirty way to quick-build a new version of a table to play with. You know, in case that ever comes up for you. Ahem, yeah, let’s…move on…) (…wait…where the heck was I going with All That before I got sidetracked down the rabbit hole of places I’ve worked that were more nuts than seems possible and only the fact that I still maintain some contact with former coworkers who say, “No, yeah, dude, that REALLY happened…” comforts me that I didn’t just DREAM it a-la Alice In Wonderland or something…oh! right!)

So, this ain’t my first rodeo. That’s where I was going with All That. I’ve used a fairly robust variety of tools, fancy and plain; source control, versioning, carefully-controlled-ways-of-getting-new-code-into-production, and so forth.

They tend to be very similar. If you’ve used one, and you have a reasonably flexible mind (and honey, you’d better if you’re going to be working “in tech,” because it moves fast and has very little respect for brittle, slow-moving, reluctant-to-embrace-new-things brains), you’re probably going to run your eyeballs over the new screens and go, “Oh, I see. Got it. OK.”

Which is why I got about 25% worth of nothing out of that seven hours. I kept waiting for it to get…interesting. Relevant. Useful! Unusual enough to mean I wouldn’t have figured it out on my own in about thirty seconds upon sitting down with the application open.

Something that made spending seven hours in a stuffy classroom suffocating on somebody’s perfume worthwhile.

This kept not happening.

My attention began to wander, just a bit.

By which I mean I returned shamelessly to working on my ridiculous two-mules worth of task-list with increasingly limited attempts to pretend I wasn’t doing so.

And then, well after the point where I was trying to come up with a way to gently suggest we take a small break so that those of us with pinched nerves and other vicissitudes could work out a few kinks or maybe throw ourselves in front of fast-moving taxis so as to have an excuse not to return, my phone went off.

LOUDLY. Even though I would have sworn I had turned the ringer all the way down.

I nearly dropped it trying to dismiss the call. Instead, I answered it and then promptly hung up. But that was OK, because a few minutes later? They called back.

And “they” were a jail. Or so the recorded message asking me to accept the collect call informed me. “This is a call from an inmate of Cook County.” {incomprehensible mutter I presume was the placer of the call saying his name} “To accept the charges” (the recording went on, hopefully) “press or say 1. You can also” (the recording continued, bleakly) “say ‘not now,’ or” (and here the tone became downright somber) “press ‘9’ to block all future calls from this facility.” (and, hanging there unspoken, the words if you really are the kind of person who kicks puppies, dashes the hopes of Youth and hates America…plus SOMEDAY maybe it WILL be somebody you know, DESPERATELY trying to reach out to YOU, yes, YOU, the ONLY PERSON who could POSSIBLY save them, BUT. NO., YOU!!!!! pressed NINE…!)

NOW I KNOW WHAT YOU’RE THINKING. What kind of INHUMAN person would press nine? because of COURSE you wouldn’t do that, you would do the right thing and accept this $$$$$$ call from…somebody…and, uh, chat about the WEATHER or something…

…yeah…I totally hung up…

BUT, not before I had rocketed out of the training room in order to answer the call, because I had been aching to get the @^*&@ out of there for, like, over an hour am far too polite a person to yak into my cell phone in the middle of class, for heaven’s sake, how rude would THAT be?

And then I hung around waiting for this guy I knew would be circling around looking for me because that’s kind of a thing he does right now accidentally ohmygosh didn’t see THAT coming! got caught by a coworker and got embroiled in a completely meaningless extremely urgent discussion/planning session.

So that killed ate up another half hour of class time. (Oh darn, I missed the part about how to expand a folder. However will I MANAGE?!)

And when, shortly after I had dragged my aching (but dutiful!) backside back to class (well…I kind of had to…I’d left my laptop there…), a particularly difficult-to-nail-down person offered up a time tomorrow when I could have his (semi)complete and (nearly) undivided attention during the ‘basic’ training (oh yes, there’s more!), I ever so reluctantly took him up on it.

Where ‘ever so reluctantly’ is pronounced ‘all but stood up right there in class and screamed “@*^&@ YEAH, I AM SKIPPING ABOUT HALF OF THIS TOMORROW, SO LONG, LOOOO-SAHS!”’

But of course I didn’t actually do that.

Because that would have been rude.

Plus somebody might have tattled, and then somebody else would have said, “No no no, I know we said t was ‘mission critical’ for you to get knowledge transfer on That Thing Only This Guy Can Explain, but learning how to rename a file is just ever-so-much MORE vital! You must attend all 3,271 hours of training tomorrow!” and I would have been all like, “…I hate you so much right now…” which is not a good way to build Team Spirit and such.

I have this on very good authority.

Ah, life in Corporate America…never a dull moment, huh?!


PBear said...

I swear we work for the same company.... :-)

KatE said...

I hate it when I fall during a sprint!

Kerri said...

I must testify that you did dream it.

One more thing. Training is for knitting. KNITTING. I once made a hand-sewn doll in a class I was required to attend but could have taught on TSO-ISPF (yeah, I'm in my fifties) where I was fixing the "lab" work so it would actually WORK for the instructor. Which pissed him off rather than engendering an attitude of gratitude as I had naively expected.

Marty52 said...

I do love your posts... they always bring a grin to my face!