working through hartl tutorial