Note: Sections of this document indentified 4.1 like this correspond to the similarly numbered section in University Policy #145.
4.1 Basic Information
4.1.1 Title and Requirements
Computational Thinking in Our World
CPS650 W2016
Prerequisites: none
4.1.2 Faculty
Dr. D. Mason - ENG260, 416-979-5079 ext 7061
My email address
Reference course link:
Consulting hours
4.1.3 Grade Posting
Grades will be available as the term progresses via Blackboard
4.1.4 Email
Students are responsible for monitoring their email and checking the Frequently Asked Questions (FAQ) section of the web site daily, both for course related information and for particular assignments. Students are responsible for complying with any such information so relayed. As class email notices are sent via, forward that email address as required. Questions relating to common issues will not normally be replied to directly, but will instead be added to the FAQ page (either course or assignment). Email sent from sites other than or may be discarded unread as spam, and will never be accepted for any official purpose. (See Senate Policy #157)
4.2 Course Description
4.2.1 Calendar Description
This course will discuss why computers and computation are ubiquitous in our world and the implications of that ubiquity, including security, gaming, military, GPS, social-networks, stock-trading, voting, and beyond. Students will learn how these systems work at an appropriate level of detail. To give a deeper understanding of these topics a significant component of the course will be student programming labs to explore simple versions of these systems. No previous programming experience will be required. Lect: 3 hrs./Lab: 2 hr.
This course is designated as an upper-level Liberal Studies course. Liberal studies courses always have the designation (LL) or (UL) in their course description in the Ryerson Calendar. Courses not identified as either (LL) or (UL) are NOT Liberal Studies courses and will not be used towards the fulfillment of a Liberal Studies Requirement for graduation purposes.
Please note that certain courses listed in Table A and Table B, due to their close relation to the professional fields, cannot be taken for Liberal Studies credit by students in some programs. A list of these programs and the restricted courses is provided in Table A Lower Level Restrictions and Table B Upper Level Restrictions in the Ryerson calendar.
4.2.2 Synopsis
  1. Goal: The goal of CPS650 is to provide the student with an understanding of the pervasiveness of computers (and the programs they run) behind most of the modern technologies we use every day..
  2. Description: The course will survey a broad range of modern technologies, and explain some of the computer science theory and practice behind them.

    Students will program weekly in the labs, but will be guided to a successful conclusion of each lab. Definitely, no previous programming experience is necessary to the learning experience or success in this course.

  3. Learning Outcomes

    This course is a combination of experiential and reflective. Hence the outcomes have aspects of both kinds of learning. By the end of the course, the student will be able to:

    • create/modify simple programs in a very user-friendly, visual programming language;
    • describe the key programming concepts that underpin many of our modern technologies;
    • demonstrate a critical capability about the computer technology that surrounds them, and its social implications;
    • identify ways in which ordinary citizens would benefit from a capacity to program and understand the problems that can arise if that capacity is limited to a small caste of designer/developers.

    These capabilities will be grounded in an understanding of the technology not usually available except to computer-scientists.

  4. Syllabus:

    Most readings will be course-specific essays that will be available from the web page. However, some chapters will be from Blown to Bits, which is freely available on the web (see:

1Introduction and Context: the ubiquity of computers, some history of computers, nature of computational thinkingTBD
2Gaming: structure of the game industry and nature of computer game interactionsTBD
3Communications: land-lines, cell-phones, SMS, data, and emailTBD
4WWW and Social Networks: to spiders and botsTBD
5Locations and GPS: how it works and how it pervades mobile computer use, and extends to fixed computersTBD
6Big Data & Cheap ComputationTBD
7Robotics: from factory floor to cyberpets and cyborgsTBD
8Secrets and Intellectual Property: how they work behind the scenesTBD
9Voting, Finance & Politics: how computers affect financial and political systemsTBD
10Security and military uses of computers: retina scans, swipe cards, cruise missiles, and dronesTBD
11Transportation and Medical: switching, air-traffic-control, and autonomous vehiclesTBD
12Fashion and Design: from CAD to 3D printers and custom fabTBD
4.2.3 Text
50 Digital Ideas You Really Need To Know
Tom Chatfield, Quercus 2011 ISBN 978-0-07-352340-8 (Not available at Ryerson Bookstore, try: Indigo Books or
  1. Blown to Bits
  2. Program or Be Programmed: Ten Commands for a Digital Age
  3. See also the resources section.
4.2.4 Presentation
The course is lecture form (3 hrs per week) with attendance strongly recommended (lectures typically "build" on previous lectures, so missing a lecture presents a difficult problem which only gets worse with time). There is also a mandatory weekly lab (2 hours).
4.2.5 Extra-class time
Labs are designed to be completed in the lab period. Essay writing and regular course review will be expected to be done outside of class time.
4.3 Other Course Issues
4.3.1 Plagiarism
Work in this course will not be submitted to an electronic inspection service (e.g. is not suitable for this course). However, electronic code comparisons may be done. Students can obtain Departmental policy information from the Departmental office as required. Students must adhere to all relevant University policies (see below), including any clarifications or modifications made during the term. Typically, plagiarism will result in a zero mark on the assignment for all concerned parties and possible additional penalties in accordance with University policies. In particular, an additional course grade reduction (e.g. from a B- to a C+) may be applied.
4.3.2 Information Technology
Class assignments and labs will use a local variant of the Scratch programming environment. It is installed in the Computer Science labs on the 2nd floor of ENG, and can be downloaded from the resources
4.5 Departmental/University Policies and Course Practices
4.5.1 Departmental Policy
The Department will be developing a handbook or web page on specific Department/School policies related to Policy 145 (Course Managment) section 3.0 and when this is available notice will be given to the class. At present, students can obtain policy information from the Departmental office as required.
Students must adhere to all relevant University policies including the Student Code of Conduct (URL: and any policies set out in the University Calendar and the Student Handbook, including any clarifications or modifications made during the term.
Academic Consideration
  • Students must submit assignments on time and write all tests and exams as scheduled.
  • Assignments submitted for grading will be handed back within two weeks except for the final exam.
  • There will be no penalty for work missed for a justifiable reason. Students need to inform the instructor of any situation that arises during the semester that may have an adverse affect on their academic performance, and request any necessary considerations according to the policies and well in advance. Failure to do so will jeopardize any academic appeals.
  • Except in cases of accommodations for disabilities, where documentation is handled directly by the Access Centre, students must fill out an Academic Consideration form (URL: and submit it to the Computer Science office, ENG287.
  • Medical certificates – If a student is going to miss a deadline for an assignment, a test or an examination because of illness, he/she must submit a medical certificate (URL: to their program office within 3 working days of the missed assignment deadline, test or examination. The program office will notify the instructor that the documents have been received. It is the student’s responsibility to make arrangements with instructor for a make up exam.
  • Religious observance – While it is strongly encouraged that students make requests within the first two weeks of class, requests for accommodation of specific religious or spiritual observance must be presented to their program office no later than two weeks prior to the conflict in question (in the case of final examinations within two weeks of the release of the examination schedule). The student must submit a Request for Accommodation form (URL: to their program office. The office will notify the instructor when they have received the request form.
  • Other requests for Academic Consideration which are not related to medical or religious observation must be submitted in writing together with the Academic Consideration form to the student’s program office. The letter must clearly state the reasons for the request and describe the events or circumstances that seriously impair the student’s ability to meet their academic obligations, and that were beyond the student’s control. When possible, supporting documentation must be attached to the letter. The office will notify the instructor when they have received the request.
  • Students with disabilities - In order to facilitate the academic success and access of students with disabilities, these students should register with the Access Centre (URL: Before the first graded work is due, students should also inform their instructor through an “Accommodation Form for Professors” that they are registered with the Access Centre and what accommodations are required.
  • Regrading or recalculation – These requests must be made to the instructor within 10 working days of the return of the graded assignment to the class. These are not grounds for appeal, but are matters for discussion between the student and the instructor.

Submission of the Academic Consideration form and all supporting documentation to your program office does not relieve you of the responsibility to NOTIFY YOUR INSTRUCTOR of the problem as soon as it arises, and to contact with the instructor again after the documents have been submitted in order to make the appropriate arrangements.

If you do not have a justifiable reason for an absence and/or have not followed the procedure described above, you will not be given credit or marks for the work missed during that absence.

For more detailed information on these issues, please refer to Policy #134 - Undergraduate Academic Consideration and Appeals and Policy #150 - Accommodation of Student Religious, Aboriginal and Spiritual Observance.

4.6 Evaluation
Evaluation will be on the basis of an exam, in-class participation, 3 essays, and a series of labs. Each lab should be done individually. Labs are "guided programming exercises" designed to convey knowledge by working through them and will normally be completed in the lab period.
4.6.1, 4.6.2 Weights and Dates (unlikely to be modified)
EvaluationGrade %Due Date (23:59)Description
500 word essay6%2017.03.13 (past)
1750 word essay21%2017.04.06 (past)
250 word essay3%2017.04.14 (past)
Class Participation5%In classusing LecturePoll
Final Exam35%2017.04.21 (past) no supplemental exam.
Each essay will require the student to carry out an analysis of the assignment's subject, and make and justify an evaluative, comparative or explicatory judgment. Clarity of organization, logic, syntax, and grammar of student writing will form part of the basis upon which the essays will be evaluated.
4.6.4 Assignment Return
Labs will normally be handed in at the end of the lab, and will be marked in the lab.
4.6.5 Late Assignments
Essays will be submitted electronically. Late assignments will be penalized 15% and no assignments can be marked after the on-time assignments have been marked. "Late" is determined by the server system clock.
Please note: An evaluation missed due to illness (properly confirmed with a form from the Departmental office) will be ranked in the class for that missed evaluation in accordance with rankings obtained in other evaluations in the course, provided the Professor has sufficient evidence that such a replacement represents, at very least, a valid approximation of the mark which would have been obtained. Typically, this means that the final examination cannot be replaced in this manner.
5.0 Deviation from Course Management Policy
Recognizing that uncertainties arise through the school year, the University provides for variances approved by the Chair/Director or Dean from the approved course management policy. Students will notified in writing at the earliest possible opportunity if variances from this CMF are required.
Prepared by D. Mason, March, 2013 in accordance with Ryerson University Policy of Senate: Course Management Policy, Policy #145 - Approval Date: May 3, 2011
Relevant Senate Policies