June 29, 2010

Podcast: Useless Information

I'm not sure how I stumbled across this podcast (I think I was doing a search involving "UI"), but I always like to find something new for my iPod.  You might enjoy it, too.

Useless Information - Fascinating True Stories From The Flip Side Of History
Steve Silverman is a High School science teacher in New York, and designer of more than 100 inventions.  He is also the author of two books: 
  • Einstein's Refrigerator and Other Stories from the Flip Side of History  
  • Lindbergh's Artificial Heart and More Fascinating True Stories from Einstein's Refrigerator 
In his podcasts, Steve provides 15-minute discussions about similar odd, offbeat, yet true topics from history.  Here are a few sample episodes I enjoyed recently:
UI #21 - The Court Martial of Jackie Robinson
Jackie Robinson is best remembered for being the first African American to play for one of the Major League baseball teams, but his 1944 court martial for his refusal to "go to the back of the bus" nearly derailed his career. 
Also find out about the first UPC barcode, a trained squirrel, the world's longest beard, and twins marrying twins.  Listen to the first singing radio commercial - one that saved Wheaties from extinction.
UI #11 - The Great Toilet Paper Shortage
Learn about one of the most unusual shortages ever in US history - one that was all started by Tonight Show host Johnny Carson.  This podcast also features a discussion of the In A Gada Da Vida/Speed of Light conspiracy theory.   
[I particularly liked this one, since I worked at a grocery store during those shortages.  I remember trying to quickly refill the shelves with toilet paper, as worried shoppers emptied them even more quickly. - Joe]
Steve appears to be a one-man show here, and the production quality is just ok.  But the stories are enjoyable.  I suspect he would have been a fun teacher to have, back in the 10th grade!

My name is Joe Strazzere and I'm currently a Director of Quality Assurance.
I like to lead, to test, and occasionally to write about leading and testing.

June 25, 2010

Be A Better Tester By Being A Beta Tester

(Special thanks to Phil Kirkham for the title suggestion!)

I've gotten some good responses to the post "So You Want To Be A Beta Tester" http://strazzere.blogspot.com/2010/05/so-you-want-to-be-beta-tester.html

Beta testing can be a good way to enhance your skills as a tester, and perhaps add to your resume.
Here are a few more opportunities.  As always, be careful when you venture into Beta land.

Participating in beta testing enables you to:
  • be among the first to gain access to the latest versions of Kaspersky Lab solutions and share your opinion with us;
  • help Kaspersky Lab improve the quality of the product being tested;
  • provide your suggestions on possible ways of improving the product; 
  • free technical support;
  • collaborate directly with developers and other beta testers using dedicated sections of our forum; and, 
  • receive free versions of the product, which are awarded to the most active beta testers.

What kind of feedback is the Desktop Team looking for?  The Desktop Team is most interested in two types of feedback: constructive criticism on new functionality and notification about new bugs. They do not need to know that certain bugs have not been fixed for several weeks. Opera Software has a bug tracking system for that very purpose.

Qualcomm and other contributors are developing a new, open source version of Eudora which is currently in early beta test, and can be downloaded from our betas page.

The Launchpad team runs a continuous beta program, as well as special beta test campaigns.
You can get access to the beta program by joining the Launchpad beta testers team. There are close to 2,000 beta testers and we encourage enthusiastic users to join that team to get the very latest functionality in Launchpad.

One of the greatest strengths of DotNetNuke is the participation of its large community of users.  To augment our own quality assurance efforts, we make our latest efforts broadly available for public beta testing and issue reporting.  In addition to making the software available, we also provide a variety of testbeds for upgrade scenarios to help get you started.

Enjoy!  And let me know if you find an interesting Beta Testing opportunity that you'd like to share. 

My name is Joe Strazzere and I'm currently a Director of Quality Assurance.
I like to lead, to test, and occasionally to write about leading and testing.

June 23, 2010

WinTask - isServiceInstalled()

' isServiceInstalled - determines if a Windows Service is installed or not
' Author: Joe Strazzere
' see: http://msdn.microsoft.com/en-us/library/ms681383(VS.85).aspx

Function isServiceInstalled(Service$)
If isServiceStarted(Service$) = 1060 Then
isServiceInstalled = 0
isServiceInstalled = 1


My name is Joe Strazzere and I'm currently a Director of Quality Assurance.
I like to lead, to test, and occasionally to write about leading and testing.

June 11, 2010

AJ Alhait - The Man Behind SQAforums.com

