> TDD advocate here... I really think folks are going into TDD with > this mindset that it's just write a test before you write code (so yes > your are somewhat right). Doing this is going to result in frustration > and an eventual failure and abandonment of TDD. Focusing on just > writing a test is really the wrong approach <snip> The fact is some > very smart folks have realized TDD was a horrible name for a great > idea as it put us into this mind set of testing a unit. <snip> This is > why many folks (mostly outside of the CF community) are "evolving" TDD > into BDD (behaviour driven development). <snip> I could ramble on more > probably but I think I've said enough for now, maybe this deserves a > blog post?
Thanks Adam, I'd be interested in reading more about that. :) I hadn't heard about the shift in thinking from TDD to BDD. There's an old apocryphal story I like about how language helps to shape thought. The story goes that the people in a particular area (let's say it was an island) were having a problem in which people were falling into unexplained comas and they feared people were being burried alive. They wanted to resolve this problem, so they assigned the task of devising a solution to two teams and would then choose the best of the two. One team produced a solution that was complicated, time consuming, labor intensive, questionably effective and expensive. The other team produced a solution that was unquestionably fast, cheap and effective (you might call this an "elegant solution"). The complicated solution was to burry each person with a small amount of food and water and raise a pipe from the coffin up to ground level so that if the person woke from their coma they could call up to someone monitoring the grave sites and help would rush to pull them out. After a few days they could be reasonably assured the person had died and fill in the pipe. Problems involved rain flooding the coffin, etc. The question posed to the team who produced this solution: how to we keep from burrying people who are still alive? The "elegant" solution was to mount a 6-inch spike to the inside of the coffin lid at roughly chest-height. When you closed the lid of the coffin, you would remove all doubt that the person could still be alive. The question posed to the team who produced this solution: how to we ensure that everyone we bury is dead? .... I've been trying to come up with a good way of explaining a similar kind of shift in thinking with regard to the notion of a "front controller" and I'm not sure how well I've done in that regard. It's posted on the onTap framework wiki as "The Rear Controller and You". The basic premise of my calling this a new design pattern (as opposed to simply describing it as a sub-set of the front controller) is to flip the thinking involved in the "front controller" away from forcing everything to deal with the challenges of the front controller (the application says "I INSIST you speak to me THIS WAY") and instead allow the controller to do the work more seamlessly by saying something to the effect of "I don't know X but if you hum a few bars I can fake it". :P The system accomodates both the traditional front controller index.cfm?event=company.about style urls as well as more traditional /company/about.cfm style urls which makes it a trivial matter to move pages into or out of the framework without changing any existing URLs. For anyone interested in the Rear Controller design pattern, you can find more information here: http://ontap.wikispaces.com/The+Rear+Controller+and+You -- s. isaac dealey ^ new epoch isn't it time for a change? ph: 781.769.0723 http://onTap.riaforge.org/blog ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Adobe® ColdFusion® 8 software 8 is the most important and dramatic release to date Get the Free Trial http://ad.doubleclick.net/clk;203748912;27390454;j Archive: http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:311888 Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4

