So I’m coming back from an errand early one morning, and I turn onto the farm road where I live. I live out in the country, you see, and the farm road is a long, straight road that rolls over hills and creeks between fences, woods, and pastures. As I’m driving down the farm road, I think to myself, Although it’s technically day time, on cloudy days, deer are often active later than normal. I remember a particular stretch of the road just before the creek, where a cow pasture faces woods and where I’ve seen deer before. Then, as the relative elevation of the road changes in relation to the pasture, I see a single deer in the middle of the pasture against the backdrop of the hills beyond, and I slow my truck to ten miles an hour. Where are your buddies? I ask him, because does and fawns travel together in family groups.
Two deer dart across the road, and two others turn from the fence they were about to hop and retreat into the pasture. If I’d been traveling normal speed, I very well might have hit one of them.
I know the general behavior of deer; I know the lay of the land and the geography of deer crossings; and I just might have seen the deer in my peripheral vision, outside my focus but enough to trigger additional caution until I did see it consciously. That’s how I knew the deer were there.
And that’s how I found that bug. I know the general behavior of computers, applications, and interfaces; I know something of the domain or problem this program is trying to solve; and I have wide peripheral vision when testing, the ability to see things wrong in the corner of my eye and retry my actions with focus on the problem area.
No, that extra few hundred dollars on your monthly sewer bill isn’t a typo.
A bill miscalculation that began nearly two years ago has the Metropolitan St. Louis Sewer District asking thousands of customers in St. Louis County to pay for services that never showed up on bills. The average undercharge for an affected household: $450.
Nearly 1,900 residential customers and 3,700 commercial customers are being asked to pay more on their current sewer bill, which should be in mailboxes by the week of April 6 at the latest.
The discrepancy began in May 2013, when Missouri American Water, which provides water service in much of the St. Louis County portion of MSD’s territory, changed its billing system.
MSD buys water meter data from Missouri American in order to calculate many customer rates, but the new system’s data wasn’t properly computing with MSD’s billing programs, district spokesman Lance LeComb said.
“Ultimately MSD is responsible for getting the data right and making sure we have correct account information and send out correct bills,” he said. “Missouri American Water was very supportive of our efforts and provided additional staff” to fix the problem.
Dependency upon an integration, and something at the data provider changed. Expensively.
On the MSD bills, they encourage you to “go green” and pay your bills online:
Given their track record, I can understand anyone’s reluctance to allow MSD’s computer systems access to a customer bank account or credit card.
You’re going to listen to or watch all twelve minutes.
It has been said that your first Doctor is your favorite. This is not true in my case; my first Doctor was Tom Baker, but my favorite is Colin Baker. And no, I haven’t seen the new ones with Tobey Maguire and Ed Norton as the Doctor.
When asked to help or to do a favor, whether it is to donate money to charity, fill out a questionnaire or let a stranger use a cellphone, research has shown many people will say “yes” simply because saying “no” would make them even more uncomfortable. This is especially true when people have to give their answer face to face, rather than by email.
And even when people do say “no,” they become more likely to say “yes” to subsequent requests. “They feel so guilty about saying ‘no,’ they feel they need to salvage the relationship,” says Vanessa Bohns, assistant professor of management sciences at the University of Waterloo in Ontario, Canada.
Yeah, I know. They’ve got a new album out. I’ve got it. But it doesn’t stick in my mind like some of the older stuff.
This song reminds me of a woman I coached in softball back when I was in college. She once put a woman in the hospital with an errant throw, so I nicknamed her Thunderball. Then she got shot down by muggers in front of her kids because she wouldn’t kneel for the muggers.
NASA’s been writing mission-critical software for space exploration for decades, and now the organization is turning those guidelines into a coding standard for the software development industry.
The NASA Jet Propulsion Laboratory’s (JPL) Laboratory for Reliable Software recently published a set of code guidelines, “The Power of Ten—Rules for Developing Safety Critical Code.” The paper’s author, JPL lead scientist Gerard J. Holzmann, explained that the mass of existing coding guidelines is inconsistent and full of arbitrary rules, rarely allowing for now-essential tasks such as tool-based compliance checks. Existing guidelines, he said, inundate coders with vague rules, causing code quality of even the most critical applications to suffer.
On the front page of the September 9, 2014, Wall Street Journal, we find that GE has exited the kitchen with the sale of its appliance business:
However, on page B3 the same day, the drop quote in an article would seem to indicate otherwise:
Of course, General Electric is not buying the food company Annie’s; the headline makes clear that the General in this case is General Mills (stock symbol: GIS).
But there’s nothing in the drop-quote to indicate something is wrong within its own context. Maybe General Electric often pays premiums like that during an acquisition. Maybe the copy editor or whomever did this dropquote finished the GE story from page 1 just minutes before working on the General Mills story.
However, we’ve got to retain context when testing and proofreading.
Where does this come into play in testing?
The foremost example in my mind is when we’re doing things to trigger error conditions to make sure that an error message displays. It’s possible that the system will throw up the wrong error message and we’ll miss it. I once wrote automated tests that triggered error conditions and parsed the error message (mostly to make sure an error message applicable to the screen and operation displayed). However, I did not write it smart enough to compare the error message that displayed to the error message expected. So when the application started failing by displaying the wrong message for the occasion, the tests didn’t catch it.
So you’ve got to remember to see the forest and the trees–along with the underbrush, the soil, the other flora, and the carnivorous fauna–when you’re testing.
You’ve spent days wandering the cavernous halls of a convention center, trapped in windowless rooms, drinking too much coffee and talking yourself hoarse. Does anyone ever emerge from a conference as the organizers intended, feeling recharged with new ideas, contacts and energy?
New York City marketing executive Stefany Stanley does. Among conference organizers she is known as a savvy convention-goer, someone with a strategy for rising above the dreary rounds of networking and breakout sessions. Ms. Stanley says she has gained valuable contacts, ideas and insights from the 15 conferences she has attended in the past five years.
The article goes on with tips and tricks to maximizing your meeting other people to sell your services to or to meet people who might help you get a leg up, basically.
I must be doing it wrong; when I go to conferences, I go to attend the sessions and to learn what the speakers have to offer as to professional insight. Maybe I’ll meet someone I know off the QAternet or something, but I don’t count on it, and if I don’t, I don’t think that I’ve lost something.
Of course, I don’t go to enough conferences and conventions often enough to have my soul crushed, and I don’t think of them primarily as mass in-person sales cold calls, so I’m probably doing them wrong when I do go.
I go to a dojo filled with positive, encouraging, uplifting people, from the kyoshi to the black belts to the other students. You want to talk about imposter syndrome, and I’ll explain how I feel when surrounded by nice people.
At any rate, members of the dojo often post motivational images to, well, motivate each other. And immediately, my mind works to find the condition where the assertion is not true. I must subvert it.
Your excuses get you 0% closer to your goals.Unless you’re writing a book about your excuses, I think.
I don’t know how my story will end, but nowhere in my text will it ever read… “I gave up.”
That, my friends, is the essence of the QA mindset: When presented with a proposition, you find some way to subvert or suborn it. Remember that the contradiction of All are…. is not Nothing is…. but Some are not….. (See also the Aristotelian Square of Opposition.)
An analysis of listings priced at $1 million and up shows that “perfect” listings—written in full sentences without spelling or grammatical errors—sell three days faster and are 10% more likely to sell for more than their list price than listings overall.
On the flip side, listings riddled with technical errors—misspellings, incorrect homonyms, incomplete sentences, among others—log the most median days on the market before selling and have the lowest percentage of homes that sell over list price. The analysis, conducted by Redfin, a national real-estate brokerage, and Grammarly, an online proofreading application, examined spelling errors and other grammatical red flags in 106,850 luxury listings in 52 metro areas in 2013.
Think it applies only to real estate and not your product interface? Are you willing to take that gamble?
You’d better make sure your Web labels, error messages, and helpful text are grammatically correct, or you won’t be able to quantify how many people don’t use your software because they thought it was written by third graders. Because they won’t be your users.
(Yes, I know the story is nine months old, but I’m between contracts right now and have a little time to catch up on my newspapers for the last year.)
This book is forty-five years old. I realize I’m doing some of Quality Frog‘s schtick here, reading old computer books to glean the lost knowledge of the ancients, but bear with me.
This book really does contain a set of rules for programmers to follow: The left pages have the rules in large font, and the right pages have the rules explained in a paragraph or two. The book focuses not only on programming best practices, but also on software development best practices, and these are much more applicable to modern programming than the pre-object oriented programming lessons.
For example, first and foremost are the rules about making sure your program answers the users’ needs. Rules like:
Fit your program to your users’ needs.
Aim your program at the widest circle of users
Explain to your user how to use the program
Make it easy for the user to run the program
Other rules cover interface design, such as Display results with pertinent messages which are just as relevant now as it was when the interface designed displayed only green or amber text.
Even the discussion of loops, variables, and breaking your program into sections has a sort of relevance because it discusses these things philosophically, at a high level, in a way that programming how-to books and online language tutorials do not.
It’s a quick read or browse; although it’s roughly 220 pages (which is still slim by modern, $60 computer book standards), it’s really less than that since the text is not densely packed on the pages as described above, and it’s worth the time for the insights not only into the crystallized rules but also in the recognition of some software development problems and goals predate the Internet, which I am pretty sure some of our younger co-workers don’t know.
Can improved automobile tyres really make the world a better place? Should we trust developers the one to change the tyres?
To be honest, probably better than me: the last time I changed a tire, I cross-threaded two of the lug nuts and then snapped one of them off (with only a lug wrench, sir; I was motivated to remove that bolt). BECAUSE I BREAK THINGS.