#76 Including more tools and demonstrating the usability of NeuroFedora
Closed 3 years ago by siddharthvipul1. Opened 4 years ago by ankursinha.

This is a proposed project for Google Summer of Code

  • Skill level: intermediate/advanced
  • Skills required:

    • general software development workflow,
    • knowledge of build systems (setupools, autotools, cmake, qmake),
    • basic scientific knowledge (since this is neuroscience),
    • and knowledge of rpm packaging would be a plus.
  • Mentor(s):

  • Contacts (IRC & email):

    • major@fedoraproject.org, major
    • ankursinha@fedoraproject.org, FranciscoD
    • neurofedora@lists.fedoraproject.org; #fedora-neuro on IRC.
  • Idea description: Given that science is now moving actively towards being more open, NeuroFedora aims to leverage Fedora's excellent FOSS resources to connect and enable neuro-science research. Our current focus is to involve FOSS volunteers into science by building a stable platform for neuroscientists. In this there is a lot of work to be done, ranging from recognising what software is useful for neuroscience, packaging it, testing it, demonstrating NeuroFedora's usability, to community development. The candidate will work on all of these areas, but they will have different priorities and will vary depending on the stage of the project:

    • identify FOSS software useful for neurosciennce,
    • package and include this software in Fedora (and thus, NeuroFedora),
    • test the software: write simple test cases to enable non-scientific users to test it also,
    • update documentation to include newly added software,
    • document progress on the neurofedora blog, and engage in outreach to attract more volunteers,
    • finally, replicate a simple computational modelling study to demonstrate the usability of neurofedora (and gain a publication!)
  • What are we looking for:

    • interest in (neuro)science, preferably a student considering a research/academic career since the tasks here are specific to the science domain,
    • interest in Free/Open science,
    • interest in software development,
    • interest in computational modelling
    • ability to quickly learn fairly technical skills using documentation,
  • Notes & references:


Metadata Update from @jflory7:
- Issue tagged with: GSoC

4 years ago

@ankursinha hey, thanks a lot for the project idea :)
I have a few doubts with deliverables.
This seems more of packaging tasks and not really a project development, Could you please confirm what are the code parts that the student has to do here

cc: @major @sumantrom

@ankursinha hey, thanks a lot for the project idea :)
I have a few doubts with deliverables.
This seems more of packaging tasks and not really a project development, Could you please confirm what are the code parts that the student has to do here

It mainly is a packaging project. They'll do a little development when it comes to using the tools, for example replicating a computational model but they're not doing any development of infra tools or the type here.

cc: @major @sumantrom

@ankursinha I have a couple of questions, to start with,
did the NeuroFedora SIG reach out to packagers before? Like a call for packagers in the devel-list.
Also, can you help us understand
1. Which upstream project(s)/communities will get benefited ?
2. What are the deliverables of the student, usually in GSoC we measure them by code quality, time spent in community, putting something in production?
3. Can you refine what you mean by "replicating a computational model" like what is the work in there for a student? This is to ensure that, when a student has to build a timeline, they need to know what exactly to do.

It mainly is a packaging project. They'll do a little development when it comes to using the tools, for example replicating a computational model but they're not doing any development of infra tools or the type here.

ah, I would love to see this done but afaik, this doesn't suit GSoC project criteria
Looking for someone to change my mind :)

It mainly is a packaging project. They'll do a little development when it comes to using the tools, for example replicating a computational model but they're not doing any development of infra tools or the type here.

ah, I would love to see this done but afaik, this doesn't suit GSoC project criteria
Looking for someone to change my mind :)

I agree tbh. I'm not a fan of packaging centred projects either which is why we added the other bits to ensure that the candidate wasn't just packaging. NeuroFedora sits in between neuroscience upstreams and Fedora users, and the candidate will be similarly doing packaging and science.

@major convinced me it was worth it, so we'll let him convince you further too ;)


Edited to clarify that we are aware that packaging projects aren't a good fit for GSoC, and how we hope to ensure that it won't only be packaging

@ankursinha I have a couple of questions, to start with,
did the NeuroFedora SIG reach out to packagers before? Like a call for packagers in the devel-list.

We've done this a few times, and we keep asking for review swaps etc. to ensure that we're not an isolated bunch of people.

Also, can you help us understand
1. Which upstream project(s)/communities will get benefited ?

