Mouse-Imaging-Centre / pydpiper

Python code for flexible pipeline control
Other
25 stars 10 forks source link

[Documentation Request] Simple pipeline demonstrating how to write pipelines #386

Open cfhammill opened 5 years ago

cfhammill commented 5 years ago

I think it would be useful to create a small wiki page or web page that has a minimal interesting pipeline. MBM is a bit of a monster with plenty of argument handling distracting from the graph building heart.

Somewhat related, having a "how to add a tool you use" would help. Not sure if this is a separate request or can be bundled as part of the above.

I think if we can show how to use pydpiper in place of common alternatives like make, snakemake, or nypipe would help get more people writing interesting things.

gdevenyi commented 5 years ago

Our documentations:

https://github.com/CobraLab/documentation/wiki/Introduction-to-Two-Level-Model-Building-with-Pydpiper

https://github.com/CobraLab/documentation/wiki/Running-MICe-build-model-without-a-target-atlas

https://github.com/CobraLab/documentation/wiki/Running-MAGeT-on-mouse-brain-MRIs

In various states of correct and up-to-date...

cfhammill commented 5 years ago

We also have: https://github.com/Mouse-Imaging-Centre/pydpiper/wiki

But none of these address how to write pydpiper pipelines.

gdevenyi commented 5 years ago

Oops, yeah, I understand the difference now :)

nzxwang commented 5 years ago

When I first started writing the tissuevision pipeline, I wished that something like this existed. Because of my lack of expertise, the current tissuevision pipeline code is pretty horrendous and very inconsistent with our other pipelines. I do think we need something like this, but we would have to first agree on code conventions, and how things should be done?

cfhammill commented 5 years ago

I don't think there needs to be much on conventions, just an exploration of the graph building and stage generating API. Omit every detail, no argument handling, hand code execution, something someone on a laptop could sit down and run that solves a simple make/nipype style task. I found one for nipype:

https://miykael.github.io/nipype_tutorial/notebooks/introduction_quickstart_non-neuroimaging.html

I think something like this but cleaner (much less boilerplate) would be really helpful.

nzxwang commented 5 years ago

I like this. To be honest, I still don't know how pydpiper does "graph building and stage generating"!