 So the next session is presented by Sandro. It's about neuroscience in Federa. Please go ahead. Let me correct that a little bit. I'm not a neuroscientist. Like many of us are not lawyers. I'm not a neuroscientist. This is a collaborative effort. The presentation has been put together by Ankur Sinha. I hope I pronounced his name correctly. He is London based and he was not able to get a visa to leave the island. So I'm doing the presentation. Lewis is a backup as well. He's in the audience. So you might see his name. You see his name on the slide as well. Indeed, I'm Sandro. Let's go. This is a talk primarily about use cases of Federa. And in that particular case, the use case of how to use Federa for neuroscience. And that all comes together in the Neuro-Federa Special Interest Group, which maintains a whole bunch of packages aimed at neuroscience research and development. Neuroscience, of course, is about the brain. This is what neuroscience primarily focuses on, the research regarding how our brain works. This is what you see now is quite an interesting picture. It has a lot of figures. It's mind-boggling to think about how much is going on in our head and what we are able to do with it. These slides are from a previous talk in 2019, but they are here to remind us of the challenges that neuroscience is facing. These are only large brains. We now have a full description of some invertebrates like the sea, elegance, and the leech. Neurons are complex. Different properties give them different electrophysiological properties. For example, complex morphologies mean compartmentalization of current different conductances, capacitances, and so on. And that's basically what research focuses on, the conductivity of these things and stuff and what to derive from that. Passive and active ion channels whose activity can depend on the potential difference across cell membrane. Inputs at different parts of the tree can cause the neuron to behave differently. More and more information suggests that the dealer support cells play an important role in neuronal signals and learning. The most recent estimate puts the number of neurons in the human brain at about 86 billion. Neurons in the brain are diverse. You see a few examples here of what they look. Makes for a nice wallpaper. Put it up in your bedroom. Here we see a show of different morphologies, but they also differ by other parameters, protein composition, and so on. Thousands of connections between neurons. Each neuron connects with thousands of other neurons forming a massive network. So the brain can be thought of as a massively parallel processor. This is basically what the research is aiming at. What we want to get to know, among other things, is how the brain functions, the physiology, how it is structured, the anatomy, structural connectivity, and also the chemical compounds that are involved. Of course, also how we process information basically. That's just kind of a physical computation about behaviors and cognition. That's all different areas of research that are going on in neuroscience these days and it's ever evolving. This is really a fast moving field in science. This is, of course, not just to know how it works, but there is also more. We want to, neuroscientists want to see whether they can prevent certain diseases or whether they can treat diseases. And it also serves as a brain-inspired computing. Say like, you know, we look at nature, we copy it and we make it better and in that regard there's also something to be learned. And, of course, what is consciousness? That's another subject. And to take applications from the extreme ends of the spectrum, immediate clinical applications, immediate technological applications. These are the two extremes in the research field. We move on to the research pipeline, like basically how is the research done? And the research general workflow can be broken down as follows. The four basic categories. The ground truth comes from observing the brain directly at whatever level of detail is appropriate. One can look at the synapses and synaptic vesicles, the microstructure of what makes a neuron, the channels, pumps, the mitochrotentria or whole detailed cell or just the voltage difference or the current. Or a network of neurons firing or at high levels with EEG and MEG and other signals. And one can look at fMRIs. All at different levels. All this produces huge amounts of new data that must be analyzed. It could be fancy MI and deep learning techniques, standard statistical methods, information theory and so on. Experiments can control for everything. Neither can they observe everything. So from the observations and predictions made by experiments, theorists and modelers create models where they explore other parameters to make predictions about them. These models need to be validated against experimental data. Finally, the predictions made by theorists and modelers provide new hypothesis to inform future experiments. Let me just move on one slide. There's more coming in. I might have moved into that already, but that's okay. Oh, no, not sure where I left it. I had it just. It's not quite a cycle though. Usually we jump from one to another as required. But there's more. There's funding, there's collaboration and project and finance management. There's development of tools. Both hardware and software and chemical and genetic required to carry out all this work. And finally, the results of research studied must be peer reviewed and published and ideally disseminated to a non-scientific audience through Sunmarkers, news, podcast, blog posts, social media and whatnot. Labs can be thought of as a small scale non-profit industries. So where does the free and open, as we know from the software coming in, there's a free and open science as well. It applies there and applies certainly to neuroscience. And this I think is the, at least for my part, since as I said at the beginning, I'm not a neuroscience scientist. So I'm reading here mostly what Ankur would be much more suited to explain. But this analogy actually I find quite interesting. Free and open science means everyone should have the freedom to share, study and modify scientific material. And in free and open source software, everyone should have the freedom to share, study and modify software. Seems to me almost identical. And this includes all research related activities, tools and output, not only source code. And free and open science implicitly includes and relies heavily on free and open source software. These go hand in hand. This is a selection of tools that are being used in open neuroscience. There's a link if you want to look up some more information. A majority of the tools used nowadays is free and open source software. The exceptions is usually the hardware that relies on corporate patents and or tools such as microscopes which use lasers or lenses which are developed commercially, FMRI machines and so on. So the hardware is not yet open source but most of the software has minimal moved onto open source. That brings us to the question, what can we in Fedora do to help? There's various specialties, biologists, mathematicians, physicists, chemists, psychologists. Yeah, the pay and software development industry is higher in general than in academia. Also career paths for software developers in academia is not clear. A small proportion of trained software developers works in academia. It's limited time, they have limited time, limited funding, limited resources. They do it because they love what they do. Sounds pretty similar to what we do in Fedora. The code quality is usually limited as well because it usually starts out as a hobby project and then evolves into something larger. Therefore the best practices are not always well implemented. Testing is not always carried out thoroughly. Maintenance can be flaky, depends on the type of software. Sometimes people lose interest and then the software decays slowly and stops working eventually. There's usually complex dependency chains. Software depends on a lot of other software and then the cycle basically starts again if one of these components is not being maintained. Be a problem for some other software which stops functioning correctly or functioning at all. Documentation and support is not always up to the stand. That's where people would like it. And there's a lack of know-how in how to develop software. This implies and this is based on anecdotal evidence that the software used in research is not the best quality. This comes from Ankur who has experienced that himself in his research. This means there's a waste of time and effort and software is not always up to date. Some of that is still running on Python too. I do a dare say, do we have that in Fedora? Yes, we do. I won't name it but most of you are using or still in touch encountering Python too software. If you picked up your badge today then you made use of some Python too software. Developers in the academia, the scientists are not always aware of helpful development tools. So they tend not to use them. They rarely run test suits at all. It's actually been improved. I see a lot more packages in the NeoRefredora ecosystem that has extensive testing and it sometimes takes quite a while to run. Boxes are not always reported and patches are not always supplied upstream. And if correctness of a tool cannot be verified, how can the correctness of the scientific result be claimed? So that poses a problem for the scientists and for the research because you need to be sure that what you are presenting in your paper is actually correct and that people can reproduce it and verify it. So what we do as the NeoRefredora SIG, we liaison with upstream and with users. We do that already. We try to follow best practices in software development. For example, the tools used to build certain packages. Sometimes it's just a string of scripts that does something, but that doesn't work in Fedora. So we need to step in there and make it work for our built system so that it can be employed in Fedora. Well, in Fedora, we have the infrastructure to do that. That's a pro, certainly. We work to grow the community. We try to get people who would like to pick up packaging in Fedora, have them start with a simple Python package. That's how I made my way into packaging by packaging some software that was on the list of the NeoRefredora and Pager instance that needed to be packed for Fedora. Packaged for Fedora. I did that and actually I had the experience immediately that one piece of software that I volunteered to package for Fedora that had a stack of dependencies. Not that big, but I think it was four or five other packages that needed packaging before I actually could get that package into Fedora. And they were not all that easy, but you live and learn and finally we got that in and now that tool is available in Fedora and thereby available to the neuroscientists around the world. We learn from each other as I did and I hope others will that volunteer to join Fedora and especially in that case then the NeoRefredora community. And we try to provide information to the end users about the software and sometimes we even provide documentation and deliver that back upstream. The primary goal of the NeoRefredora SIG is to provide a ready to use integrated platform for neuroscientists. There's a spin that you can pull from the website that has all the NeoRefredora packages in there and if you install that then you have the entire collection of software that we have package for Fedora available at your fingertips. That is the best way to get researchers started. They don't have to look around, they don't have to run the pip install and then wonder why this one package actually doesn't install. We have solved that for them and it's in Fedora, you can grab that, install it and run all and use all the software that is in there, whatever you need. The secondary goals are also to improve the software standard and the maintenance of the tools being used. We help users develop software and while doing so, you also improve your own development skills. And we try to make neuroscience accessible even to non-specialists, well, me included. I'm not a scientist, I keep repeating that, but the science is underlying, I have a grasp of what the tools are being used for, even though I'm not involved in using them but it's complex at times. And of course we want to make Fedora the go-to distribution for neuroscience and any help in that is appreciated. So if you want to join, there will be a link on the last slide. Yeah, that's what we also do. We are building basically on what is already in Fedora, like all the tooling needed for providing the software like some packages are just pure Python, others are a mixture of C and Python and there's other stuff there as well. But we can usually leverage on what has already been packaged for Fedora and which is already up to a high standard, which makes our work easier. So we basically build on the community as well. And that basically is just one step short of taking the entire force model and applying that to neuroscience research. Be open, be transparent and let people know what's in the box. It's not hidden, it's up to you. You can look into it, you can modify it, you can improve it and you can base your own development work on it and then make it available again to other researchers or software developers. It's almost five years old now, the Special Interest Group. That's how long it exists. Yeah, we have about 40 contributors. The number of package maintainers has improved quite a bit. We started out with just about 10 a few years ago and now we are 27 package maintainers. We also have new cameras from other sections, the outreach and so on. And there's only a few people that really have a neuroscience background. So you do not have to be a neuroscientist to join the community and help out. There's a lot of tasks also for people who just want to get themselves familiarized with this packaging or maybe who want to improve their skills in development. Python is I think the by far the largest programming language being used in that software. So if you have an affinity with Python, then you should definitely look into Neurofidora and there's a lot of Python work waiting for you. We have about 266 packages ready to install. That was only 150 a while ago. And there is, the queue is ever growing. And of course people choose what they feel comfortable with in packaging. Some packages we also discover along the way that you encounter dependencies which are patent encumbered and therefore that's where it stops. That's where we cannot put it into Fedora unless there's an option to leave certain parts out. There was the, I need to scratch my head. There was what's it called Flare? No, no, no, it's a big Python tool that uses the GPUs for computation and whatnot. And there's an effort now to get that into Fedora somehow. Well, that has been, I forgot the name. That has been a big blocker for quite a few packages where that tool has been, where that is a dependency for the software. But so if that makes its way into Fedora, then we have a whole new list of packages. Is that the code? Is that the code? No, no, no. It's, I think it's, it's something like Flare or Flash. It has something, it has something. I'll look it up, hit me up and I'll have it looked up because there was a big discussion on Discord recently and people immediately jumped in there. Well, you can't package that because it needs the proprietary GPU drivers and whatnot and it's a Python piece of software that uses these drivers to speed up computation. If you don't have it, then it's so down slow that it's not usable. So, but there's apparently now an effort to see what can be done. And if it gets done, then that will help us a lot. So we are building on that effort. And we might even contribute to that effort if we feel like we have something to contribute. Yeah, we keep packaging. That's what we mainly do. We maintain the software, new updates means we need to update. If there's like recently Python 3.12 hits raw height that meant a whole myriad of bug reports for packages that were no longer able to install. And here you see again that the developers are not always following best practices because some of the stuff that happened in Python in the latest Python release or pre-release, it's not even out yet, things that were deprecated for several releases have now finally been removed. Software developers have been warned about it. If you look through the output, there is a lot of warning in it. This is deprecated, it will be removed eventually developers didn't care about it and now it hits them and now they need to change their code to make it compatible with the newest Python version. Well, you could have seen that a long way coming, but okay, that's where we step in. We provide patches upstream and if you cannot provide the patches ourselves then we at least leave a bug report upstream informing them that the software as is is not compatible with the latest Python release which will be part of Fedora 39. So if they do not get around to fixing that then that means we need to drop that package from Fedora at least temporarily until they have fixed it. And this is the interaction where we can contribute to the neuroscience software development from our perspective of Fedora being bleeding edge. We have Python 3.12 integrated already whereas Python itself, the organization has not even released it yet, it's a pre-release. And that tends to produce mixed reactions. Some developers are quick to provide fixes which we can then apply as patches. Others are more like, well, Python 3.12 is, that's too new for me, it's not even out yet. I'm not gonna look at it, I'll look at it later. So then we are stuck and or we can, if we do understand what's the problem exactly we can try to look into it and provide patches upstream, say like, you know, if you change that that makes it compatible with Python 3.12 and it stays compatible with 3.11 as well. So backwards compatible and everyone has helped people can keep using that software. So we contribute to upstream quite a bit. Yeah, that's from the scientist perspective. Researchers are encouraged to contribute to a FOSS, make their software open source, adhere to the standards. And we encourage people to interact with each other more to make better software, make the final product more suitable for everyone. That's what we are continuously working on. So that's also, that's why it's headed under future plans. Basically anything, it's just more every day life of a package and Fedora's. It's packaging, testing, containers, documentation, evangelism, marketing, design. So all these aspects come back in what we do in the neuro Fedora interest group. And that's where we are looking for help constantly. So if you feel like you have to spare a few cycles or you would like to contribute to certain software and help out, you're welcome. You can contact us, get in touch with us and you find all the information on neuro.fedoraproject.org. We have a mailing list as well. We are on ISE slash matrix. It's neuro Fedora, I forgot the name, I have it there but you can look it up, it's all on the site. The activities are in Pager as a project of the special interest group. There you have bug trackers for software that we would like to have packaged issues that might have come up, things that need to be discussed. If you feel something there, something, oh, I could help out here. You can just drop a line in the ticket and someone will add you to the special interest group and you can work on the ticket and your help will be greatly appreciated. You can find us basically anywhere. That's about it. Questions? Thank you. Really interesting project and I have like six or seven questions but I'm gonna only ask a couple. Let's start with one. Yeah, let's start with one. So I guess my first question is you said you have just a few contributors that are like really neuroscience researchers and I assume many other people might have come throughout Ritchie or maybe RSE or other disciplines. In terms of like the rest of the community, maybe not people like maintaining packages and stuff, what portion of that like how prevalent is neuro Fedora among neuroscience researchers as something that they use? I know many people use Fedora spins quite actively, myself included, but don't really actively contribute so I'm curious your perspective there. Personally, I don't have that information available. I know that Ankur is very engaged in the project. He is a neuroscientist. He would probably be able to answer that question but he is putting a lot of effort in there to make it known to other, to fellow researchers, fellow scientists and that the spin is available and if you need software tooling for your work to get you started quickly, grab the spin, install it and you have all these packages at your fingertips. Nothing else you need to do, you can just use it. But how many? That is a question I would need to relay to Ankur. So like a non-answer of sorts would be I used to work as a postdoc in a lab that was using Fedora for neuroscience and unless you were involved in close cooperation with the lab there is no way you could have told this from the outside because it's not like you advertise in articles that you are using this operating system or that operating system. So I think that in general there is no body who has any idea on a wider scale about different labs and different groups and so on. Any more questions? This is a question that came in from the chat room that I am relaying. So there's a question about whether in the space there's any open source alternatives for diagnostic tests used around ADHD, autism or other similar software in the Nero Fedora software stack. Person was curious about because there's usually closed source software used in this and they were just wondering I guess if there was any open source software in this space or if the Nero SIG is covering things like that. I'm inclined to say that since the ADHD that is a certain defect in the way the brain works maybe that's not the right term that a scientist would use. There's certainly tools for analysis of certain data and maybe for producing charts or images, presentations and stuff like that but specifically for the research of these defects. I'm not aware but that's probably more because I'm not the actual scientist. That's unfortunately another question I would have to relay to Ankur. I wish you were here but unfortunately he's not. But feel free to post these questions in the chat room. Ankur is very active there and he's probably able to point you to some links and you might even find some links on the website that is up on the screen that has links to other stuff as well so there might be something in there already. I'll just note he is in the flock chat right now answering some of these questions. So if you are looking for the answers just jump into matrix. I wouldn't have expected any differently. So six more questions. Yes. Question number seven please. Number seven, okay. Well actually I thought of six more during the last question so we're only halfway through now. So I work for a university which is why a lot of this is really interesting to me. I work for a university open source programs office. My question for you with the Nuro Fedora project, it's obviously a very useful software stack for an entire discipline. And certainly from my perspective there is many organizations advocating for using more open source technology, having more unified software stacks for specific disciplines. And we work, whether they're nonprofit foundations that provide funding for this or in the US a lot of government agencies are now really interested in seeing this sort of work like NSF and year of open science and stuff like that. My question for the Nuro Fedora project and you know folks involved in that is do you have like maintainers or community members that are working with these organizations? Is this something that you think the community, I know it's just a special interest group and it's like just a spin. So it's not like you guys have your own foundation or whatever, but is this something like interacting with these organizations is something your community is interested in doing seeking funding and hiring people? Well, I think it happens indirectly because a lot of the software that we package for Fedora is written by scientists themselves. These are researchers that write tools they need to do their work. We package these tools for Fedora and while we do so and while they're developing we interact with them. So there is the exchange of information and helping each other out and making better software and contributing back to the software that is used by other neuroscience in the special interest group itself. I don't think we have, at least I'm not aware of any members that are actively involved in software development, especially for neuroscience. Maybe Ankur is, but I'm not sure and there might be a few, but I'm just not aware of. Okay, thank you. Any more questions? Okay, thank you for the presentation. You're welcome. You're welcome.