Day 1 | 08:30 | The layers of computing |
Where, exactly, is my data? Where should it be?
Where is the computer analyzing my data? Can I make it go faster? How do all of these places relate to each other? What is the shell and why do I care? What is python? What is IPython? What is Juypter? What are the tools we’ll be using in the course? |
09:00 | Variables and Assignment | How can I store data in programs? | |
09:20 | Data Types and Type Conversion |
What kinds of data do programs store?
How can I convert one type to another? |
|
09:40 | Built-in Functions and Help |
How can I use built-in functions?
How can I find out what they do? What kind of errors can occur in programs? |
|
10:05 | Morning Coffee | Break | |
10:20 | Lists | How can I store multiple values? | |
10:45 | Iteration in Python | How can I make a program do many things? | |
11:10 | Introduction to the data |
Where can I get neuroimaging data
What is FAIR data |
|
11:35 | Working with the command history and script-files | How can I save and edit my previous input commands conveniently? | |
12:00 | Open Science | Why the push for open science? | |
12:30 | Finish | ||
Day 2 | 08:30 | Libraries and pathlib |
How can I use software that other people have written?
How can I find out what that software does? |
09:00 | Introduction to Version Control and Git |
What is version control and why should I use it?
How do I get set up to use Git? Where does Git store information? |
|
09:30 | Versioning edits with Git |
How do I record changes in Git?
How do I record notes about what changes I made and why? |
|
10:00 | Debugging | How can I debug my program? | |
10:10 | Conditionals | How can programs do different things for different data? | |
10:30 | Modular programming | How can I create my own functions? | |
11:00 | Keeping track of changes with Git |
How can I identify old versions of files?
How do I review my changes? How can I recover old versions of files? |
|
11:30 | Pandas | ||
12:30 | Finish | ||
Day 3 | 08:30 | Plotting with Seaborn | |
09:00 | Converting data to the BIDS directory structure | ||
09:30 | Collaboration with Git and GitHub |
How do I share my changes with others on the web?
How can I use version control to collaborate with other people? What do I do when my changes conflict with someone else’s? |
|
10:30 | Coffee | Break | |
10:45 | How to share neuroimaging data | ||
11:45 | How to not fool yourself | ||
12:15 | Finish | ||
Day 4 | 08:30 | Containers |
What is a software container?
What’s Docker? What’s Singularity? And what is each good for? How do I run software in a container? How do I build a container? What are some best practices to ensure reproducibility and ease of use? How do I use containers that are publicly available on Docker Hub and Singularity Hub? Where can I go to learn more? |
09:30 | Standardization in Neuroimaging | ||
10:30 | Coffee | Break | |
10:45 | Study pre-registration | ||
11:30 | Pre-print servers | ||
11:45 | Wrap-up | ||
12:30 | Finish |
The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.