It's interesting to see how much "overhead" static typing and language verbosity generates. But maybe there are also ways to write it more compact in Java, not sure.
At http://codeboard.io we use them to compile and execute the user-written programs.
I guess that's not the typical use of Docker because there are a number of security concerns. We do a number of things to mitigate those but isolation is not as good as with a full VM.
However, containers are so fast that we can create -> execute -> destroy containers for every single "compile" and "run" action.
Another big advantage, imho, is the Docker Remote API [1] which makes it very easy to integrate Docker in your app.
in the past i have used cloud9 and nitrous.io for teaching, and i had students clone a template repo with exercises and lessons. this is awesome to me because its a much more structured way to manage projects, especially for students who haven't used git before.
one tool which i have built with my co-teachers in the past is a problem generator that tracks which concepts the user has "mastered" based on the number of problems they have solved for a given concept. we had a naive problem generator that used templated problem specs with randomly generated values: https://github.com/pftp/pftp-web/blob/master/practice/python...
have you considered anything of the sort for students who want more practice?
I really like the simplicity of the problem templates. And you have a nice collection there. May I ask how you displayed them to students, how students submitted their solutions and how you ran their code?
So far, we haven't focused very much on providing content (i.e. exercises) ourselves because Codeboard is mostly used to complement existing courses where the teachers already have content and exercises in mind. Codeboard just makes it much easier for them to handle submissions or e.g. integrate with an existing Moodle or edX infrastructure.
Using reference implementations - rather than tests - and having a simple way to provide hints (as you do in your templates) are features we're quite interested in. We did a bit of work on the latter recently but that stuff hasn't made it into Codeboard yet.
I'll forward your repo to some of my colleagues. Thanks again.
thanks! the problem templates are pretty simple but i think we can do better now :) as you progress through the concepts, we introduce more challenging problems.
To the best of my knowledge, however, none of these projects have found any widespread adaption. A lot of it also has to do - I think - with culture and personal preference.
We translated dozens of open-source projects and decided to list only the interesting ones on the website and upload only the most interesting ones; The ones that are very well known and have a nice GUI.
Feel free to send us an email and we'll be happy to send you the other programs you're interested in.
You can also ask for translations of open-source software we didn't translate yet if you want to see the translation of a specific project.