How not to welcome a new customer

Way back in October of 2008 when I launched My Technology Fetish I intended to use WordPress as the blogging platform while using the Mac Mini I owned as the server. It didn’t take long to realize I didn’t know what I was doing (or how to install mySQL navigating a Linux command line in OS X) and I bailed out by setting up with Blogger.

Blogger is a fine blogging platform. Its free and effortless to setup. Yet its’ not very customize-able, has no developer community building cool gizmos, gadgets or templates and I get bored with bad designs rather quickly. If you’ve paid attention over the years this site has gone through a lot changes. At some point in the future I will migrate this site from Blogger to WordPress but in the meantime I’ll start with Chris and later merge in Search N Recovery.

I decided to find a web hosting company that specializes in WordPress hosting and at the recommendation of a friend chose iPage. (Matt you owe me lunch once you get that Affiliate credit!) iPage offers unlimited domain hosting, unlimited disk space, unlimited bandwidth, etc. and the service was promotion-ally cheap. What could go wrong you say?

After signing up I chose to pay for 3 years of service (the promotion pricing was tied to pre-payment) using PayPal. Upon paying I get an error saying “something failed” while trying to process my PayPal payment. I love helpful error messages. So I try again. This time the payment process appears to be successful but I don’t get a welcome or thank you or confirmation page, instead iPage throws a 500 error. Welcome new paying customer! (Is the sarcasm coming through?) I had to log into PayPal to verify the money was deducted before I knew my sign up was complete.

A few minutes later I got an email with log-in information and an order confirmation. The amount listed on the order was incorrect (the PayPal invoice was correct) because it showed the rate of the plan I selected but not the extra feature which had a small additional cost. Great… Well at least my account was now ready, right? Wrong. When I tried using the log-in information from the email to access my account I got log-in errors. Seeing no directions in the email I turned to iPage’s online chat where the agent instructed me to wait 10 minutes. Once 10 minutes passed I was in.

Simple right?

I’m a software tester and I get it – things break. Any company should be concerned when a string of problems all related to new customer acquisition are this severe. It’s as if iPage was telling me they really didn’t want my business so much they tried getting rid of me at several points along the way. I kept thinking this was a great example of how NOT to welcome a new web hosting customer.

Testing Idol Worship?

With software testing I’ve found it important to identify a few key experts in the field to see what they’re saying, doing, reading, etc. in order to learn and expand my testing thinking. Maybe it’s the size of the industry, the lack of “basic” testing education but there seem to be a number of ways to get trapped in the “hump” of a testing career. Perhaps all industries are like this and this is the first time I’m experiencing it?

Luckily Twitter makes following experts very easy as do blogs. I’m excited so many testers blog! To the untrained eye it might look like I’ve got a case of testing idol worship. A year ago or so ago I was writing a lot about James Whittaker and now all I seem to be doing is writing about James Bach. (I wonder how my Google page rank looks when searching for the name ‘James + software testing’…?)

Don’t worry it’s not testing idol worship, at least I don’t think it is. It’s more an exploratory way to learn about the testing body of knowledge and discuss (with myself ha ha ha…. sad face) the things going on.

Bear with me and enjoy the ride.

The Role of Testing by James Bach

The following is a summary of the essay The Role of Testing by James Bach from the book Amplifying Your Effectiveness: Collected Essays.

The essay goes like this: After not liking his time as a developer James thought being a testing manager would provide more wiggle room, since testing is a little more vague than programming.

James says “I used to think that the role of testing is to find problems.”

Finding problems was easy but not satisfying in the long run (I can attest to that) so after one of the managers at Apple sent around a book called Quality Without Tears he became a bug prevention, zero defects tester.

Then James says “I used to think that the role of testing is to assure quality.”

Yet testers can’t really assure quality because perfect quality is an inherently unreachable goal with many dimensions to it. Testers don’t create quality, most of the time its not in their power to perform. If testers assume the mantra of quality gatekeepers then it’s likely the rest of the team will take less responsibility for quality. QA will be there to assure it and when they can’t it’s their fault. Additionally many QA people naturally exert control by defining processes and auditing compliance which often slips into moralizing about quality until all anyone can agree on is good quality is good and bad quality is bad.

