Schedule

The following is an overview of the topics we will cover this term and (approximately) when we plan to cover them. As we proceed, more detail and support material will be added.


Week Term
Work Due
Topic
# Starts
1 Jan 7   Introduction to computing
Algorithm discovery. Problem solving, Polya's approach to problem solving. (Brookshear 5.3)
Discussion of what makes an algorithm. (Brookshear 5.1)
Slide summary: week 1, week 2

2 Jan 14  
3 Jan 21 Bulletin Board Contribution 1
Friday [2%]
Modern computing - File Systems
An overview of operating systems (Brookshear 3.1 - 3.3) (slides: talking points)
File Systems: file organization and the root directory
4 Jan 28 Assignment 1
Friday [5%]
Data representation; numeric expressions.
basic numeric expressions
begin Python
Giving names to numeric expressions, and to lists of statements
String expressions (code snippets)
Basic data representation: bits and bytes; base two numbers; converting to and from base two & representing other kinds of data
5 Feb 4  
6 Feb 11 Bulletin Board Contribution 2
Friday [2%]
History of computing machinery
A brief overview of how computing machinery evolved. (Brookshear 0.2)
Tong's Tuesday lecture notes and his Thursday lecture notes
  Feb 18  
Reading Week
7 Feb 25 Test 1 (in tutorial) [12%] Modern computing - Communication and the Web
Data Communication (Brookshear 4.1 - 4.2)
The Web
8 Mar 3

Assignment 2
Thursday [10%]

Using spreadsheets and creating webpages with HTML
Spreadsheet programs. (We will be using "gnumeric" as an example in the lab and for assignment three. Gnumeric is nearly identical to Microsoft Excel: all spreadsheet programs are basically the same. When you know one, you more-or-less know them all.)
Boolean expressions, and 'if' formulas in a spreadsheet program.
Some basic HTML.
9 Mar 10   A first Application
We will look more closely at a program application
10 Mar 17

Assignment 3
Thursday [10%]

Computer Programming
We have come so far - now we will ease into computer programming, building on everything we have learned, and then some.
How is software developed in the real world? The Software development lifecycle - we will build a small application following the lifecycle process.
11 Mar 24 Test 2
In tutorial [12%]
12 Mar 31 Bulletin Board Contribution 3
Friday [2%]
13 Apr 7 Assignment 4
Friday [10%]
Computers and Society
We will discuss the role of computers in society. How they affect our lives and how we use them (responsibly) to affect the lives of others.
    Final Exam [35%} The final exam will be scheduled during the regular exam period.