Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replication of records - Using Sumatra to publish computational projects #379

Open
felix11h opened this issue May 21, 2018 · 1 comment
Open

Comments

@felix11h
Copy link
Contributor

felix11h commented May 21, 2018

I'm interested in using Sumatra to publish computational projects (example here). The smt repeat function is very helpful in repeating computations under original conditions and testing if the repeated computation matches the original record. For this, a previous state of the project (e.g. git version, potentially other parameters?) is loaded.

For a published computational project, a reader might interested in replicating (single) results in a straightforward manner. For this smt repeat could be great. However, the loading of a previous version of the code "behind the scenes" can be very misleading. Old versions of the code might look very different from what the reader is seeing in the published repository.

I'm suggesting either an option for smt repeat or a new, related command smt replicate. The command would function similarly to smt repeat but instead of checking out a previous version of the project, the command repeats the record with the current version. This would allow a test whether the code, as currently shown, is able to replicate the results obtained originally.

To allow for complete or partial replication of the project, the command would take either a record, a tag or the whole project and replicate all records in the group in chronological order. The tag command specifically could help replicate the just the simulation, data-analysis or plotting stages in the project, as for example described in the Popper convention (cc @ivotron).

I'm interested in feedback on this. Implementation of such functionality seems, at first glance, manageable. Am I overlooking expected complications? Would such functionality be seen as helpful and fitting within the scope of Sumatra?

@apdavison
Copy link
Contributor

I think this is a great idea; it ought to be fairly straightforward to implement, at least for re-running individual stages; re-running entire workflows is a more complex issue and probably needs its own smt command (cf #107)

I would suggest smt repeat --update as the command. The usage of "replicate" vs "reproduce" is still being argued, and I would prefer to avoid getting into naming arguments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants