See http://tutorials.jumpstartlab.com/projects/microblogger.html