An introduction to the basics of programming using the Python programming language, with an emphasis on practical topics. Suitable both for students who do not intend to major in Computer Science, and as preparation for COMP 160.
Have you ever wanted to learn how to program a computer without being thrown in at the deep end? This paper gives a gentle introduction to programming in a language called Python, which was designed to be easy to use (the name comes from the humorous TV series Monty Python's Flying Circus, so you can tell that using Python is meant to be fun). Python is increasingly popular for both science and business applications. As a result, this paper is not only a good way to prepare for COMP 160, but also an ideal way to learn the basics of programming if you don't plan to major in Computer Science.
|Paper title||Practical Programming|
|Subject||Computer and Information Science|
|Teaching period||First Semester|
|Domestic Tuition Fees (NZD)||$1,018.05|
|International Tuition Fees (NZD)||$4,320.00|
- Schedule C
- Arts and Music, Commerce, Science
- More information link
- View more information about COMP 150
- Teaching staff
- Course Co-ordinator and Lecturer: Brendan McCane
- Paper Structure
- The ability to program relies heavily on mastering certain skills and techniques.
These skills are cumulative in the sense that mastering skills further on in the material
requires that you've fully mastered prior skills. Therefore, the structure of COMP
150 is based on a mastery model. In this model, students progress at their own pace
and move on to the next topic only when they've mastered the previous topic. As a
consequence, COMP 150 does not follow the single-paced lecture/laboratory model of
There are eight mastery progressions and two practical tests. The progressions are worth 60% in total, and the practical tests are worth 20% each.
The progressions are pass/fail. You cannot sit the next progression until you successfully complete the previous one. You can re-sit the progressions as many times as you like, but only once per day. If you pass a progression, you get all the marks available for that progression. If you fail a progression, you don't get any marks (but you can re-sit until you pass).
Each of the progressions are summarised in the table below:
- Progression 1 - 4% - 2 questions - Assignment and Operations (Lessons 1 and 2)
- Progression 2 - 8% - 2 questions - Functions and User Input (Lessons 3 and 4)
- Progression 3 - 8% - 2 questions - Conditionals and Fruitful Functions (Lessons 5 and 6)
- Progression 4 - 8% - 2 questions - Modules and Strings 1 (Lessons 7 and 8)
- Progression 5 - 8% - 2 questions - Files (Lesson 9)
- Progression 6 - 8% - 2 questions - Iteration: while loop (Lesson 10)
- Progression 7 - 8% - 1 question - Iteration: nested loops (Lesson 11)
- Progression 8 - 8% - 1 question - Problems using a combination of techniques (all lessons)
There is no final exam for this paper.
- Teaching Arrangements
- There is 1 lecture per week.
There are 2 laboratory sessions each week, each 2-hours long.
The laboratories have 24/7 access. Course material is made available on Blackboard.
- The handbook is all that is required. It is available for free download or can be printed at cost.
- Course outline
- View the course outline for COMP 150
- Graduate Attributes Emphasised
- Lifelong learning, Critical thinking, Information literacy.
View more information about Otago's graduate attributes.
- Learning Outcomes
- Students will learn:
- The fundamental concepts of computation and programming
- How to write simple and moderately complex computer program in the Python programming language
- How to test and debug programs
- How to use the most common data structures (lists, dictionaries, sets)
- The basics of graphical user interface programming
- The basics of object-oriented programming
- How to automate common computer tasks via programming