Briefly introduce computer programming and its connection to neuroscience, and teach the basic fundamentals of computer programming in a one-day short-course.
For the latter, use a neuroscience related dataset and structure CS concept presentation around exploring that data. More on the dataset is in the dataset README. If there's time, introduce a basic neural net implementation.
Use a low barrier-to-entry scripting language (Python here, but R or possibly Ruby would be good too).
Provide some motivation and an introduction to computer science and how it's connected to neuroscience (mini-lecture).
Cover basic use of the scripting language, and get a file loaded into memory (on the computer).
To get started, open this code repository in a jupyter tab.
- Introduce the Jupyter Notebook with "Hello World!"
- Variables and variable access
- I/O & loading data from file
- Storing data
- Functions and modules
- Loops and iteration
Cover some more basic programming constructs, and perform basic processing of the file data.
- Row field access
- Type conversions and output formatting
- Writing formatted output to screen
- A bit of math
- Conditionals and logic
- Bonus! Implementation of a simple 3-layer neural network.
- Review what we learned
- Discuss methods to continue exploring computer programming
- Provide resources for further study