NeuroFedora: Free Software for Neuroscience
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Pradhan, Aniket
NeuroFedora is an initiative to provide a ready to use Fedora-based Free/Open source software platform for neuroscience. We believe that similar to Free software; science should be free for all to use, share, modify, and study. The use of Free software also aids reproducibility, data sharing, and collaboration in the research community. By making the tools used in the scientific process more comfortable to use, NeuroFedora aims to take a step to enable this ideal. The computer has become an indispensable resource in modern neuroscience. From the gathering of data, simulation of computational models, analysis of large amounts of information, collaboration, and communication tools for community development, software is now a necessary part of the research pipeline. The Neuroscience community is gradually moving to the use of Free/Open Source software (FOSS) 1; however, the software tools used in Neuroscience and research are generally complicated and sophisticated to use. Researchers that hail from a different field other than computing must spend considerable resources on setting up and managing the computing environment and the software tools. This limits the portability of the software, making the installation of software very time-consuming and sometimes tricky. We present NeuroFedora - A Fedora-based operating system for Neuroscientists. We have leveraged the infrastructure resources of the FOSS Fedora community 2 to develop an operating system that includes a plethora of ready-to-use Neuroscience software. We follow the standard software development and quality assurance practices set out by the Fedora community to provide an integrated platform for researchers to use. Furthermore, NeuroFedora is well integrated with other software such as desktop environments, text editors, and other daily use and development tools. A NeuroFedora lab image is now available, with over 130 neuroscience packages ready to use. With an up to date documentation at (neuro.fedoraproject.org) and about 120+ packages in the queue, we encourage more FOSS enthusiasts to join the team to help NeuroFedora better aid the open (neuro)-science and research community.
 Okay, so hello everyone. I'm Aniket Pradhan. Am I audible over there? It's fine. Yeah, cool. So I'm Aniket Pradhan and today I'll be talking about neuro Fedora and how we can use, I mean, like, about neuro Fedora, what it is and what's the aim and motive behind it and what's the purpose of like actually having a neuro Fedora thing over here. So I guess like everyone would be aware of Fedora, what Fedora is. So Fedora is just another operating system based on Linux, just like Debian or Ubuntu. So neuro Fedora is a group that's main purpose is to provide neuroscience packages, neuroscience software in Fedora. So before we dig into, dig deeper into neuro Fedora, just start about like how do we do our research in neuroscience in the neuroscience community. So the research pipeline basically. So I mean, as you can see in the diagram, it's actually a simplified diagram, but it's actually quite complex process. So I mean, it's the general overflow. I mean, like we go from data analysis to theory and then we have like modeling our neuroscience, our neuro, any neuroscience structure and then we have our experiments and stuff like more, most of these works nowadays are being conducted through the use of computer software and computer tools. So like there are many, there are many tools that like for experimental we have like EEG monitoring and stuff and like we have CD machines, we have MRI for data analysis, we have statistical machine learning libraries and data analysis like NumPy, Cypher, I mean like Python libraries, I mean, and then we have theory and modeling softwares. They are all kinds of simulators. So I mean, like there's a list of like all kinds of all kinds of tools and softwares that we use to like produce and reproduce information in the research domain. So that's like we need softwares for visualization, academic writing like Lartec and I don't know any other sort of Lartec, but yeah, we have nonacademic writing like blogging and we do VE software for podcasting and stuff and so on and so forth. Okay. So what do we mean by free and open science? Okay, so I mean like free and open like everyone should be able to like have the freedom to share, read or make amendments and modify to your scientific material. Right. Like that's the definition of force. Everyone should have access the should have freedom to access and study what you are actually working on. Right. So okay, let's move on for so over here. It's about it's a it's a paper by P. Gleason about a commitment to open science in neuroscience. It's basically its main motive is to solve the reproducibility crisis that we have like we're unable to reproduce the data or the results. I mean like that's very important if you are publishing some papers or your results on to the public. So like what can be the benefits of having open source codes? I mean like it can first of all solve the reproducibility crisis like people can reuse that code and then build upon their new tools and software on it and the publication or the code becomes an advert for each other. I mean like you go to a publication people will look at your code. You go to the code people look at your publication and then you can go on forth with developing new stuff. So neuro Fedora. Why? So I mean like the neuroscience community is full of I mean the scientific community is full of people from different domains. I mean everyone over here is a software developer right? I mean most people are biologists or some data analysts or some not everyone is a software developer. Not everyone has the required experience right? So only a small proportion of the scientists or the actual people working on research are trained software developers. So they work on the software and they create they create they are basically developers of the software tool. They create a tool that can be used by the end users. But the main problem here is that the developer may not provide like proper instruction on how to use the tool. I mean he may not provide documentation and there are some people the end user and like the end users they are not necessarily they are not necessarily trained software developers. So they may not have the required knowledge. They may not have the required knowledge or the experience to build and use the tool directly. And over here the end users may not always provide the feedback on how good the tool is if it's working correctly or not. So if you are a developer I mean a neuroscience tool developer then like you often face many of such problems like there's often a single developer, a single professor, a single professor who's working on a single or a small team who's working on a single development tool. So and like given how interdisciplinary in the neuroscience community is most researchers are not trained in development. So I mean like we have limited maintenance or short-lived projects because once a research even though research work is done like people no longer contribute to it and they have limited access to hardware, limited code quality and like based on all these evidences like software using research is not always of the best quality may not always be of the best quality. So I mean like it may or may not mean the development standards that people in the programming domain have like the proper developers who are trained in software programming and all. So and they have complex dependency chains there can be some dependency loops as well but like how can a developer solve that. So that's the problem in the software in the research domain right now. But for the end users like many of the end users they waste time and effort to install your the whenever they waste time installing a particular tool they have to go through the particular tools dependencies and then get the tool right. They lack the required skill of programming usually I mean like not always but yeah they have a hard time setting up and using the software they really send bug reports upstream and they do not check for tests I mean like they do not run the test with. So how do they ensure the correctness of the working program I mean testing the correctness of a program is very important in the research domain and the academic domain that's to ensure your final paper's correctness and many of the end users are unaware of the help for developmental tools. Like many of many end users do not know that there exists a library to analyze your DICOM files and everything but instead they do it manually. So that's why Neuro Fedora or where distributions come in. So what basically distributions do is that they take the code from the developer and then they package it in a neat and nice way and then provided it to the end user. So the distributions like Fedora or DBM they act as a liaison between the user and the developers. They provide the feedback and report bugs to the developer as well and basically simplifies your installation and your usage of any software tool that is being packaged. So I mean like distributions like Fedora they have a good advantage at being over here. They have high-end servers they have like multiple mirrors running across the globe and they have you have the infrastructure and they are like firm packaging guidelines. They follow the best practices. We always run the test suits and we before a tool is packaged it goes through a heavy duty review process. So I mean like the tool is properly tested and then it is provided to the end users and we constantly work on community development. We learn from one another and we always provide help to the users. So that's where we come in. So neuro Fedora what it is it's a group of people who are aiming to package your neuroscience tools and software for the Fedora operating system. So our primary goal is to provide a ready to use integrated force platform for neuroscientists right. So we aim to create a spin or a lab image of your Fedora and provide it to the users. In fact we have created one and we will share it to you in the next few slides. And our secondary and secondary goal is to provide improve the standards of packaging and maintaining the tools help users develop help users develop the software development skills that are required for when you are creating a tool or when you are using it and make neuroscience accessible to non-specialists right. So our neuro science is our current metrics. We just turned a year old in September 2019. We have like 20 volunteers 16 packages and only five who have from neuroscience background. So most of us are just acting as packages while those five are actually guiding us on how to package and how to review stuff. We have high designers and newcomers as well. So about software we have like 135 tools we have packaged for Fedora right now. We have like the neuron simulator, the nest simulator, genesis, Brian moves and we have like multiple packages in queue as well. We have around like 180 packages in queue. So we have like 180 packages in queue that are in process of being packaged and stuff. So we have neuro ML light and simulators of that kind as well. So I guess that's it. This is the current slide. I mean you can search us on Google. You can search. You have a mailing list over here as well. We have an IRC channel or telegram channel as well. Our documentation is present at neuro.fedoraproject.org. We have a blog as well. Please do have a look at it. That's it for me. So any questions people may have regarding neuro.fedora over here? Yes please. I was wondering if you guys are maintaining your own separate repository or how much effort is going into trying to upstream this kind of this package as the main fedora repository? Can I please read the question? I mean like all the packages that we are creating right now. So the question is if we are creating a separate repository for fedora, this upstream is separate from the fedora repository. So the upstream is separate from our fedora repository. We are creating our own packages and they are getting stored in the fedora servers. The upstream is separate from it. We just take the release tab or the release zip from the upstream and then use it as our source code and then we package it in a nice way and then we provide it to the end users. So it's all separate. As a follow up question, how would you describe the help or how does the fedora team core welcome packaging coming from the scientific background? Coming from the scientific world. So his question is what does the fedora core team think of the packages coming from the scientific world? So I don't have any views of that what the core team thinks of the fedora core team's thing but we as a group think that each and every software can be from any domain like either be it's scientific or video or multimedia. So that's our perspective that we want neuroscience packages in fedora so we form the group. We want neuroscience packages and the fedora the community is very welcoming the core team. They actually support us for including the packages in fedora. Sorry about that right now. Any questions? Any further questions? I guess that's it.
 Okay, so hello everyone. I'm Aniket Pradhan. Am I audible over there? It's fine. Yeah,  cool. So I'm Aniket Pradhan and today I'll be talking about neuro Fedora and how we can  use, I mean, like, about neuro Fedora, what it is and what's the aim and motive behind  it and what's the purpose of like actually having a neuro Fedora thing over here. So  I guess like everyone would be aware of Fedora, what Fedora is. So Fedora is just another  operating system based on Linux, just like Debian or Ubuntu. So neuro Fedora is a group  that's main purpose is to provide neuroscience packages, neuroscience software in Fedora.  So before we dig into, dig deeper into neuro Fedora, just start about like how do we do  our research in neuroscience in the neuroscience community. So the research pipeline basically.  So I mean, as you can see in the diagram, it's actually a simplified diagram, but it's actually  quite complex process. So I mean, it's the general overflow. I mean, like we go from  data analysis to theory and then we have like modeling our neuroscience, our neuro, any  neuroscience structure and then we have our experiments and stuff like more, most of these  works nowadays are being conducted through the use of computer software and computer  tools. So like there are many, there are many tools that like for experimental we have like  EEG monitoring and stuff and like we have CD machines, we have MRI for data analysis,  we have statistical machine learning libraries and data analysis like NumPy, Cypher, I mean  like Python libraries, I mean, and then we have theory and modeling softwares. They are  all kinds of simulators. So I mean, like there's a list of like all kinds of all kinds of tools  and softwares that we use to like produce and reproduce information in the research domain.  So that's like we need softwares for visualization, academic writing like Lartec and I don't know  any other sort of Lartec, but yeah, we have nonacademic writing like blogging and we do  VE software for podcasting and stuff and so on and so forth. Okay. So what do we mean  by free and open science? Okay, so I mean like free and open like everyone should be able  to like have the freedom to share, read or make amendments and modify to your scientific  material. Right. Like that's the definition of force. Everyone should have access the  should have freedom to access and study what you are actually working on. Right. So okay,  let's move on for so over here. It's about it's a it's a paper by P. Gleason about a  commitment to open science in neuroscience. It's basically its main motive is to solve  the reproducibility crisis that we have like we're unable to reproduce the data or the results.  I mean like that's very important if you are publishing some papers or your results on  to the public. So like what can be the benefits of having open source codes? I mean like it  can first of all solve the reproducibility crisis like people can reuse that code and  then build upon their new tools and software on it and the publication or the code becomes  an advert for each other. I mean like you go to a publication people will look at your  code. You go to the code people look at your publication and then you can go on forth with  developing new stuff. So neuro Fedora. Why? So I mean like the neuroscience community is  full of I mean the scientific community is full of people from different domains. I mean  everyone over here is a software developer right? I mean most people are biologists or  some data analysts or some not everyone is a software developer. Not everyone has the  required experience right? So only a small proportion of the scientists or the actual  people working on research are trained software developers. So they work on the software and  they create they create they are basically developers of the software tool. They create  a tool that can be used by the end users. But the main problem here is that the developer  may not provide like proper instruction on how to use the tool. I mean he may not provide  documentation and there are some people the end user and like the end users they are not  necessarily they are not necessarily trained software developers. So they may not have the  required knowledge. They may not have the required knowledge or the experience to build and use  the tool directly. And over here the end users may not always provide the feedback on how  good the tool is if it's working correctly or not. So if you are a developer I mean a  neuroscience tool developer then like you often face many of such problems like there's often  a single developer, a single professor, a single professor who's working on a single or a small  team who's working on a single development tool. So and like given how interdisciplinary in the  neuroscience community is most researchers are not trained in development. So I mean like we  have limited maintenance or short-lived projects because once a research even though  research work is done like people no longer contribute to it and they have limited access to  hardware, limited code quality and like based on all these evidences like software using  research is not always of the best quality may not always be of the best quality. So I mean like  it may or may not mean the development standards that people in the programming domain have like  the proper developers who are trained in software programming and all. So and they have complex  dependency chains there can be some dependency loops as well but like how can a developer  solve that. So that's the problem in the software in the research domain right now. But for the end users  like many of the end users they waste time and effort to install your the whenever they waste  time installing a particular tool they have to go through the particular tools dependencies and  then get the tool right. They lack the required skill of programming usually I mean like not always  but yeah they have a hard time setting up and using the software they really send bug reports upstream  and they do not check for tests I mean like they do not run the test with. So how do they ensure  the correctness of the working program I mean testing the correctness of a program is very  important in the research domain and the academic domain that's to ensure your final paper's  correctness and many of the end users are unaware of the help for developmental tools. Like many  of many end users do not know that there exists a library to analyze your DICOM files and  everything but instead they do it manually. So that's why Neuro Fedora or where distributions  come in. So what basically distributions do is that they take the code from the developer and  then they package it in a neat and nice way and then provided it to the end user. So the  distributions like Fedora or DBM they act as a liaison between the user and the developers.  They provide the feedback and report bugs to the developer as well and basically simplifies  your installation and your usage of any software tool that is being packaged. So I mean like  distributions like Fedora they have a good advantage at being over here. They have high-end servers  they have like multiple mirrors running across the globe and they have you have the infrastructure  and they are like firm packaging guidelines. They follow the best practices. We always run the  test suits and we before a tool is packaged it goes through a heavy duty review process. So I  mean like the tool is properly tested and then it is provided to the end users and we constantly  work on community development. We learn from one another and we always provide help to the users.  So that's where we come in. So neuro Fedora what it is it's a group of people who are aiming to  package your neuroscience tools and software for the Fedora operating system. So our primary goal  is to provide a ready to use integrated force platform for neuroscientists right. So we aim to  create a spin or a lab image of your Fedora and provide it to the users. In fact we have created  one and we will share it to you in the next few slides. And our secondary and secondary goal is to  provide improve the standards of packaging and maintaining the tools help users develop help users  develop the software development skills that are required for when you are creating a tool or  when you are using it and make neuroscience accessible to non-specialists right. So our neuro  science is our current metrics. We just turned a year old in September 2019. We have like 20 volunteers  16 packages and only five who have from neuroscience background. So most of us are just acting as  packages while those five are actually guiding us on how to package and how to review stuff. We  have high designers and newcomers as well. So about software we have like 135 tools we have  packaged for Fedora right now. We have like the neuron simulator, the nest simulator, genesis,  Brian moves and we have like multiple packages in queue as well. We have around like 180 packages  in queue. So we have like 180 packages in queue that are in process of being packaged and stuff. So  we have neuro ML light and simulators of that kind as well. So I guess that's it. This is the current  slide. I mean you can search us on Google. You can search. You have a mailing list over here as  well. We have an IRC channel or telegram channel as well. Our documentation is present at  neuro.fedoraproject.org. We have a blog as well. Please do have a look at it. That's it for me.  So any questions people may have regarding neuro.fedora over here? Yes please.  I was wondering if you guys are maintaining your own separate repository or how much effort is going into  trying to upstream this kind of this package as the main fedora repository? Can I please read the question?  I mean like all the packages that we are creating right now. So the question is if we are creating a  separate repository for fedora, this upstream is separate from the fedora repository. So the upstream is  separate from our fedora repository. We are creating our own packages and they are getting stored in the  fedora servers. The upstream is separate from it. We just take the release tab or the release zip from  the upstream and then use it as our source code and then we package it in a nice way and then we  provide it to the end users. So it's all separate.  As a follow up question, how would you describe the help or how does the fedora team core  welcome packaging coming from the scientific background?  Coming from the scientific world. So his question is what does the fedora core team think of the  packages coming from the scientific world? So I don't have any views of that what the core team  thinks of the fedora core team's thing but we as a group think that each and every  software can be from any domain like either be it's scientific or video or multimedia.  So that's our perspective that we want neuroscience packages in fedora so we form the group.  We want neuroscience packages and the fedora the community is very welcoming the core team.  They actually support us for including the packages in fedora. Sorry about that right now.  Any questions? Any further questions?  I guess that's it.
open_research_neurofedora_0_179.png open_research_neurofedora_180_467.png open_research_neurofedora_468_1559.png open_research_neurofedora_1560_1619.png open_research_neurofedora_1620_2435.png open_research_neurofedora_2436_3071.png open_research_neurofedora_3072_3839.png open_research_neurofedora_3840_3971.png open_research_neurofedora_3972_4523.png open_research_neurofedora_4524_5819.png open_research_neurofedora_5820_5903.png open_research_neurofedora_5904_6719.png open_research_neurofedora_6720_7871.png open_research_neurofedora_7872_9707.png open_research_neurofedora_9708_11351.png open_research_neurofedora_11352_12239.png open_research_neurofedora_12240_13235.png open_research_neurofedora_13236_14591.png open_research_neurofedora_14592_16451.png open_research_neurofedora_16452_21227.png open_research_neurofedora_21228_21348.png