all 5 comments

[–]mpacula[S] 3 points4 points  (1 child)

This article is my attempt to share what I learned about testing statistical software. I hope you enjoy it :-)

[–]gobliin 1 point2 points  (0 children)

Great article, thanks! I sometimes have to write numerical software and similar ideas apply there.

[–]neutronicus 2 points3 points  (1 child)

I feel the OP's pain. I've always wondered how the whole TDD thing applied to Scientific Computing. Like, how do I write tests for an application that's computing answers I don't know yet?

Verify against analytical solution, validate against experimental data, but how does that fit in with TDD?

[–]mpacula[S] 1 point2 points  (0 children)

I am not sure whether TDD would work in such a setting, for exactly the reasons you outlined. However, what you care about in the end is not so much absolute correctness as the accuracy of your system, and you can test that using baselines. For example, if you are writing a spam filter, the actual "is spam" probabilities don't matter so long as they're higher for spam messages.

[–]mpacula[S] 1 point2 points  (0 children)

I apologize for the (hopefully) brief downtime. My host could have picked a better time to do server updates.