Well, it snowed in middle Tennessee on Friday morning…a bit. The panic was DELICIOUS. What was the most hilarious about it all is that they KNOW they’re being ridiculous. Schools were closing. People were asking each other who was actually going to venture out to get lunch, and could they pick something up for them as well, since the fewer drivers on the roads the better. They’re just so caught up in the pageantry and excitement of snow falling that it was hard to get too frustrated with them. BUT I have a reputation to proudly uphold as a gruff son of a bitch from The Heathen North. So I rolled my eyes conspicuously and chuckled “to myself” all day.
el jefe looked ominously out the window and said “yeah, let’s close up the office at 3 today, so that people can get home when it’s light out still.” A sensible precaution if it was going to freeze up.
But the fun part of yesterday (I’m writing this tomorrow from then. Just batching them all together you see) was the fact that there was a software release.
El jefe found out yesterday morning that our web developer wasn’t just out for the day but was, in fact, jetting off to the Caribbean for at least one, perhaps two weeks, no one was sure. And that had no bearing on the idea of putting his code into production while he was taking off.
Now, it should matter not one whit whether a developer is present for his code to be released. Because (as I so poignantly phrased yesterday) “in a REAL dev shop” the code is tested.
Now, we’ve gotten to a point where I’m not even a part of the release and testing process (yes, I ordered them that way on purpose) any more. I do server side stuff and that’s barely even under source control.
A front-end (web) release goes like this:
1. Okay guys, we need all changes to be in on Wednesday.
2. Is it small? Yeah okay, I’ll push it up today (Friday. Release day.)
3. Okay take down the first half of the production web servers. We’ll push there, then we can test.
4. el jefe says “okay test” and half a dozen people furiously click on things with no plan at all. No list of changes. No “test scripts.” Nothing other than flailing around on the website, desperately hoping nothing goes wrong so they can all get back to work.
5. Our data cleanliness expert (aka Bug Bloodhound) comes back in to the office and says “this, that, and that don’t work. I thought you fixed it.” … “It’s fixed” says the developer. “Obviously not.” … “Are you pointing to the right server?” … “The phantom programmer must’ve put changes in that I didn’t integrate, so the build is probably bad.” … “Okay, what build number do we have to roll back to?” … “uhm…” … “uhm…” … “Well it looks like it was last changed a couple months ago. Let’s roll back to that.”
I’m listening to these exchanges (this is toned down by the way. It’s so much worse) and IMing a confederate next to me (I wouldn’t be able to survive without either) when I hear the single statement I have heard on every bi-weekly release in the 13 months (to the day) I’ve been at this shop:
“Yeah, he must’ve made conflicting changes on top of my changes. I’ll fix it.”
And off the dev goes to hot-fix a bug in the code without a regression suite, unit tests, or anything of the kind.
Now…if there are any experienced developers reading this who would rather have fingernails scraping down a blackboard than hear sentences like that I have to say that as much as I trash the shop, these guys literally don’t know any better. Sure, for the most part, they wouldn’t change if they DID know any better. But this one guy will volunteer to be wrong and ask for better ways to do things, etc….if he thinks to ask. So he gets a bit of forbearance (especially since he never wrote a line of code until less than two years ago.)
So I’m sitting there, head in my hands, trying desperately to hold my brain matter in my increasingly stress-fractured skull, when I look down at the monitor and see IM windows popping up asking if we could leave, because it was 3:10 and nobody had said anything yet.
“Hey, el jefe, everyone’s IMing me asking if we can go because you said we could go at 3 and you hadn’t said anything and everyone’s afraid to ask.” It’s an open office so all of the aforementioned people immediately swivel in their chairs and stare at me as though I’d just yelled out loud that they were impotent. Get over it, Nancys.
“Yeah yeah. I just wanted to be sure this release went out first befor…”
“Bye.” Laptops closed, bags zipped, jackets were hoisted over shoulders and people damn near ran to the door.
I started the truck to the sound of Stephen Fry reading the fourth Harry Potter book and bolted home, howling at my steering wheel at the mental image of Dudley Dursley’s gluttony rendering him victim to Ton Tongue Toffey, looking forward to not seeing a single unnecessary soul for 48 hours.