PyTutor

PyTutor was an experimental design in social learning and peer tutoring for learning computer science. The software presented a web-based interface and IDE where students worked on CS problems. They could test their work against a series of unit tests. As part of their studies, they could ask for help from the in-program social network or see other students solutions to the same problem to compare their own.
Github