COMP1730 — Introductory Programming for Scientists
Schedule of Activities
The activities of the course are comprised in the following:
- Thirty Lectures
- The schedule below is just a plan: the reality may be different
- Lectures marked by * (asterisk) are optional and may not be delivered if the time will not permit
- Eight Standard One-Hour Labs and Two Drop-In Labs (to provide additional help to those who need)
- Three assignments
| Week |
Dates |
Lectures CHEM T2 [Bld. 34] |
Labs CSIT [Bld.108] (N112/N113) |
Assignments |
||
|---|---|---|---|---|---|---|
| Wed 1–2pm | Thu 2–3pm | Fri 1–2pm | ||||
| 1 (30) | 25.07–29.07 | Course Introduction etc |
Computing in Science Why Python? |
First Steps | Register for Labs! |
|
| 2 (31) | 1.08– 5.08 | Python overview Tools of Programming |
Python Data Types (Im)Mutable Objects |
Python Module Case study: will be done in Drop-In Lab |
Lab 1 Get started |
Assignment 1 Out |
| 3 (32) | 8.08–12.08 | Control Structures Functions |
Computer Numbers and Arithmetic |
Numerical Precision: Algorithms & Errors |
Lab 2 Functions |
|
| 4 (33) | 15.08–19.08 | Text, Strings & Unicode |
Functions and Generators |
Collections-1: Lists, Dicts, Sets |
Lab 3 Visual Objects (turtle graphics) |
|
| 5 (34) | 22.08–26.08 | Collections-2: Case Study |
Files, Streams Internet and Databases* |
Generic Algorithms: Searching, Sorting… |
Drop-in Lab:First and Last Aid | Assignment 2 Out |
| 6 (35) | 29.08– 2.09 | Scientific Algorithms 1: Multiplication, ODE Solvers, Randomness |
Scientific Algorithms 2: Roots, Matrices, FFT, Metropolis |
Reserved (back-up lecture) |
Lab 4 Text, Files and Internet |
Assignment 1 Due |
| 7 (36) | 5.09– 9.09 | Objects and Classes, 1: OO Programming |
Recursive Functions Decorators |
Robust Programs Exceptions |
Lab 5 Data Structures: Lists, Tuples, Sets |
|
| Mid Semester Break (Saturday 10 September — Sunday 25 September) | ||||||
| 8 (39) | 26.09–30.09 | Quality of Programs 1: Testing |
Quality of Programs 2: Performance |
Distributing a Module: Docs, Tests,… the works |
Lab 6 Recursions and Self-Similarity |
Assignment 3 Out |
| 9 (40) | 3.10– 7.10 | Objects and Classes, 2:Inheritance & Metaclasses* | Graphics Processing | Reserved (back-up lecture) |
Lab 7 Algorithms: Testing & Timing |
Assignment 2 Due |
| 10 (41) | 10.10– 14.10 | Graphical User Interface, 1 |
Graphical User Interface, 2 |
Advanced Python* | Drop-in Lab 2: Help with svn |
|
| 11 (42) | 17.10–21.10 | Symbolic Computing Computer Algebra |
High-Performance Python, NumPy-1 |
High-Performance Python, NumPy-2 |
Group work Ass 3 |
|
| 12 (43) | 24.10–28.10 | Guest Lecture One |
Guest Lecture Two |
Python 2-to-3 Transition |
Lab 8 NumPy: Python with no loops |
Assignment 3 Due |
| 13 (44) | 31.10– 4.11 | Computation and Reality |
Course Review Exam Preparation |
No more Lectures |
No more Labs |
|