David Chelimsky

random thoughtlessness

The RSpec Book -- Beta 10 and Progress Report

| Comments

Beta 10????? When the hell are we going to start chopping down some trees? Well, first, here’s what’s new in Beta 10 of The RSpec Book:

Automating the Browser with Webrat and Selenium

This new chapter from Bryan Helmkamp shows you how to drive Cucumber scenarios right through your browser using Webrat and Selenium. You’ll type a single command and watch a browser fire up and walk through each scenario step by step right before your very eyes, and then see a standard Cucumber report in the shell. It’s a sight to behold, and a great way to drive out behaviour that requires JavaScript.

And now, for your reading pleasure …

Progress Report

I’m sure that all of you post-first-time authors out there know what I mean when I say that working on this book has been a fascinating case study in how not to write a book. First, we’re writing about not just one, but no less that six moving targets: RSpec, Cucumber, Rails, Webrat, Selenium and, of course BDD itself.

When we started this book, BDD was seen primarily as a new look at test driven development. The book was focused only on RSpec and TDD through this new lens. Had we stuck to that we might be talking about the third edition by now, but while we were writing, BDD was on the move.

BDD in 2009

Today, BDD has evolved to a full-stack agile process derived from Extreme Programming (XP). Rather than being a variation of TDD, it comprises TDD (and ATDP, DDD, etc, etc). And so has the book evolved to incorporate the application of these ideas to the practical use of an evolving toolset.

Also consider that four of the authors are primary maintainers of said moving targets (including BDD itself). Structuring a project like this leads to a different meaning of BDD entirely …

Book Driven Development

I can’t count the number of times that I’ve been writing about how to do something or set something up in RSpec or Cucumber and I’ve thought “Really? We could do better than that!” Each of those revelations led to software updates, followed by me poring through the book to update related content.

The end result is better software and a better book, benefiting RSpec and Cucumber users and The RSpec Book readers alike.

What remains to be done?

At this point we’re pretty close to the end of this journey. We’ve got two chapters left to write, plus some bookends (and beginnings – foreword, preface, and appendices). I also need to review pretty much everything because lots of things that we wrote about earlier in the process have changed.

After all that, we’ll have a final technical review, copyediting, indexing, and then off to print! So we’re in the final phases now and I look forward to reporting that the book is off to print in the not too distant future. How “not too distant” I hesitate to say, because so far I’m batting 000 in terms of release predictions (and I thought estimating software delivery was a challenge!).

In the mean time, I’ll be posting updates here as we progress, along with some discussion of the material in the book.