SQAforums is the leading web community for software testing professionals.  I joined in 2000, became a Moderator, and it’s been one of my favorite sites since.  I’ve always wondered what it takes to conceive of and run such a vibrant web site.

AJ Alhait is the owner/administrator of SQAforums and he’s a busy guy. I was lucky enough to chat with him recently – about how SQAforums got started, and how it grew to be the strong community that it is today.

Q:  How would you describe SQAforums?
A:  SQAforums was the 1st real web community built for software testing professionals.  
Q:  How did SQAforums come to be?
A:  Back in the early 90’s, the only resource for software testers were the usenet newsgroups and the mailing lists that were associated with them.  Back in these days, there was no moderation of posts and spam was widespread.  Then recruiters joined those lists and flooded them with job posts.  The other problem was that information was not preserved, so questions were asked over and over again.  SQAforums started as Beta-Soft.com back in 1998; a very basic HTML/cgi design for my consulting company BetaSoft, Inc. and initially was a forum specific to SilkTest by Segue (the tool I was using back then).  People liked the web forum so much that the idea came to make it cover all software testing tools and topics.  Beta-Soft.com also had a Jobs board, a Links section, Downloads section and a News section.  The idea came after that to split each into its own site - hence, the birth of QAforums.com, QAjobs.net, QAlinks.com, QAdownloads.com, and QAnews.com in 1999.  Later QAtraining.net was developed for providing online courses for software testing topics and tools.  Years later (2005), I went on a domain buying frenzy and purchased a bunch of domains to standardize a brand name "SQA".  QAforums.com became SQAforums.com, QAjobs.net became SQAjobs.com and QAtraining.net became SQAtraining.com.  QAlinks and QAdownloads became SQAsearch.com and so on.  Also SQAblogs was added to the list.  Of course I have many more domains; each with a unique idea behind it - but lack of time and resources has prevented me from making them a reality yet.
Q:  What was your goal in starting SQAforums?  What did you hope to accomplish?
A:   The site was started to help the software testing community maintain a knowledge base where they can help get answers to their problems in using a specific test tool or to learn more about software testing in general.
Q:  How has that worked out?  Did you achieve what you had hoped for?
A:  I believe I've been very blessed and successful in achieving what I set out to do.  My life in short has been a check-list of things to accomplish.  I cannot say that I've left anything unchecked.  The key thing is to keep adding items to the checklist.  If you set your mind to it, you can accomplish anything - it's just a matter of time and willpower. 
Q:  What kinds of members does SQAforums attract?
A:  Software Testing professionals who want to improve their skills, have problems with tools and are looking for help. And of course we attract many software testing trainees as well. 
Q:  At some point in time, you decided to have Moderators.  Do you remember when that was?  Why the change?
A:  When the site moved from beta-soft.com to QAforums.com the need was there because we added over 30 forums then and now over 80.  Having different moderators that are not associated with BetaSoft was necessary.  I did not want to have a company run site, but rather a real, unbiased website with feedback and contribution from many professionals who are not associated with a vendor.  
Q:  Tell me a bit about the numbers behind SQAforums.  How big is it?  Can you give me an idea of the number of members, the traffic, etc.?
A:  SQAforums has over 180,000 members.  Not all are current users.  We do have the type of member that registers, uses the site for a few weeks/months and then does not come back again until a specific need arises.  But overall, we have over 100,000 real, active members.  Over 5,000 unique members visit per day and over 85,000 in a given month. The members are mostly from the US (over 55%) India comes second with about 28% and the rest mostly from Europe.
Q:  Is SQAforums a one-person enterprise?  Or do you have a (paid or unpaid) team?
A:  SQAforums is basically me (the admin) and a few experienced volunteers who are moderators. I've also had a few contractors and even some BetaSoft employees work to provide coding and administration help from time to time.
Q:  Tell me a bit about the technology behind SQAforums - hardware, software, etc.
A:  BetaSoft has a full cabinet of rack mount servers hosted in Fremont, California.  SQAforums runs on a RedHat Linux enterprise Dell server which just got migrated to CentOS.  There are a total of 20 servers in the BetaSoft rack.  Most of them are designed for QAtraining.net and the rest are hosting the remaining sites.  We have a mix of RedHat, CentOS,  Windows 2000 and Windows 2003 servers. 
SQAforums currently used a modified pre-packaged script based on UBBThreads 6.5.  It’s about to be upgraded to 8.0.  
Q:  Where is your office and where are the machines that run SQAforums physically located?
A:  We have an office in Fremont and San Jose, California.  And the collocation facility is in Fremont.
Q:  How much time do you spend administering SQAforums?
A:  When things are under control, I spend only a few hours per week.  If there urgent tasks or emergencies, that could go into 3-5 hours per day in some cases - particularly when I have to go to the collocation facility.
Q:  Does SQAforums make any money?  What is your monetization model?  How did you arrive at this model?
A:  SQAforums makes money via advertising.  The website was primarily financed by myself initially and via BetaSoft consulting division back from 1999-2005.  I wanted to start the site and keep it ad free for the longest time (I personally do not like banners).  I got pinged so much by tool vendors, and once a well known testing site came online and I was told how much they were charging for advertising, I was arm-twisted into taking on sponsors and creating some revenue for the site in order to keep the expansion effort going.  
Q:  SQAforums has sponsors and ads.  How is that working?  What do sponsors get?  Any long-time sponsors you care to mention?  Do you actively recruit new sponsors?  If so how?  How should potential sponsors contact you?
A:  The initial sponsors of the site were: Compuware, Segue, Mercury, Rational and Empirix.  Then most of these companies were acquired by larger companies.  Mercury was acquired by HP, Rational by IBM and Segue by Borland, and then Micro Focus, Compuware tools were sold to Micro Focus and Empirix sold off their testing tools to Oracle.  I lost contacts with most sponsors when this transition happened.  The larger companies have 3rd party marketing campaigners.  These companies were not interested in sponsorship of community forums.  They wanted lead generation for sales only.  And to be honest, most of these sales-only tactics were too overwhelming to the membership. 
After the 1st wave of testing tool acquisitions, the 2nd wave of testing tool vendors became more popular, so sponsors like AutomatedQA, Gomez and FrogLogic came to fill in the gap and grow their market share by making their tools more visible to the community and help support their users and potential customers.  
I do not do any active recruiting for sponsors- we have no sponsorship sales force.  I only cater to the interested parties who are viable software testing tool vendors.  They mainly contact us via emailing the webmaster at betasoft.com.  I have tried to ignite old sponsors again like HP/Micro Focus and IBM through employees who work there, but most of those efforts have been unfruitful. 
Q:  Do you use Google for any part of your monetization?
A:  Yes, I have Google Ads running, but that basically helps support what we pay to Google for advertising. 
Q:  What kinds of challenges have you seen over the years of administering SQAforums?  What was hard?   What has so far been impossible?
A:  Spam prevention, piracy protection, and educating the community to follow the rules have been the hardest tasks.  Getting all moderators to agree on issues has also been very difficult.  The impossible thing to achieve has been getting the new members to actually read the FAQs and follow the rules, particularly those who are new to the internet!  Also getting the average new member to actually contribute to the site by helping others after they have solved their individual problems is really hard!
Q:  If you had to do it all over again, what would you do differently?
A:  I would have hired a person to be a webmaster and actually work on features. I would not have relied solely on myself for these tasks.
Q:  When you aren't running SQAforums, what else do you do?
A:  I have many hobbies!  I mean MANY!  I've tried almost every hobby that is called a hobby!  My favorite thing to do in the winter is skiing.  I do not get to do it as much as I want, but I try to go at least twice every year.  My favorite thing and most time consuming hobby is Reef Aquariums.  I have 2 salt water reefs – one 150 gallons and another a 120 gallon tank.  They are my most expensive and time consuming hobby. 
Here's a link to one of my fish photo albums: http://picasaweb.google.com/aalhait/FishTank2?authkey=Gv1sRgCLqxyZX_s6S0Sg# 
I also like gardening.  I have more than 14 fruit trees and nice back and front yard gardens with an aviary which I built and landscaped from scratch! 
Q:  What about your personal life?  Are you married?  Children?  Where do you live?
A:  I’ve been married for 15 years.   We have three children – two boys and a girl.  We live in Cupertino, CA.
Q:  What kind of plans do you have for the future of SQAforums?
A:  SQAforums will soon have a facelift.  There will be integration between SQAforums/SQAblogs/SQAnews, along with a new site for SQAjobs and SQAtraining.com.   And one more site which I would rather keep secret for now.
Q:  Anything else you would like to mention?
A:  'May the source be with you... Always!"

