Brian Marick:Exploration Through Example
Brian Marick:Exploration Through Example
Website:
Description:
Example-driven development, Agile software development, testing, Ruby, and other things of interest to Brian Marick
Last update:
1 year 30 weeks ago
“Quality is value to some person” restated
Submitted by Brian Marick on Mon, 12/07/2010 - 17:57.Michael Bolton has asked me to improve the sentence in the headline. Here is my attempt. It stems from two of my beliefs:It’s better to focus on the immediate problem than on convincing people of a universal truth.Right action does not follow from thinking correctly. Thinking correctly follows from the habit of acting correctly.The sentence [...]
“Quality is value to some person”
Submitted by Brian Marick on Mon, 12/07/2010 - 14:03.I’ve long hated the sentence in the title, for a number of reasons. I threw away a long blog post about that yesterday, but let me just issue this challenge. How do the meanings of these three sentences differ?Quality is value to some person.Quality is quality to some person.Value is value to some person.
Object-Oriented Design and Mock Objects: for non-programmers
Submitted by Brian Marick on Tue, 06/07/2010 - 01:38.That’s the title of my Agile2010 workshop. Here’s the description:We’re not shy about saying that testers, programmers, and everyone else in the team needs to become fluent in the business domain. But we’re blasé when programming practices and programming knowledge are the exclusive province of the programmers. That hampers communication and hurts teams. By simply [...]
Release 0.1.1 of Midje, a Clojure mocking tool
Submitted by Brian Marick on Thu, 01/07/2010 - 01:03.The devoted reader will recall that I earlier sketched a “little language” for mocking Clojure functions. I’ve finished implementing a usable–perhaps even pleasant–subset of it. I invite you to take a look. In keeping with my whole “work with ease” thing, I’ve made it dirt simple to try it out: one click and two shell [...]
A small note about collaborators
Submitted by Brian Marick on Sat, 19/06/2010 - 23:43.It’s often the case that a class has one or more collaborators that are used by many of its methods. When you want to override one for testing, you can either pass the test double into the constructor (probably as a default argument) or you can smash the double into an instance variable you happen [...]
That $20 Billion BP deal
Submitted by Brian Marick on Thu, 17/06/2010 - 20:51.Various Republicans have characterized the recently announced 20 billion dollar deal between the government and BP as a “shakedown” for a slush fund, one that Obama doesn’t have constitutional authority to set up. From what I’ve read, it strikes me as a pretty straightforward deal, not wildly different than the way I used an escrow [...]
TDD in Clojure, part 3 (one wafer-thin function; conclusions)
Submitted by Brian Marick on Thu, 17/06/2010 - 15:02.Part 1Part 2All that remains is to add the locations of bordering cells to a given sequence of locations. A small wrinkle is that a border location may be next to more than one of the input locations, so duplicates need to be prevented. I could write the test this way:I don’t like that. When [...]
TDD in Clojure, part 2 (in which I recover fairly gracefully from a stupid decision)
Submitted by Brian Marick on Wed, 16/06/2010 - 14:04.Part 1Part 3I ended Part 1 saying that my next step would be to implement a function that counts the number of living neighbors a cell has. Given that we’re already pretending (through stubbing) that a living? function exists, living-neighbor-count is pretty trivial if we also pretend we’ve got a neighbors function:Following my “mapping, like [...]
