An Adaptive, Collaborative Environment to Develop Good Habits in Programming | Publicación