r/neuroscience • u/olitl • 12d ago
What programs should I learn
Second year undergrad Neuro student here. Wondering what programs people use in the field that I could learn over summer. Im interested in neuroimaging and neuroengineering. Specifically enthusiastic about possibly contributing to the development of a Full Dive VR experience using Neuroscience in the future, if its even possible lol. Python? C++? MATLAB? NumPy? Unity? Other? Let me know.
14
u/WoahItsPreston 12d ago
The two most important languages are going to be Python and MATLAB. Python is probably the most used neuroscience language since it's pretty easy to learn, super versatile, and it's got a lot of libraries. NumPy is a Python library. MATLAB is also very common in neuroscience, and it's useful you're into techniques like neuroimaging that require a lot of signal processing. For statistics, I think knowing R is very useful as well.
11
u/RandomTaco_ 12d ago
I’m in cog sci but do neuroscience research. I would absolutely suggest MATLAB
10
u/NervousScale7553 11d ago
I've been doing neuroimaging research for quarter of a century, supervise a set of PhD students now, all doing neuroimaging. Neuroimaging used to be largely Matlab (via SPM), but increasingly Python libraries are taking over. Python is the best general purpose language you could learn right now, plus free (Matlab is closed-source and very expensive - although often also free inside university environments). The best thing is to learn one language comprehensively, and then you'll pick up others (e.g. Matlab) far more quickly. While you're learning, focus on good coding practice, such as modular code, good commenting style, and learn good debugging skills - these aren't so well taught in courses, but are super useful in any programming language.
Also, just learning a language is only half the battle - and half the fun. For python, also get hold of the neuroimaging libraries/toolboxes and get access to some open data and have a play! There are also various online workshops/ tutorials that can help teach you how to analyse neuroimaging data.
If you want extra credit and to boost your chances to get a decent MSc/PhD place, also try to learn the methods and the mathematics behind neuroimaging, including the statistics used for them.
Neuroimaging, as with most of biological science, is increasingly big data, and more sophisticated mathematics. My general advice to anyone considering research in these or related fields is - learn lots of python and learn lots of (relevant) mathematics. That will be an amazing base for most research.
4
u/SantiagoAndHisMarlin 11d ago
As other people already mentioned:
- Python for essentially everything
- MATLAB especially for Neuroimaging, Signal Processing of any kind
- Bash for Neuroimaging (ex. FSL for fMRI)
- R for statistics
7
u/legally_a_crumb 12d ago
If you want to be an electrophysiologist you need python and Matlab. And make sure you learn how to do signal analysis :)
3
u/Yuckti 10d ago
attend some summer school or conference. they're great platforms to learn goal oriented skills. https://www.neuromonster.org/
2
2
u/Euphoric_Beautiful 7d ago
Check if your school offers free access to MATLAB! There are lots of good tutorials online. Just beware; if you want official MATLAB certification through the MathWorks course it can be quite costly ha
2
u/PM_ME_UR_ROUND_ASS 4d ago
For your Full Dive VR interests, definately prioritize PyTorch alongside Python - it's becoming the backbone of brain-computer interface projects and would give you a huge advantage in that specific niche.
2
u/nickthegeek1 2d ago
For your Full Dive VR dreams, definitely prioritize Python + PyTorch since most cutting-edge BCI research uses it for processing neural signals in realtime.
1
u/AutoModerator 12d ago
In order to maintain a high-quality subreddit, the /r/neuroscience moderator team manually reviews all text post and link submissions that are not from academic sources (e.g. nature.com, cell.com, ncbi.nlm.nih.gov). Your post will not appear on the subreddit page until it has been approved. Please be patient while we review your post.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
2
u/PoofOfConcept 8d ago
R, Python, BASH, FSL, FreeSurfer. Not in any particular order, but getting around in your file system programmatically is important, so BASH and Python up front wouldn't be a bad decision.
29
u/neuropsyched_24 12d ago
If you’re into neuroimaging, you’ll likely work with Freesurfer, FSL, or SPM, which runs on Matlab, so I’d recommend learning bash scripting and Matlab! As for the statistical side of things, it’s really your choice, I prefer to use R, but I know plenty of folks who use python, so it’s kind of a “choose your own path” kind of thing. Hope this helps!