Thanks, AJ – for answering my questions, and for providing the gift to the software testing profession that is SQAforums!

My name is Joe Strazzere and I'm currently a Director of Quality Assurance.
I like to lead, to test, and occasionally to write about leading and testing.

June 8, 2010

Blink Tests In A Blink

Michael Bolton and James Bach define Blink Test (or Blink Oracle) as follows:
"A blink test is any test that alters someway of viewing the application—size, time, position, focus, or sensory mode—to take advantage of people's ability to spot patterns (or pattern exceptions) quickly. Like snap judgment, rapid pattern recognition is something that testers use all the time. It's not always reliable, it's often improved by removing information, and it can be improved by changing the observer’s context."
You probably already do some blink testing without even thinking about it.

James Bach says "I apply blink testing any time I can arrange to be confronted with a blizzard of data: comparing screens (I glance at a million pixels, then at another million pixels, and in an instant I see the tiny difference between them), scrolling through huge log files, or watching an extremely rapid process take place. Anything that seems overwhelming to take in triggers me to consider a blink test."

Michael Bolton says "I've been using blink tests for my entire testing career. When we soften focus and flip quickly between two screens that are supposed to be identical, any difference between the screens shows up as a noticeable flicker."

Blink tests use everyone's innate ability to quickly recognize patterns, differences in patterns, and "movement" to look at a large amount of data and quickly discern: copyrightjoestrazzere
  • what is going on here?
  • what "jumps out"?
  • what is different?
  • what is unexpected?
