I used to spend the day trying to crash software.
And I got paid for it.
But it wasn't fun. When I graduated from college, I worked as a software engineer until I burned out in a spectacular mad fit (not in the office, though). Then I took my second-ever real job, as a software test engineer. (That lasted seven-plus years.) Later I worked in software quality metrics and reporting. Just about every place I worked, I had to try to crash software that was running not on a PC but on various things like workstations, mainframes, database servers, and telephone switches. Yep, phone switches.
At first I had fun. My boss at the testwimp* factory (second place I worked, longest tenure, defense contractor, built a large test group where I was the first one hired after the boss) was pretty nice. We wrote a test plan that became a model for the ones on later projects. We also wrote software, a generalized test harness that could be used by programmers to simulate the environment their programs needed so they could do testing. If you imagine running a scenario where your program could handle several inputs from the disk (buffering that up) and maybe two or three users and their keyboard/mouse inputs, that could be a mess to set up and test unless you had a program like ours. (This was before you could buy test suites and test tools on every street corner--this was in the early 1980s.)
But after a few years, the job degenerated into trying to get engineers interested in writing testable requirements and so forth. ("Software will respond to user clicks of mouse in a reasonable time frame" is not testable. "Software will respond to user clicks of mouse within thirty seconds; if this is impossible, a status bar will appear with the word "WORKING" flashing and showing the estimated time until the software will respond again to user input" is testable.) It was tough explaining to people that you couldn't possibly test EVERY POSSIBLE logic path, and that you had to spend 80% of your time testing the 20% of the code that was the core of the system, the stuff that is normally being executed over and over. But that you had to test every path through the system at least once, and had to test boundary conditions. I can guarantee that boundary conditions (phone off hook, network busy, trying to read past end of file or execute data, trying to divide by a quantity that everyone swore would never be zero because it was being tested for in the previous part of the code, etc.) are going to cause a Software Problem Report as soon as you get out into the field if you don't have them thoroughly tested.
But it wasn't my passion to test or write code. I was not anyone's favorite employee, though I won't claim I was miserable the whole time; I liked my immediate co-workers. The rest of the crew usually didn't like test or QA very much, because we made their jobs tougher. That added to my internal feelings of being an outcast, a loser, one of "THEM," a PITA, and The One People Feel They Have To Be Civil To, But Don't Really Like And Would Prefer Never To See Again. We formed a clique unto ourselves, but we didn't feel that others perceived us as having any useful function, and no one realized we were as smart as the rest of the crew (they defaulted to "no one who isn't a hot coder is worth sh*t.")
It wasn't good for my self-esteem. I'm glad I don't have to do that every day any more, although it's sure hard on the family's budget.
*"Testwimp" was one of the terms that our group came up with, just so we'd have something to call ourselves. And "sinecurists," after "sinecure." We were in a mode of feeling that we needed to define ourselves before others did it for us. :)
* * *
Well, here's some more support for my earlier contention that the opening premise of a ChickLit novel I discussed is faulty. Last night around eleven, a resident at an apartment complex here in Richardson thought she smelled gas (actually, the sulphur they add to it so it'll have a warning odor.) She stepped outside into the parking lot and called the gas company on her cell phone. They told her not to go back inside, and a crew would be right there. When they responded, they in turn called the fire department and evacuated 800 people from the complex, setting up a shelter in one of the school gyms (but the news said most people took their pets and went to stay with friends.) Lone Star Gas ended up digging three deep holes (after turning off the pipeline to the area!) and is just this morning getting things repaired. Their FIRST priority is to make sure disasters don't happen. If anything does, they're right there trying to settle before the news gets hold of it. Therefore . . . to have to believe, within the first couple of pages of a novel, that a gas company has not only denied a victim's claim, but is saying (successfully, in court!) that the victim doesn't deserve damages for her burns and injuries . . . well, it just doesn't wash for a native Texan.
There was also a gas leak down south of Dallas in Duncanville. They also evacuated an area for a short time last night. Ack.
It's raining and around sixty degrees now. Supposed to rain for the next *four* days. Mama has a doctor's appointment in the morning (and she hates to go anywhere in the rain) and her cat is having asthma and acting a little punky right now, so she's all in a tizzy. Had a fit that I'm "back there on the computer" instead of doing something useful.
We also have a large donation of clothing for a charity that she wanted to take outside just now (our house has a front courtyard, and the charity people ask that we set gifts outside the gate, rain or shine, in a garbage bag, so they don't have to come inside) . . . but I had to run dump it out and double-check that I wasn't getting rid of something that I would end up trying to find again. Guess that's just another symptom of my being an ass. Even the Tarot readings keep urging me to "let go of clutter, let go of whatever it is," but hey, when it's still on your credit card and being paid off, it's probably against the law to throw it away or donate it to charity. (These are mostly expensive garments that are two sizes too small, and why hang on to them, yet surely I'll lose this weight soon if I just keep trying, yadda yadda. But I need the closet and drawers for what I wear now, rather than having them folded and stacked on the side chair and on the dresser and on top of the duet bench from my first antique piano, the one that sits at the foot of our bed and is not *supposed* to be stacked with junque. I'm sure that any female readers in my readership know exactly what I am talking about, along with male readers who are married or have sisters/moms living in the same house. Sh*t-eating grin.)
I *told* you this would be a boring entry.
And I got paid for it.
But it wasn't fun. When I graduated from college, I worked as a software engineer until I burned out in a spectacular mad fit (not in the office, though). Then I took my second-ever real job, as a software test engineer. (That lasted seven-plus years.) Later I worked in software quality metrics and reporting. Just about every place I worked, I had to try to crash software that was running not on a PC but on various things like workstations, mainframes, database servers, and telephone switches. Yep, phone switches.
At first I had fun. My boss at the testwimp* factory (second place I worked, longest tenure, defense contractor, built a large test group where I was the first one hired after the boss) was pretty nice. We wrote a test plan that became a model for the ones on later projects. We also wrote software, a generalized test harness that could be used by programmers to simulate the environment their programs needed so they could do testing. If you imagine running a scenario where your program could handle several inputs from the disk (buffering that up) and maybe two or three users and their keyboard/mouse inputs, that could be a mess to set up and test unless you had a program like ours. (This was before you could buy test suites and test tools on every street corner--this was in the early 1980s.)
But after a few years, the job degenerated into trying to get engineers interested in writing testable requirements and so forth. ("Software will respond to user clicks of mouse in a reasonable time frame" is not testable. "Software will respond to user clicks of mouse within thirty seconds; if this is impossible, a status bar will appear with the word "WORKING" flashing and showing the estimated time until the software will respond again to user input" is testable.) It was tough explaining to people that you couldn't possibly test EVERY POSSIBLE logic path, and that you had to spend 80% of your time testing the 20% of the code that was the core of the system, the stuff that is normally being executed over and over. But that you had to test every path through the system at least once, and had to test boundary conditions. I can guarantee that boundary conditions (phone off hook, network busy, trying to read past end of file or execute data, trying to divide by a quantity that everyone swore would never be zero because it was being tested for in the previous part of the code, etc.) are going to cause a Software Problem Report as soon as you get out into the field if you don't have them thoroughly tested.
But it wasn't my passion to test or write code. I was not anyone's favorite employee, though I won't claim I was miserable the whole time; I liked my immediate co-workers. The rest of the crew usually didn't like test or QA very much, because we made their jobs tougher. That added to my internal feelings of being an outcast, a loser, one of "THEM," a PITA, and The One People Feel They Have To Be Civil To, But Don't Really Like And Would Prefer Never To See Again. We formed a clique unto ourselves, but we didn't feel that others perceived us as having any useful function, and no one realized we were as smart as the rest of the crew (they defaulted to "no one who isn't a hot coder is worth sh*t.")
It wasn't good for my self-esteem. I'm glad I don't have to do that every day any more, although it's sure hard on the family's budget.
*"Testwimp" was one of the terms that our group came up with, just so we'd have something to call ourselves. And "sinecurists," after "sinecure." We were in a mode of feeling that we needed to define ourselves before others did it for us. :)
* * *
Well, here's some more support for my earlier contention that the opening premise of a ChickLit novel I discussed is faulty. Last night around eleven, a resident at an apartment complex here in Richardson thought she smelled gas (actually, the sulphur they add to it so it'll have a warning odor.) She stepped outside into the parking lot and called the gas company on her cell phone. They told her not to go back inside, and a crew would be right there. When they responded, they in turn called the fire department and evacuated 800 people from the complex, setting up a shelter in one of the school gyms (but the news said most people took their pets and went to stay with friends.) Lone Star Gas ended up digging three deep holes (after turning off the pipeline to the area!) and is just this morning getting things repaired. Their FIRST priority is to make sure disasters don't happen. If anything does, they're right there trying to settle before the news gets hold of it. Therefore . . . to have to believe, within the first couple of pages of a novel, that a gas company has not only denied a victim's claim, but is saying (successfully, in court!) that the victim doesn't deserve damages for her burns and injuries . . . well, it just doesn't wash for a native Texan.
There was also a gas leak down south of Dallas in Duncanville. They also evacuated an area for a short time last night. Ack.
It's raining and around sixty degrees now. Supposed to rain for the next *four* days. Mama has a doctor's appointment in the morning (and she hates to go anywhere in the rain) and her cat is having asthma and acting a little punky right now, so she's all in a tizzy. Had a fit that I'm "back there on the computer" instead of doing something useful.
We also have a large donation of clothing for a charity that she wanted to take outside just now (our house has a front courtyard, and the charity people ask that we set gifts outside the gate, rain or shine, in a garbage bag, so they don't have to come inside) . . . but I had to run dump it out and double-check that I wasn't getting rid of something that I would end up trying to find again. Guess that's just another symptom of my being an ass. Even the Tarot readings keep urging me to "let go of clutter, let go of whatever it is," but hey, when it's still on your credit card and being paid off, it's probably against the law to throw it away or donate it to charity. (These are mostly expensive garments that are two sizes too small, and why hang on to them, yet surely I'll lose this weight soon if I just keep trying, yadda yadda. But I need the closet and drawers for what I wear now, rather than having them folded and stacked on the side chair and on the dresser and on top of the duet bench from my first antique piano, the one that sits at the foot of our bed and is not *supposed* to be stacked with junque. I'm sure that any female readers in my readership know exactly what I am talking about, along with male readers who are married or have sisters/moms living in the same house. Sh*t-eating grin.)
I *told* you this would be a boring entry.