openjournals / jose

The tracking repository for the Journal of Open Source Education
25 stars 0 forks source link

JOSE pre-submission inquiry: Project Lovelace #2

Open ali-ramadhan opened 4 years ago

ali-ramadhan commented 4 years ago

Project website: https://projectlovelace.net/ Project GitHub organization: https://github.com/project-lovelace

Dear JOSE editors,

I'm hoping to submit something to JOSE about Project Lovelace, a website I've been developing on and off for a while but had a few questions about whether it's suitable for JOSE and what exactly to submit. I skimmed the previous JOSE papers but none of them seem to describe an interactive website.

For some context, here is a one-paragraph description of Project Lovelace:

Project Lovelace is an open online platform for learning about science and developing computational thinking through programming and problem solving. It is a collection of computational science problems and tutorials taken from all branches of the natural, social, and mathematical sciences. Each problem teaches a scientific application (e.g. locating earthquakes, DNA splicing) and requires the use of scientific insight and some programming skills to solve. Some problems teach computational methods that students and researchers may find useful (e.g. solving differential equations, Bayesian inference) and may be required knowledge for some problems. Project Lovelace draws inspiration from similar websites such as Project Euler and Rosalind.

Basically it's a bunch of programming problems. Users write code in a web editor and submit it. The website grades the submission against a number of test cases to determine whether it passes or fails.

  1. It seems to me that Project Lovelace may fall under both types of JOSE submissions. The website itself and the automatic grader (lovelace-engine) seem to fall under "open-source software, created as educational technology or infrastructure". Meanwhile all the problems seem to fall under "computational learning modules, created as open educational resources". Both are evolving as we add more features to the website, support more programming languages, and add more problems.

    If we want to submit one JOSE paper I'm guessing it makes more sense to submit it as "open-source software, created as educational technology or infrastructure" as it will still be applicable as more problems get added?

  2. To satisfy JOSE requirements, should our documentation explicitly tell users/reviewers how to set up a fully functional copy of Project Lovelace on their own web server? Or do they just need to be able to access the website and submit code?

  3. The way we developed the website was that we split it up into 5 repositories under one GitHub organization (website, engine, problems, solutions, and code-snippets). However, I believe JOSE papers describe a single repository. So I was wondering whether we should pick one repository to place the JOSE paper, or if there's some way to associate the JOSE paper with the GitHub organization? Would a project-lovelace/meta repository be acceptable?

  4. Everything is open source except for the solutions to the problems, used to verify user submitted solutions, which we keep in a private GitHub repository as we encourage users to figure out each problem (we're more than happy to help over chat/Discourse). Is this acceptable for JOSE?

Thanks so much for reading, and apologies for the wall of text!

Cheers, Ali

ali-ramadhan commented 4 years ago

Not sure if this matters for this issue but on the subject of reuse which is important to JOSE, I think our vision for Project Lovelace is not that people would set up their own versions of the website, but that people would contribute new problems which can be easily added to the website and made publicly available.

So if someone develops new programming problems for a course they are teaching then they can be added to the website and reused by anyone else for any purpose.

So maybe instead of documentation telling people how to set up a web server with their own version of Project Lovelace (probably only of interest to a tiny fraction of people), we need to prioritize writing documentation telling people how to add a new problem to Project Lovelace and make the process easy?

The intended audience is self learners but would be nice to make it more friendly for use in the classroom.

ali-ramadhan commented 4 years ago

Just bumping to see if an editor is around to respond.

I do apologize for the wall of text...