For example, the applications I test often produce log files that have a lot of useful testing and debugging information contained within them.  While the logs can be very long and might be time-consuming to read in detail, a blink test can often help you quickly hone in on issues that merit further analysis.  For this blink test, I sometimes use BareTail.

BareTail allows you to highlight lines containing particular strings (such as "ERROR").  It also allows you to rapidly scroll through a large log file, and see any patterns, omissions and unexpected occurrences with very little effort.

When I'm testing a browser-based application, I may want to check that a prior build and the current build are rendered the same - even after a change to the CSS.  For this, I might load one build in one tab of my browser, and the newer build in another tab.  Rapidly switching between the tabs using Ctrl-Tab makes any differences jump out.

(An aside: While preparing a snapshot for this blog entry, I was using the Google home page in two tabs of IE.  I noticed that the new "Change background image" link gets placed in a different line on occasion.  This difference is easily spotted with a blink test, but I had never noticed it before.  Is this a bug with the Google page?  Is it a bug with IE?)

Even when you are expecting changes, blink tests with browser pages can be handy.  When we were releasing a UI change to a website involving many pages we needed to ensure consistency of these changes across many page of documents, for many of our clients. To make checking of all these pages more efficient, we used a WinTask to bring the two versions up in side-by-side browsers, one page at a time, followed by a dialog box that basically asked "Does this look right?"  The testers were then able to rapidly view many of these side-by-side comparisons, while the WinTask log recorded their comments.

One of the test automation techniques I use often is to have the test script dump information for each web page it visits in a text file for later analysis.  That way, I end up with a folder of text files.  Comparing this entire folder of information to a prior version of the same files is very easy to do with a tool like WinMerge.

WinMerge give us two levels of blink tests - at the folder level, it quickly indicates which of the files in the current folder don't match the corresponding file in the baseline folder.  Then, it allows us to drill down and compare the mismatched files themselves - providing a nice way to visualize the file differences.

Recently, I've had to check some large datasets for "reasonableness".  For this task, I've found that Excel's Data Filter provides a handy blink oracle.

I load the data into Excel, select all, and have Excel auto-filter it.  Quickly scrolling through the filter's dropdown list shows me if something unexpected exists in that column.

A while back there was something odd happening while I was running an overnight automated test.  At some point, my scripts went awry, and got out of synch with the website.  I added more logging, more error handling, etc - yet I still wasn't able to prevent the problem, nor to pinpoint the issue.  So I decided to use TimesSnapper Classic to "watch" the screen for me in my absence.

When I came in the next day, I was able to very rapidly scroll through the periodic snapshots that TimeSnapper created, pinpoint the time when the problem occurred, and see what was going on.  This type of "time-lapse photography" has proven useful on several occasions.

Even a simple Windows command prompt DIR command can very rapidly tell us something about a folder full of files.  

If one of the files is much larger than all the rest, it might be worth digging in to find out why.

Blink Tests might be worth a try for you as well.  It makes spotting differences child's play.  As the Sesame Street song says:
One of these things is not like the others,
One of these things just doesn't belong,
Can you tell which thing is not like the others
By the time I finish my song?

Did you guess which thing was not like the others?
Did you guess which thing just doesn't belong?
If you guessed this one is not like the others,
Then you're absolutely...right!

Some of the tools mentioned:

Also see:

My name is Joe Strazzere and I'm currently a Director of Quality Assurance.
I like to lead, to test, and occasionally to write about leading and testing.