Multiple. As package maintainers, we keep in touch with upstreams. We've already submitted multiple patches and bug reports. Here are two relatively big issues we worked with upstream on, for example:

  1. What are the deliverables of the student, usually in GSoC we measure them by code quality, time spent in community, putting something in production?

it'll be measured in terms of packager work: reviews filed/done, new packages added, package related bugs worked on, bugs filed upstream, patches sent upstream. There's no shortage of metrics tbh. "Putting something in production" for package maintainers means getting the software packaged up, tested, and in the Fedora repositories.

  1. Can you refine what you mean by "replicating a computational model" like what is the work in there for a student? This is to ensure that, when a student has to build a timeline, they need to know what exactly to do.

You take a model that was already published in a peer-reviewed journal, and re-run it to verify the results it produces. Replicating/reproducing models is extremely important to verify that the claims a study made based on it are valid.

Take a look at this: http://rescience.github.io/

Lots of models here: https://senselab.med.yale.edu/ModelDB/FindBySimulator and here: http://opensourcebrain.org/projects

It mainly is a packaging project. They'll do a little development when it comes to using the tools, for example replicating a computational model but they're not doing any development of infra tools or the type here.

ah, I would love to see this done but afaik, this doesn't suit GSoC project criteria
Looking for someone to change my mind :)

Hey @siddharthvipul1

Joining a bit late to the discussion. As @ankursinha has answered above, we agree that the project is centered around packaging, and there is only a bit of development that involves sending patches upstream and ensuring the packaged software works as it should (a bit of QA/testing as well).

Most of the work in the neuro-sig is related to packaging and there is little development to it. We were aiming this project for students who are working in the domain of science (or interested in it). Since (anecdotally speaking) most students in science are not well acquainted with software development and packaging (not just RPM), this project could act as a great starting point for them, enabling them to learn more about it and how they can use the skill in their future work.

Most of the work in the neuro-sig is related to packaging and there is little development to it. We were aiming this project for students who are working in the domain of science (or interested in it). Since (anecdotally speaking) most students in science are not well acquainted with software development and packaging (not just RPM), this project could act as a great starting point for them, enabling them to learn more about it and how they can use the skill in their future work.

I totally get the benefits of this, but I just think it doesn't meet the GSoC criteria (summer of code part). Are you sure this is the best way to get this done? I would rather put this through outreachy (I know it's too late this season).
packaging things in general is not really a good gsoc project and in the proposal we don't see any proper expectation or deliverables (I am sure we can figure out this once we we have cleared my first concern). If it was to develop a software (project) or work on one of the project under fedora domain, and then package it, it would have been a different thing, as you said, this is mainly packaging and then things revolve around it (testing and documentation).

For the task: identify FOSS software useful for neuroscience,

Are we considering packages like: AFNI, PyNN, FSL, PyMVPA, python brian along with the neccessary scientific software such as SciLab ?

And for the task: finally, replicate a simple computational modelling study to demonstrate the usability of neurofedora (and gain a publication!)
Do we have to write code to replicate the study, or use a different data set?

I'm a beginner in contributing and looking for a learning experience, Thanks!

Thanks for that @yozaam . We have a list of software to help folks looking for packages to work on here already. I think the ones you've mentioned are already on it:

https://pagure.io/neuro-sig/NeuroFedora/issues

This project has not yet been selected, so there isn't much point in already working on its tasks :)

@ankursinha Alright, I'll see if there are some other issues in https://pagure.io/neuro-sig/NeuroFedora/issues that I can help with, thanks :grin:

For what it's worth, Fedora has done packaging projects before for GSoC. In 2013, we had an accepted project to package GitLab in Fedora:

https://www.google-melange.com/archive/gsoc/2013/orgs/fedora/projects/axilleas.html

For what it's worth, Fedora has done packaging projects before for GSoC. In 2013, we had an accepted project to package GitLab in Fedora:

https://www.google-melange.com/archive/gsoc/2013/orgs/fedora/projects/axilleas.html

interesting,
somehow I missed this
anyway, I am closing this for now as it's stale (and to avoid confusion)
If still relevant, please open another ticket
Thank You

Metadata Update from @siddharthvipul1:
- Issue status updated to: Closed (was: Open)

3 years ago

Login to comment on this ticket.

Metadata