General software skills for systems neuroscience#
Overview#
Held over seven days, this course will provide researchers with some basic computational skills for systems neuroscience research. This will include general programming, software development best practices and data analysis using leading open-source software tools. This course will also include some general microscopy lectures.
Schedule#
Date |
Time |
Event |
Location |
---|---|---|---|
Monday, September 30th |
13:00-14:00 |
Introduction to the course |
SWC Brasserie Seminar Room |
14:00-17:00 |
Introduction to Python (1) |
SWC Brasserie Seminar Room |
|
Tuesday, October 1st |
10:00-11:00 |
Data management and sharing (1) |
SWC Ground Floor Lecture Theatre |
15:00-17:00 |
Data management and sharing (2) |
SWC Ground Floor Lecture Theatre |
|
Wednesday, October 2nd |
10:00-12:30 |
Introduction to Python (2) |
GCNU Seminar Room |
13:30-17:00 |
Version control and software development best practices |
GCNU Seminar Room |
|
Thursday, October 3rd |
10:00-13:00 |
Video-based analysis of animal behaviour (1) |
SWC Brasserie Seminar Room |
14:00-17:00 |
Video-based analysis of animal behaviour (2) |
SWC Brasserie Seminar Room |
|
Friday, October 4th |
14:00-17:00 |
Linux and high-performance computing |
SWC Ground Floor Lecture Theatre |
Monday, October 7th |
11:00-12:00 |
General microscopy: basics |
SWC Brasserie Seminar Room |
13:00-14:30 |
General microscopy: applications |
SWC Brasserie Seminar Room |
|
14:30-18:00 |
Histology analysis (1) |
SWC Brasserie Seminar Room |
|
Tuesday, October 8th |
10:00-11:00 |
Histology analysis (2) |
SWC Ground Floor Lecture Theatre |
14:00-17:00 |
Histology analysis (3) |
SWC Brasserie Seminar Room |
Introduction to Python#
The aim of the course is to introduce basic concepts of programming in Python, and establish a community of Python users. It is a hands-on course, in which we will guide you through the process of writing your first Python script and teach you some best practices.
The course will run over two days, 2.5-3h per day with a break in between.
Instructors: Igor Tatarnikov, Sofía Miñano
Day 1
Part 1
Aims
Why learn Python?
How to work with Python?
Basics of programming (1/2)
Variables
Data types
Part 2
Basics of programming (2/2)
Loops
Conditional statements
List comprehensions
Writing your first Python script
Loading and saving data
Day 2
Part 1
Recap and Q&A
Using third party libraries
Functions and methods
Classes and objects
Part 2
Errors and exceptions
Organising your code
Documenting your code
Course materials#
Additional resources#
Data Management and Sharing#
This course will introduce best-practices in neuroscience data management and cover recent standardisation initiatives. The primary take-away from this course will be to leave with a strong schema in mind for clean organisation of experimental data.
Full details can be found on the course webpage
Version control and software development best practices#
The aims of the course are
to learn how to keep track of changes to your code with Git and GitHub,
to learn how to work with others on code
and to get an initial idea of how structure, document and test your code.
Git and Github slides for 2023/2024 course Site for software development best practice
Instructors: Stephen Lenzi, Laura Porta, Alessandro Felder
Video-based analysis of animal behaviour#
This course will introduce the theory and practice of tracking animals in videos to quantify their behaviour. Participants will get to train pose estimation models with SLEAP, analyse pose tracks with movement, and extract behavioural syllables with keypoint-moseq.
Full details can be found on the course webpage.
Instructors: Niko Sirmpilatze, Chang Huan Lo, Sofía Miñano
Linux and high-performance computing#
This course will introduce some basic principles of using Linux, and high-performance computing in general. Most of the course will be centered around learning to run a specific workflow (pose estimation) on the SWC HPC system.
Full details can be found on the course webpage.
Instructors: Niko Sirmpilatze, Igor Tatarnikov, Adam Tyson
General microscopy#
This course will introduce some basic concepts about microscopy (optics, fluroescence etc.) to help better understand the following course on histology analysis.
Instructors: Rob Campbell, Adam Tyson, Alessandro Felder, Igor Tatarnikov
Histology analysis#
Full details can be found on the course webpage.