TDD Community of Practice

This public site supplements a TDD Community of Practice that promotes high quality software via early prevention methods. 

The aim of this wiki is to contain a growing collection of software problems well-suited for the TDD-beginner and apprentice to learn Test-Driven Development through problem solving.

I don't know anything about Test-Driven Development, where do I start?

If you don't know the slightest thing about TDD, a good place to start learning is wikipedia: Test-driven development.

Where are the problems?

You can find all problems on this page.

Are there any limits to the kinds of problems that can be added?

The problems should adhere to the following set of rules:
  • they are a real-world as possible, not too abstract or academic
  • they are targeted towards learning TDD (that is: they are small and easy enough to work out in say half a day)
  • they have been solved by a TDD-practitioner previously, proving their appropriateness for this site

I know of such a problem, how do I submit it?

If you know of a problem that fits the above description, please join the mailing list  and ask for an invite to edit this site. You can also mail the original maintainer of this wiki, olof dot bjarnason at gmail dot com.

Where are the solutions to the problems?

There are several reasons for why there are no solutions.
  • If there were solutions it would spoil the fun for you!
  • You learn more by doing than by reading.
  • Writing well-documented solutions takes a lot more time than describing a problem.
  • There is no one solution to rule them all to any problem; you go ahead and try your way! That is the way to learn software development.

How did this site get started?

TDD Problems was created in response to the need to collaboratively collect problems suitable to learn the development technique called Test Driven Development (TDD).  You can read the initial thread on the mailing list. Follow the instructions if you want to join the mailing list.

A brief history

Thank you to Olof Bjarnason for starting this site. Your new site owner is Colleen Kirtland.