<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Software Tasting --by Geordie Keitt &#187; Geordie Keitt</title>
	<atom:link href="http://tester.geordiekeitt.com/author/plugnplay/feed/" rel="self" type="application/rss+xml" />
	<link>http://tester.geordiekeitt.com</link>
	<description>sitting in a corner like little jack horner, testing your software pie</description>
	<lastBuildDate>Fri, 21 May 2010 13:24:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>I like Thinklinkr</title>
		<link>http://tester.geordiekeitt.com/2010/05/i-like-thinklinkr/</link>
		<comments>http://tester.geordiekeitt.com/2010/05/i-like-thinklinkr/#comments</comments>
		<pubDate>Fri, 21 May 2010 13:24:16 +0000</pubDate>
		<dc:creator>Geordie Keitt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[writing]]></category>

		<guid isPermaLink="false">http://tester.geordiekeitt.com/?p=137</guid>
		<description><![CDATA[When I journal in the morning I use Thinklinkr.  When I write a conference proposal I use Thinklinkr.  When I compose a blog post I use Thinklinkr.  It&#8217;s a simple online outliner, and I really love it.  I can collaborate on an outline with another Thinklinkr user.  I can keep [...]]]></description>
			<content:encoded><![CDATA[<p>When I journal in the morning I use <a href="http://thinklinkr.com">Thinklinkr</a>.  When I write a conference proposal I use Thinklinkr.  When I compose a blog post I use Thinklinkr.  It&#8217;s a simple online outliner, and I really love it.  I can collaborate on an outline with another Thinklinkr user.  I can keep multiple outlines, and copy one outline and use it as the basis for another.  I wish I could write something in one outline and include a reference to it in another.  But I&#8217;ve told them that, and maybe they&#8217;ll have that feature next week.  It&#8217;s a young tool and growing fast.</p>
<p>Full disclosure: I am giving Thinklinkr the link to this post and in return I expect to get a free upgrade to a Pro account.  But that only affects the timing of this post, not the content.  I&#8217;m at the Writing About Testing conference in Durango today and I&#8217;ll likely demo Thinklinkr to the other writers.  I&#8217;m happy to be a known user and I recommend at least giving it a whirl.</p>
<p><a href="http://thinklinkr.com">Check it out.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tester.geordiekeitt.com/2010/05/i-like-thinklinkr/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Counting on Friends</title>
		<link>http://tester.geordiekeitt.com/2010/03/counting-on-friends/</link>
		<comments>http://tester.geordiekeitt.com/2010/03/counting-on-friends/#comments</comments>
		<pubDate>Wed, 31 Mar 2010 03:54:18 +0000</pubDate>
		<dc:creator>Geordie Keitt</dc:creator>
				<category><![CDATA[story]]></category>
		<category><![CDATA[friends]]></category>
		<category><![CDATA[languages]]></category>
		<category><![CDATA[networking]]></category>

		<guid isPermaLink="false">http://tester.geordiekeitt.com/?p=135</guid>
		<description><![CDATA[At ProChain we are developing the capability for our software to be installed on operating systems using languages other than English.  Naturally, I am called upon to test this capability.  I chose to test in several languages: French, for the latin alphabet, Russian for Cyrillic, Hebrew for the right-to-left orientation, and Chinese for [...]]]></description>
			<content:encoded><![CDATA[<p>At ProChain we are developing the capability for our software to be installed on operating systems using languages other than English.  Naturally, I am called upon to test this capability.  I chose to test in several languages: French, for the latin alphabet, Russian for Cyrillic, Hebrew for the right-to-left orientation, and Chinese for the massive character set.  Unfortunately I am a monolingual guy, which poses some issues.  For instance, I have no idea how to run a Hebrew language Windows XP installer.  </p>
<p>Which does not daunt me, because I have confidence in my network.  I contacted a tester with whom I&#8217;ve corresponded on a software testing Google group who works in Israel, and asked him to help.  My teammate Anoop emailed him screen shots when it was time to click the next button and he responded with a note on which to click.  It seems to have worked fine.  Now I owe him a solid, and will gladly help him when he needs me.</p>
<p>I the same vein I have several cousins who are fluent Russian speakers, and a teammate is French.  I will need a lead on someone to help with the Chinese setup, but I&#8217;ll cross that bridge when I get there.  I count on my friends to be there for me when I need them, and just so you know, I&#8217;m here for y&#8217;all too.</p>
]]></content:encoded>
			<wfw:commentRss>http://tester.geordiekeitt.com/2010/03/counting-on-friends/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Pair testing Gmail Notes</title>
		<link>http://tester.geordiekeitt.com/2010/01/pair-testing-gmail-notes/</link>
		<comments>http://tester.geordiekeitt.com/2010/01/pair-testing-gmail-notes/#comments</comments>
		<pubDate>Fri, 08 Jan 2010 16:18:09 +0000</pubDate>
		<dc:creator>Geordie Keitt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[gmail]]></category>
		<category><![CDATA[greasemonkey]]></category>
		<category><![CDATA[jetpack]]></category>
		<category><![CDATA[pair test]]></category>

		<guid isPermaLink="false">http://tester.geordiekeitt.com/?p=128</guid>
		<description><![CDATA[This week I spent an hour testing with a complete stranger.  And delivered a wallop of value to something he cared a lot about.]]></description>
			<content:encoded><![CDATA[<p>This week I spent an hour testing with a complete stranger.  And delivered a wallop of value to something he cared a lot about.<br />
<br />
Let me back up a bit and offer some context&#8230;.  I use <a href="http://mail.google.com/">Gmail </a>for a lot of things: tracking discussions, keeping threaded conversations, creating and working on to-do lists, project management.  I chose Gmail over some other <a href="http://www.davidco.com/">GTD</a>-type <a href="http://www.priacta.com/Articles/Comparison_of_GTD_Software.php">solutions </a>because a) it has email built in (duh) and b) has a handy labeling feature for placing any particular conversation or thread into many different buckets, so that I don&#8217;t have to orthogonally categorize everything.<br />
<br />
One thing that is frustrating about using Gmail in this fashion is that there is no clean way to annotate a thread or conversation or group of conversations.  My big use case: as the eVoting SIG lead for the AST, I needed a convenient way to track and comment on the various threads of conversation that the IEEE working group was doing, as well as the internal work of the SIG.  Since I was using Gmail to read and respond to the various discussions, that seemed like the logical place to annotate the conversation.  I could write an email and pop a label on it, but once I send it it&#8217;s not editable, and if I don&#8217;t send it it clutters up my Drafts folder.  Enter <a href="http://userscripts.org/scripts/show/46226">Gmail Notes</a>.<br />
<br />
A small group of developers decided that they had the same problem, and wrote a <a href="http://en.wikipedia.org/wiki/Greasemonkey">Greasemonkey </a>script that used the <a href="http://code.google.com/apis/apps/overview.html">Gmail API </a>and the <a href="http://en.wikipedia.org/wiki/Google_Apps">Gmail Apps </a>capabilities to offer a note-taking capability, linked to a conversation or a label.  This was just super for me, since I could finally do what I&#8217;d been unable to before, write an updatable, private note linked to a Gmail thread that would never get lost in the shuffle of a huge conversation.  I installed the script, began working on it, and found a few bugs.  I reported them back to the lead developer, John, and offered my testing services as part of his team.<br />
<br />
Then in December, Gmail pulled support for the part of the API that supported Gmail Notes.  So John had to punt.  He switched over to using <a href="https://jetpack.mozillalabs.com/">Jetpack </a>instead of Greasemonkey, and came up with another method of identifying the conversation or label.  I was called in to give it a spin, and had a hard time configuring it on my system.  That&#8217;s when I set up an evening Skype session with John.<br />
<br />
We used the screen sharing utility on Skype so that John could see my desktop (though not my cursor!  Hey Skype, we testers need to see each other&#8217;s cursors!), and worked on setting up the Jetpack script correctly on my system.  Then I led him through an exploratory test session, working all the functionality through a wide variety of states, and adjusting on the fly to the risks and issues that came up.  We noted six separate issues, one of which appeared to happen only on the Mac I was using.<br />
<br />
When we were done, I asked him how he liked pair testing like this.  He was very pleased with the thoroughness of the testing and the flexibility of the format.  He also said he&#8217;d be open to testing with a meetup group.</p>
]]></content:encoded>
			<wfw:commentRss>http://tester.geordiekeitt.com/2010/01/pair-testing-gmail-notes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Testaphor Improv</title>
		<link>http://tester.geordiekeitt.com/2010/01/testaphor-improv/</link>
		<comments>http://tester.geordiekeitt.com/2010/01/testaphor-improv/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 16:21:10 +0000</pubDate>
		<dc:creator>Geordie Keitt</dc:creator>
				<category><![CDATA[testaphors]]></category>
		<category><![CDATA[analogy]]></category>
		<category><![CDATA[humor]]></category>

		<guid isPermaLink="false">http://tester.geordiekeitt.com/?p=126</guid>
		<description><![CDATA[Ah, yes, mayonnaise.  One places eggs in a bowl with a little lemon juice, then whisks as one slowly drizzles oil into it.  The result is creamy, delicious, and shockingly unhealthful.  And this rather reminds me ... of Testing.  ]]></description>
			<content:encoded><![CDATA[<p>I love analogies &#8211; as comedy.<br />
<br />
<a href="http://www.eddieizzard.com/">Eddie Izzard </a>(a brilliant British standup comic) does a bit about Anglican ministers who try so hard to be hip and edgy and bring real life into the church.  A close paraphrase: &#8220;Today&#8217;s reading comes from this magazine I found in a hedge.  Cosmopolitan, Volume 224, page 58: &#8216;Lipstick colors this spring will be in the dusky pink area, with eye shadow to match.&#8217;  And this rather reminds me &#8230; of our Lord Jesus.  Because you know, before he rode into Jerusalem on the donkey, he must have got tarted up a bit.  Now let us sing hymn 399, &#8216;O Lord, What is My Hairdo All About?&#8217;&#8221;<br />
<br />
So I have in mind a series called &#8220;And this rather reminds me &#8230; of Testing.&#8221;  It might really work as improv &#8211; have people toss out ideas and have a panel riff on how it reminds us of testing.<br />
<br />
<em>Moderator</em>: &#8220;I need an idea for a food item.  You sir.&#8221;<br />
<em>Audience member</em>: &#8220;Mayonnaise!&#8221;<br />
<em>Panelist A</em>: &#8220;Ah, yes, mayonnaise.  One places eggs in a bowl with a little lemon juice, then whisks as one slowly drizzles oil into it.  The result is creamy, delicious, and shockingly unhealthful.  And this rather reminds me &#8230; of Testing.  I mean, who besides another mayonnaise maker even knows what a mayonnaise maker does?  As far as most consumers of mayonnaise are concerned, it just comes in a jar.&#8221;<br />
<em>Panelist B</em>: &#8220;Yes &#8211; just like testing!  And, there are many flavors of mayonnaise.&#8221;<br />
<em>Panelist A</em>: &#8220;Just like testing!  In fact, I would go so far as to say we have transcended analogy and arrived in the realm of metaphor.  Testing Is Mayonnaise.  Can I get a hell yeah?&#8221;<br />
<br />
I would find that funny.</p>
]]></content:encoded>
			<wfw:commentRss>http://tester.geordiekeitt.com/2010/01/testaphor-improv/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Playing the dice game with developers</title>
		<link>http://tester.geordiekeitt.com/2009/09/playing-the-dice-game-with-developers/</link>
		<comments>http://tester.geordiekeitt.com/2009/09/playing-the-dice-game-with-developers/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 04:44:34 +0000</pubDate>
		<dc:creator>Geordie Keitt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[CAST]]></category>
		<category><![CDATA[dice game]]></category>
		<category><![CDATA[james bach]]></category>

		<guid isPermaLink="false">http://tester.geordiekeitt.com/?p=103</guid>
		<description><![CDATA[At CAST2009, I took James Bach&#8217;s &#8220;Teach Yourself Testing&#8221; course.  Part of his course was to have the testers play a deduction game with a variety of dice.  The testers present a set of dice to the instructor, who responds verbally.  The object is to figure out what the instructor&#8217;s response is [...]]]></description>
			<content:encoded><![CDATA[<p>At CAST2009, I took James Bach&#8217;s &#8220;Teach Yourself Testing&#8221; course.  Part of his course was to have the testers play a deduction game with a variety of dice.  The testers present a set of dice to the instructor, who responds verbally.  The object is to figure out what the instructor&#8217;s response is going to be, and write down the algorithm that you deduce is being used to generate the response.  The rules are you have to present a set of 5 dice, which you have rolled so their values are random.<br />
<br />
I was paired up with another tester.  Paul Holland, acting as Jim&#8217;s assistant, gave us our pack of dice.  There were regular old 6-sided dice with dots, and also 4-, 6-, 12-, and 20-sided dice with Arabic numerals, and 6-sided dice with symbols such as exclamation point, spiral, explosion, skull, flower.  One likely glowed in the dark.<br />
<br />
My partner and I grabbed a random handful of dice, and rolled them, and asked Paul for his response.  &#8220;Red blinking zero,&#8221; he said.  We rolled again.  &#8220;Red blinking zero,&#8221; he said.  We rolled another set of dice.  &#8220;Red blinking zero,&#8221; he said.  Slowly, I began to detect a pattern&#8230;<br />
<br />
<span id="more-103"></span><br />
My partner and I spent the next 30 minutes or so trying all kinds of ways to get Paul to say something other than &#8220;Red blinking zero.&#8221;  We knew it was possible because he would offer other responses to other teams, but we could not find a combination of dice that led us out of that particular leg of the algorithm into some other response.  I got pretty peeved and cussed at Paul a couple of times (if you read this, Paul, I&#8217;m sorry about that).<br />
<br />
Finally, after a couple of hints from Paul, we hit on a strategy that started to give us some traction &#8211; though to do so we had to break the rules of the game &#8211; and within another 5 minutes had worked out the algorithm to Paul&#8217;s satisfaction.  My partner and I gave the others a little retrospective on the game and our path to the solution, and decided that though it had started out frustrating it had ended up fun, and so it was a good mirror of our normal experience with testing.<br />
<br />
******************<br />
<br />
I was pretty excited about the dice game.  It exercises some important testing skills: generating hypotheses, surfacing assumptions, gathering data, carefully keeping records of variables and outcomes, deducing cause and effect, putting abstract concepts into words, and perhaps most important, questioning the premise.  I thought it would be cool to try it out with some coworkers.  First I approached my testing teammate Anoop and explained the rules and the object of the game.  He spent about 20 minutes with me, going down some of the same deadends that I did, and finally hit on the correct algorithm.  He thought it was fun.<br />
<br />
Next I asked a developer to play.  I explained the rules and the object of the game to him, and he started showing me sets of dice.  Within 2 minutes he quit.  &#8220;I&#8217;m a coder.  I don&#8217;t guess what the code is, I read the code.&#8221;  He was polite enough to stick around to find out what the algorithm was, and to hear why I thought it was a useful testing game, but I could tell his heart wasn&#8217;t in it.  He simply didn&#8217;t care to guess.<br />
<br />
Then I asked another coder to play.  He told me he had a couple minutes, so I set up the dice and told him the rules and the object.  In response to his first couple sets I told him &#8220;zero&#8221;.  The third time he rolled the dice I said, &#8220;Red blinking zero.&#8221;  He immediately quit, throwing up his hands into the air and exclaiming, &#8220;What kind of crazy game is this?  What other responses are in this algorithm, purple&#8230; people-eating&#8230; zeroes?  And what&#8217;s the point of having rules if all they do is make it impossible to win?&#8221;  He was pretty worked up (I&#8217;m pretty sure he mentioned sunspots as a possible variable in the algorithm, a good indicator of his worked-up-ness).  We talked it over for a while, and the gist of his argument was that the puzzle was just way too hard for the couple minutes he had to devote to it.  (To recap: He quit the game because he could see that it was a pretty open-ended problem that he did not want to devote the time it would take since he only had a couple minutes, then we immediately had a twenty-minute discussion on why the game would have taken too long.  People are fascinating.)<br />
<br />
He compared the dice game to the children&#8217;s game &#8220;Aunt Bertie Fish&#8221;, the object of which is to figure out what category of things Aunt Bertie Fish loves by being told a litany of things she loves and things she hates.  An example I just made up: &#8220;Aunt Bertie Fish loves apples and hates bananas.  Aunt Bertie Fish loves stop signs and hates street signs.  Aunt Bertie Fish loves Boston baseball and hates Chicago baseball.&#8221;  I&#8217;m outlining a pair of mutually-exclusive sets, X and Not-X, using tropes and examples which are common in my cultural context.  In this case, Aunt Bertie Fish loves things that are red and hates anything that is not red.<br />
<br />
According to my colleague, the dice game is like Aunt Bertie Fish except without the X.  All he is getting is not-X, in which case X could be anything.  Or else he is getting X and Y and Z, rather than a simple X &#8211; Not-X universe.  It is impossible to bound the game using logic a priori, and it is in fact kind of unfair that the instructor does not offer the complete set of possible responses.  And don&#8217;t get him started on how wrong it is to set up rules that have to be broken to succeed at the game.  If someone played Aunt Bertie Fish with him that way, it wouldn&#8217;t be any fun at all.<br />
<br />
******************<br />
<br />
Slowly, I began to detect a pattern.  Tester plays dice game: works through it, thinks it is fun, and recognizes it is relevant to day-to-day testing work.  Developer plays dice game: gets upset or bored, quits.<br />
<br />
It&#8217;s tempting to write off the first developer as a bad tester, but actually he is a fabulous tester who writes code in which it is very difficult to find problems.<br />
<br />
It&#8217;s tempting to feel insulted that the second developer thought the dice game wasn&#8217;t any fun, but he has obvious respect for the tester&#8217;s willingness to jump into the game, sink or swim.  My theory: this developer has a very healthy respect for the vastness of the testing problem space, and he hopes that games like this do not teach testers to be glib in the face of it, and to jump to conclusions too quickly, just because you figured out /this/ algorithm doesn&#8217;t mean that the /next one/ won&#8217;t depend on sunspots, and can never be solved.<br />
<br />
How do your colleagues react to the dice game?<br />
<br />
******************<br />
<br />
Epilogue: I also played the game with my wife Sarah (who evidently loves me very much).  Her advice on using the game to introduce testing to non-testers, was to take it slow.  Start with a super-simple algorithm and 2 dice, and no &#8220;rules&#8221;.  Then play again and incrementally add complexity: harder algorithms, more dice, more types of dice, various &#8220;rules&#8221;.  If anyone has an opportunity to try this tactic on a set of interested non-testers, I&#8217;d like to get your thoughts.</p>
]]></content:encoded>
			<wfw:commentRss>http://tester.geordiekeitt.com/2009/09/playing-the-dice-game-with-developers/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>CAST2009: &#8220;Rapid Tester&#8221; video</title>
		<link>http://tester.geordiekeitt.com/2009/08/cast2009-rapid-tester-video/</link>
		<comments>http://tester.geordiekeitt.com/2009/08/cast2009-rapid-tester-video/#comments</comments>
		<pubDate>Sat, 29 Aug 2009 03:48:17 +0000</pubDate>
		<dc:creator>Geordie Keitt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[song]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://tester.geordiekeitt.com/?p=91</guid>
		<description><![CDATA[
View the post to see the video&#8230;

  var so = new SWFObject('http://geordiekeitt.com/player.swf','mpl','470','320','9');
  so.addParam('allowfullscreen','true');
  so.addParam('allowscriptaccess','always');
  so.addParam('wmode','opaque');
  so.addVariable('file','http://tester.geordiekeitt.com/VID00055.flv');
  so.write('mediaspace');


Another of Becky Fiedler&#8217;s videos from CAST 2009 in CO Springs.  When &#8220;Feature Creep&#8221; was over, I had enough time in my Lightning Talk slot for an encore.  Jim Bach wanted [...]]]></description>
			<content:encoded><![CDATA[<p><script type='text/javascript' src='http://geordiekeitt.com/swfobject.js'></script></p>
<div id='mediaspace'>View the post to see the video&#8230;</div>
<p><script type='text/javascript'>
  var so = new SWFObject('http://geordiekeitt.com/player.swf','mpl','470','320','9');
  so.addParam('allowfullscreen','true');
  so.addParam('allowscriptaccess','always');
  so.addParam('wmode','opaque');
  so.addVariable('file','http://tester.geordiekeitt.com/VID00055.flv');
  so.write('mediaspace');
</script><br />
<br />
Another of Becky Fiedler&#8217;s videos from CAST 2009 in CO Springs.  When &#8220;<a href="http://tester.geordiekeitt.com/archives/75">Feature Creep</a>&#8221; was over, I had enough time in my Lightning Talk slot for an encore.  Jim Bach wanted to hear &#8220;Rapid Tester&#8221;, so I played it.</p>
]]></content:encoded>
			<wfw:commentRss>http://tester.geordiekeitt.com/2009/08/cast2009-rapid-tester-video/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CAST2009: &#8220;Black Box&#8221; video</title>
		<link>http://tester.geordiekeitt.com/2009/08/cast2009-black-box-video/</link>
		<comments>http://tester.geordiekeitt.com/2009/08/cast2009-black-box-video/#comments</comments>
		<pubDate>Sat, 29 Aug 2009 03:36:29 +0000</pubDate>
		<dc:creator>Geordie Keitt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tester.geordiekeitt.com/?p=77</guid>
		<description><![CDATA[
View the post to see the video&#8230;

  var so = new SWFObject('http://geordiekeitt.com/player.swf','mpl','470','320','9');
  so.addParam('allowfullscreen','true');
  so.addParam('allowscriptaccess','always');
  so.addParam('wmode','opaque');
  so.addVariable('file','http://tester.geordiekeitt.com/VID00065.flv');
  so.write('mediaspace');


Becky Fiedler shot this performance of &#8220;Black Box&#8221; after dinner was all over and we were just hanging out in the hallway.  It pretty quickly turned into a Jonathan Coulton love-fest after [...]]]></description>
			<content:encoded><![CDATA[<p><script type='text/javascript' src='http://geordiekeitt.com/swfobject.js'></script></p>
<div id='mediaspace'>View the post to see the video&#8230;</div>
<p><script type='text/javascript'>
  var so = new SWFObject('http://geordiekeitt.com/player.swf','mpl','470','320','9');
  so.addParam('allowfullscreen','true');
  so.addParam('allowscriptaccess','always');
  so.addParam('wmode','opaque');
  so.addVariable('file','http://tester.geordiekeitt.com/VID00065.flv');
  so.write('mediaspace');
</script><br />
<br />
Becky Fiedler shot this performance of &#8220;Black Box&#8221; after dinner was all over and we were just hanging out in the hallway.  It pretty quickly turned into a Jonathan Coulton love-fest after the testing songs were played&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://tester.geordiekeitt.com/2009/08/cast2009-black-box-video/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CAST2009: &#8220;Feature Creep&#8221; song &amp; video</title>
		<link>http://tester.geordiekeitt.com/2009/08/cast2009-feature-creep-song-video/</link>
		<comments>http://tester.geordiekeitt.com/2009/08/cast2009-feature-creep-song-video/#comments</comments>
		<pubDate>Fri, 28 Aug 2009 19:11:24 +0000</pubDate>
		<dc:creator>Geordie Keitt</dc:creator>
				<category><![CDATA[song]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://tester.geordiekeitt.com/?p=75</guid>
		<description><![CDATA[
View the post to see the video&#8230;

  var so = new SWFObject('http://geordiekeitt.com/player.swf','mpl','470','320','9');
  so.addParam('allowfullscreen','true');
  so.addParam('allowscriptaccess','always');
  so.addParam('wmode','opaque');
  so.addVariable('file','http://tester.geordiekeitt.com/VID00053.flv');
  so.write('mediaspace');


I performed this a month or so ago at CAST2009 in Colorado Springs, where Becky Fiedler recorded it.  The intro to this song went, &#8220;This song is written from the perspective of [...]]]></description>
			<content:encoded><![CDATA[<p><script type='text/javascript' src='http://geordiekeitt.com/swfobject.js'></script></p>
<div id='mediaspace'>View the post to see the video&#8230;</div>
<p><script type='text/javascript'>
  var so = new SWFObject('http://geordiekeitt.com/player.swf','mpl','470','320','9');
  so.addParam('allowfullscreen','true');
  so.addParam('allowscriptaccess','always');
  so.addParam('wmode','opaque');
  so.addVariable('file','http://tester.geordiekeitt.com/VID00053.flv');
  so.write('mediaspace');
</script><br />
<br />
I performed this a month or so ago at CAST2009 in Colorado Springs, where Becky Fiedler recorded it.  The intro to this song went, &#8220;This song is written from the perspective of a piece of bloatware that used to be sleek and clean.&#8221;  I did this during a Lightning Talks session, meaning I had to bring it in under 4 minutes.  That&#8217;s why there&#8217;s little time for dramatic pauses&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://tester.geordiekeitt.com/2009/08/cast2009-feature-creep-song-video/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Talkin&#8217; eVoting at CAST 2009</title>
		<link>http://tester.geordiekeitt.com/2009/07/talkin-evoting-at-cast-2009/</link>
		<comments>http://tester.geordiekeitt.com/2009/07/talkin-evoting-at-cast-2009/#comments</comments>
		<pubDate>Thu, 02 Jul 2009 17:00:24 +0000</pubDate>
		<dc:creator>Geordie Keitt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[CAST]]></category>

		<guid isPermaLink="false">http://tester.geordiekeitt.com/?p=65</guid>
		<description><![CDATA[Jim Nilius and I will be taking our act on the road again, this time to CAST2009.  Our discussion at WREST 2 in Indianapolis on why regulated testing does a poor job of testing software produced a lot of great ideas for how to clarify the problems with using 19th-Century test methods to evaluate [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.cast2009.org/" target="_blank"><img src="http://www.associationforsoftwaretesting.org/images/Attend_CAST09_120x120.gif" alt="Attend CAST" width="120" height="120" longdesc="http://www.cast2009.org" /></a>Jim Nilius and I will be taking our act on the road again, this time to <a href="http://www.CAST2009.org">CAST2009</a>.  Our <a href="http://tester.geordiekeitt.com/archives/22">discussion </a>at <a href="http://www.wrestworkshop.com/Home.html">WREST 2 </a>in Indianapolis on why regulated testing does a poor job of testing software produced a lot of great ideas for how to clarify the problems with using 19th-Century test methods to evaluate computerized voting systems.  </p>
<p>Jim and I are preparing a strong argument for the Election Assistance Commission to overhaul the NIST certification standards to help certification labs handle testing complex software systems much more congruently, and we are taking this argument for a test drive at CAST.  So come on over and test it, test us, rip it to shreds.  We will rebuild it.  We have the technology, we have the capability to make it better than it was before.  <a href="http://www.youtube.com/watch?v=HofoK_QQxGc">Better, stronger, faster</a>&#8230;<br /></p>
]]></content:encoded>
			<wfw:commentRss>http://tester.geordiekeitt.com/2009/07/talkin-evoting-at-cast-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WREST 2: Regulation Disrupts Sapience</title>
		<link>http://tester.geordiekeitt.com/2009/06/wrest-2-regulation-disrupts-sapience/</link>
		<comments>http://tester.geordiekeitt.com/2009/06/wrest-2-regulation-disrupts-sapience/#comments</comments>
		<pubDate>Fri, 05 Jun 2009 03:30:26 +0000</pubDate>
		<dc:creator>Geordie Keitt</dc:creator>
				<category><![CDATA[james bach]]></category>
		<category><![CDATA[regulated testing]]></category>
		<category><![CDATA[sapience]]></category>

		<guid isPermaLink="false">http://tester.geordiekeitt.com/archives/22</guid>
		<description><![CDATA[Displaying sound judgment in a complex, dynamic environment is a hallmark of wisdom.
-From the Wikipedia entry for &#8220;Sapience&#8221;

At WREST 2 in Indianapolis on May 14, I interviewed Jim Nilius, former Director of Testing at Systest Labs, a very tightly regulated shop in Denver CO that tests electronic voting systems.  We discussed the applicability of [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>Displaying sound judgment in a complex, dynamic environment is a hallmark of wisdom.</p>
<p>-From the <a href="http://en.wikipedia.org/wiki/Sapience">Wikipedia entry for &#8220;Sapience&#8221;</a></p></blockquote>
<p>
At WREST 2 in Indianapolis on May 14, I interviewed Jim Nilius, former Director of Testing at Systest Labs, a very tightly regulated shop in Denver CO that tests electronic voting systems.  We discussed the applicability of the theme of the workshop, &#8220;Beyond Scripted Testing&#8221;, to the line of work his lab did.  In his view, there is no space for unscripted testing in a regulated environment, simply because unless the tests are scripted they cannot be reviewed prior to being run, and if they cannot be reviewed then you cannot maintain your accreditation and your company will cease to exist.<br />
<br />
I am not familiar with this line of thinking, but it got a lot of nods from around the table so it is probably a true dynamic.  Which seems pretty scary and counterproductive, because it entirely stifles innovation and sapience in testing and drives it underground into what Jonathan Kohl refers to as a &#8220;<a href="http://www.kohl.ca/blog/archives/000114.html">shadow process</a>&#8220;.  I drew a system diagram that I believe represents the general state of a regulated testing shop.<br />
<br />
<div id="attachment_43" class="wp-caption alignright" style="width: 522px"><img src="http://tester.geordiekeitt.com/wp-content/uploads/2009/06/regulated-testing1-1024x767.png" alt="Regulated Testing PNG" title="regulated-testing" width="512" height="383" class="size-thumbnail wp-image-43" /><p class="wp-caption-text">Regulated Testing PNG</p></div><br />
<br />
(Here is the <a href="http://tester.geordiekeitt.com/wp-content/uploads/2009/06/regulated-testing2.pdf">PDF</a>.  Contact me via gmail for the original ODP, editable in OpenOffice, if you wish to modify or upgrade this document under the publishing rules of WREST.)<br />
<span id="more-22"></span><br />
<br />
Note the small shaded section in the middle which depicts rapid cycling between test creation, test execution, and test reporting in the process of testing and learning about the system.  This dynamic allows the tester&#8217;s brain to work.  Disrupting this cycle disrupts the tester&#8217;s systemic awareness and renders testing infinitely less effective.<br />
<br />
The term &#8220;sapience&#8221; has a special place in the heart of a context-driven-school tester like myself, given James Bach&#8217;s 2007 coinage of the term &#8220;<a href="http://www.satisfice.com/blog/archives/99">sapient process</a>&#8221; to mean &#8220;any process that relies on skilled humans&#8221; to draw a contrast between skilled testing by people vs. automated testing by computers.  Many testers extend the contrast to include scripted testing of just about any kind, whether performed by people or computers.  I would like to extend the contrast to include any testing that does not adapt to new information.  As in the opening block-quote, a sapient tester displays good judgment in a complex, dynamic environment.  To do this, a tester has to model the complexities of the system in her mind and keep that model alive as she interacts with the system.  When information arrives that contradicts the model, she must adjust the model and question the validity of the adjustment &#8211; was that a bug I just saw, or was it a hint of a bug, or a problem with my understanding of the requirement, or&#8230;?  To find out, she devises a new series of tests and runs them, and then adapts again to the new information.  This is the essence of the learning cycle depicted in the diagram.<br />
<br />
It doesn&#8217;t take much to interrupt the cognitive flow and bring the systems awareness of the tester tumbling down.  Without a living system model in her mind she is comparatively non-sapient with respect to the system, and any testing activities she undertakes will be insensitive to new information, thus incapable of adapting to it, and thus (by my definition) her testing is not sapient.  In other words, rote, mechanical, all the qualities we ascribe to poor testing.<br />
<br />
In a regulated environment, sapient testing is not simply discouraged, it is extremely risky.  Please refer to the diagram: every step in the testing cycle can initiate a process that threatens the existence of the testing organization.  In a certification lab, such as for electronic voting systems, the following dynamics apply at a minimum:</p>
<li>Each new test that is created can potentially initiate a cycle of test method validation and re-accreditation of the regulated testing organization, which puts the viability of the company in jeopardy.</li>
<li>Every test report can potentially negatively influence the likelihood that the system will be certified, leading to less business with vendors who would prefer to work with a less picky test lab.</li>
<li>Every test executed can potentially fail an audit, resulting in expensive &#8220;process improvements&#8221; and possibly kicking off another round of test method validation and the risk of losing accreditation.<br />
<br />
So the company risks its very existence whenever it engages in testing, even though testing is what the company was chartered to do, and the only method it has for minimizing risk is to minimize testing!  It does so by imposing &#8220;process&#8221; on testing such that every act of test creation is followed by an expensive validation and record-keeping procedure, rather than by test execution.  And of course vice versa.<br />
<br />
Under this regime the testers have no means by which to develop system awareness and sapience, except to divide their testing into &#8220;official process&#8221; testing and &#8220;shadow process&#8221; testing.  In the shadow process, the testers can test.  But the &#8220;shadow tester&#8221; must be very judicious about how to bring what she learns back into the &#8220;official process&#8221; world without risking the existence of the company.<br />
<br />
I would appreciate learning your thoughts on this.</p>
]]></content:encoded>
			<wfw:commentRss>http://tester.geordiekeitt.com/2009/06/wrest-2-regulation-disrupts-sapience/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.995 seconds -->
