Skip to content

Computer Science & Programming materials for Loyola's NeuroCamp

Notifications You must be signed in to change notification settings

doctorscott/neurocamp_programming

 
 

Repository files navigation

NeuroCamp Computer Science & Programming Day

Overall Approach

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).

Session 1: 10:00 AM - 12:00 PM

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.

  1. Introduce the Jupyter Notebook, and run a "Hello World!" program in a notebook.
  2. Variables and variable access.
  3. I/O & load data from file.
  4. Functions and modules. (We've used a function already!)
  5. Loops and iteration.
  6. Row field access. (Remember accessing values in a list by position or in a dictionary by key?)

Session 2: 1:15 PM - 2:30 PM

Cover some more basic programming constructs, and perform basic processing of the file data.

  1. Type conversions and template strings for output formatting.
  2. Write formatted output to screen.
  3. Math (i.e., change in measurement from A to B, percentage).
  4. Conditionals.
  5. Bonus! Implementation of a simple 3-layer neural network.

Wrap up and review: 2:30 PM - 3:00 PM

  • Review what we learned
  • Discuss methods to continue exploring computer programming
  • Provide resources for further study

About

Computer Science & Programming materials for Loyola's NeuroCamp

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 95.2%
  • Ruby 4.8%