Archive for the ‘Failed applications’ Category

Vintage Defect: Moons Over My Halo

Thursday, August 1st, 2013 by The Director

Back in 2007, a developer caused a delay in a very large software launch for an Easter egg or a prank:

Microsoft reps have told Next-Gen the real reason for the Halo 2 Vista delay: partial nudity–specifically someone’s backside in the game’s map editor, the Entertainment Software Rating Board added today.

. . . .

Friday morning, however, the ESRB e-mailed Next-Gen a statement that said a “photograph of an individual showing his bare backside” is accessible within Halo 2 Vista’s exclusive map editor tool. Apparently, it pops up when an “.ass” error occurs….

Hijinks that cost the company millions.

Moral of the story: Always check your software for .ass errors.

I’ve Heard of Bugs Closing Windows Before, But This Is Ridiculous

Thursday, October 25th, 2012 by The Director

2005-’07 BMW 7 Series Recalled Because Doors May Inadvertently Open:

BMW is recalling 7,485 2005-’07 BMW 7 Series cars because a software problem may cause the doors to inadvertently open, according to the National Highway Traffic Safety Administration.

“Due to a software problem, the doors may appear to be closed and latched, but, in fact, may inadvertently open,” said NHTSA in its summary of the problem. “The door may unexpectedly open due to road or driving conditions or occupant contact with the door. The sudden opening may result in occupant ejection or increase the risk of injury in the event of a crash.”

You know, I still have a vehicle whose key makes moving parts move and whose (albeit plastic) door handle makes other physical things move.

Know why?

Because I work in QA.

Also, I’m to cheap to buy a new vehicle every decade.

(Link courtesy of Gimlet again, who I should consider giving the keys to the blog except he works in ops and therefore only disdains you.)

Copyright Dates: The Brown M&Ms of Applications

Wednesday, October 17th, 2012 by The Director

The rules of copyright citation are simple, and they have not changed significantly in decades. But companies continue to get them wrong, especially in software applications.

Two conflicting copyright dates

Whenever I see them wrong in an application, I can’t help but wonder What else have they done wrong?

Of course, I think that when I see any application at the outset. But I digress.

This makes copyright dates sort of like brown M&Ms:

In case you weren’t around during the 80s, the rock supergroup Van Halen had a clause in their concert contracts that stipulated that the band would “be provided with one large bowl of M&M candies, with all brown candies removed”. Once the “M&Ms” story leaked to the press, social commentators jumped all over it as an egregious example of the pampered and spoiled behavior that rock artists demanded.

. . . .

Van Halen was one of the first rock bands to bring truly massive concerts to mid-size cities like Macon, Georgia. The staff that worked at concert arenas in these smallish cities were used to bands coming to town with, at most, three tractor-trailers full of equipment. Van Halen’s equipment took up 9 tractor-trailers. It was a lot of stuff, and the staff at these venues were frequently overwhelmed. And when people are overwhelmed, they make mistakes. At a rock concert, “making a mistake” during setup has a large number of possible outcomes. Some mistakes don’t have any effect at all. Other mistakes can make the band sound awful, which hurts nothing but the band’s image. Other mistakes can cause stage lights to fall from the ceiling and kill people… which is exactly what the band was afraid of.

At the heart of any major concert is the contract. Much of the text of these contracts is standard legal boilerplate, but each band may attach specific demands via something called a “rider”. Most of the contracts involving concerts at large venues are jam-packed with riders, most of which involve technical details specific to the band’s stage design. For instance, a rider might say “Article 148: There will be fifteen amperage voltage sockets at twenty-foot spaces, spaced evenly, providing nineteen amperes total, on beams suspended from the ceiling of the venue, which shall be able to support a total gross weight of 5,600 pounds each, and be suspended no less than 30 feet, but no more than 37.5 feet, above the stage surface”. Van Halen’s concert contracts would have several hundred such demands, and their contracts ended up (in lead singer David Lee Roth’s words) looking “like a Chinese Yellow Pages”.

The staff at venues in large cities were used to technically-complex shows like Van Halen’s. The band played in venues like New York’s Madison Square Garden or Atlanta’s The Omni without incident. But the band kept noticing errors (sometimes significant errors) in the stage setup in smaller cities. The band needed a way to know that their contract had been read fully. And this is where the “no brown M&Ms” came in. The band put a clause smack dab in the middle of the technical jargon of other riders: “Article 126: There will be no brown M&M’s in the backstage area, upon pain of forfeiture of the show, with full compensation”. That way, the band could simply enter the arena and look for a bowl of M&Ms in the backstage area. No brown M&Ms? Someone read the contract fully, so there were probably no major mistakes with the equipment. A bowl of M&Ms with the brown candies? No bowl of M&Ms at all? Stop everyone and check every single thing, because someone didn’t bother to read the contract.

