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

Document our general approach to building software #107

Open
adamltyson opened this issue Nov 28, 2024 · 2 comments
Open

Document our general approach to building software #107

adamltyson opened this issue Nov 28, 2024 · 2 comments
Assignees
Labels
enhancement New feature or request

Comments

@adamltyson
Copy link
Member

We detail a lot of the technical elements like CI etc, but we haven't documented the "philosophy". I think this would be useful for:

  • Guiding new members of the team/collaborators
  • General communication with the wider scientific community

I'm thinking things like:

  • Building tools informed by the needs of the SWC/GCNU but in a way that is maximally useful to the wider community
  • Collaborating with existing tools/groups where possible
  • Making tools as general purpose as possible (e.g. species agnostic) to build a bigger community of users/developers
  • Using well established tools and frameworks to aid maintenance
  • Integrating as far as possible with existing community efforts e.g. napari
  • Standardising as much as possible across the team (e.g. choice of tools/frameworks) to aid maintenance
  • Prioritising contributions from researchers as well as SWEs (e.g. by prioritising well known languages like Python)

Interested in any more ideas @neuroinformatics-unit/neuroinformatics-all

@adamltyson adamltyson added the enhancement New feature or request label Nov 28, 2024
@adamltyson adamltyson self-assigned this Nov 28, 2024
@niksirbi
Copy link
Member

I like this "NIU manifesto" 😄 .

I would may be add:

  • prioritising reliance on FOSS tools as much as possible, and contributing upstream where it makes sense (maybe this can be merged with the point about "well established tools and frameworks").
  • developing in the open, as in, not only the outputs are open, but also the process. I personally think this is key to our approach.
  • Focusing on "software as infrastructure", instead of "single-use software" (may be merged with "Making tools as general as possible")

@lauraporta
Copy link
Member

I've some notes on this subject, taken when chatting with @niksirbi some time ago.
These notes are a draft recipe on how to develop an open source project, not exactly a manifesto, but I think they're a good starting point.

Attaching them as the notes are a bit long.
interview to Niko.pdf

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

No branches or pull requests

3 participants