Teaching and Learning Java with practice and the power of git!