CaImAn icon indicating copy to clipboard operation
CaImAn copied to clipboard

CaImAn 2023 Roadmap

Open EricThomson opened this issue 11 months ago • 0 comments

Caiman Roadmap: August 2023 - August 2024

Our goals with Caiman naturally fall into three general categories:

  • Usability – make Caiman's current feature base easier to use.
  • Improvements – improve or expand on Caiman's current feature base.
  • Community: improve the quality of user experience, and increase base of users/contributors.

If you would like to get involved with any of the efforts in this roadmap, or have new ideas about how we can attain the above goals, please reach out by replying to this issue. This is an evolving document: check back to see how things are going, and if we have added any new goals.

Usability

Caiman already has many great features that we can do a better job bringing to existing and future users. Our roadmap for this:

  • [x] Update landing pages: readme and installation guide
    • [X] Drastically simplify install instructions (quickstart guide added to readme.md)
    • [x] Update contributors page.
    • [X] Add table of use cases with links to notebooks.
    • [x] Make caimanmanager usage the same across platforms.
    • [x] All part of Release 1.9.16
  • [x] Rework CNMF demo notebook: demo_notebook.ipynb [in progress]
    • [x] In general, simplify and make more beginner-friendly.
    • [x] Discuss file types we can handle
    • [x] Better address how to handle your own data.
    • [x] Show how to iteratively search parameter space
    • [x] Discuss loading estimates that have been saved
    • [x] See PR #1075
  • [x] Once demo_notebook.ipynb is done, use as template for CNMFE demo
    • [x] Update CNMFE: explain things that are not already in CNMF
    • [x] See PR #1207
  • [ ] Update documentation
    • [x] Docs are not rendering properly: fix (issue #997)
    • [x] Update docs theme (thanks @kushalkolar 💡 )
    • [ ] Update docs: some are outdated or erroneous (gSiz)

Improvements

While Caiman's current feature set is a strength, our goal is that it continuously evolve and improve. Our roadmap for this:

  • [x] Add functionality to save estimates as csv (#1086).
    • [x] Adding discussion in main demo notebook instead of special function.
  • [ ] Turn off warnings and update based on deprecation warnings etc 😬
  • [x] Get rid of all pylab imports (good beginner issue)
  • [ ] Check number of frames for motion correction, with useful error messaging (#1036)
  • [ ] Save to Pynapple format to work with Pynapple package (#1087).
    • [ ] This has basically become continuous with #1146
  • [ ] Get subidx parameter working with temporal cropping (issue #1106, see also PR #1133 )

Nice-to-have

  • [ ] Update to numpy 2.0 [eventually -- depending on dependencies]
  • [ ] Add synthetic data generator class or function.
  • [ ] Refactor greedy initialization
    • [ ] Break up complex functions/methods into simple functions/methods
    • [ ] That are well-documented
    • [ ] And tested
    • [ ] When done, evaluate process and pick next pain point to refactor.

Community

Caiman is made for its users. We need to consistently put in effort to improve the experience of our current user base, and ideally increase the number of users and contributors. Our roadmap for this:

  • [X] Issues and PRs
    • [X] Add more clear labeling systsem at github.
    • [X] Institute new policy: label and reply within 24 business hours (especilly PRs)!
  • [X] Start quarterly Community Meetings to engage users.
  • [X] Workshops to increase user base and help current users
    • [x] SFN Satellite workshop 2023!
  • [x] Post public roadmap to GitHub
  • [x] Create forum with threaded searchable discussions (move discussions to GitHub discussions)
  • [x] Create news/updates web page, with link on readme, for people to learn how to connect.

EricThomson avatar Aug 02 '23 23:08 EricThomson