<?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/"
	>

<channel>
	<title>James Bach’s Blog</title>
	<atom:link href="http://www.satisfice.com/blog/feed" rel="self" type="application/rss+xml" />
	<link>http://www.satisfice.com/blog</link>
	<description>The Consulting Software Tester</description>
	<pubDate>Wed, 10 Feb 2010 11:30:28 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Tester Pilot</title>
		<link>http://www.satisfice.com/blog/archives/411</link>
		<comments>http://www.satisfice.com/blog/archives/411#comments</comments>
		<pubDate>Wed, 10 Feb 2010 11:17:12 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=411</guid>
		<description><![CDATA[Richard drove up to the hangar just as I was checking the oil on the Husky, his prized baby float plane. Nuts. He was right on time. I was late. I&#8217;m supposed to have the plane ready to go when he arrives.
&#8220;Hey Dad, looks like a good day for flying. I&#8217;m just in the middle [...]]]></description>
			<content:encoded><![CDATA[<p>Richard drove up to the hangar just as I was checking the oil on the Husky, his prized baby float plane. Nuts. He was right on time. I was late. I&#8217;m supposed to have the plane ready to go when he arrives.</p>
<p>&#8220;Hey Dad, looks like a good day for flying. I&#8217;m just in the middle of the pre-flight.&#8221;</p>
<p>&#8220;Where are we going today?&#8221; He asked.</p>
<p>&#8220;I haven&#8217;t been up for a few months, so I figured just a sightseeing tour around the islands and then some pattern work at Friday Harbor.&#8221; I hate pattern work: landing and taking off while talking on the radio to the other pilots. That&#8217;s exactly why I need to do it, though. I must get over my nerves; must become a safe pilot. It&#8217;s a lesson from testing:<em> focus on the risk.</em></p>
<p>&#8220;How much fuel do we need for that?&#8221;</p>
<p>&#8220;There&#8217;s about 18 or 20 gallons on board. That&#8217;s actually enough, but I figure it would be better to bring it to 35, just in case.&#8221;</p>
<p>&#8220;How much will you put in each tank, then?&#8221;</p>
<p>&#8220;7 gallons.&#8221;</p>
<p>&#8220;7 plus 7 plus 18 doesn&#8217;t add up to 35. Decide on the fuel you want and get that. If you&#8217;re going to fudge, fudge toward having more fuel. What are the four most useless things in the world?&#8221;</p>
<p>Oh I know this&#8230; &#8220;Um, altitude above you&#8230; runway behind you&#8230; gas in the gas truck, and&#8230; Um&#8211;&#8221;</p>
<p>&#8220;&#8211;and a tenth of a second ago&#8221; he finished. &#8220;But you remembered the important one. Gas. We don&#8217;t want that terrible feeling when they close the airport for 30 minutes to clean something up on the runway, and we don&#8217;t have the fuel to divert.&#8221;</p>
<p>I could have quibbled with him. What we would actually do in that situation is land 10 minutes away at Friday Harbor airport, or heck, anywhere, because we&#8217;re a float plane in the midst of an archipelago. But that&#8217;s not the point. The point was the habit of precision; of being conscious and calculated about the risks I take, wherever reasonable. Again this relates to testing. When I&#8217;m testing, the habit of precision comes out in considering and controlling the states of my test platforms and test data, and of knowing what to look for in test results.</p>
<p>Dad called the flight center for a briefing. He already knew what they&#8217;d say, since he always checked the weather before he left home, but Richard Bach is an especially fastidious pilot. He&#8217;s not exactly &#8220;by the book.&#8221; It&#8217;s more that he prides himself on safety. Nothing surprises him without itself being surprised at how prepared he is for it. Yes he knew you were coming; here&#8217;s your cake.</p>
<p><img src="http://www.satisfice.com/images/dad-and-me.jpg" alt="Dad and me" width="423" height="316" /></p>
<h3>The Tester&#8217;s Attitude in the Air</h3>
<p>My father&#8217;s philosophy dovetails perfectly with the tester&#8217;s mindset. We expect things to go wrong. We know we will be surprised at times, but we anticipate the kinds of surprises that might occur. That means we perform checks that might seem unnecessary at times. And we keep our eyes open.</p>
<p>I was almost done with the walkaround when he got off the phone.</p>
<p>&#8220;Three knots at zero six zero over at Friday,&#8221; he announced.</p>
<p>I paused to visualize, then tried to sound authoritative. &#8220;That&#8217;s a crosswind favoring runway three four.&#8221;</p>
<p>&#8220;Yes. We have the same conditions here.&#8221;</p>
<p>Cool. I got it right. I&#8217;m supposed to pretend to be the pilot. Officially, Dad is the pilot-in-command, but I do everything he would do, while he supervises and is ready to take over in case there&#8217;s a problem. While I&#8217;m doing the preflight, he&#8217;s doing it too, but not telling me anything&#8211; unless I miss something important. Each time we fly, I&#8217;m determined to find a problem with the aircraft that he hasn&#8217;t noticed, first. I haven&#8217;t yet succeeded.</p>
<p>&#8220;Dad, what&#8217;s this rust colored streak coming out of this bolt?&#8221; Yay, I found something! &#8220;There&#8217;s one of each side of the elevator.&#8221;</p>
<p>&#8220;Just a little bit of rust.&#8221; He smiled and materialized a can of WD-40 and blasted the bolts with it. This airplane is pristine, so even a little blemish of rust really stands out.</p>
<p>&#8220;Were you flying recently?&#8221;</p>
<p>&#8220;Yeah, I went out last week and splashed around at Lake Watcom.&#8221;</p>
<p>&#8220;That explains the streaks. Water spray on the tail. Did you pump out the floats afterward?&#8221;</p>
<p>&#8220;No, but I doubt there&#8217;s more than a pint of water in there.&#8221;</p>
<p>&#8220;Let&#8217;s see about that.&#8221; I retrieved the hand pump while he popped out the drain plugs. He was right again, I couldn&#8217;t suck out more than a cup of water from the floats, total, from all the compartments.</p>
<p>But there was something odd about the last one.</p>
<p>&#8220;This water is PINK, Dad!&#8221;</p>
<p>Now he was not smiling.</p>
<p>&#8220;Unless you landed at the rainbow lake on Unicorn Planet, there may be a hydraulic leak in there.&#8221;</p>
<p>He put his fingers in the residue and sniffed it like a bush guide on the trail of a white tiger. &#8220;Yeah, that&#8217;s what it is. Let&#8217;s pop the hatch and take a look.&#8221;<br />
<img class="alignnone" src="http://www.satisfice.com/images/front-float.jpg" alt="" width="270" height="239" /></p>
<h3>Testing With Open Expectations</h3>
<p>This is an example of why good testing is inherently an open investigation. Yes, I had definite ideas of what I was testing for: leaky floats. Yes, I had a specific method in mind for performing that test. Had I not a specific method, I would have developed one on the fly. That&#8217;s the testing discipline. My oracles were judging the amount of water I was able to pump out of the floats compared to other occasions, and I also tasted the water a couple of times to detect if it was salty. It shouldn&#8217;t be, because it had been several flights since we had landed in salt water, but I check just in case there was a previously undetected leak from before. If salt water gets in there, we could have a serious corrosion problem.</p>
<p>I had no conscious intent to check the color of the water. But in testing we take every anomaly seriously. We take data in and ask ourselves, does this make sense? In that way, we are like secret service agents, trained to deal with known threats and to have a good chance to discern fresh and unusual threats, too.</p>
<p><em>The question &#8220;Can I explain everything that I see?&#8221; is a good heuristic to keep in mind while testing.</em></p>
<p>But if I were to have automated my float pump tests, I would never have found this problem. Because unlike a human, a program can&#8217;t look at something and just try to explain it. It must be told exactly what to look for.</p>
<p>I got an email, today&#8230;</p>
<blockquote><p>Geoff confirmed the hydraulic leak at the connection in the left float, and will be sealing it, probably tomorrow.  He’ll move the Husky to the big hangar to do the work. Nice, that you decided to pump the floats!</p>
<p>Dad</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/411/feed</wfw:commentRss>
		</item>
		<item>
		<title>Logging: Exploratory Tester&#8217;s Friend</title>
		<link>http://www.satisfice.com/blog/archives/401</link>
		<comments>http://www.satisfice.com/blog/archives/401#comments</comments>
		<pubDate>Wed, 27 Jan 2010 17:54:14 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=401</guid>
		<description><![CDATA[I&#8217;m on a new project lately, working with a team at QualiTest. We&#8217;re testing a class III medical device. This is an exciting project, because for the first time I am aware of, formalized exploratory testing will be used to do such a validation. We will not rely on masses of procedural test scripts. I&#8217;ve [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m on a new project lately, working with a team at <a href="http://www.qualitestgroup.com/">QualiTest</a>. We&#8217;re testing a class III medical device. This is an exciting project, because for the first time I am aware of, formalized exploratory testing will be used to do such a validation. We will not rely on masses of procedural test scripts. I&#8217;ve been called in on this project because I created the first published formalized ET process in 1999 (for Microsoft), and created, with my brother Jon, session-based test management, which is basically a general form of that Microsoft process.</p>
<p>The QualiTest team consists of senior testers hand-picked for this job, who have regulatory testing backgrounds and an enthusiasm to use their brains while they test. On top of testing well, we have to document our testing well, and trace our testing to requirements. Automatic logging is one of the tools that will help us do that.</p>
<p>I am amazed at how crazy nuts some people get over documentation&#8211; how they sweat and shiver if they don&#8217;t have a script to cling to&#8211; and yet they don&#8217;t spare a thought for logging. Logging is great for testers, programmers, and technical support. Logging is automatic documentation. Sing the praises of logging.</p>
<p><strong>I&#8217;m talking about function-level logging built into the products we test.</strong></p>
<p>If you test a web app, you already have this (the web server and application logs, plus the use of a proxy to log locally, if you want) or would have it with a little tweak here and there by the programmer. For desktop apps, the programmer has to build it in. Here&#8217;s why he should do that right away:</p>
<ol>
<li><strong>Instead of following</strong> a script written weeks or months ago by some over-literal, function-besotted and data-blind intern, the tester can think, explore, play, and maintain the thread of inquiry without worrying that you won&#8217;t know what you tested, later on.</li>
<li><strong>Instead of remembering</strong> what you tested, the product tells <em>you</em> how you tested it. Process the log with a simple Perl script, and you can potentially have an automatically generated test report.</li>
<li><strong>Instead of just wondering </strong>how you made that crazy bug happen, the developer can consult the log.</li>
<li><strong>Instead of asking</strong> the customer what he was doing moments before the crash, he asks for the log.</li>
</ol>
<p>If logging is built into the base classes of the product, very little coding is involved.</p>
<p>This idea first occurred to me in 1993, after hearing from John Musa about how his telecom systems would &#8220;phone home&#8221; with data about how they were being used, but I couldn&#8217;t get a programmer to put logging into anything I tested until I was at SmartPatents in 1997. Since then I&#8217;ve helped several projects, including a couple of medical device projects, get going with it.</p>
<p>On this most recent project I was asked to create requirements to specify the logging. Here is the generic version of what I came up with:</p>
<blockquote><p>1. Each significant action that the user takes shall be logged. (pressing buttons, touching screen objects, turning knobs, startup and shutdown, etc.) This provides critical information needed to demonstrate test coverage during validation, and improves our ability to meet and exceed regulatory requirements.</p>
<p>2. The results of any diagnostic self-tests or assert failures shall be logged.</p>
<p>3. Any function should be logged, regardless of user action, that causes a change to data, screen display, system configuration, modes or settings, communicates with other equipment, or produces an error or information message.</p>
<p>4. Everything that could be interesting and useful for testing, support, and system debugging should be logged UNLESS the event occurs so frequently (many times a second) that it poses a performance or reliability risk.</p>
<p>5. Each log event shall include at least the following information:<br />
- Time stamp: For instantaneous events, time stamp (millisecond resolution). For events over time log the start and stop times by logging it as two separate events (e.g. &#8220;Event START&#8221;, &#8220;Event END&#8221;). Events that set a persistent mode or state can be logged as one event (&#8221;high security mode ON&#8221;) but the state of any such modes shall be automatically logged at startup and shutdown so that a complete record of that setting can be maintained over time.<br />
- Event type ID: always unique to event type; IDs not re-used if an event is retired and a new event is created.<br />
- Event type description: short, unique human readable label<br />
- Event information: any data associated with the event that may be useful for customer service or assessing test coverage, this data may be formatted in ways specific to that event type.</p>
<p>6. At startup and shutdown, the current settings, modes, and confuguration shall be recorded to the log.</p>
<p>7. Any errors shall be recorded to the log, including the actual text of the error message.</p>
<p>8. Every type of loggable event shall be stored in one table in the source code or in a data structure accessible on the system itself, such as a header file, enum, array or resource file. This facilitates providing the validation and customer service teams with a complete list of all possible events.</p>
<p>9. The log format shall be in text form, structured and delimited consistently such that it can be parsed automatically by a third party tool. The data for each event should be on one line, or else be marked with standard start and end markers.</p>
<p>10. The log format should be structured and delimited such that it is reasonably human readable (such as tab delimited).</p>
<p>11. The level of detail included in the log file should be configurable in terms of preset levels: 1- error and service events only, 2- Functional events, error events, service events, 3- All events including diagnostic information messages about internal states and parameters.</p>
<p>12. The log should behave as a ring buffer with a maximum of X events (where X is configurable within some limit that would not be exceeded in 7 days of heaviest anticipated use). If the size of the log exceeds available space, the oldest events shall be discarded first.</p>
<p>13. When the log is exported, it should have a header that identifies the software version (and serial number of the HW, if applicable) and current configuration.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/401/feed</wfw:commentRss>
		</item>
		<item>
		<title>Two Short Dialogs on Test Coaching</title>
		<link>http://www.satisfice.com/blog/archives/398</link>
		<comments>http://www.satisfice.com/blog/archives/398#comments</comments>
		<pubDate>Fri, 08 Jan 2010 08:18:58 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=398</guid>
		<description><![CDATA[My brother and I are experimenting with short podcasts. Here are the first two 15-minute segments:

Testers say the darndest things. One issue in coaching testers is getting them to speak carefully about evidence and about what they can and can&#8217;t do. For instance, we talk about how we react when someone tells us that &#8220;a [...]]]></description>
			<content:encoded><![CDATA[<p>My brother and I are experimenting with short podcasts. Here are the first two 15-minute segments:</p>
<ul>
<li><a href="http://www.satisfice.com/presentations/wildstatements.mp3"><strong>Testers say the darndest things.</strong></a> One issue in coaching testers is getting them to speak carefully about evidence and about what they can and can&#8217;t do. For instance, we talk about how we react when someone tells us that &#8220;a tester ensures the quality of the product.&#8221; Jon&#8217;s strategy is to point out the incompleteness of testing. Testing can&#8217;t be perfect, therefore testers can&#8217;t ensure quality. My strategy is to focus on the control aspect: testers aren&#8217;t in control of the project, and therefore can&#8217;t ensure anything. We think that part of the reason testers make over-the-top statements is that it&#8217;s comforting to cling to simple fairy stories about testing.</li>
</ul>
<ul>
<li><a href="http://www.satisfice.com/presentations/questiontrap.mp3"><strong>The trap of not asking questions.</strong></a> Jon and I notice that testers presented with challenges and problems often jump right into test execution instead of asking questions. We question this phenomenon.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/398/feed</wfw:commentRss>
<enclosure url="http://www.satisfice.com/presentations/wildstatements.mp3" length="3597984" type="audio/mpeg" />
<enclosure url="http://www.satisfice.com/presentations/questiontrap.mp3" length="3598464" type="audio/mpeg" />
		</item>
		<item>
		<title>Free Testing Lessons Over Skype</title>
		<link>http://www.satisfice.com/blog/archives/393</link>
		<comments>http://www.satisfice.com/blog/archives/393#comments</comments>
		<pubDate>Sun, 06 Dec 2009 01:05:19 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=393</guid>
		<description><![CDATA[One of the things I like to do is give testing lessons over Skype. I offer this as a service for pay, and I also do it for free under certain conditions.
Here&#8217;s how it works:
1. You contact me over Skype. (ID: SATISFICE)
2. If I&#8217;m not charging you than it&#8217;s on an &#8220;as available&#8221; basis: How [...]]]></description>
			<content:encoded><![CDATA[<p>One of the things I like to do is give testing lessons over Skype. I offer this as a service for pay, and I also do it for free under certain conditions.</p>
<p>Here&#8217;s how it works:</p>
<p>1. You contact me over Skype. (ID: SATISFICE)</p>
<p>2. <strong>If I&#8217;m not charging you than it&#8217;s on an &#8220;as available&#8221; basis:</strong> How do you know I&#8217;m available? Well, if I&#8217;m online, then Skype me and ask if I&#8217;m available. For free lessons, I&#8217;d rather not schedule anything in advance.</p>
<p>3. <strong>My Motivation</strong>: I am motivated by people who entertain me with their passion for learning. Besides that, I want learn how to coach better. Finally, I&#8217;m developing material for another book. But here&#8217;s my business reason: <em>I want to publish the edited transcripts of my coaching sessions.</em> So, I need from you permission to include the session in my writing (with your name attached or removed as you wish).</p>
<p>4. <strong>The process is Socratic dialog:</strong> That means I ask you questions and pose problems, then you develop your answers. I also instruct directly as needed. My goal is to help you develop into a tester worthy of respect according to the standards of the <a href="http://www.context-driven-testing.com">Context-Driven School of Testing</a>.</p>
<p>5. <strong>We work on things that matter to you:</strong> If you have a goal to learn a specific kind of thing, we work on that. Otherwise, I&#8217;m happy to walk you through my own syllabus of testing.</p>
<p>6. <strong>I may require you to do homework as a condition of further coaching.</strong> I may ask for permission to publish your homework as a training example.</p>
<p>7. I may want to watch you test over Skype screen sharing.</p>
<p>8. If you are a beginner, I may require you to work with another coach first (one of my students or colleagues) as a condition of working with me.</p>
<p>9. Our sessions are not secret unless you want them to be. You are free to tell others that you are working with me.</p>
<p>10. If you ask me a specific question, I will probably ask you to tell me your answer, first. I will expect you to have googled around and thought about it some before we talk.</p>
<p>You should bear in mind that I&#8217;m a demanding tutor. I want to spread clarity and excellence in software testing. Don&#8217;t approach me unless you have an ambition to be excellent in your craft.</p>
<p>My offer is open to anyone in the world, as long as I believe I can help you.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/393/feed</wfw:commentRss>
		</item>
		<item>
		<title>Oredev Panel</title>
		<link>http://www.satisfice.com/blog/archives/376</link>
		<comments>http://www.satisfice.com/blog/archives/376#comments</comments>
		<pubDate>Thu, 26 Nov 2009 00:15:55 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=376</guid>
		<description><![CDATA[I recently got back from the Oredev developer&#8217;s conference, in Malmö, Sweden. I enjoyed it, though I wish I&#8217;d had more time to actually go to the various developer-oriented talks. The closest I got to that was being on this panel:

This is probably the most fun panel I&#8217;ve been on. I loved the enthusiasm and [...]]]></description>
			<content:encoded><![CDATA[<p>I recently got back from the Oredev developer&#8217;s conference, in Malmö, Sweden. I enjoyed it, though I wish I&#8217;d had more time to actually go to the various developer-oriented talks. The closest I got to that was being on this panel:</p>
<p><object width="480" height="386" data="http://www.ustream.tv/flash/video/2503217" type="application/x-shockwave-flash"><param name="id" value="utv56962" /><param name="name" value="utv_n_859515" /><param name="flashvars" value="autoplay=false" /><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.ustream.tv/flash/video/2503217" /></object></p>
<p>This is probably the most fun panel I&#8217;ve been on. I loved the enthusiasm and wit of my fellow panelists.</p>
<p><em>(Editor&#8217;s note: oops, I originally  put the beginning of another blog post down here. I&#8217;m taking it out to put it into its own entry.)</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/376/feed</wfw:commentRss>
		</item>
		<item>
		<title>My Life With Colleagues</title>
		<link>http://www.satisfice.com/blog/archives/383</link>
		<comments>http://www.satisfice.com/blog/archives/383#comments</comments>
		<pubDate>Wed, 25 Nov 2009 03:34:54 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=383</guid>
		<description><![CDATA[My work is greatly influenced by fellow students of the craft. My friends are critical to my education.They help me focus my attention and they stir up my ideas.
Here are some substantive examples from just the last two days in my life as a student of software testing:

David Gilbert Skyped me with a new version [...]]]></description>
			<content:encoded><![CDATA[<p>My work is greatly influenced by fellow students of the craft. My friends are critical to my education.They help me focus my attention and they stir up my ideas.</p>
<p>Here are some substantive examples from just the last two days in my life as a student of software testing:</p>
<ul>
<li><strong>David Gilbert</strong> Skyped me with a new version of his TestExplorer tool. I&#8217;m using it to develop examples for my next book, tentatively titled &#8220;Real Exploratory Software Testing&#8221; to contrast with the shallow knock-off of an ET book out there that has a similar name.</li>
<li><strong>Michael Bolton</strong> roused me out of bed to talk about a change he wants to make to the Rapid Testing Class.</li>
<li><strong>Pradeep Soundararajan</strong> Skyped me to talk about Weekend Testers.</li>
<li><span class="fn"><strong>Ajay Balamurugadas</strong> posed me a math problem, and I wrote him about the solution.</span></li>
<li><span><span class="label fullname"><strong>Parimala Shankaraiah</strong> emailed me asking for a testing challenge to pique the skills of the Weekend Testers.</span></span></li>
<li><span><span class="label fullname"><strong>Liz Marley</strong> <a href="http://lizmarley.blogspot.com/2009/11/knitting-testing.html">blogged wonderfully</a> about learning challenge I gave her, and I remembered that I have to follow up on my part of that challenge. She also offered a good example of using emotions and a test oracle.<br />
</span></span></li>
<li><span><span class="label fullname"><strong>Karen Johnson</strong> Skyped me about the protocol of collegial critique between us. She reminded me that I am suppose to critique her work. I promised to.<br />
</span></span></li>
<li><span><span class="label fullname"><strong>Matt Heusser</strong> Skyped me about writing an article for him. We&#8217;re doing it on his wiki. First time I&#8217;ve written an article that way. </span></span></li>
<li><span><span class="label fullname"><strong>Sohail Hasware</strong> Skyped me to complain about the stupid testing curriculum he&#8217;s forced to go through to get his IT certificate. I once again tried and failed to get him to quit that program and stop wasting his precious time and life consorting with fools.</span></span></li>
<li><span><span class="label fullname"><strong>Buddy Parker</strong>, a 14 year-old home schooled kid also living on Orcas Island, emailed me about how to learn HTML, so I responded with links and some examples.</span></span></li>
<li><span><span class="label fullname"><strong>Adam Roy</strong>, a 7 year-old kid who likes algebra, son of author <a href="http://www.jenniferroy.com/Press.htm">Jennifer Roy</a>, conversed with me about learning Python.<br />
</span></span></li>
<li><span><span class="label fullname"><strong>Ravisuriya</strong> continued an email conversation with me about context-driven testing and priority-severity distinctions.</span></span></li>
<li><span><span class="label fullname"><strong>Adrian Segar</strong> and I conversed about the etymology of the term &#8220;<a href="http://www.satisfice.com/blog/archives/38">Peer Conference</a>.&#8221; Apparently he&#8217;s written a book about it.</span></span></li>
<li><span><span class="label fullname"><strong>Rodney Thompson</strong> emailed me to sound me out about a new term: &#8220;situational testing.&#8221; I&#8217;m dubious about it, but we&#8217;re still talking.</span></span></li>
<li><span><span class="label fullname"><strong>Jonathan Bach </strong>alerted me to a <a href="http://blogs.harvardbusiness.org/hbr/cramm/2009/09/how-are-you-turning-best-pract.html?cm_mmc=npv-_-MANAGEMENT_TIP-_-NOV_2009-_-MTOD1119">new article attacking &#8220;best practices&#8221;</a>, so I commented on that. He also wants a new article from me.</span></span></li>
<li><span><span class="label fullname"><strong>Elisabeth Hendrickson</strong> offered an apt and testerly reply to my puzzle &#8220;guess the next term in the series: tom, dick, ?&#8221; She wrote &#8220;Bill, if the sequence is from Thomas Richard Williams, pioneer of stereoscopy.&#8221; I was thinking &#8220;harry&#8221;, based on a common cultural pattern, but she demonstrates that other answers are plausible, as a good tester should.</span></span></li>
<li><span><span class="label fullname"><strong>Henrik Andersson</strong> Skyped me about how he might be coming to the U.S.A. at the special invitation of the Association for Software Testing. Henrik is a rising star as a Context-Driven guy in Sweden.<br />
</span></span></li>
<li><span><span class="label fullname"><strong>Jerry Gao</strong>, a tester from China, wrote to ask how to advocate for exploratory testing over there. I&#8217;m replying to him, shortly.<br />
</span></span></li>
</ul>
<p>These are all happy examples. I&#8217;m not leaving anything out. I just don&#8217;t happen to be in a flame war with anyone, at the moment.</p>
<p><strong>And thank you Kathy&#8230;</strong></p>
<p>I want to mention the most recent useful criticism I&#8217;ve received from a colleague. It was from <a href="http://www.kiberle.com/">Kathy Iberle</a>, at the PNSQC conference. I had just delivered a presentation I felt good about, on the &#8220;myths of rigor.&#8221; Kathy said she was expecting me to provide more details and analysis about the alternative approach to rigorous engineering that I had proposed. She said, &#8220;I expect to hear something new when I hear a talk from you.&#8221; Well, actually, I thought I had presented something new, but as I thought over it again, I realized that I&#8217;d left some big fat loose ends in the talk. So, just as I was about to argue with her, agreement stepped in and threw a blanket over my cage.</p>
<p>Kathy is an interesting example of someone who has gained her reputation in my community entirely without&#8211; I want to say <em>trying</em>, but that&#8217;s not right&#8211; Kathy doesn&#8217;t <em>push</em>. It&#8217;s actually frustrating to me, who <em>does </em>push. I like turning over bee hives to get the honey, but with colleagues like Kathy, I have to wait patiently for the bees to fill tiny thimble jars and fly by with them. What honey, though!</p>
<p>The main reason I know about Kathy is from seeing her at <a href="http://www.satisfice.com/blog/archives/38">peer conferences</a>. That&#8217;s the single best mechanism I can recommend for building mass collegiality.</p>
<p>(BTW, my Skype ID is &#8220;satisfice&#8221;)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/383/feed</wfw:commentRss>
		</item>
		<item>
		<title>Sapient Testers of India!</title>
		<link>http://www.satisfice.com/blog/archives/379</link>
		<comments>http://www.satisfice.com/blog/archives/379#comments</comments>
		<pubDate>Tue, 24 Nov 2009 00:28:02 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=379</guid>
		<description><![CDATA[There&#8217;s something important going on in India. It&#8217;s called Weekend Testers. It seems to be the beginning of a truly Indian version of the Context-Driven School of Testing. It&#8217;s a sapient testing insurgency!
If you are a tester in India (or you aspire to be) and you want to be a GOOD tester, then you should [...]]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s something important going on in India. It&#8217;s called <a href="http://www.weekendtesting.com">Weekend Testers</a>. It seems to be the beginning of a truly Indian version of the <a href="http://www.context-driven-testing.com">Context-Driven School of Testing</a>. It&#8217;s a sapient testing insurgency!</p>
<p><strong><em>If you are a tester in India (or you aspire to be) and you want to be a GOOD tester, then you should get involved with this or start something like it yourself.</em></strong></p>
<p>I taught in India, years ago, planting seeds at Wipro and Mindtree. <a href="http://www.developsense.com/2009/05/experience-report-from-india.html">Michael Bolton</a> has taught there a few times, since. I&#8217;ve been working with<a href="http://testertested.blogspot.com/"> Pradeep Soundararajan</a> and <a href="http://shrinik.blogspot.com/">Shrini Kulkarni</a> for a while. I just discovered that <a href="http://blogs.stpcollaborative.com/matt/">Matthew Heusser</a> has also been mentoring some of them, too. I&#8217;ve blogged about other Indians who test. But this is the first organized community of skill-bearing software testers I have seen in India.</p>
<p>I hope it&#8217;s the beginning of something big. You deserve it. Plus&#8230; when there&#8217;s enough of you, and some of you get into management, perhaps you&#8217;ll invite me to come out and teach again. I&#8217;d like to go back for more.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/379/feed</wfw:commentRss>
		</item>
		<item>
		<title>New Version of the ET Dynamics Lists</title>
		<link>http://www.satisfice.com/blog/archives/370</link>
		<comments>http://www.satisfice.com/blog/archives/370#comments</comments>
		<pubDate>Mon, 26 Oct 2009 04:27:48 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=370</guid>
		<description><![CDATA[Michael Bolton, my brother Jon, and I have produced a new version of our Exploratory Testing Dynamics document. We unveiled it last week at STPCON.
This document describes the elements of exploratory testing as we currently understand them. This new version has not yet been reviewed by Cem Kaner or any of our colleagues who normally [...]]]></description>
			<content:encoded><![CDATA[<p>Michael Bolton, my brother Jon, and I have produced a new version of our <a href="http://www.satisfice.com/blog/wp-content/uploads/2009/10/et-dynamics22.pdf">Exploratory Testing Dynamics</a> document. We unveiled it last week at STPCON.</p>
<p>This document describes the elements of exploratory testing as we currently understand them. This new version has not yet been reviewed by Cem Kaner or any of our colleagues who normally have opinions on this, but I don&#8217;t anticipate that it will be revised much when they do. It should be fairly stable, for now.</p>
<p>ET <em>cannot</em> be summed up fairly as &#8220;unstructured playing around&#8221; and if you look at this document you will see why. If nothing else, count the elements in it. Crikey.</p>
<p>The document consists of four lists:</p>
<p><strong>1. Evolving Work Products</strong></p>
<p>Exploratory testing is an approach that emphasizes evolution. We start with something and make it better and better. Often testers can be overly focused on finding bugs, but look at all the things that get better. For instance, you can run your automated regression tests a thousand times and the tests don&#8217;t learn and neither do the button pushing testers. But you learn a lot by sapiently retesting&#8211; you evolve. One of the products of ET is a better tester.</p>
<p>Some evolution also happens in highly scripted testing, but in ET it&#8217;s a primary goal. It&#8217;s the <em>point</em>.</p>
<p><strong>2. Skills and Tactics<br />
</strong></p>
<p>What does an exploratory tester do? Well, feast your eyes on the Skills and Tactics list. Each of those items are things that seem to us to be reasonably independent, teachable, and observable. Some of them are also skills that a highly scripted tester would need, but they work a little differently for explorers. For instance, the skills of reading and analyzing documents means doing that to prepare for or aid exploration of the product, rather than to prepare detailed instructions for scripted test execution.</p>
<p><strong>3. ET Polarities</strong></p>
<p>The Polarities list is unique to ET. An exploratory tester must manage his own mental process, and that process is about developing ideas and using those ideas to search the product for trouble. We&#8217;ve found over years of experience doing this that a tester loses steam if he spends too long in one train or type of thought. So, what can he do?</p>
<p>One answer is <em>alternation</em>. We alternate among complementary activities. Two activities are complementary if performing one of them rejuvenates the other. A great example is reading about a product and directly interacting with it.</p>
<p><strong>4. Test Strategy</strong></p>
<p>The Heuristic Test Strategy model is a set of guideword heuristics that we publish as part of the Rapid Software Testing class. In addition to the general ideas of exploration, evolution, and alternation, the guidewords represent the specific subject matter of testing&#8211; the conditions we need to succeed, the things we look at, the things we look for, and the specific test techniques we use to produce tests.</p>
<p>With these lists, I can systematically evaluate a tester and identify strengths and weaknesses. We in the Context-Driven School of testing need models like this, because we focus on skills, rather than techniques and tools. This document allows us to focus our efforts and develop specific exercises for tester training.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/370/feed</wfw:commentRss>
		</item>
		<item>
		<title>Skaters Redux</title>
		<link>http://www.satisfice.com/blog/archives/365</link>
		<comments>http://www.satisfice.com/blog/archives/365#comments</comments>
		<pubDate>Wed, 14 Oct 2009 17:28:23 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=365</guid>
		<description><![CDATA[An open letter to James Whittaker:
You wrote: &#8220;I had an amicable hallway conversation with James Bach. His blogger angst at my use of the title &#8216;Exploratory Testing&#8217; didn&#8217;t spill over to a face-to-face discussion. Frankly, I am not surprised. I&#8217;ve never claimed the term as my own, I simply took it and made it work [...]]]></description>
			<content:encoded><![CDATA[<p>An open letter to James Whittaker:</p>
<p><strong>You wrote: </strong><em>&#8220;I had an amicable hallway conversation with James Bach. His blogger angst at my use of the title &#8216;Exploratory Testing&#8217; didn&#8217;t spill over to a face-to-face discussion. Frankly, I am not surprised. I&#8217;ve never claimed the term as my own, I simply took it and made it work in the hands of real testers on real software under real ship pressure. Consultants can coin all the terms they want, but when us practitioners add meat to their pie, why cry foul? Is it not a better reaction to feel happy that there are people actually doing something with the idea?&#8221;</em></p>
<p>None of that is true.</p>
<p>I would not describe our conversation as amicable. Perhaps you thought it was amicable because we didn&#8217;t talk about anything important, and during that moment, I didn&#8217;t raise my voice. Or punch you.</p>
<p>My criticism of you is not &#8220;blogger angst&#8221;, it&#8217;s my opinion based on studying for 20 years something you&#8217;ve hardly studied at all. Every substantive conversation we&#8217;ve had has consisted of you denying whatever I happen to say, without offering evidence and in most cases without offering an argument. You have a zeal for dismissing my work that is truly extraordinary&#8211; you once even denied, again without evidence, that I knew how to run a file compare tool. Wow.</p>
<p>Now you say you made ET work? Well, first, you don&#8217;t know what ET is. Second, you&#8217;re an academic. You stayed in school and studied formal methods (that no one uses) while I was cutting my teeth in Silicon Valley. I have taught and demonstrated ET all over the world. I&#8217;m not alone, but work with a community of like-minded testers and thinkers, comparing notes with them, and deepening our understanding of exploratory learning applied to testing. You have not been a part of that.</p>
<p>I don&#8217;t think you&#8217;re adding meat, I think you&#8217;re serving thin gruel.</p>
<p>ET does work. My community repeatedly shows that it does. We will patiently continue to teach and develop it.</p>
<p>Subtlety hasn&#8217;t worked with you. So I&#8217;m saying this publicly: You&#8217;re a good speaker, but as a practitioner, if your prose is any indication, you don&#8217;t know much about what you are doing. If you applied yourself, you could become a good tester. But I&#8217;ve seen no evidence of that, yet.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/365/feed</wfw:commentRss>
		</item>
		<item>
		<title>Exploratory Testing Skaters</title>
		<link>http://www.satisfice.com/blog/archives/362</link>
		<comments>http://www.satisfice.com/blog/archives/362#comments</comments>
		<pubDate>Tue, 22 Sep 2009 07:50:53 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=362</guid>
		<description><![CDATA[When Cem Kaner introduced the term &#8220;exploratory testing&#8221; in the mid-80&#8217;s, everyone ignored it. When I picked up the term and ran with it, I was mostly ignored. But slowly, it spread through the little community that would become the Context-Driven School. I began talking about it in 1990, and created the first ET class [...]]]></description>
			<content:encoded><![CDATA[<p>When Cem Kaner introduced the term &#8220;exploratory testing&#8221; in the mid-80&#8217;s, everyone ignored it. When I picked up the term and ran with it, I was mostly ignored. But slowly, it spread through the little community that would become the Context-Driven School. I began talking about it in 1990, and created the first ET class in 1996. It wasn&#8217;t until 1999 that Cem and I looked around and noticed that people who were not part of our school had begun to speak and write about it, too.</p>
<p>When we looked at what some of those people were saying, yikes! There was a lot of misunderstanding out there. So, we just kept plugging along and running our peer conferences and hoping that the good would outweigh the bad. I still think that will happen in the long run.</p>
<p>But sometimes it&#8217;s hard to stomach how the idea gets twisted. Case in point: James Whittaker, an academic who has not been part of the ET leadership group, and also has little or no experience on an industrial software project as a tester or test manager, has published a book called Exploratory Software Testing.</p>
<p>Whatever Whittaker means when he talks about exploratory testing is NOT what those of us mean who&#8217;ve been working on nurturing and developing ET for the last 20 years. As far as I can tell, he has not made more than a shallow study of it. I will probably not write a detailed review (though his publisher asked me to look at it before it was published), because I get too angry when I talk about it, and I would rather not be angry. But Adam Goucher has <a href="http://adam.goucher.ca/?p=1225">published his review here</a>.</p>
<p>Another guy who shows up at the conferences, B.J. Rollison, also gets ET wrong. He&#8217;s done what he calls &#8220;empirical research&#8221; into ET, at Microsoft. Since he, again, has not engaged the community that first developed the concept and practices of ET, it&#8217;s not altogether surprising that his &#8220;research&#8221; is based on a poor understanding of ET (for instance, he insists that it&#8217;s a technique, not an approach. This is similar to confusing the institution of democracy with the mechanics of voting), and apparently were carried out with untrained subjects, since Rollison himself is not trained in what I recognize as exploratory testing skills.</p>
<p>Experimental research into ET can be done, but of course any such work is in the realm of social science, not computer science, because ET is a social and psychological phenomenon. (see the book <a href="http://books.google.com/books?id=VJSq6ga5zncC&amp;printsec=frontcover&amp;source=gbs_v2_summary_r&amp;cad=0#v=onepage&amp;q=&amp;f=false">Exploring Science</a>, for an example of what such research looks like).</p>
<p>Now even within the group of us who&#8217;ve been sharing notes, debating, and discovering the roots of professional exploratory thinking in the fields of epistemology and cognitive psychology and the philosophy and study of scientific practice, there are strong differences of opinion. There are people I disagree with (or who just dislike me) whom I still recognize as thoughtful leaders in the realm of exploratory testing (James Lyndsay and Elisabeth Hendrickson are two examples). Perhaps Whittaker and Rollison will become rivals who make interesting discoveries and contributions, at some point. Time will tell. Right now, in my opinion, they are just skating on the surface of this subject.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/362/feed</wfw:commentRss>
		</item>
		<item>
		<title>Sapience and Blowing Peoples&#8217; Minds</title>
		<link>http://www.satisfice.com/blog/archives/358</link>
		<comments>http://www.satisfice.com/blog/archives/358#comments</comments>
		<pubDate>Tue, 15 Sep 2009 21:25:19 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=358</guid>
		<description><![CDATA[I told James Whittaker that I don&#8217;t use the term &#8220;manual testing&#8221; and that I prefer the term &#8220;sapient testing&#8221; because it&#8217;s more to the point. This is evident in the first definition of the word &#8220;manual&#8221; in the Oxford English Dictionary: &#8221; 1. a. Of work, an action, a skill, etc.: of or relating [...]]]></description>
			<content:encoded><![CDATA[<p>I told James Whittaker that I don&#8217;t use the term &#8220;manual testing&#8221; and that I prefer the term &#8220;sapient testing&#8221; because it&#8217;s more to the point. This is evident in the first definition of the word &#8220;manual&#8221; in the Oxford English Dictionary: <em>&#8221; <a name="00301544-mA.1.a"></a><strong>1. a.</strong> Of work, an action, a skill, etc.: of or relating to the hand or hands; done or performed with the hands; involving physical rather than mental exertion. Freq. in <a name="00301544se1"></a><strong><!--start_lemma--><!--start_il-->manual labour<!--end_il--><!--end_lemma--></strong>.<a name="00301544n2">&#8220;</a></em> Sapient, on the other hand, means <em>&#8220;wise.&#8221;</em></p>
<p>Whittaker laughed and said &#8220;Bach, you are always making words up.&#8221; And then told me that in his opinion manual testing did not evoke the concept of unskilled manual labor. Now, other than establishing that James Whittaker doesn&#8217;t have an online account to the O.E.D. (definition of &#8220;sweeeeet!&#8221; is &#8220;an online O.E.D. account.&#8221;), or perhaps doesn&#8217;t consider dictionaries to be useful sources of information about what words mean, I see something else in his reaction: I blew his mind. What I said doesn&#8217;t intersect with anything in his education.</p>
<p>To understand me, Whittaker will have to use his sapience, rather than responding manually (i.e. with his hands).</p>
<p>In other words, I notice that some of my rivals in the testing industry don&#8217;t merely disagree with me, they apparently don&#8217;t comprehend what I&#8217;m saying. Example: after some ten hours of solid debate with me, over several sittings, Stuart Reid (who is working on a software testing standard of all preposterous things), told a colleague of mine that he believed I don&#8217;t truly mean the things I said in those debates, but merely said them to &#8220;be provocative.&#8221; Huh. That&#8217;s some serious cognitive dissonance you got going, Stu, when the only way you can process what I&#8217;m saying is to declare, essentially, that it was all just a dream.</p>
<p>Of course, I don&#8217;t think this is an intelligence problem. I think this is a lack-of-effort-to-use-intelligence problem. It&#8217;s not convenient for certain consultants to tear up their out-of-date books and classes and respond to the challenge of, um, the <a href="http://www.testingeducation.org/a/TheOngoingRevolution.pdf"><em>last 30 years of development of the craft</em></a>. So they continue to teach and preach ideas from the seventies (or create testing standards based on them, because they believe not enough people appreciate testing disco).</p>
<p>Anyway, in the Context-Driven community&#8217;s latest attempt to explain the ins and outs and vital subtleties of testing, Michael Bolton has come up with a promising tack. Maybe this will help. He&#8217;s drawing a distinction between testing and checking.</p>
<p>Brace yourselves for insight. A lot of what people call testing is actually mere checking. But even checking requires testing intelligence to design and do well. This gives more specifics to my concept of sapient testing. Here are Michael&#8217;s seminal posts on the subject:</p>
<ol>
<li><a href="http://www.developsense.com/2009/08/testing-vs-checking.html">http://www.developsense.com/2009/08/testing-vs-checking.html</a></li>
<li><a href="http://www.developsense.com/2009/09/transpection-and-three-elements-of.html">http://www.developsense.com/2009/09/transpection-and-three-elements-of.html</a></li>
<li><a href="http://www.developsense.com/2009/09/pass-vs-fail-vs-is-there-problem-here.html">http://www.developsense.com/2009/09/pass-vs-fail-vs-is-there-problem-here.html</a></li>
<li><a href="http://www.developsense.com/2009/09/elements-of-testing-and-checking.html">http://www.developsense.com/2009/09/elements-of-testing-and-checking.html</a></li>
</ol>
<p>When Michael first made the distinction between testing and checking, I was annoyed. Truly. It blew my mind in that bad way. I thought he was manufacturing a distinction that we didn&#8217;t need. I decided to ignore it. Then he called me and asked &#8220;So what do you think of my checking vs. testing article?&#8221; I had to say I didn&#8217;t like it at all. We argued&#8230;</p>
<p>&#8230;and he convinced me that it was a good idea. Thank you dialectical learning! Debate has saved me again!</p>
<p>I now agree that it&#8217;s a practical distinction that can be used as a lens to focus on the quality of a test process. I do have to get used to the words, though. I now see a difference between automated testing and automated checking, for instance: automated testing means testing supported by tools; automated checking means specific operations, observations, and verifications that are carried out entirely with tools. Automated testing may INCLUDE automated checking as one component, however automated checking does NOT include testing.</p>
<p>Making this distinction is exactly like distinguishing between a programmer and a compiler. We do not speak of a compiler &#8220;writing a program&#8221; in assembly language when it compiles C++ code. We do not think that we can fire the programmers because the compiler provides &#8220;automated programming.&#8221; The same thing goes for testing. Or&#8230; <em>does that blow your mind?</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/358/feed</wfw:commentRss>
		</item>
		<item>
		<title>New Voice: Parimala Shankaraiah</title>
		<link>http://www.satisfice.com/blog/archives/356</link>
		<comments>http://www.satisfice.com/blog/archives/356#comments</comments>
		<pubDate>Tue, 15 Sep 2009 19:11:30 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=356</guid>
		<description><![CDATA[Context-driven testing is apparently very difficult to understand. I wouldn&#8217;t have thought that it&#8217;s a difficult concept, except for the last decade I&#8217;ve watched hundreds of people in terrible confusion. Testers outside of the United States have an especially hard time with it, for some reason that escapes me.
I do have some working theory of [...]]]></description>
			<content:encoded><![CDATA[<p>Context-driven testing is apparently very difficult to understand. I wouldn&#8217;t have thought that it&#8217;s a difficult concept, except for the last decade I&#8217;ve watched hundreds of people in terrible confusion. Testers outside of the United States have an especially hard time with it, for some reason that escapes me.</p>
<p>I do have some working theory of the misunderstanding. I think it has a lot to do with how so many people are looking for first-order formulaic answers to every problem. Context-driven thinking rejects that. We say you can&#8217;t do quality work unless you develop skill. There&#8217;s no secret phrase or recipe book that will grant you skill. You must develop skill by struggling with testing problems.</p>
<p>India has a lot of testers, but so very few have shown publicly that they can think outside the &#8220;best practices&#8221; and Factory School kiddie pool. But, I&#8217;m happy to say, Parimala Shankaraiah is one of them. I&#8217;m adding her to my blogroll. Her blog is called <a href="http://curioustester.blogspot.com/">Curious Tester</a>. (It&#8217;s nice to be able to honor a female tester for a change.)</p>
<p>Bear in mind I have no idea if she thinks of herself as context-driven. She hasn&#8217;t mentioned it directly. I believe she is, based on how she writes.</p>
<p>Several things strike me about Pari. One is her sheer enthusiasm. Her love of testing is infectious. Another is the breadth of her imagination. In <a href="http://curioustester.blogspot.com/2009/09/book-review-secret.html">one pos</a>t she related the book <em>The Secret</em> to her experience as a tester. That was impressive analogizing! Almost acrobatic. She believes in peer conferences and she opposes certification, too. Those are important indicators of a context-driven sensibility.</p>
<p>I have often said that I expect the Indian testing industry to wake up someday (at least a few thousand of them) and realize that they can do a lot better than writing dimwitted scripted test cases. Pari is hopefully just the beginning of the Indian testing renaissance.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/356/feed</wfw:commentRss>
		</item>
		<item>
		<title>Sorry About the Digital Rights Nonsense</title>
		<link>http://www.satisfice.com/blog/archives/350</link>
		<comments>http://www.satisfice.com/blog/archives/350#comments</comments>
		<pubDate>Thu, 23 Jul 2009 03:02:57 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=350</guid>
		<description><![CDATA[When my publisher decided to release my Secrets book for &#8220;free&#8221; as an ebook, I thought it meant FREE. I just found it meant free-for-a-little-while-and-then-gone. Apparently it has some sort of DRM expiration date on it.
[Update: One of my tester friends found that he could defeat the expiration mechanism by playing with the system date, [...]]]></description>
			<content:encoded><![CDATA[<p>When my publisher decided to release my Secrets book for &#8220;free&#8221; as an ebook, I thought it meant FREE. I just found it meant free-for-a-little-while-and-then-gone. Apparently it has some sort of DRM expiration date on it.</p>
<p><em>[Update: One of my tester friends found that he could defeat the expiration mechanism by playing with the system date, but that's not very practical, I guess.]</em></p>
<p>They didn&#8217;t mention this to me when they told me about the promotion. I suppose they thought &#8220;Well OBVIOUSLY it&#8217;s only free for a period of time&#8230; we&#8217;re in the publishing business!&#8221; But it wasn&#8217;t obvious to me or I would have told you when I announced it.</p>
<p>Anyway, you can still download the book until the 24th of July, and you can read it for some period of time after that before it goes POOF. Not bad, considering that it didn&#8217;t cost you anything except the annoyance of downloading it, but still&#8230;</p>
<p>Naturally, I hope everyone goes out and buys the hardcover with real money. That way I&#8217;ll be encouraged to write more books. Otherwise, it&#8217;s an expensive hobby.</p>
<p><em>Side note: It&#8217;s interesting how glitchy the process is, too. Several people found that the special Adobe reader software complained and moaned and wouldn&#8217;t install on their systems. QUALITY IS DEAD!</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/350/feed</wfw:commentRss>
		</item>
		<item>
		<title>My New Book is Available (as eBook)</title>
		<link>http://www.satisfice.com/blog/archives/346</link>
		<comments>http://www.satisfice.com/blog/archives/346#comments</comments>
		<pubDate>Tue, 07 Jul 2009 23:36:23 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=346</guid>
		<description><![CDATA[Secrets of a Buccaneer-Scholar is now available in electronic form. You can get it from Simon &#38; Schuster, or less expensively on the Kindle from Amazon.com.
The book is about learning. It&#8217;s about alternatives to schooling and certification. But it also describes how I became a tester, and why I progressed as a tester.
The hardcover version, [...]]]></description>
			<content:encoded><![CDATA[<p><em>Secrets of a Buccaneer-Scholar</em> is now available in electronic form. You can get it from <a href=" http://bit.ly/gkNhI">Simon &amp; Schuster</a>, or less expensively on the <a href="http://bit.ly/13HBMe">Kindle from Amazon.com</a>.</p>
<p>The book is about learning. It&#8217;s about alternatives to schooling and certification. But it also describes how I became a tester, and why I progressed as a tester.</p>
<p>The hardcover version, which will be quite nice and small enough to smack people with and not do permanent damage, will be available in September.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/346/feed</wfw:commentRss>
		</item>
		<item>
		<title>CAST Conference Coming Up!</title>
		<link>http://www.satisfice.com/blog/archives/343</link>
		<comments>http://www.satisfice.com/blog/archives/343#comments</comments>
		<pubDate>Fri, 26 Jun 2009 22:54:30 +0000</pubDate>
		<dc:creator>James Bach</dc:creator>
		
		<category><![CDATA[Software Testing and Quality]]></category>

		<guid isPermaLink="false">http://www.satisfice.com/blog/?p=343</guid>
		<description><![CDATA[The CAST testing conference is happening in Colorado Springs, July 13-16. I mention this for two reasons:
1. I will be teaching a testing tutorial there. I also will be wandering around with my various testing games and challenges hoping to do them with anyone who wants to see what I mean by &#8220;testing skills.&#8221;
2. CAST [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://www.associationforsoftwaretesting.org/drupal/CAST2009">CAST testing conference</a> is happening in Colorado Springs, July 13-16. I mention this for two reasons:</p>
<p>1. I will be teaching a testing tutorial there. I also will be wandering around with my various testing games and challenges hoping to do them with anyone who wants to see what I mean by &#8220;testing skills.&#8221;</p>
<p>2. CAST is the only conference that is organized in the true spirit of the <a href="http://www.context-driven-testing.com">Context-Driven School of Testing</a>. It&#8217;s kind of our home conference. If you find my thoughts interesting, or those of Cem Kaner, Michael Bolton, Ben Simo, etc. Then you&#8217;ll want to be there, if you can.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.satisfice.com/blog/archives/343/feed</wfw:commentRss>
		</item>
	</channel>
</rss>


