This screencast series shows how to go through the TDD Tetris Tutorial where you can learn Test-Driven Development by at first writing code to pass pre-written tests, so that it will be easier to write your own tests when the time for it comes.
We have implemented falling blocks and rotatable pieces in isolation. Now let's put them together by implementing arbitrarily shaped falling pieces.