On 13 Jan 2009, at 17:14, Mark Wilden wrote:

On Tue, Jan 13, 2009 at 7:41 AM, James Byrne <[email protected]> wrote:

Logins are a pervasive feature of this application and so, rather than
waste effort on policing the feature syntax, I thought it best just to
accommodate the likely variations from the start.

Premature flexibility is one of the roots of all evil. :)

Seriously, your code has two types of users. Yes, you should make writing features easier for biz, but you should also make reading steps easier for dev. Given that, I like the suggestion of explicitly enumerating the choices of verbiage. A clear pointer toward that choice is the comment. A comment is an apology for unclear code. All unclear code should be commented, but unclear code should be avoided whenever possible.

All IMO, of course.

+1 to all that. I feel like you get lectured quite a bit by this list James, but you'd do well to heed the advice of some battle-hardened journeymen, IMO.

Read Eric Evans' excellent book 'Domain Driven Design', which actually inspired a lot of this BDD stuff you're using, to hear how keeping faithful to a 'Ubiquitous Language' can make a big difference to the success or failure of a project.

You're not just policing syntax when you encourage people to use the same words for things, you're actually protecting the integrity of your system by reducing the opportunities for misunderstanding.


Matt Wynne
http://blog.mattwynne.net
http://www.songkick.com

_______________________________________________
rspec-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to