This repository contains information about the course "Basic Programming - Introduction into Python" (2025).
In this class, we will follow largely (but not exclusively) the course NESC 3505 Neural Data Science, developed at Dalhousie University as an open educational resource.
This course follows an inverted classroom approach, which means you prepare the material for the sessions at home, leaving the actual sessions for discussions, questions, and problem-solving.
The materials consist of
- Online chapters, which will provide you with the respective background
- Jupyter notebooks, in which you can learn and practice Python concepts
- YouTube videos, which go through the notebooks step-by-step. We highly recommand to try to do the notebooks first by yourself, and only use the videos if you encounter major difficulties
Before every session, you need to read a few chapters and do the respective Jupyter notebooks. The notebooks are divided into a lesson part, where the concepts are introduced and demonstrated, and an exercise part, where you can apply the knowledge just gained. The latter exercise notebooks (name starts with x_
, e.g. x_for-loops.ipynb
) need to be submitted to the Exercise
folder in ILIAS, following the instructions below.
Submission guidelines: Put all exercise-noteboks in a single zip-file. The name of the zip-file should start with the number of the exercise (e.g. 1a or 2b) and should end with your last name (e.g. 2a-Euler). Do not submit the lecture notebooks, i.e. submit x_for-loops.ipynb
but not for-loops.ipynb
.
During the sessions, we will discuss what you learned, where you encountered problems, and how to solve these.
Important: The links to chapters point at the original class material, whereas the notebooks you will find in your
bwJupyter
environment - as demonstrated in the first session.
Link to bwJupyter environment
Link to Zoom room for screen sharing
To prepare before:
- Read chapters "About This Course" (all sections) and "Introduction to Data Science" (all sections)
During the class:
- Why this course? About adult learners and your motivation to learn Python, your programming/Python background, that the only way to learn to code is to write it, the importance of coding skills for science and beyond, and the use of AI tools.
- The organisation of this course. Time budget outside the classroom, videos as the last resort, exercises and final project.
- Setting up
bwJupyter.de
_ and accessing the curse material. How to submit exercises. - Getting started with the chapters for the following class.
To prepare before:
- Read chapter "Introducing Python"; you can ignore the section
Deactivate AI for Now
. Also, read the next chapter with the respective learning objectives. - On bwJupyter: do the exercises in
1-Introducing-Python\1a
and submit the exercises to ILIAS.
To prepare before:
- On bwJupyter: do the exercises in
1-Introducing-Python\1b
and submit the exercises to ILIAS.
16.05. | Visualisation with Matplotlib, Procedural versus Object-Oriented Plotting in Matplotlib, Subplots
To prepare before:
- Read chapter "Introduction to Data Visualization" and the respective learning objectives.
- On bwJupyter: do the exercises in
2-Visualizing-Data\2a
and submit the exercises to ILIAS.
To prepare before:
- On bwJupyter: do the exercises in
2-Visualizing-Data\2b
and submit the exercises to ILIAS.
To prepare before:
- nothing
Lecture:
- A demonstration of modern AI assistants for coding.
- A demonstration of modern IDEs that make coding, debugging and version control much easier.
The lecture presentation was uploaded to Ilias.
To prepare before:
- Read chapter "Working with Repeated Measures Data"
- Read chapter "Data Cleaning - Dealing with Outliers"
- On bwJupyter: do the exercises in
3-EDA\3a
and submit the exercises to ILIAS.
To prepare before:
- Read chapter "Basic Statistics in Python: t tests with SciPy"
- On bwJupyter: do the exercise in
3-EDA\3b
and submit the exercise to ILIAS.
To prepare before:
- Read the following short chapters on GitHub: "Clone a Repository", "Exploring the GitHub Repository view", "Editing, Pushing, and Committing", and "Edit the README File"
- No exercises to prepare
To prepare before:
- Create a GitHub repository and submit a file with the link. If you already use GitHub, you don't have to create a new repository, just submit a file with the link to your most complete repository.
- Read the chapters "Introduction to Single Unit Data", "Learning Objectives", and all sections in "Single Unit Data and Spike Trains"
Coming soon
Coming soon
Coming soon