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

Tue, 27 Mar 2007

An open letter on open letters

I'm in England, jetlagged. Some person from the States just called my cell phone / alarm clock with a wrong number at 3:00 a.m. local time, and I can't get back to sleep. I am therefore going to do something I will regret in the clear light of morning.

The Agile Alliance recently published its position on certification. I wrote it. I was told last evening, and I believe it, that people have been interpreting it to have the message "you better get certified if you want a job in Agile." I have long maintained, as a matter of both principle and practice, that a misunderstood message is the fault of its sender. But Jeez Louise, the letter is pretty explicit:

... We also believe that employers should not require certification of employees.

... there are many skilled practitioners who are not certified. Excluding them from consideration would be a poor business decision.

The last few years have smacked me in the face with that kind of thing over and over. People are so apt to jump to conclusions, to assume that any unknown motive must be a bad one, to focus on pointing out weakness to the exclusion of helping shore up strengths. Trying to accomplish something positive is just too damn much frustration not to get paid for it. I say it's spinach, and I say to hell with it.

## Posted at 20:29 in category /junk [permalink] [top]

Tue, 10 Jan 2006

Life is a meaningless void of gibbering chaos whose soundtrack is the thin monotonous whine of accursed flutes

I'm working on code in which a particular object's startdate property can be either a DateTime or a datetime. One is not a subclass of the other. No duck typing here: one exposes the year through a year() method; the other through a year field. (This is Python, so it matters.)

It's reasonable to suppose I have fewer than 400,000 hours left in my life, and I spent one of them finding that out.

Who knew HP's source material was code?

## Posted at 11:44 in category /junk [permalink] [top]

Thu, 15 Dec 2005

You know you overuse particular examples on your site when...

... you receive mail like this:

I'm impressed with your professional website related to goat and cow milking devices. My website is a NON-COMPETING informational site offering collections of articles, diagrams, and other publications that relate to and may help supplement your website. Since some of your site visitors may be interested in learning more about animal milking devices, feel free to link to my site. By linking to my site, you will be adding value to your own site by providing relevant content for your site visitors. Following is the link I think will be the most helpful for your customers: http://www.braindex.com/products/175+-ANIMAL-(GOAT-&-COW)-MILKING-DEVICE-RELATED-PATENTS-ON-CD-29.htm. Please visit this link yourself and consider inserting it on your website.

(I don't think this is phishing or some variant, which would be less interesting than having a search bot—albeit one with wide tolerances and low cleverness—think my site is actually about cows.)

## Posted at 07:35 in category /junk [permalink] [top]

Fri, 18 Nov 2005

Two milestones, noticed while paying bills

I am now a million-mile member of the American Airlines frequent flier program. This entitles me to two luggage tags.

I am also entitled to a Free! "Guide to Planning and Promoting Your Business Anniversary" in honor of fifteen years of business.


P.S. Hugh Sasse points out that the Ruby extensions library has a method like the one that's mentioned below. After a quick glance, I think it's better than mine.

P.P.S. Oh, OK, I also get eight upgrade segments and permanent Gold membership. And a membership card that says "1 Million" on it.

## Posted at 11:38 in category /junk [permalink] [top]

Sun, 13 Nov 2005

A rant: filenames

Java is a good thing. Rails is a good thing. But just as Java /perpet[ur]ated/ the horrors of StudlyCaps on those of us who like to read quickly, Rails is /perpet[ur]ating/ underscores in filenames on those of us who like to write quickly.

There are legions of examples of people not acting according to their rational self-interest. Yet another is the prevalence of filenames like webrick_server.rb over webrick-server.rb. Does an underscore take more energy to type than a dash? Yes. Does avoiding a typo require more coordination? Yes. So why this pathology?

  • C used to be the programmer's lingua franca. Since '-' in C means subtraction, variable names conventionally contain underscores. Did the trailblazer Unix programmers not realize that filenames don't have to follow the same rules?

  • Is it because VMS only allowed underscores in filenames, and VMS is just so totally cool?

Whatever the reason, we must consider the result. Thousands upon thousands of people already suffer from Emacs Pinky. To add injury to injury, those fragile pinkies must suffer additional unnecessary damage striking the shift key. How many people have been forced to switch to vi because those underscores pushed them over the edge to pinky RSI? That's a tragedy no caring person can ignore.

You have a lot to answer for, David HH. I was this close to convincing the world to use dashes, and now there's no hope.

## Posted at 18:02 in category /junk [permalink] [top]

Fri, 03 Jun 2005

Random thoughts

Anniversary: Next year will be the 30th anniversary of the first time I sent email. As my anniversary gift, I would like a spammer ground up and used to seed 1700 pearl oysters (1700 being the approximate number of messages in my Junk mailbox last time I emptied it). If possible, make it the "Greets! I offer you full base of accounts with passwords..." guy.

How Agile will destroy open source: I wanted to talk about Gold Cards in a consulting report, so I went to the original paper: "Innovation and Sustainability with Gold Cards"(Higman, Mackinnon, Moore, and Pierce). There I read:

It's good for [a programmer's] skills to be able to practice new techniques [...] Some of us tried to work on this stuff after working hours, however a full day of guilt-free paired programming is extremely tiring.

