Skip to content
Snippets Groups Projects
Commit 4549d023 authored by pclark3's avatar pclark3
Browse files

Merge branch 'fixingPythonWordStyle' into 'main'

Fixing python word style

See merge request cprutean/sciprog2023!3
parents 2878d473 53402f0a
No related branches found
No related tags found
No related merge requests found
%% Cell type:markdown id: tags:
# Teaching Model
The teaching model for this course is that each of you attend
**one 3 hour** workshop session of 3 hours per week for 6 weeks. In
these classes you will download and try examples, and work on the
checkpoints. The classes are supported by Teaching Assistants and staff.
You will need to work through the relevant sections of the online course
notes and study the relevant mini-lectures before each workshop. The
mini-lectures are designed to direct you through the course and help you
keep up, but if you are confident in programming you may wish to read
ahead. The lectures **do not** cover all of the required material; you
must still work through the on-line course notes.
The course is assessed by **6** checkpoints which are marked during the sessions.
In this course we assume that you have *zero* pre-experience in
programming; (which is true for many). We also recognise that
people learn programming at very different rates.
## Use of time
To get the best out of this course you are expected to:
1. Attend your allocated session and work through the course.
2. Keep up with the course; we recognise that some people will take
longer to learning programming than others, but you *must* spend time working outside session
hours.
3. **It is expected that you spend 10 hours per week on this course, so
7 hours in addition to the timetabled class studying the notes,
trying the examples and preparing the assessed checkpoints.**
4. Make *best use* of your allocated time and the TA support; think
about what you are going to ask; remember *"…it does not work…"* is
a statement that contains zero information.
Fixing a problem *yourself* means that you will have learned how to fix
it the next time.
- DO NOT just sit “feeling lost” waiting for a TA to come and
*to show you how to fix it*. It may help to add some output statements to check that the program is doing what you think.
## Getting help
During the laboratory sessions there are a number of Teaching Assistants
and a member of staff there to give help and mark checkpoints. This
means that at times there may be many people waiting for help so we run
a simple double queue. When you want help or to get a checkpoint marked
you should:
- Add your desktop computer number, or your table and name, to the “Help” or “Checkpoint (marking)” column on the
whiteboard at the front of the room.
- Wait until you are seen in turn; if you are needing “Help” do try and fix
it yourself, or if you want “Marking” do start on the next tasks in the meantime.
Use your time effectively.
At the start of the laboratory session we will prioritise those wanting
“Help”, while towards the end of the class we will prioritise “Marking”
of checkpoints.
We will give priorty to marking the checkpoints that are due the earliest.
## Why this Teaching Method
What you are doing is *learning a new language*. For most of you this is
a *new way of thinking*. The *only* way to do this is to
- *play with it*, (you can’t break anything!),
- *get it wrong*, (which you will do a lot!),
- and *learn* how to fix it *yourself*.
This is not something that can be *taught* in lectures, it requires
active participation from you to *learn*. Everybody finds starting
computing frustrating; the only way to get over this is to *work at it*.
> #### Code style
This course is designed as an introduction to programming using Python for **novice programmers**. This means:
This course is designed as an introduction to programming using `Python` for **novice programmers**. This means:
- it starts assuming essentially “zero” background knowledge, (the
majority of the class)
- it will **not** cover complex Python structures or in detail Object Oriented Programming (OOP)
- it will **not** cover complex `Python` structures or in detail Object Oriented Programming (OOP)
- many code examples are designed to illustrate a *general programming
technique* rather than the *best Python way* to do the task
technique* rather than the *best `Python` way* to do the task
- many of the examples have a *physics* focus, since it is preminarly
designed for *Physics students* as preparation for future *physics*
computing courses. However non-physics students are welcome and can
complete all the checkpoints by implementing the equations without
detailed knowledge of the underlying physics.
%% Cell type:code id: tags:
``` python
```
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment