- Refactor your code while passing tests
- High coverage + low coupling
- HTML is your only true API
- Post index
- Create form
- Write integration tests
- Check coverage w/ cover_me
- create via ajax - tests still pass
- add delete button and test
- check coverage
- delete via ajax
- store the body of the post in a separate model ... and don't change the tests
- If you get stuck, git diff 05-extract-body
- sort by name and sort by date - html with tests
- refactor to do it with ajax
- Make an edit page to update a post
- Then make it a pop-out form (on the index page) that updates via ajax ... and don't change the tests!
- instead of ActiveRecord and Sqlite, store the posts on the filesystem with YAML ... and don't change the tests!
- Use a different web framework (like sinatra, or even nodejs!)
- Point selenium to a local port
- Get the tests to pass without changing them