At some point James’ manager let him in on a secret: testing is about the search for risk, not perfection. Finding important problems fast is the game, not covering the entire system in detail. To do so you have to understand which parts of the product really need to be tested which can bring the tester more into alignment with the rest of the project.

Then James says “I used to think that the role of testing is to analyze risk.”

Yet risk is an abstract (although important) concept. To some it sounds like a way to focus on the negative – what’s risky, while the business takes the opposite approach – encouraging risk (entrepreneurial).

So James says “Today, I think the role of testing is to bring vital information to light in support of the grand mission of creating great products and running the business. That includes finding problems, assessing quality, analyzing risk and in any other way helping the team to understand what’s going on.”

This was my favorite article from the entire book because the subject of the “role of testing” doesn’t seem to be widely understood today, 12 years after this book was published. The simplicity of James’ statements show how he embraces each idea and then discards it, showing us how he learned a little and moved on – lessons learned, if you will.

I wonder, does James still think this way? How long did it take before he realized a certain “perceptual role” didn’t work and began looking for another? From the limited experience I’ve had studying his work I can see how this evolving view influenced his career. For example James has written articles on (heuristic) risk based testing. His Rapid Software Testing course uses a combination of these “perceived roles” to focus only on the important parts that matter – increasing the time you can spend on testing – hence the titled ‘Rapid’.

I think in a way James is right, our role as testers is to light the way. Although saying that sounds too abstract, too feel good. Whatever the right phrase, helping the team understand the product seems like a good direction.

The book is called Amplifying Your Effectiveness: Collected Essays edited by Gerald Weinberg, James Bach and Naomi Karten. It’s a real quick read and you can pick up a copy cheaply on Amazon or eBay. At 140 pages or so it was super quick to read. According to the book this essay was adapted from an article called “Rethinking the Role of Testing for the e-Business Era.” Cutter IT Journal, Vol. XIII, No. 4.

Building context like Thomas Jefferson

During a recent trip to Washington DC I got to view the library Thomas Jefferson sold to the Federal Government in 1815 for $24,000. The sale contained some 6,487 books which are now part of the Library of Congress.

Jefferson built his library over the course of his life, collecting books from every place he visited, in every category known to man. Anything he needed to learn or wanted to learn came from books. In fact Jefferson had so many books he had to come up with categories to place them:

  • Memory
  • Reason
  • Imagination
  • History
  • Philosophy
  • Fine Arts

What does this have to do with testing? Testing like most things is about learning. In the context-driven school of testing (yes I used the word school) good practices come from context and the way we place things in context is to have a broad base of understanding. Just like Jefferson had (I’m assuming). When he would deal with problems in his private or public life his wide ranging education allowed him to frame problems and solutions.

Today we don’t have to learn just by reading, although books are our largest source for information, we have many forms of communication for learning to be better testers (I’m not talking about formal education) that haven’t existed for very long like virtual conferencing, conferences, blogs, etc. We (including myself) don’t really have an excuse for not using them!

Rapid Testing Intensive Confirmed!

(Stolen from the Rapid Testing Intensive site)

It’s official I’m booked for the onsite Rapid Testing Intensive with James and Jon Bach at the end of July on Orcas Island in Washington. According to the website this testing intensive will be based on “… Session-Based Test Management and Rapid Software Testing methodologies” and will “…allow you to see how the modern theory of testing meets practical work.” Sounds like a blast.

There are 10 onsite and 42 online participants as of 4/2/12 and one of those onsite partcipants is Robert Sabourin. I was in his “Using Visual Models for Test Case Design” class last year at StarWest so it will be interesting to work side by site with him as well as a few of the other participants.

As I said in my prior post my goal is for: “Experience and feedback on modern testing methodologies!” Can’t wait.