Where does open source software come from? From programmers who are frustrated that their day job doesn't involve very much, you know, programming. So they do it for free at night. And when the evening finds them sated...?

## Posted at 15:46 in category /junk [permalink] [top]

Mon, 21 Feb 2005

Rant 2

Sometimes you just gotta say people are more attractive in the abstract than in reality.

The Constant Reader will have seen my earlier rant about how some spyware producer has chosen to take over machines and direct them to testing.com. Since putting up the note on my front page and resume page, the emails have slowed down to somewhere around four a day, but the remainder are largely of a strikingly aggressive stupidity, such as this gem from "mp3pirate":

Get off my Mother-Blankin Machine You Bl Ank Licking Blank...........
(typography reproduced for full effect)

I can't help but think:

  • It's excusable, I suppose, to get spyware on your machine.
  • You have to be a little dim to suppose that my site is a plausible destination for real spyware, and that a spyware author would leave his real email address and phone number on the site.
  • And isn't it aggressively stupid to send mail like that to someone who you think already 0wnz your machine?

I dutifully reply with a little note reiterating what's on my site and ask if they saw it there (if not, I want to put it where they would see it). Not one has replied.

Heirs to the legacy of the Enlightenment. Bah!

## Posted at 13:37 in category /junk [permalink] [top]

Sun, 06 Feb 2005

Notes from a business traveller

You can get an entire exit row to yourself if you travel to a Superbowl team's home city on the evening of the Superbowl.

But once you check in, those same old questions come crowding into your mind:

  • What's with having no power outlets within reach of anything moveable that might need power? It was bad enough when the iron couldn't be plugged in except in the most awkward corner of the room, but it's truly annoying in this day of lounging on the bed with a low-battery laptop.

  • Who exactly is it that thinks those bathtub/shower drains that you open by pulling them up and close by stepping on or near them - like, say, one might while rinsing one's hair - are a good idea? Does anyone but hotels buy them?

  • And why do fitted sheets for king-size beds never fit?

## Posted at 21:25 in category /junk [permalink] [top]

Sat, 05 Feb 2005


So I'm a Macintosh user. I get tons of spam, a big chunk of it from zombie PCs. I can live with that. My spam filter works OK. But now I find that some rapidly spreading spyware takes over the screen of the PC it's installed on and displays my site, www.exampler.com/testing-com. I suppose the spyware authors were testing their program and "testing.com" came to mind.

Here I am, having to actively fend off outraged PC owners even though I paid extra money to avoid sharing their wretched, spyware-infested, decent-shell-lacking, backslashian lives.

Classic market failure. A negative externality. Grr.

## Posted at 14:51 in category /junk [permalink] [top]

Mon, 28 Jun 2004

Now here's a scary picture

## Posted at 11:15 in category /junk [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