Only the Elder Sign Offers More Protection

Tuesday, August 28th, 2012 by The Director

This captcha will protect against bots particularly well.

Now with foreign characters not on your keyboard!

Also, users who don’t have an e with an acute accent on their keyboards.

I guess it’s to test how bad you really, really want to create a new account.

Hey, let me digress here: Why doesn’t the Elder Sign actually have a Unicode symbol or character for it?

The Elder Sign

Aren’t geeks in charge of the official Unicode spec, or what?

The Wages of Leap Day Is Defect

Friday, March 2nd, 2012 by The Director

A quick review of leap day issues from this week:

  • Leap day scuttles Eftpos

    February’s extra day has been causing problems with computer systems here and in Australia.

    Foodstuffs said an eftpos outage at lower North Island New World, Pak n’ Save and Four Square stores this morning occurred after its systems were unable to cope with today’s leap day date.

    The outage, which has now been resolved, affected many stores across the lower North Island from early this morning.

    (Source: A tweet from someone on the other side of the Pacific Rim whom I follow.) 
     

  • Windows Azure Leap-Year Glitch Takes Down G-Cloud:

    Microsoft has confirmed that a service outage that affected its cloud computing service Microsoft Azure, appears to be caused by a leap year bug.

    The Government’s G-Cloud CloudStore was among the sites affected by the outage, which Microsoft says has mostly been rectified.

    (Source: Reader Isarian.)

Is that it?

That’s all we know about.

Sleep tight, and remember that December 31 is Day 366, as Microsoft knows. Or should know. But given this is the second Microsoft product leap year crash in as many leap years, who knows what Microsoft knows.

Theoretically, There Are At Least 2048 Test Cases To Check Those Conditions

Wednesday, February 22nd, 2012 by The Director

Error #2048 implies there are 2047 other errors, doesn’t it?

Love error #2048

Well, unless they’re doing some strange counting in binary, which they well may be.

I’ve said it before, I’ll say it now, and I’ll say it again: Error messages are not debugging tools.

Error messages need to convey something useful to the user. This error message does not. A good error message should not only tell a developer what’s wrong, but it should also help a user determine what to do next to fix the error.

Bank Error in Bank’s Favor

Monday, February 20th, 2012 by The Director

Apparently, Ally Bank software failed to pay interest to CD holders:

We goofed.

That is the message Ally Financial is delivering to some of its customers.

The online lender mistakenly failed in December to credit year-end interest earned by some savers who hold its certificates of deposit. The company also provided these customers with incorrect tax information that didn’t reflect the interest they should have earned.

Uh, oops. This might be the first case of a bank itself doing a Salami attack.

On the other hand, no doubt they made the launch date.

It’s Not Just The Wisconsin State Police

Tuesday, February 14th, 2012 by The Director

Reader Rich M. sends along another possible outcome this February 29:

The 3-0 is coming

I guess that’s one work around.

Testing in Production

Tuesday, February 7th, 2012 by The Director

The people behind the New York Giants’ Web site were ready. Too ready.

The New York Giants web staff committed a major gaffe on Saturday and may have given the Patriots some bulletin board material for the Super Bowl.

On Saturday, NYGiants.com posted an ad on their website declaring the Giants Super Bowl Champions.

The ad also contained a link to buy championship merchandise.

Someone eventually noticed the error and took down the ad.

Unfortunately, it was a prophetic defect.

Put Your Back Intuit

Thursday, February 2nd, 2012 by The Director

So I installed the new full CD version of Intuit QuickBooks, which is adware designed to get you to buy a lot of Intuit additional services disguised as accounting software. Now, if you’re like me, you’re not into the intricacies of actual accounting nor the myriad business rules that the various state and Federal governments change upon a whim, but you rely on software and a good accountant (or, sometimes, an accountant, although I’d like to add my current accountant is a good accountant unlike previous engagements who continue to bill me a small amount every year for simply having my address in their files).

Where was I? Oh, yes. I was talking about trusting your application, particularly one with complicated rules whose violation might result in a prison sentence. You want to trust that application, don’t you? So do I.

But I get the software installed and get into the mandatory registration (that is, give us personal information so we can target more in-application advertising pop-ups to you), and I get confronted with obvious slops on the design.

To whit:

Maybe that's my fault, since I'm viewing the application on a 1979 Magnavox television.

A couple missing lines and slurred text, probably caused by poor compression or sizing.

Next up:

Hey, that's my playoff bracket!

A stray bracket in the corner.

Man, oh man, I can’t wait to find out what strange punctuation marks it leaves in my figures.

