If you'd like to play around with Reason a bit, you can give a try here: https://codeboard.io/projects/17520?view=2.1-3.0
HN user
haches
Java version to play with:
https://codeboard.io/projects/9288
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.
Worthwhile to point out that edX is a non-profit [1] unlike Coursera [2] and Udacity [3].
[1] https://www.edx.org/about-us
If you'd like to play with Reason you can do it online here:
https://codeboard.io/projects/17520?view=2.1
Of course, you can also create your own Reason projects.
We currently terminate Infer after 25 sec of CPU time.
But if anyone is interested in trying it for lager examples, I can recommend their Docker file: https://github.com/facebook/infer/tree/master/docker
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.
[1] https://docs.docker.com/reference/api/docker_remote_api_v1.2...
Thanks for the feedback.
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.
In particular, we'd like to know from other teachers if they
* consider the idea (web-IDE, automatic grading etc.) useful
* use other tools (which ones?) as part of their teaching efforts
One of the developers here. We'd be happy to get feedback and answer any questions.
Thanks for writing this post. I was already curious how you implemented the collaboration feature. Very happy to get some details. Fantastic work.
People in academia have proposed a number of tools & approaches on how to enable concurrent development while mitigating the "risks" of branching.
To name just a few:
* Palantir by A. Sarma et al. [1]
* Crystal by Y. Brun [2]
* CloudStudio (project I worked on); Video demo: https://youtu.be/R3Fz0Tcdz0Y
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.
[1] https://scholar.google.de/citations?user=shMjCasAAAAJ
[2] http://homes.cs.washington.edu/~mernst/pubs/vc-conflicts-fse...
I think I saw this the other day in the VIM discussion. Great job! Are the other examples, e.g. micro http, also available for download?
Could you make it available as a Github repo? Would allow to browse it without requiring a download.
Friend of mine does fully automatic translation from C to Java, including automatic OO reengineering.
Some demos are available on his page: https://www.mtsystems.ch
This work is based on the stuff he did for his PhD. I think his largest test case so far is a full translation of VIM.
I agree. This is a very nice idea. Could be really handy when just playing around with a front-end framework.
I guess the graphs would then no longer fit on a single page ;)
What are common use cases for client-side permissions, given you can't be sure the code won't be tampered with? I could think of adapting the UI based on roles: it's nice to have but not critical. What else?
p.s. thanks for sharing
Could I also use this to resize images? Or convert them to a different format? That would be interesting in some cases.
Finally a table generator that allows merging of cells as well as importing from other formats. Been looking for that for a while.