Newbie exploring how to build an interactive canvas application, and documenting all the struggles along the way