Do I trust the application? Not so much. Which is why I don’t use it for much more than a glorified check register. And if it continues with its unrepentant, unrelenting barrage of “Collect credit cards with Intuit!”, “Print checks with Intuit!”, “Let Intuit have access to all your financial accounts!” banners popping up before I can pay my bills, I won’t have to trust it in the future, as I move to Microsoft Excel where it’s nice and quiet.

Now That’s Regressive

Tuesday, January 31st, 2012 by The Director

You know, when this blog first started, I used to noodle around existing Web sites, find errors on their Web forms, and do some commentary on them. I haven’t been in that habit for a while, so you might think the quality of applications in the wild has improved. Oh, but no.

Take the Progressive Insurance contact us form:

Flo's going to kill me for this, but....

Now, if you don’t select a topic before you click Submit, it asks for a topic. But only a topic

When Flo says it, does it sound like 'Toe pick' like that girl from The Cutting Edge?

When you select a topic, it changes the fields on the form to reflect what they want for that kind of inquiry (enquiry for our R.P. friends). If you click Submit then, it shows you a list of the fields you need to fill out:

That's to be expected

But if you click the Reset button to reset the form, well, that’s not cricket (cricket for our R.P. friends):

It's your fault, user: You clicked that button when we didn't expect it!

You know, any time your form changes the controls on the screen due to AJAX or other techniques, it’s a different form. And it never hurts to check your reset button in various forms of filling out the form, especially if there are look-ups or state changes as you fill out the form.

UPDATE: Welcome, Progressive Insurance readers!

As If Millions of Prescription Change Orders Suddenly Cried Out in Terror and Were Suddenly Silenced

Thursday, January 12th, 2012 by The Director

You might know, if you’re in the United States, have health insurance, and have an insurer that uses Express Scripts for its prescription benefits management, that as of January 1, 2012, the Walgreens pharmacy chain and Express Scripts contract ended. Which means that your insurance card does not work at Walgreens, and if you want our pharmaceuticals at reduced rates, you have to transfer your prescriptions to other pharmacies.

How many prescriptions are affected?

90,000,000:

An Express Scripts spokesman say their customers previously filled 90 million prescriptions at Walgreens. Now they’re taking them elsewhere.

It’s my understanding that the Express Scripts processing system was down all day on January 11. Is it related? I don’t know.

But I do wonder whether Express Scripts load tested its system to handle 90,000,000 change orders in a matter of days while handling its normal processing for all other normal maintenance.

It could be a valuable lesson anyway: Even after you’ve load tested your application to the limits of your budget for virtual users or to a level where the stakeholders are comfortable with very gradual ramp up times, sometimes events out of IT’s control could lead to a catastrophic meltdown.

The Game Within The Game

Friday, December 16th, 2011 by The Director

So I was playing Rampage World Tour on the PlayStation 2 because I am 15 years behind in my gaming.

I'll get a Wii in 2023.

After destroying 99% of the first city (what, I missed some part up to 1%?), I got an error:

There are other lockup errors to find?  SWEET!

What? There are other lockup errors one can find? I’ll have to try them to collect them all!

While I do that, join me in recasting the lyrics to this song to fit the occasion. Consider it your Friday software testing exercise:

When the Dearth of Testing Causes Nightmares

Monday, November 14th, 2011 by The Director

A Cracked list: The 8 Creepiest Glitches Hidden In Popular Video Games.

Could Your Bug Put Someone In Jail?

Thursday, July 21st, 2011 by The Director

An element of the recent high-profile American trial of Casey Anthony that should be of interest to us:

Assertions by the prosecution that Casey Anthony conducted extensive computer searches on the word “chloroform” were based on inaccurate data, a software designer who testified at the trial said Monday.

The designer, John Bradley, said Ms. Anthony had visited what the prosecution said was a crucial Web site only once, not 84 times, as prosecutors had asserted. He came to that conclusion after redesigning his software, and immediately alerted prosecutors and the police about the mistake, he said.

Concerned that the analysis using CacheBack could be wrong and that a woman’s life might be at stake, Mr. Bradley went back to the drawing board and redesigned a portion of his software to get a more accurate picture.

He found both reports were inaccurate (although NetAnalysis came up with the correct result), in part because it appears both types of software had failed to fully decode the entire file, due to its complexity. His more thorough analysis showed that the Web site sci-spot.com was visited only once — not 84 times.

Remember, those defects your developers mark as “Known Issue” or reject still can have real-world effects.

Cascading Failures in the Airline Industry

Thursday, June 30th, 2011 by The Director

The Wall Street Journal has an article about cascading failures in airline computer systems:

Whether it’s caused by a power failure or a possum, an airline computer outage unleashes more problems more quickly than similar breakdowns in almost any other consumer business.

