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

Making looper approachable for a new project #466

Open
1 of 7 tasks
nsheff opened this issue Feb 16, 2024 · 6 comments
Open
1 of 7 tasks

Making looper approachable for a new project #466

nsheff opened this issue Feb 16, 2024 · 6 comments

Comments

@nsheff
Copy link
Contributor

nsheff commented Feb 16, 2024

I find the current documentation on how to configure a new project with looper to be really difficult. There are basically 2 problems:

  1. the documentation is outdated and incomplete.
  2. the process of getting started is too complex, even if there were documentation

It needs to be intuitive enough that we don't need so much documentation, and then, whatever minimal documentation remains needs to actually be correct.

Documentation

Just a few things I notice at first glance:

Getting started

I propose a new looper init utility that walks you through the process of creating a new looper project. I'll push an example script that will do this. I have it basically working, but I haven't been able to finish the pipestat configuration, which is too complex. It's not clear to me how looper and pypiper should share pipestat configuration. It seems like I should just configure pipestat, I guess in the .looper.yaml file, and that should be it.

  • Basically, it should be possible to just call looper init and it will walk you through creating a config correctly.
@donaldcampbelljr
Copy link
Contributor

I started a PR to polish the looper init tutorial: #508

I've also created a PR to begin staging documentation changes for Looper 2.0.0 here: pepkit/pepspec#34

The combination of these two PRs should close this issue with a 2.0.0 release.

@donaldcampbelljr
Copy link
Contributor

Prompt user to create pipeline interface if it doesn't exist to make this even easier.

@donaldcampbelljr
Copy link
Contributor

donaldcampbelljr commented Jul 2, 2024

Have tutorial remind user that they add additional pipeline interfaces if desired.

Or add another loop to keep adding them.

@nsheff
Copy link
Contributor Author

nsheff commented Jul 2, 2024

  1. Improved first steps documentation;
    • tutorials (learning oriented)
    • explanation (understanding oriented)
    • need more graphics
  2. Divide how-tos into new sections:
    • pipeline user guides
    • pipeline developer guides
  3. Consolidate and clarify:
    • user guides should be problem-oriented (how to do something)
    • divvy can have maybe 1 section for "use of divvy without looper"; the rest should be somehow integrated

@nsheff
Copy link
Contributor Author

nsheff commented Jul 2, 2024

for tutorials, we have: hello looper, but we need: tutorial on "your own project" (looper init tutorial).
and hello looper should be simplified; the advanced stuff moves to "how to guides".

@donaldcampbelljr
Copy link
Contributor

donaldcampbelljr commented Jul 3, 2024

Ok, I've added some improvements to the looper init tutorial. The user can now add multiple pifaces. Looper will also offer to spawn a generic pipeline interface (for each piface) if the piface does not exist.

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

No branches or pull requests

2 participants