Saturday, April 25th, 2015 03:40 am
moment of zen
Fortunately, my job and how television portrays it (Quality control, aka program testing) isn't a subject for television because generally one hour drama doesn't focus on the minutia of a company building a program step by step because come on, that can be a multi-year process.
....with one exception.
I once ran across the dramatization of the dev process (montage-like) on TV and watched because it's kind of soothing to watch developers suffering (they're like a floor away from me and I've had a bad week, okay?) until we got back to real time and I promptly lost my mind.
A Summary of the Horror:
They're like "almost there after weeks of (montage) work, oh noes there's a null character mcguffin plot reason thing must get it out like right now tonight no waiting!" or something like that, how do you even know this you just finished the last line and haven't compiled it...hold up, where are the design docs, I haven't seen any since this started, how are they--and they're all scanning the source code--scanning a million lines of source code with their eyes ON SINGLE MONITOR WHY, not even using a search algorithm--who does that, what kind of fucking IDE are you using, why don't you have color enabled to make this easier, wait, that looks like microsoft notepad with the background painted black-- "OH FOUND IT FIXING IT NOW" wait, no, did you erase something and then hit enter that's a new line, but go back, problem, the mcguffin wouldn't be in there, that's in a class file, why are you--hold up, what language is this-- "Okay, compiling now!" holy shit did you just-- "Almost done!" wait, what, no, you can't do that, you don't fly edit your code (that did like magic or word processing, they weren't clear) have you ever heard of debug or like-- "Okay, done, send it--" IN TEN SECONDS REAL TIME THAT WASN'T A MONTAGE "--to whothefuckever we can start distribution like next week awesome going to hawaii!" WHAT THE FUCK ARE YOU DOING YOU DIDN'T EVEN RUN IT-- "Everyone go on vacation now bye!" NO NO YOU UNIT TEST SYSTEM TEST USER ACCEPTANCE LAST HAS TO CHECK FOR MEMORY LEAKS AND LOAD AT LEAST RUN SOME AUTOMATED SCRIPTS WHAT ARE YOU DOING DID YOU EVEN CHECK TO SEE IF IT EVER WORKED IN A REAL-TIME ENVIRONMENT BECAUSE YOU MACHINES ARE SET TO IDEAL CONDITIONS NOT THE WILDS OF PRODUCTION--
I'll spare you the rest--they say when the trauma becomes too much, the memory's blocked so sanity can be retained--but one thing's really just bothering me here.
In this ultra-tech, totally pro too many coffee cups suspiciously unstained and without chips or being shattered against the wall and no crumpled up design documents because the analysts are sadistic fucks and will give you three contradictory rules and don't understand how to use Visio or the concept of driver flow...all the super-cool computers only had one monitor each.
I get it now.
This is about a desperate dev team torpedoing the project due to hideous working conditions, inadequate equipment, lack of support personnel, and no design documents because they were set up to fail by an evil CEO who wanted to cut corners and get rid of the entire dev department to bring in an alien design team from Mars (who secretly plan to conquer the world because even aliens wouldn't agree to this nightmare unless they had another motive entirely) and now it all makes sense!
The frightened dev team (who obviously have been playing along with the evil CEO all this time but know the truth) gets to their secret base in Hawaii (everyone has three monitors, four if you need to watch real-time data from the server and query the database) where they're joined by ten heroic QC analysts with all their personal automated and manual scripts ready for action loaded on flash drives, three years worth of regression testing data, the latest version of the design and change documents (with screenshots!) stolen from the sadistic analysts (who now we know were paid by the alines) and the entire defect history they stole from the company's secret database (at great risk of their lives) led by the mysterious yet plucky analyst who planned it all, her personal laptop on her shoulder and fire in her eyes.
("Who are they?" one of the developers asks resentfully as they colonize one of the meeting rooms, booting up the provided computers and verifying the programs they requested are loaded and verifying their full and unrestricted access to all the environments as well as the servers. HIs eyes widen as one of them opens up PLSQL and logs into the most guarded environment: dev1. "What the hell--"
"Don't," said the crusty project manager, throwing out an arm to stop his aborted storm, his relief obvious at their presence; he learned this lesson the hard way and has never forgot (the program crashed like a lot and so many end user complaints; like a nightmare in text form; never again, he thinks to himself; never again). "Let them be. We know not their ways and can never hope to. Go work on the program; they'll do the rest.")
The drama is huge, and the stress level gets to everyone, climaxing in a shouting match between the likable but somewhat arrogant dev who keeps saying it's working as designed but the plucky analyst won't back down, flourishing screenshots and screen recordings while her team desperately searches the design documents and highlights all the relevant rules--it's here, BR-TOS-IS-04 and 05, you see it, get me SR 786747, I--er, I mean 'she'--bookmarked that, she remembers it was added as a design correction after Defect 784--and finally--finally--he believes her.
("How?" he asks in awe, humbled and amazed by turn, breathless; for so long, he thought dev was all that mattered and QC was but a rubber stamp who did nothing but argue about trivialities in the code like petulant grammar prescriptivists about the word 'literally' used as hyperbole--but now, he wonders, uncertain: who is truly the heart of development? "How can you remember a business rule among dozens from an SR that's among the hundreds--nay, thousands--that you personally tested over a period greater than seven years?"
"I'm a tester," she says, raising her chin and meeting his eyes with hard-earned wisdom and compassion, understanding and forgiveness written into her faint smile, and he can't help but look away so she won't see his tears of relief; he's not worthy. "It's my job to remember and track program changes in my multiple Excel spreadsheets with subs and custom functions I hand-coded myself. Not for me, Dev Person; for the program. Do you understand now? It's not about us, Dev Person; it's about the program."
He nods, throat tight; how can someone so brilliant and confident be so selfless? It's about the program; only a mind like that--once in a hundred generations--could have conceived of such a universal truth. "Thank you."
She grins, tilting her head mischievously. "You ready to do this?"
"Yes," he says, straightening at her certainty that he can do this; her faith in him could light the world. He won't fail her. Or the program. "I am.")
They frantically fix the error and re-test--failure!--re-test--FAILURE!--(there may be crying in the bathroom but she comes back out after cold water and the subtle application of concealer to try again)--but finally--finally--they're there.
Debug complete, code validated twice, unit passed, joint passed, user acceptance passed, time for the big leagues, no more developer environments, no more user environments, no more controlled variables, all bets are off, it's time for the final testing phase: the environment where the rules are there are (almost) no rules, where anything can happen, prodfix and the best, last, and only way to test in near-real world conditions.
Shit. Just. Got. Real.
They all watch the three LCD TVs on the wall while the automated tests play on screen one (456985.01...PASSED! 456985.02...PASSED! 456985.03...) while at the same time the determined, plucky analyst frantically performs the final manual test for a live audience (she's never done this before, her fingers keep slipping on the keyboard--step one, passed; step two, passed-- God, the typos but she's only got one chanced to get this right or the world will end because there's no guarantees here, what works in a controlled environment may not work here, prodfix is a good mimic, but that's all it is when it comes to the perils of the real world, so she's gonna have to improvise here--step eight, passed; step nine, passed, crap get the screenshot, phew--the pressure is enormous (a single drop of sweat hovering attractively on her temple as she bites her lip, eyes narrowing in concentration, unaware Dev Person is watching her, thinking it's a privilege to be here at this moment in the presence of greatness)--step twenty-eight, passed; step twenty-nine, passed--and maybe she was wrong, maybe that defect wouldn't have mattered (no, no, you don't approve flawed code, focus)--step fifty, passed; step fifty-one, passed--
--step eighty-fucking-three...passed.
("Seppy," someone says, but she can't see anything but the center screen right now--that was the last step, that means that... Gently, he moves her cramped fingers from the keyboard, and leaning over her shoulder, smelling of break room coffee and toner when the printer exploded from a secret bomb, and gently clicks 'close', and before her eyes, she sees it on three (maybe five by now) TVs, and all sixty-inch LED: all tests passed. "You did it."
She nods, dazed, as she stumbles to her feet and he catches her before she faints (it's been a fucking long testing period and finger cramps hurt) and leads her to the center of the room and she realizes the silence is waiting. For her.
"Passed," she says, voice scratchy and broken, and she swallows frantically before saying again, "Passed. UAT passed."
After a moment, she realizes the noise she hears is applause, louder and louder, and she's unable to stop the tears because yeah, she always knew it was all about the program.
"Not just me," she whispers, looking up at him, and it humbles him how he can see believes it when the truth is, it's her. All her. "We did it."
He won't argue, not now; some people, he suspects, are just too pure to truly grasp how they're the center of all things. But one day, maybe she'll understand. He'll spend his life trying.)
And....they save the world somehow, no idea. Like I said, I should have watched the rest of the show. But this is totally what happened next. If anyone happens to see it, tell me how it ends?
....with one exception.
I once ran across the dramatization of the dev process (montage-like) on TV and watched because it's kind of soothing to watch developers suffering (they're like a floor away from me and I've had a bad week, okay?) until we got back to real time and I promptly lost my mind.
A Summary of the Horror:
They're like "almost there after weeks of (montage) work, oh noes there's a null character mcguffin plot reason thing must get it out like right now tonight no waiting!" or something like that, how do you even know this you just finished the last line and haven't compiled it...hold up, where are the design docs, I haven't seen any since this started, how are they--and they're all scanning the source code--scanning a million lines of source code with their eyes ON SINGLE MONITOR WHY, not even using a search algorithm--who does that, what kind of fucking IDE are you using, why don't you have color enabled to make this easier, wait, that looks like microsoft notepad with the background painted black-- "OH FOUND IT FIXING IT NOW" wait, no, did you erase something and then hit enter that's a new line, but go back, problem, the mcguffin wouldn't be in there, that's in a class file, why are you--hold up, what language is this-- "Okay, compiling now!" holy shit did you just-- "Almost done!" wait, what, no, you can't do that, you don't fly edit your code (that did like magic or word processing, they weren't clear) have you ever heard of debug or like-- "Okay, done, send it--" IN TEN SECONDS REAL TIME THAT WASN'T A MONTAGE "--to whothefuckever we can start distribution like next week awesome going to hawaii!" WHAT THE FUCK ARE YOU DOING YOU DIDN'T EVEN RUN IT-- "Everyone go on vacation now bye!" NO NO YOU UNIT TEST SYSTEM TEST USER ACCEPTANCE LAST HAS TO CHECK FOR MEMORY LEAKS AND LOAD AT LEAST RUN SOME AUTOMATED SCRIPTS WHAT ARE YOU DOING DID YOU EVEN CHECK TO SEE IF IT EVER WORKED IN A REAL-TIME ENVIRONMENT BECAUSE YOU MACHINES ARE SET TO IDEAL CONDITIONS NOT THE WILDS OF PRODUCTION--
I'll spare you the rest--they say when the trauma becomes too much, the memory's blocked so sanity can be retained--but one thing's really just bothering me here.
In this ultra-tech, totally pro too many coffee cups suspiciously unstained and without chips or being shattered against the wall and no crumpled up design documents because the analysts are sadistic fucks and will give you three contradictory rules and don't understand how to use Visio or the concept of driver flow...all the super-cool computers only had one monitor each.
I get it now.
This is about a desperate dev team torpedoing the project due to hideous working conditions, inadequate equipment, lack of support personnel, and no design documents because they were set up to fail by an evil CEO who wanted to cut corners and get rid of the entire dev department to bring in an alien design team from Mars (who secretly plan to conquer the world because even aliens wouldn't agree to this nightmare unless they had another motive entirely) and now it all makes sense!
The frightened dev team (who obviously have been playing along with the evil CEO all this time but know the truth) gets to their secret base in Hawaii (everyone has three monitors, four if you need to watch real-time data from the server and query the database) where they're joined by ten heroic QC analysts with all their personal automated and manual scripts ready for action loaded on flash drives, three years worth of regression testing data, the latest version of the design and change documents (with screenshots!) stolen from the sadistic analysts (who now we know were paid by the alines) and the entire defect history they stole from the company's secret database (at great risk of their lives) led by the mysterious yet plucky analyst who planned it all, her personal laptop on her shoulder and fire in her eyes.
("Who are they?" one of the developers asks resentfully as they colonize one of the meeting rooms, booting up the provided computers and verifying the programs they requested are loaded and verifying their full and unrestricted access to all the environments as well as the servers. HIs eyes widen as one of them opens up PLSQL and logs into the most guarded environment: dev1. "What the hell--"
"Don't," said the crusty project manager, throwing out an arm to stop his aborted storm, his relief obvious at their presence; he learned this lesson the hard way and has never forgot (the program crashed like a lot and so many end user complaints; like a nightmare in text form; never again, he thinks to himself; never again). "Let them be. We know not their ways and can never hope to. Go work on the program; they'll do the rest.")
The drama is huge, and the stress level gets to everyone, climaxing in a shouting match between the likable but somewhat arrogant dev who keeps saying it's working as designed but the plucky analyst won't back down, flourishing screenshots and screen recordings while her team desperately searches the design documents and highlights all the relevant rules--it's here, BR-TOS-IS-04 and 05, you see it, get me SR 786747, I--er, I mean 'she'--bookmarked that, she remembers it was added as a design correction after Defect 784--and finally--finally--he believes her.
("How?" he asks in awe, humbled and amazed by turn, breathless; for so long, he thought dev was all that mattered and QC was but a rubber stamp who did nothing but argue about trivialities in the code like petulant grammar prescriptivists about the word 'literally' used as hyperbole--but now, he wonders, uncertain: who is truly the heart of development? "How can you remember a business rule among dozens from an SR that's among the hundreds--nay, thousands--that you personally tested over a period greater than seven years?"
"I'm a tester," she says, raising her chin and meeting his eyes with hard-earned wisdom and compassion, understanding and forgiveness written into her faint smile, and he can't help but look away so she won't see his tears of relief; he's not worthy. "It's my job to remember and track program changes in my multiple Excel spreadsheets with subs and custom functions I hand-coded myself. Not for me, Dev Person; for the program. Do you understand now? It's not about us, Dev Person; it's about the program."
He nods, throat tight; how can someone so brilliant and confident be so selfless? It's about the program; only a mind like that--once in a hundred generations--could have conceived of such a universal truth. "Thank you."
She grins, tilting her head mischievously. "You ready to do this?"
"Yes," he says, straightening at her certainty that he can do this; her faith in him could light the world. He won't fail her. Or the program. "I am.")
They frantically fix the error and re-test--failure!--re-test--FAILURE!--(there may be crying in the bathroom but she comes back out after cold water and the subtle application of concealer to try again)--but finally--finally--they're there.
Debug complete, code validated twice, unit passed, joint passed, user acceptance passed, time for the big leagues, no more developer environments, no more user environments, no more controlled variables, all bets are off, it's time for the final testing phase: the environment where the rules are there are (almost) no rules, where anything can happen, prodfix and the best, last, and only way to test in near-real world conditions.
Shit. Just. Got. Real.
They all watch the three LCD TVs on the wall while the automated tests play on screen one (456985.01...PASSED! 456985.02...PASSED! 456985.03...) while at the same time the determined, plucky analyst frantically performs the final manual test for a live audience (she's never done this before, her fingers keep slipping on the keyboard--step one, passed; step two, passed-- God, the typos but she's only got one chanced to get this right or the world will end because there's no guarantees here, what works in a controlled environment may not work here, prodfix is a good mimic, but that's all it is when it comes to the perils of the real world, so she's gonna have to improvise here--step eight, passed; step nine, passed, crap get the screenshot, phew--the pressure is enormous (a single drop of sweat hovering attractively on her temple as she bites her lip, eyes narrowing in concentration, unaware Dev Person is watching her, thinking it's a privilege to be here at this moment in the presence of greatness)--step twenty-eight, passed; step twenty-nine, passed--and maybe she was wrong, maybe that defect wouldn't have mattered (no, no, you don't approve flawed code, focus)--step fifty, passed; step fifty-one, passed--
--step eighty-fucking-three...passed.
("Seppy," someone says, but she can't see anything but the center screen right now--that was the last step, that means that... Gently, he moves her cramped fingers from the keyboard, and leaning over her shoulder, smelling of break room coffee and toner when the printer exploded from a secret bomb, and gently clicks 'close', and before her eyes, she sees it on three (maybe five by now) TVs, and all sixty-inch LED: all tests passed. "You did it."
She nods, dazed, as she stumbles to her feet and he catches her before she faints (it's been a fucking long testing period and finger cramps hurt) and leads her to the center of the room and she realizes the silence is waiting. For her.
"Passed," she says, voice scratchy and broken, and she swallows frantically before saying again, "Passed. UAT passed."
After a moment, she realizes the noise she hears is applause, louder and louder, and she's unable to stop the tears because yeah, she always knew it was all about the program.
"Not just me," she whispers, looking up at him, and it humbles him how he can see believes it when the truth is, it's her. All her. "We did it."
He won't argue, not now; some people, he suspects, are just too pure to truly grasp how they're the center of all things. But one day, maybe she'll understand. He'll spend his life trying.)
And....they save the world somehow, no idea. Like I said, I should have watched the rest of the show. But this is totally what happened next. If anyone happens to see it, tell me how it ends?