Open gaow opened 4 years ago
My suggestions:
We should call it dsc-start
, dsc-init
or dsc-create
, since dsc-setup
sounds like it could be for installing DSC, rather than creating a new DSC benchmark.
Use git, but don't assume GitHub (so don't create .gitattributes
, or any other files specific to GitHub).
Make sure to commit the files in addition to creating them.
Don't use workflowr.
Don't use shiny.
I'm open to implementing this in R, but if we do that, it should be a function in the R package (e.g., dscstart
or dscinit
), not a script or command-line tool.
Keep the template super simple, but it should also do something. For example, it could implement the "one sample location" example, so dsc-setup mybenchmark
creates
$ tree mybenchmark
mybenchmark
├── analysis
│ └── summarize_results.R
└── dsc
├── modules
│ ├── abs_err.R
│ ├── mean.R
│ ├── median.R
│ ├── normal.R
│ ├── sq_err.R
│ └── t.R
└── mybenchmark.dsc
@pcarbo we can setup a github repository to put in the aforementioned template that actually does something. I can put in a version if you create such a repo under stephenslab
github account.
Or, maybe we can do it inside dscrutils
package eg inst
folder? See it here. From my experience using DSC:
.gitattributes
file.%include
so one can have multiple "main" DSC files like template.dsc
for various specific benchmarks..gitignore
should at least include our default output directory, to prevent novice users from adding the output to github.chmod +x
to the main DSC file so users can execute the file directly ./template.dsc
Or, maybe we can do it inside dscrutils package eg inst folder? See it here.
That's a great start, thanks.
- I don't think it is bad idea to add a .gitattributes file.
I'm more okay with it here---it was annoying when it was being generated every time I ran dsc
.
I recommend using %include so one can have multiple "main" DSC files like template.dsc for various specific benchmarks.
I would say this is going against the principle of this being a simple DSC. And for that matter, I think having the DSC specified in a single file is one of the things that makes DSC attractive.
I'm fine with 3 and 4.
To continue our in person discussion for a
dsc-setup
command: what it should do is to provide a one line command to setup a github friendly template for DSC. It should include the basic suggested script structure / hierarchy for DSC benchmarks, and optionally templates to query and explore results (fordscrutils::dscquery
, with potentiallyworkflowr
structure ordscrutils::shiny_plot
in mind).implementation-wise I suggest it be written as a command tool that people type
dsc-setup
in terminal to use it, but written in R language -- this makes it easier for the lab to maintain and change it, and we can potentially borrow codes fromworkflowr
already for initializing a project.For starters this ticket discuss what we want to achieve. My current DSC organization is:
where
benchmark*.dsc
only has theDSC
section.We can use
dsc-setup
asdsc-setup name
that will:name
.gitignore
and.gitattributes
files for itREADME.md
to explain what each folder doesname.dsc
with the DSC section only, with contents:I don't think it would be necessary (or encouraged) to add comments in a DSC script like this because the HTML file for exported DSC script will now contain the information (#209). That is, the file when you run DSC and see in the first line of output: