Exploration Through Example

Example-driven development, Agile testing, context-driven testing, Agile programming, Ruby, and other things of interest to Brian Marick
191.8 167.2 186.2 183.6 184.0 183.2 184.6

Sat, 01 May 2004

The continuity of practice subcultures

Testing and programming are two independent technical subcultures. I think they need to talk to each other more. Within agile projects, I favor moving toward a single blended technical culture.

To that end, I'm reading Peter Galison's Image and Logic: A Material Culture of Microphysics, a modest pamphlet (955 pages) on two subcultures in experimental particle physics. He talks about how those subcultures evolved, how they interacted, how they competed for attention, and how they blended in the end.

He tags one subculture with "Image". It's comprised of, roughly, those people who take cool pictures of elementary particle tracks. Their goal is "the production of images of such clarity that a single picture can serve as evidence for a new entity..." (p. 19) The second subculture is "Logic" (after electronic logic). In it are the people who build things like Geiger counters: "These counting (rather than picturing) machines aggregate masses of data to make statistical arguments for the existence of a particle..." (p. 19)

So. Here's a gleaning. Subcultures have continuity. They change in response to the outside world (changes in physical theory, for example), but they also persist and evolve according to their own internal logic.

What sources of continuity does Galison find? And are there similar sources in the two subcultures I care about?

  1. Pedagogical continuity: When it came to cloud chambers, Wilson taught Millikan taught Anderson taught Glaser... Moreover, there's relatively little overlap between the Image and Logic "teaching lineages".

    Like many worthwhile professions, much of testing and programming is taught through apprenticeship. That's especially true for testing, whose practice hasn't (until recently) had much of a toehold in academia.

  2. Technical continuity: Image people needed to know about track analysis, photography, and micrometry. Logic people needed to know about high voltages, logic circuit design, and gas discharge physics. Skills did not translate easily across the divide.

    I'd like to think the divide between testing and programming is more bridgeable, but it nevertheless exists. It's a problem that the technical skills one side pridefully brings to bear seem not that important to the other.

  3. Demonstrative or epistemic continuity: This is the kicker. Roughly, the Image people believed strong arguments rested on pictures, whereas the Logic people believed they rested on statistics. Each found the other's evidence (and arguments about evidence) somewhat unpersuasive.

    I say it's the kicker because it seems to me the big divide between testing and programming is what counts as a valid and noteworthy work. To programmers - again, roughly - it's a product that does progressively more stuff. It's new business value. To testers, it's a product that's progressively more capable of surviving attack. It's lack of negative business value.

Since blending subcultures is my goal - rightly or wrongly - I should be attentive to each of these three kinds of continuity. The blend needs each of them.

## Posted at 16:42 in category /agile [permalink] [top]

About Brian Marick
I consult mainly on Agile software development, with a special focus on how testing fits in.

Contact me here: marick@exampler.com.




Agile Testing Directions
Tests and examples
Technology-facing programmer support
Business-facing team support
Business-facing product critiques
Technology-facing product critiques
Testers on agile projects

Permalink to this list


Working your way out of the automated GUI testing tarpit
  1. Three ways of writing the same test
  2. A test should deduce its setup path
  3. Convert the suite one failure at a time
  4. You should be able to get to any page in one step
  5. Extract fast tests about single pages
  6. Link checking without clicking on links
  7. Workflow tests remain GUI tests
Permalink to this list


Design-Driven Test-Driven Design
Creating a test
Making it (barely) run
Views and presenters appear
Hooking up the real GUI


Popular Articles
A roadmap for testing on an agile project: When consulting on testing in Agile projects, I like to call this plan "what I'm biased toward."

Tacit knowledge: Experts often have no theory of their work. They simply perform skillfully.

Process and personality: Every article on methodology implicitly begins "Let's talk about me."


Related Weblogs

Wayne Allen
James Bach
Laurent Bossavit
William Caputo
Mike Clark
Rachel Davies
Esther Derby
Michael Feathers
Developer Testing
Chad Fowler
Martin Fowler
Alan Francis
Elisabeth Hendrickson
Grig Gheorghiu
Andy Hunt
Ben Hyde
Ron Jeffries
Jonathan Kohl
Dave Liebreich
Jeff Patton
Bret Pettichord
Hiring Johanna Rothman
Managing Johanna Rothman
Kevin Rutherford
Christian Sepulveda
James Shore
Jeff Sutherland
Pragmatic Dave Thomas
Glenn Vanderburg
Greg Vaughn
Eugene Wallingford
Jim Weirich


Where to Find Me

Software Practice Advancement


All of 2006
All of 2005
All of 2004
All of 2003



Agile Alliance Logo