On 19 February 2010 08:59, Erik Pukinskis <erikpukins...@gmail.com> wrote:
> Hello Specmeisters! > > I have a bit of a philosophical question for the TDD witches and > wizards out there. I'm working on some code that is really > churning... It's doing complicated calculations, but the actual > desired results are a moving target. The acceptable values, and even > the structure of the software's output are changing constantly. The > internal architecture is changing rapidly, and I'm constantly throwing > away methods I no longer need. > > This has resulted in me no longer writing specs on this part of my > codebase. They just become obsolete very very fast. Changing the > specs constantly feels like a pointless doubling of my effort. Specs > seem to help with debugging and verification that the software is > performing as expected. But I'm spending most of my time trying to > figure out what I should be expecting. I verify that things are > working quickly and informally, because it's likely the definition of > "working" will change before the week is up. > > Am I being stupid? Is it really a pointless doubling, or am I > creating more debugging time for myself than I'm saving without > writing specs? Should I be more religious about Test First? > > Thanks in advance for the insights, > Erik > _______________________________________________ > rspec-users mailing list > rspec-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users > I think you can consider writing a completely separate spike to explore your subject, so long as you make absolutely certain that you do not merge it into production code. To avoid that temptation it really should be seperate. Speculating a bit however, I think your process for developing this part of your code maybe very wrong. It sounds like your looking for justification for hacking - which generally is a bad sign - and that maybe you need to take a step back and look at different approaches. Maybe instead of focusing on results you could focus on process e.g. to calculate foo I first need to bar etc. or perhaps you need to go more granular and create some tools to simplify your calculations. Finally if you have any long methods in your calculations (> than 5 lines) refactor them. Decomposing them into smaller methods could reveal alot about the structure of your problem HTH Andrew
_______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users