Intelligent Support for Computer Science Education