July 8, 2010
6:00 - 7:30 PM
Hands-On Test-Driven Development
We're going to try a different format for this month's meeting. Please bring your laptops and be ready to write some code!
Most developers are aware of Test-Driven Development (TDD), and/or variants such as Behavior-Driven Development (BDD), in which development follows an evolutionary approach by repeating a very short cycle: write a test or spec, see it fail, write just enough application code to make the test pass, refactor, and repeat. This basic "red-green-refactor" approach is not new, and is in wide-spread use.
Nevertheless, there are many developers who, for whatever reason, do not use such an approach. In some cases, developers simply haven't tried it, or are not quite sure how to get started. Our goal at this meeting is help people get started with TDD/BDD so they can judge for themselves whether this approach works for them and might be worth pursuing further.
We'll start with a little discussion of the pros (and cons?) of test-first development. Then we'll quickly move to a hands-on coding exercise. We'll divide into pairs and all work on solving the same programming problem using a test-first approach. At the end, we'll share our work and discuss how things went.
Ideally, each pair will include at least one developer with some previous TDD/BDD experience. If that's you, please be sure to come to this meeting because we need your expertise.
By the same token, if you haven't done much TDD/BDD, please don't miss this meeting because there is really only one way to learn this skill and that's by practicing it, ideally with the help of a more experienced pair programmer.
The details of the programming exercise are still being worked out. We'll let you know before the meeting if there is anything else you should have set up in order to be ready. Our default testing framework for this exercise will be RSpec, but feel free to use a different framework (Test::Unit, Shoulda, etc.) if you have a preference.
Coldwell Banker / Mid-America Group Realtors
8825 Northpark Court
Just north of I35/80 at the 86th Street exit.
GPS coordinates: N 41° 39.368' W 93° 44.378'
Wi-fi Internet access is available.
We'll also give away the winner's choice of the following JetBrains products:
- RubyMine Personal License
- IntelliJ IDEA Personal License
- ReSharper Personal License
- TeamCity Build Agent
Dinner After the Meeting
If you can, please plan to join us for dinner at a local restaurant after the meeting.