CloudCoder is an open-source web-based programming exercise system. You can find more information on the CloudCoder website and on the CloudCoder wiki.