A recent spate of technology glitches at U.S. airlines has inconvenienced thousands of travelers, spawned long airport lines, delayed or canceled flights and led to a wave of negative publicity.

United Continental Holdings Inc.’s United Airlines unit suffered a meltdown June 17 that forced it to cancel 36 flights and delay another 100. US Airways Group Inc. was hit by separate glitches on June 10, 18 and 19.

Alaska Air Group Inc. had its turn back in March, canceling 150 flights affecting more than 12,000 customers. Earlier in March, Southwest Airlines Co. experienced two separate technical foul-ups within two days, although the one related to the rollout of its revamped frequent-flier program didn’t delay flights.

With packed planes leaving little room for error, airlines are trying myriad upgrades and other solutions to keep their computers running everything from flight dispatching to crew scheduling, passenger check-ins, airport-departure boards, ticket sales and frequent-flier programs.

Cascading failures caused by unforeseen, unrelated, or untested circumstances. Now you know why some of us use milk of Magnesia as our coffee cream.

The Race Condition Is Not To The Swift; These Guys Are Swift

Thursday, April 28th, 2011 by The Director

Two sellers on Amazon dance to the beats of their own algorithm:

A few weeks ago a postdoc in my lab logged on to Amazon to buy the lab an extra copy of Peter Lawrence’s The Making of a Fly – a classic work in developmental biology that we – and most other Drosophila developmental biologists – consult regularly. The book, published in 1992, is out of print. But Amazon listed 17 copies for sale: 15 used from $35.54, and 2 new from $1,730,045.91 (+$3.99 shipping).

I sent a screen capture to the author – who was appropriate amused and intrigued. But I doubt even he would argue the book is worth THAT much.

At first I thought it was a joke – a graduate student with too much time on their hands. But there were TWO new copies for sale, each be offered for well over a million dollars. And the two sellers seemed not only legit, but fairly big time (over 8,000 and 125,000 ratings in the last year respectively). The prices looked random – suggesting they were set by a computer. But how did they get so out of whack?

When you’re building something that reacts to events in the cloud, you’re going to get some strange events. You’ll need to consider some alternative workflows, such as unreliable input and buggy software dependencies.

Because this example shows another “Never” happening.

(Link seen on Twitter.)

What We Have Here Is A Failure To Outputiate

Thursday, April 14th, 2011 by The Director

A receipt from a car wash that accepts credit cards shows a stunning amount of inaccurate data:

Receipt from the car wash, beep beep, hah!

The name, address, and the approval number are all obviously dummy data. Should your system in production be outputting this? Of course not. But do you let the users–in this case, an installer or an administrator of the kiosk–just use the dummy data?

You see this trap sometimes when applications put the labels for controls as text in the controls themselves, such as an edit box that says “First Name” until you type into it. Sometimes, you’ll find the application will check to make sure the edit box is not empty, but the application is perfectly happy with “First Name” in it. The application is happy, but is the client happy that 50% of his registrations come from First Name Last Name of Address City State 55555? I think not. Don’t let them do it. Even if they’re trusted computer professionals.

Secondly, this is another reminder to check all your application’s outputs, QA. I know, that means sometimes getting up from the faintly warm glow of your monitor and the seat that has molded itself nicely to your backside, but if your application prints anything, you’d better make sure it looks good on paper (and on A4 paper if you’re pretending international use).

Making The Never Happen Every Day

Tuesday, March 8th, 2011 by The Director

Hotmail has a mechanism by which it translates URLs found in its text e-mails into hyperlinks. It does this smartly, using a special logic that I make sing the algorhythm-and-blues:


That will never happen, period.
Click for full size

You can forensically see what happened here. The logic says URLs don’t ever end with periods, so if there’s a period at the end of the URL, it’s the period at the end of a sentence and don’t make it hot.

Except, of course, in this case the period at the end of the sentence is part of the last parameter on the querystring, a user name that ends in a period. And if the period is not passed along when the user clicks, it’s an invalid URL.

On the plus side, it doesn’t look like a Hotmail bug; it looks like a problem with the receiving server. W00t!

You Microsofterati reading the blog ought to log that in your Hotmail buddies tracker for them.

Like My Name, Maybe The Message With The Correct Grammar Was Taken

Wednesday, January 5th, 2011 by The Director

It’s just a message one sees very briefly when configuring, so that means your team might see it once during the test phase? Is that a reason or an excuse?


What, ebay can't afford a simple 'if'?
Click for full size

Given that it’s one of the first messages that your user sees, this will be one of the first impressions the user gets as to the reliability of your software. And if your messages are slop, your user–or potentially former soon-to-be user–might think your software is slop, too.

Your software’s installer is an application just like your application is. Test it vigorously.