CSC148H :: Introduction to Computer Science :: Summer 2013


9 August - Exam Jam Monday August 12, noon - 4pm in BA7172!
9 August - Good luck on the final exam!
30 July - Quiz 4 on Thursday
30 July - Velian's office hours this week: Wed 2-4, Thu 2-4 (not 1-3) in BA3201
28 June - Exercise 2 tests (without code) posted here.
8 July - posted.
5 July - Paul's glove video posted for your amusement and enlightenment.
4 July - Labs 3 and 4 and Quiz 2 marks posted on MarkUs.
29 June - Assignment 2, Exercise 2 and Assignment 3 have all been posted here. This handout may undergo small changes in the next few days. Note the due dates have been pushed back from those indicated in the Course Info Sheet.
29 June - There will be NO LABS the week of July 1.
24 June - Some pages of the midterm are available here to give you an idea of what you might expect. You will have access to the reference sheet during the test. The marks breakdown might change slightly, but there will be more marks on the test than you are expected to earn to get 100%.
20 June - Velian's office hours the week of the midterm will be Monday 2-4 pm in BA5256. They will largely focus on midterm review, so bring your questions and feel free to come for the entire 2 hours.
12 June - Velian's office hours this week will be Thursday 2-4 pm, not 1-3 pm. Sorry for the wonkiness.
12 June - Exercise 1 has been posted. It's due Sunday June 23 by 10:00 pm.
11 June - Our midterm will be on Thursday June 27, 4-6 pm in MS 3154.
5 June - The slides for the ramp-up sessions are available here.
5 June - A1 - hints regarding accessing all items in an LPQ are worth reading here...
5 June - Velian's office hours this week will be Thursday 2-4 pm, not 1-3 pm. Don't forget to post other questions to Piazza or go to the Undergraduate Help Centre.
2 June - A1 VeggieSkewer requirement clarified: they require 2 time steps to cook, not 3!
30 May - A1 testing code updated - get it here!
30 May - As per the course info sheet, there will be no labs next week. Good luck on A1!
27 May - Assignment 1 has been posted! It is due June 9 at 10pm sharp.
23 May - No office hours today but class is on as usual!
23 May - Sign up for ramp-ups here:
16 May - Our first class begins at 4pm in LM 162.


Welcome to the course webpage for the Summer 2013 term of CSC148H, an Introduction to Computer Science! This course teaches the basics of computer science in Python, which is an industrial-strength programming language used at companies like Google and Industrial Light and Magic.

The course is delivered through 2 lecture hours per week plus at least eight 2-hour closed labs.

Outside of class and lab, you will also complete a set of 3 assignments, 2 exercises, 4 quizzes, a midterm test, and a final exam. The marking scheme and rough course schedule are available on the course information sheet.

There is no required text. All required readings will be posted on the Lectures page.

Contact information

Please come visit my office hours! Some of the best learning takes place there. The office hours start at 10 minutes past the hour (i.e. U of T time).

Instructor: Velian Pandeliev
Office: BA4261
Office Hours: Thursdays 1--3pm and by appointment

Quickstart guide

Here are the steps you should take to get ready for this course:

  1. Rampups For those who want it, a FREE ramp-up workshop will be provided by the CS department to help get you up to speed in Python (namely up to the level required at the beginning of CSC148H). The ramp-up sessions will be held on Saturday May 25 and Saturday June 1, from 10 am to 4 pm in room BA3185. You only need to attend one of these workshops. To sign up, send an e-mail to
  2. If you did not take CSC108H, read the introduction to the computer labs for new students. Pay particular attention to the "What do you need?" section, although that whole document is chock-full of information that will make your CSC148H life easier. Most important: make sure you can log in to CDF, the undergraduate lab.
  3. Read the course information sheet.
  4. Sign up for the course's Piazza discussion board:
  5. If you want to work on your own computer, make sure you have Python 3 installed. (Python 2.x is not compatible.)
  6. Once you have done all the previous steps, read all the information on this website.

Getting help

Have questions? Here's where to ask them.

Source Description
Piazza (forum)

Need clarification on a handout? Wondering about a lab? Have a Python style question? These are all excellent topics to post on the CSC148H Piazza discussion board because they will probably be useful to other students.

Piazza is a little different than a regular discussion board. Each question has two possible responses: a student-edited one and and instructor-edited one. You can answer each other's questions.

More fun: anyone can edit any answer. That means that you can add helpful information such as an example, and you can clean up grammatical and spelling errors.

You can also ask private questions that are only visible to the instructors. Feel free to use this instead of email if you like --- I will be checking Piazza about as frequently as I check email.

Office hours Office hours are where you can ask anything you like: get help related to lecture material, go over your assignment, ask for help with your marks. You don't need an appointment to attend these, you can just drop by.
Email Use email to ask me a personal question. Use a descriptive subject line that includes "CSC148". Here is an example: "CSC148: issue with lab TA".
Help Centre The Department of Computer Science has an Undergraduate CS Course Help Centre with TAs who are able to help you with first year courses (as well as most second-year and some third-year courses). It's open Monday to Thursday from 4--6pm and is located in BA2230. Go visit them if you need help!